/* Generique, ne pas effacer */
/* Police */
@font-face {
  font-family: "Oxlaide";
  src: url("../font/Oxlaide/Oxlaide.otf");
}

/* Global */
/* colorEtape3 est la même que la 8 et que celle du site (header, button..etc) */
:root {
  --colorEtape1: #5dade2;
  --colorEtape2: #2e86c1;
  --colorEtape3: #308796;
  --colorEtape4: #DAA520;
  --colorEtape5: #b73959;
  --colorEtape6: #7f8c8d;
  --colorEtape7: #0B6BA8;
  --colorEtape8: #308796;
}

* {
  box-sizing: border-box;
}

html {
  font-size: 62.5%;
  scroll-behavior: smooth;
}

body {
  font-size: 1.6em;
  /*font-family: Arial, Helvetica, sans-serif;*/
  font-family: 'Albert Sans', sans-serif;
  margin: auto;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
}

ul {
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
  image-rendering: -webkit-optimize-contrast;
  height: auto;
  display: block;
}

.logotext {
  width: 270px;
}

.font-italic {
  font-style: italic;
}

.border-red-blink {
  border: 2px solid red;
  border-radius: 50%;
  width: 35px;
  height: 35px;
  text-align: center;
  animation: borderColorChange 3s infinite;
}

.red-dot {
  height: 10px;
  width: 10px;
  background-color: red;
  border-radius: 50%;
  display: inline-block;
  animation: backgroundColorChange 1s infinite;

}

@keyframes backgroundColorChange {
  0% {
    background-color: var(--colorEtape5);
  }

  50% {
    background-color: #f00;
  }

  100% {
    background-color: var(--colorEtape5);
  }
}


@keyframes borderColorChange {
  0% {
    border-color: #f00;
  }

  50% {
    border-color: #fff;
  }

  100% {
    border-color: #f00;
  }
}


main {
  margin: auto;
  width: 100%;
  flex: 1;
}

a,
a:visited,
a:hover,
a:link {
  text-decoration: none;
  color: #000;
}

h1 {
  text-align: center;
  text-transform: uppercase;
  font-weight: normal;
}

.titreMenu>div {
  text-align: center;
  text-transform: uppercase;
  font-weight: normal;
  font-size: 2rem;
  margin-top: 10px;
  margin-bottom: -5px;
}

img.align-left {
  float: left;
  margin: 5px 5px 15px 5px;
}

img.align-right {
  float: right;
  margin: 15px 5px 5px 5px;
}

.width-45px {
  width: 45px;
}

.tooltip-title-bt .tooltip-inner {
  font-size: 1.5em;

}

section {
  margin-top: 10px;
}

button, link, p.link {
  cursor: pointer;
}

.button {
  margin-right: 5px;
  margin-left: auto !important;
}

.font-weight-bold {
  font-weight: bold;
}


.button1,
.button2,
a.button1,
a.button2 {
  background-color: var(--colorEtape3);
  color: #fff;
  border: none;
  font-weight: bold;
  padding: 10px;
  max-width: 210px;
  margin: 10px auto;
  border-radius: 3px;
  display: block;
  font-size: 1.4rem;
  text-align: center;
}

.button1:hover,
.button2:hover,
.button3:hover,
.button4:hover,
a.buttonGold {
  /* color: #000; */
  /* background-color: #ffe8ac; */
  -webkit-box-shadow: 0px 0px 10px 1px rgba(0, 102, 124, 0.73);
  -moz-box-shadow: 0px 0px 10px 1px rgba(0, 102, 124, 0.73);
  box-shadow: 0px 0px 10px 1px rgba(0, 102, 124, 0.73);
}

.button3,
.button3:visited,
.button3:link {
  color: #fff;
  display: inline-block;
  width: 200px;
  height: 0;
  border-bottom: 50px solid #CCA533;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  border-radius: 5px;
}

a.button4 {
  display: block;
  background-color: var(--colorEtape2);
  color: #f2f2f2;
  width: 100%;
  height: 100%;
}

.buttonGold {
  background-color: #CCA533 !important;
  width: 177px !important;
}

a.buttonHome {
  display: block;
  max-width: 150px;
  margin: 10px auto;
}

#lingotsDor li {
  margin: auto 10px
}

#lingotsDor {
  margin-bottom: 50px !important;
}

.clearfix {
  clear: both;
}

.hidden,
.hiddenMobile,
.hiddenMobile-Flex {
  display: none !important;
}

.simulationRestanteBulle {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 35px;
  border-radius: 50%;
  color: white;
  font-size: 24px;
  font-weight: bold;
  text-align: center;
  line-height: 1;
  padding: 0;
  border: 3px solid #f2f2f2;
}

.desktopScreen {
  display: none;
}

.relative {
  position: relative;
}


.borderAbonnement {
  border: 2px;
  border-style: solid;
}

.fixOnTop {
  position: fixed;
  top: 0;
}

input[type="text"],
input[type="email"],
input[type="date"],
input[type="password"],
select,
textarea,
.fakeInput {
  position: relative;
  border: 1px solid rgb(200, 200, 200);
  height: 25px;
  width: 100%;
  border-radius: 3px;
}

.fakeInput {
  width: 130px;
  min-width: 130px;
  margin-left: 10px;
}

div#sIndicateurs .titleEtape p:nth-child(1) {
  width: 130px;
  margin-top: -3px;
  border-top-right-radius: 8px;
}

span.mini {
  display: inline-block;
  vertical-align: top;
  margin-top: 0.5em;
  /* Ajustez pour un positionnement optimal */
  font-size: 0.5em;
}

#simulateur .fakeInput {
  text-align: center;
}

.derouleSection {
  background-color: #fff;
  width: 30px;
  height: 30px;
  border-radius: 100%;
  cursor: pointer;
  margin-right: 10px;
}

.overflowYHidden {
  overflow-y: hidden;
  overflow: hidden;
}

/* scroll to top */

a#scrollToTop {
  width: 50px;
  height: 50px;
  font-size: 1.4rem;
  color: #000;
  background-color: #ffd874;
  border-radius: 100%;
  position: fixed;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  right: 10px;
  bottom: 10px;
  z-index: 100;
  opacity: 0;
  -webkit-box-shadow: 3px 3px 5px 0px rgba(50, 61, 61, 0.3);
  -moz-box-shadow: 3px 3px 5px 0px rgba(50, 61, 61, 0.3);
  box-shadow: 3px 3px 5px 0px rgba(50, 61, 61, 0.3);
  transition: all 0.1s ease-in-out;
}

a#scrollToTop>img {
  width: 20px;
  height: 20px;
  object-fit: cover;
  margin: 0;
  margin-bottom: -5px;
}

.font-size-15 {
  font-size: 1.5rem;
}

a#scrollToTop:hover {
  transform: scale(1.1);
}

.scrollToTop-active {
  opacity: 1 !important;
}


.tootltipButton {
  width: 20px;
  min-width: 20px;
  max-width: 20px;
  height: 20px;
  border: 1px solid var(--colorEtape3);
  border-radius: 100%;
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  /* position: absolute;
	top: 0;
	left: 170px; */
  margin-left: 10px;
  background-color: #f2f2f2;
}



input:disabled {
  color: #000;
}

.couleurAPreciser {
  animation: rainbow 3s linear infinite alternate;
}

.bottom0 {
  margin-bottom: 0 !important;
}

.tootltipButton:hover {
  transform: scale(1.2);
}

.tootltipButton>img {
  width: 60%;
}

.tooltipContent {
  position: fixed;
  transform: scale(0);
  transition: all 0.2s ease-in;
  background-color: #fff;
  border: 2px solid var(--colorEtape3);
  z-index: 50;
  top: 0;
  left: 0;
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
}

.tooltipContent div {
  background-color: var(--colorEtape3);
  display: flex;
  justify-content: space-between;
  flex-direction: row;
  flex-wrap: nowrap;
  padding: 0 15px;
  color: #f2f2f2;
}

.tooltipContent div>img {
  width: 20px;
  height: 20px;
  cursor: pointer;
  align-self: center;
}

.tooltipContent h4 {
  margin: 10px;
}

.tooltipContent p {
  padding: 0 15px;
}


.tooltipContent.tooltipActive {
  position: fixed;
  width: 80%;
  top: 200px;
  /* Place le point d'origine de la div à 50% de la largeur de l'écran */
  left: 50%;
  /* Déplace la div de 50% de sa propre largeur vers la gauche pour la centrer */
  transform: translateX(-50%);
  min-height: 100px;

}

/* input devises */

.devise {
  position: absolute;
  bottom: 0;
  right: 5px;
  font-size: 0.8em;
}

.likeInput .devise {
  bottom: 20px;
}

#simulateur input[type="text"] {
  text-align: center;
}

#simulateur #sFicheContact input[type="text"] {
  text-align: unset;
}

.tooltip {
  display: block;
  position: relative;
  background-color: #fff;
  padding: 5px;
  border-radius: 3px;
}

.popover {
  text-align: center;
  width: 300px;
}

.check {
  font-size: 20px;
  color: #008000;
}

#simulateur {
  position: relative;
}

#mainSVG {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

@keyframes rainbow {
  0% {
    background-color: rgb(138, 53, 138);
  }

  25% {
    background-color: rgb(54, 54, 146);
  }

  50% {
    background-color: rgb(60, 122, 60);
  }

  75% {
    background-color: rgb(145, 145, 80);
  }

  100% {
    background-color: rgb(139, 86, 86);
  }
}

.patienter {
  background: linear-gradient(rgba(0, 0, 0, 0.7), rgba(0, 0, 0, 0.7));

  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  text-align: center;
  z-index: 2;
}

.patienter .svgContainer {
  width: 100%;
  max-width: 500px;
  margin: auto;
  margin-top: 450px;
}

.text-etape1 {
  color: var(--colorEtape1);
}

.text-etape2 {
  color: var(--colorEtape2);
}

.text-etape3 {
  color: var(--colorEtape3);
}

.text-etape4 {
  color: var(--colorEtape4);
}

.text-etape5 {
  color: var(--colorEtape5);
}

.text-etape6 {
  color: var(--colorEtape6);
}

.text-etape7 {
  color: var(--colorEtape7);
}

.text-etape8 {
  color: var(--colorEtape8);
}


.white {
  color: #f2f2f2;
}

.center {
  text-align: center;
  margin: auto;
}

.no-border {
  border: none !important;
}

#navigation .logo {
  width: 17px;
  height: auto !important;
  display: inline-block;
  margin-right: 0 !important;
}

.logo-noirToBlanc {
  filter: invert(1);
}

.logo-noirToVert {
  -webkit-filter: hue-rotate(180deg);
  filter: hue-rotate(180deg);
}

/* ----- form ----- */

.form-group {
  margin: 5px 0;
}

.spaceBetween {
  display: flex;
  justify-content: space-between;
}


.labelOut {
  position: absolute;
  left: -99999999px;
  top: -9999999999px;
}

i.rotate-180 {
  transform: rotateY(180deg);
}


.blur {
  color: transparent;
  text-shadow: 0 0 7px #000;
}



.progressBarCursor,
.progressBarCursor input[type="range"] {
  min-width: 100% !important;

}

.progressBarCursor input[type="range"] {
  height: 7px;
  margin-top: 10px;
  margin-bottom: 5px;
  outline: none;
  transition: background 450ms ease-in;
  -webkit-appearance: none;
  position: relative;
  margin-top: 0;
}

#sBaseCalculPrincipal .progressBarCursor input[type="range"] {
  background: linear-gradient(to right, var(--colorEtape3) 0%, var(--colorEtape3) 50%, #fff 50%, #fff 100%);
  border: solid 1px var(--colorEtape3);
}

#ongletCredit .progressBarCursor input[type="range"] {
  background: linear-gradient(to right, var(--colorEtape6) 0%, var(--colorEtape6) 50%, #fff 50%, #fff 100%);
  border: solid 1px var(--colorEtape6);
}

/*
*************************************************
****************** END GENERIQUE *****************
*************************************************
 */

/**************************************************************************************************************
************************************************ HEADER ***************************************************
**************************************************************************************************************/
header {
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 999;
}

.logo {
  height: 65px;
  cursor: pointer;
  margin-right: 10px;
}

header .titreMenu img.logotext {
  margin-top: 7px;
}

header .titreMenu {
  border: 2px solid #ffd874;
  border-top: none;
  border-bottom: none;
  padding: 0 10px;
}

/* ----- nav mobile ----- */
.navbar-toggler {
  background-color: #ffd874;
}

.menuConnection .legende {
  padding: 4px 4px 0 4px;
  margin-bottom: 0;
  min-width: 100px;
  font-size: 0.8em;
}

.menuConnection .legende p {
  margin-left: 10px;
}

#nav-Navigation {
  opacity: 0.93;
}

input.calcule {
  background-color: #eaeded;
}

.menuConnection>li>div>div {
  width: 40px;
  height: 15px;
  margin-top: 2px
}

.menuConnection .legende .saisie,
.menuConnection .legende .calcule {
  border: 1px solid #c8c8c8;
}

.menuConnection .legende .obligatoire,
.menuConnection .legende .saisiePossible {
  font-size: 1.4em;
  border: 1px solid #f2f2f2;
  border-radius: 15%;
  width: 37px;
  height: 25px;
  background-color: #f2f2f2;
}

.menuConnection .legende .obligatoire p,
.menuConnection .legende .saisiePossible p {
  margin-left: 7px;
  margin-top: 2px;
}

.hiddenObligatoire span.obligatoire {
  display: none;
}

.menuConnection .legende .obligatoire {
  color: #f00;
}

.menuConnection .legende .saisiePossible {
  color: #00f
}

#navInfoConnexion {
  margin: auto;
}

.menuConnection a,
.menuConnection a:hover,
.menuConnection:visited,
.menuConnection:link {
  color: #f2f2f2;
  font-size: 1em;
}

.menuConnection>div>li>div>p {
  font-size: 0.6em;
  color: #f2f2f2;
  margin-left: 5px;
  margin-top: 2px;
  text-transform: initial;
}

#header-title-mobile,
#header-menu-mobile {
  color: var(--colorEtape3);
  text-transform: uppercase;
  font-weight: bold;
}



header {
  transition: top 0.3s ease-in-out;
  color: #fff;
}

header #menu-logo,
header #menuIntermediaire,
header #nav-Navigation {
  background-color: var(--colorEtape3);
  width: 100%
}

header #nav-Navigation {
  width: 100%;
  z-index: 2;
}

.navbar-light .navbar-nav .nav-link {
  color: #f2f2f2;
}

header a,
header li {
  text-transform: uppercase;
  font-size: 1em;
  background-color: var(--colorEtape3);
  text-align: left;
  margin-top: 3px;
  margin-bottom: 3px;
}

#dateMiseAjour {
  font-size: 0.5em !important;
  margin-left: 10px;
  width: 50px;
}

header li>i {
  margin-right: 10px;
}

header .link {
  font-size: 0.9em;
}

header a:hover {
  color: #000;
}

header ul {
  border-bottom: 2px solid var(--colorEtape3);
  margin-bottom: -5px;
}

header ul li:nth-child(1) {
  border-right: 2px solid var(--colorEtape3);
}

header #menuIntermediaire .actions {
  display: flex;
  justify-content: flex-start;
  width: 100%;
}

header #menuIntermediaire .actions li {
  width: auto;
  margin-right: 10px;
}

#menuIntermediaire .etape1 {
  width: 110px;
  margin-left: 25px;
  padding: 5px 5px 5px 5px;
  border: 1px solid #f2f2f2;
}

#menuIntermediaire .disquette {
  margin: auto;
  margin-right: 25px;
  width: 35px;
}

#menuIntermediaire input {
  height: 40px;
  width: 320px;
}

.mobileMenuBottom {
  background-color: var(--colorEtape3);
}

.mobileDiconnect {
  padding: 3rem auto;
  background-color: var(--colorEtape3);
}

.navbar-brand {
  font-size: 2.25rem;
}

/*-----*/

.mainHeader {
  background-color: var(--colorEtape3);
  color: #fff;
  margin-top: -19px;
}

#nav-Navigation {
  width: 240px;
  padding: 10px;
}

#nav-Navigation ul {
  border-top: 2px solid #f2f2f2;
  text-align: left;
  padding-top: 5px;
}

#nav-Navigation ul a,
#nav-Navigation ul a:hover,
#nav-Navigation ul a:link,
#nav-Navigation ul a:visited,
#listeMesSitesDeRecherches a {
  color: #f2f2f2;
  display: block;
  text-align: left;
}

header .nav-brand div:not(.titreMenu) {
  display: none;
}

header .titreMenu {
  border: none;
}

#divDuBtnNav {
  background-color: var(--colorEtape3);
  border-top: 1px solid #0b5345;
  padding: 5px;
  display: flex;
}

#btnMenuIntermediaire,
#btnMenuIntermediaire:focus {
  background-color: transparent;
  box-shadow: none;
  left: 10px;
  z-index: 1;
  width: 35px;
  height: 35px;
  display: flex;
  justify-content: center;
  align-items: center;
}

#btnMenuIntermediaire i {
  font-size: 2.3em;
  color: #fff;
}

#menuIntermediaire {
  position: relative
}

#menuIntermediaire .logo {
  height: 35px;
  margin: auto 5px;
}

#menuIntermediaire i.logo {
  font-size: 1.3em;
  height: unset;
}

#menuIntermediaire label {
  position: absolute;
  left: -9999999px;
  top: -9999999px;
}

#bandeauAcces {
  position: absolute;
  z-index: 99;
  background-color: var(--colorEtape6);
  padding: 25px;
}

#listeMesSitesDeRecherches {
  height: 45px;
  margin-top: -3px;
}

#listeMesSitesDeRecherches a {
  display: block;
  width: 38px;
  height: 38px;
  padding: unset;
  margin-top: 0;
}

#listeMesSitesDeRecherches .btn-abonnement {
  width: 100%;
  height: 38px;
  max-height: 38px;
  margin-left: 35px;
  padding-right: 5px;
}

#listeMesSitesDeRecherches .btn-abonnement img {
  width: 65px !important;
  max-width: unset;
}

#logoheader {
  min-height: 81px;
}

#listeMesSitesDeRecherches img {
  width: 100%;
  height: 100%;
}

header .urlAnnonce {
  margin-top: -3px;
}

/*MEDIA QUERIES HEADER*/
@media screen and (min-width: 420px) {
  header .nav-brand div:not(.titreMenu) {
    display: initial;
  }


}

header .contact-tooltip {
  position: initial;
  margin-top: 10px;
}

main {
  margin-top: 140px;
}

/**************************************************************************************************************
  ************************************************ END HEADER ***************************************************
  **************************************************************************************************************/

/**************************************************************************************************************
************************************************ HOME ***************************************************
**************************************************************************************************************/

#home #section1 {
  margin-top: 155px;
  margin-bottom: 10px;
  max-width: 1000px;
  margin: auto;
}



#home section h1 {
  text-align: center;
  font-size: 2em;
  font-family: "Oxlaide";
}



#home #section2 ul {
  margin: 0;
}

#home #section2 ul:first-child a {
  width: 200px;
  font-size: 1.5em;
  text-transform: uppercase;
}

#home #section2 ul:not(:first-child) a {
  margin-top: 2px;
}

#home h1,
#phraseAccueil {
  color: #000;
  text-transform: unset;
}

/**************************************************************************************************************
************************************************ END HOME ***************************************************
**************************************************************************************************************/

/**************************************************************************************************************
************************************************ SIMULATEUR ***************************************************
**************************************************************************************************************/
#simuHeader {
  background-color: var(--colorEtape3);
}

#simuHeader input {
  align-self: center;
}

#simuHeader>div {
  min-width: 270px;
  text-align: right;
  margin: 2px auto;
  color: #f2f2f2;
  width: 90%;
}

.deviseMarginRight {
  margin-right: 15px;
}

#divTravaux>div {
  margin-top: -2px !important;
}

#divTravaux>div>label {
  width: 175px;
}

#contentSbaseCalcul .accordion-header {
  margin-left: -40px;
}

#formSbaseCalcul {
  width: 95%;
  margin: 10px auto;
  border: 3px solid #f2f3f4;
  padding-top: 15px;
}

#ficheContact {
  margin-bottom: 25px;
}

#sIndicateurs .cashflow .fakeInput {
  width: 140px;
}

#btnFicheContact {
  display: none;
}

.formRow,
#travaux .formRow {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 5px;
}

.formRow label,
.formRow input {
  display: block;
}

.formRow label {
  margin-right: 0;
  margin-right: auto;
}

.bloc-label1 {
  border: 1px solid rgb(200, 200, 200);
  border-radius: 3px;
  height: 25px;
  margin-right: 5px;
  padding: 2px 5px;
}

.row1 {
  margin: 15px 30px;
}

#contentSbaseCalcul .accordion-body .row1 {
  margin: 5px 30px;
}

.row1>input,
.row1>.likeInput,
.row1>select,
.rowTravaux>input {
  width: 100%;
  min-width: 150px;
}

.row1>.likeInput input {
  width: 100%;
}


.tooltipss {
  position: absolute;
  top: 0;
  right: 0;
}

#simulateur section {
  width: 95%;
  margin: auto;
  border: 3px solid #f2f3f4;
  padding: 5px;
}

/* ---------------------------------------- COLONNE 1 ---------------------------------------- */

.typeAchatInputRow .tooltipss {
  position: inherit;
  top: unset;
  right: unset;
}

#collapseBTNSficheContact {
  height: 40px;
  padding: 0;
}

#collapseBTNSficheContact .simuSectionsHeaders {
  margin: unset;
  width: 100%;
  border-bottom-left-radius: 10px;
}

#accordionsFicheContact .accordion-item {
  border-bottom-left-radius: 12px;
}

#accordionsFicheContact img {
  margin-left: 10px;
}

.simuSectionsHeaders {
  position: relative;
  margin: 35px 0 20px;
  background: #DCEDF8;
}

.simuSectionsHeaders>img {
  max-width: 40px;
  max-height: 60px;
  height: auto;
  bottom: 5px;
}

.simuSectionsHeaders>h2 {
  padding: 5px 40px;
  text-transform: uppercase;
  font-size: 1.4rem;
  font-weight: bold;
  margin-left: -30px;
}

/* ---------------------------------------- VISUELS SIMULATION ---------------------------------------- */

#sBaseCalculSimulation {
  overflow-y: auto;
  display: flex;
}

#sBaseCalculSimulation>div {
  max-width: 85%;
  height: 100%;
  width: 85%;
  background-size: 85%;
  background-repeat: no-repeat;
  background-position-x: center;
  background-position-y: center;
  margin: 0 auto;
}

#sBaseCalculSimulation>.maison {
  background-image: url(../img/visuels/photosLibres/Rabbit-Immo-MAISON-SELECTION.jpg);
}

#sBaseCalculSimulation>.appartementUnique {
  background-image: url(../img/visuels/photosLibres/Rabbit-Immo-APPARTEMENT-SELECTION.jpg);
}

#sBaseCalculSimulation>.appartementMultiple {
  background-image: url(../img/visuels/photosLibres/Rabbit-Immo-LOT-APPARTEMENT-SELECTION.jpg);
}

#sBaseCalculSimulation>.parking1 {
  background-image: url(../img/visuels/photosLibres/GARAGE.jpg);
}

#sBaseCalculSimulation>.parking2 {
  background-image: url(../img/visuels/photosLibres/PARKING.jpg);
}

#sBaseCalculSimulation>.parking3 {
  background-image: url(../img/visuels/photosLibres/PARKING.jpg);
}

#sBaseCalculSimulation>.parking4 {
  background-image: url(../img/visuels/photosLibres/PARKING.jpg);
}

#sBaseCalculSimulation>.parking5 {
  background-image: url(../img/visuels/photosLibres/PARKING.jpg);
}

#sBaseCalculSimulation>.immeuble {
  background-image: url(../img//visuels/photosLibres/Rabbit-Immo-IMMEUBLE-SELECTION.jpg);
}

#sBaseCalculSimulation>.autreOrDefault {
  background-image: url(../img//visuels/photosLibres/Rabbit-Immo-AUTRE-SELECTION.jpg);
}

#sBaseCalculSimulation .toit_immeuble {
  background-image: url(../img/visuels/toit-immeuble.png);
  width: 100%;
  height: 70px;
  min-height: 70px;
  background-repeat: no-repeat;
  background-position-x: center;
  background-position-y: center;
  background-size: cover;
  margin: 0 auto;
}

#sBaseCalculSimulation>.immeuble .etage {
  background-color: #F1693D;
  width: 100%;
  height: 60px;
  min-height: 60px;
  padding: 5px 2px;
  display: flex;
  flex-direction: row;
  overflow-x: hidden;
}

#sBaseCalculSimulation>.immeuble .etage .appartement {
  background: rgb(255, 247, 125);
  background: -moz-linear-gradient(135deg, rgba(255, 247, 125, 1) 50%, rgba(255, 236, 88, 1) 50%);
  background: -webkit-linear-gradient(135deg, rgba(255, 247, 125, 1) 50%, rgba(255, 236, 88, 1) 50%);
  background: linear-gradient(135deg, rgba(255, 247, 125, 1) 50%, rgba(255, 236, 88, 1) 50%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#fff77d", endColorstr="#ffec58", GradientType=1);
  margin: 0 2px;
  height: 100%;
  width: 100%;
  min-width: 88px;
  display: flex;
}

#sBaseCalculSimulation>.immeuble .etage .appartement>div {
  height: 100%;
  width: 50%;
  position: relative;
}

#sBaseCalculSimulation>.immeuble .etage .appartement>div>span {
  position: absolute;
}

#sBaseCalculSimulation>.immeuble .etage .appartement>div:nth-of-type(1)>span:nth-of-type(1) {
  left: 2px;
}

#sBaseCalculSimulation>.immeuble .etage .appartement>div:nth-of-type(1)>span:nth-of-type(2) {
  top: 37%;
  left: 2px;
}

#sBaseCalculSimulation>.immeuble .etage .appartement>div:nth-of-type(2)>span:nth-of-type(1) {
  bottom: 0;
  right: 2px;
}

#sBaseCalculSimulation>.immeuble .etage .appartement>div:nth-of-type(2)>span:nth-of-type(2) {
  top: 37%;
  right: 2px;
}

/* sBaseCalculSimulation */

#sBaseCalcul #sBaseCalculSimulation {
  width: 100%;
  height: 300px;
  background-color: #dfedee;
}

/********* Accordéon****************/
#contentSbaseCalcul .accordion-item {
  border: none;
}

#contentSbaseCalcul .accordion-button {
  top: -10px;
}

#contentSbaseCalcul .accordion-button,
#contentSbaseCalcul .accordion-button:not(.collapsed),
#contentSbaseCalcul .accordion-header {
  width: 0;
  background-color: unset;
  border: none;
  box-shadow: none;
}

#simulateur #ongletCredit>div:nth-child(1)>div:nth-child(2)>ul:nth-child(5)>li:nth-child(7) {
  background-color: var(--colorEtape5);
}

#contentSbaseCalcul .accordion-button::after {
  background-color: #ffe8ac;
  width: 25px;
  height: 25px;
  background-position: center;
  border-radius: 50%;
  fill: #f2f2f2;
  position: absolute;
  top: 10px;
  cursor: pointer;
}

#accordionMensualite {
  width: unset !important;
}

#ongletCredit .accordion-body {
  width: 100%;
  display: block;
  padding-top: 0;
}

/******************** Fin accordéon ******************/

#simulateur #sIndicateurs ul>li>div:nth-child(2) {
  /* visibility: hidden; */
  display: none;
}

#simulateur #calculerIndicateurs {
  display: block;
  text-align: center;
  margin: auto;
  /* margin-right: 10px; */
  margin-top: 10px;
  border-radius: 3px;
  background-color: var(--colorEtape2);
}

#formSbaseCalcul>div {
  margin-bottom: 10px;
}

#contentSbaseCalcul>div,
#sIndicateurs>div {
  margin: 10px auto;
  border-style: solid;
  border-width: 1px;
  border-left-width: 10px;
  border-radius: 12px
}

#sBaseCalculPrincipal,
#sIndicateurs>div {
  border-color: var(--colorEtape3);
}

#ongletLoyer {
  border-color: var(--colorEtape4);
}

#ongletCharges {
  border-color: var(--colorEtape5);
  ;
}

#ongletCredit {
  border-color: var(--colorEtape6);
}

#simulateur #legende {
  width: 70%;
  margin-bottom: 20px;
}

.input-icon {
  position: relative;
}

.input-icon>i {
  position: absolute;
  display: block;
  transform: translate(0, -50%);
  top: 50%;
  pointer-events: none;
  width: 25px;
  text-align: center;
  font-style: normal;
  z-index: 1;
}

.input-icon>input {
  padding-left: 25px;
  padding-right: 0;
}

.input-icon-right>i {
  right: 0;
}

.input-icon-right>input {
  padding-left: 0;
  padding-right: 25px;
  text-align: right;
}

/* ---------------------------------------- COLONNE 1 */
/* ---------------------------------------- BLOC APRES VISUEL ---------------------------------------- */

#sBaseCalculBien {
  border: 2px solid var(--colorEtape1);
  border-left-width: 10px;
  border-top-left-radius: 12px;
  border-top-right-radius: 12px;
  margin-top: 10px;
}

#sBaseCalculBien .row1 {
  margin-top: 5px;
  margin-bottom: 5px;
  ;
}

.formRow .relative .row1 select {
  min-width: 150px
}

#sBaseCalculBien .row1 label {
  width: 150px !important;
}

#sBaseCalculBien .devise {
  font-size: 0.8em;
  text-align: right;
  display: block;
  width: 40px;
  position: unset;
  margin-left: -42px;
  z-index: 1;
  margin-top: 6px;
  margin-bottom: -6px;
}

#etape2Col2 {
  width: 120px;
  max-width: 120px;
  margin-left: auto !important;
}

#etape2Col2 .tooltipss {
  top: -20px;
  right: -4px;
}

#sBaseCalcul6 {
  border-color: var(--colorEtape7);
}

/* ----- fiche contact ----- */
#fiche_contact_dateRendez_vous {
  width: 45%;
}

#fiche_contact_dateRendez_vous>input {
  width: 100%;
  max-width: unset;
}

#sFicheContact .form-group {
  width: 95%;
  padding-right: 5px;
  margin: 5px auto;
}

#sFicheContact .form-group-textarea {
  padding-right: 0;
}

/* ----- type d'achat ----- */
#typeAchat .formRow {
  width: 95%;
  margin: 5px auto;
}

/* ----- MEDIA QUERIES COLONNE 1 : BLOCS VISUELS, APRES VISUELS, FICHE CONTACT ET TYPE D'ACHAT ----- */
@media screen and (max-width: 360px) {

  /* bloc apres visuel  */
  #sBaseCalculBien>.formRow {
    flex-direction: column;
    max-width: 150px;
    margin: 5px auto;
    padding-right: 0;
  }

  #sBaseCalculBien>.formRow>div,
  #sBaseCalculBien>.formRow select,
  #sBaseCalculBien>.formRow input {
    width: 100%;
  }

  #sBaseCalculBien .formRow label {
    text-align: left;
  }

  #sBaseCalculBien .contact-tooltip {
    top: 0;
  }

}

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

  /* fiche contact */
  #sFicheContact .form-group {
    flex-direction: column;
  }

  #sFicheContact .form-group>* {
    width: 100%;
    margin: 0 auto;
  }

  #sFicheContact .form-group>div:nth-of-type(1),
  #sFicheContact .form-group>label {
    border: none;
  }
}

#simulateur #typeAchat input[type="radio"] {
  margin-right: 10px;
}

/* ----- FIN ----- COLONNE 1 ----- */

/* ---------------------------------------- ETAPES 1-6 */
/* ---------------------------------------- ETAPE 1 ---------------------------------------- */
#travaux>div {
  background-color: #f6f6f6;
  margin: 5px 0;
  padding: 10px 0;
  border-radius: 3px;
}

.travauxTitleColumn {
  margin-left: 5px;
  margin-top: -5px;
  margin-bottom: 15px;
  display: block;
  font-weight: bold;
  color: var(--colorEtape3);
}

#travaux #travaux-column-labels {
  display: none;
}

/* ---------------------------------------- ETAPE 5 ---------------------------------------- */
#sBaseCalcul6 .formRow input,
#sBaseCalcul6 .formRow select {
  min-width: 150px;
}

/* fin etape 5 */

/* ---------------------------------------- ETAPE 6 : indicateurs ---------------------------------------- */
#sIndicateurs {
  border-color: var(--colorEtape3);

}

#sIndicateurs .border-top-crochet,
#sIndicateurs .border-bottom-crochet {
  width: 40px;
  margin-left: -8px;
  border-top-width: 1px;
  border-bottom-width: 1px;
  border-style: solid;
  border-color: var(--colorEtape3);
}

#sIndicateurs .icon {
  align-self: center;
}

#sIndicateurs img {
  width: 40px;
}

#sIndicateurs .tootltipButton img {
  width: 60%;
}

#sIndicateurs>div.first {
  margin-top: 20px;
}

div#sIndicateurs .border-left {
  margin: 5px auto;
  border-left: 2px solid var(--colorEtape3);
  margin-left: -15px;
  width: calc(83.33333333% + 15px);
}



#sIndicateurs .etape-content {
  padding: 5px 10px;
}

#sIndicateurs .ligne {
  margin: 5px auto;
  position: relative;
  flex-direction: row !important;
}

#sIndicateurs .ligne>*:not(.tooltipss) {
  width: 100%;
}

#sIndicateurs .fakeInput {
  width: 130px;
  max-width: 130px;
}

#sIndicateurs .ligne .tooltipss {
  position: unset;
  top: unset;
  left: unset;
  right: unset;
}

.row1 .row {
  padding-left: 0;
}

div#sIndicateurs .nomIndicateur:not(.border-left .nomIndicateur) {
  margin-left: -15px;
}

div#sIndicateurs .border-left .nomIndicateur {
  margin-right: 15px;
}

/* div#sIndicateurs .border-left .nomIndicateur{
  margin-left: 0;
} */

/* ---------------------------------------- MEDIA QUERIES ETAPES 1-6 */
@media screen and (min-width: 420px) {

  /* --------------------- ETAPE 6 : indicateurs --------------------- */
  #sIndicateurs .ligne {
    flex-direction: row !important;
  }

  #sIndicateurs .ligne .tooltipss {
    right: -22px;
  }

  #sIndicateurs .ligne.ligne-scrochet .tooltipss {
    right: -15px;
  }

}

@media screen and (min-width: 460px) {

  /* --------------------- ETAPE 6 : indicateurs --------------------- */
  #sIndicateurs .etape-content {
    padding: 5px 15px;
  }
}

/* ----- FIN---------------------------------------- MEDIA QUERIES ETAPES 1-6 */

/* ---------------------------------------- LOYER / CHARGES */
#simulateur #sLoyerEtage,
#simulateur section {
  margin-bottom: 50px;
}

#sLoyerEtage .simuSectionsHeaders {
  background-color: #ffd874;
  color: #0e0e0e;
}

#sChargesCalcul .simuSectionsHeaders,
#sLoyerEtage .simuSectionsHeaders {
  margin: 0;
}

#simulateur #etagesLabelColumn {
  display: none !important;
}

.etage .appartement>div:not(.etageLabel),
#sloyerEtagetotalTotal>div,
#totaux>div {
  width: 75%;
  margin: 5px 0 5px 30px;
}

.etage .appartement .etageLabel {
  width: 100%;
  margin: 5px auto;
}

.etage .appartement>div input,
.etage .appartement>div select,
#sloyerEtagetotalTotal input,
#totaux input {
  width: 100%;
}

#sLoyerEtage .tooltipss {
  top: 8px;
  right: 8px;
}

#divCharges {
  padding: 0;
}

#divCharges>div>div {
  margin-top: 8px;
}

#simulateur #sChargesCalcul h3 {
  color: #f2f2f2;
  background-color: var(--colorEtape5);
  text-align: center;
  width: 90%;
  margin: 5px 0;
  text-transform: uppercase;
  padding: 3px;
}

#simulateur #sChargesCalcul input {
  width: 100%;
}

#simulateur #sChargesCalcul .div-wrapper {
  position: absolute;
  top: 3px;
  right: 0;
}

#chargesFaculativesHabituel>div>div {
  margin: 2px 0;
}

#chargesFaculativesHabituel .label {
  padding-right: 70px;
}

#variables li {
  background-color: #8e44ad !important;
}

.warning-bkg {
  background-color: #c0392b !important;
}

.bi-radioactive {
  background-color: #f1c40f;
  border-radius: 50%;
}


/* ---------------------------------------- MEDIA QUERIES */
@media screen and (min-width: 420px) {

  .etage .appartement>div:not(.etageLabel),
  #sloyerEtagetotalTotal>div,
  #totaux>div {
    width: 55%;
    margin-left: 50px;
  }
}

@media screen and (min-width: 540px) {

  .etage .appartement>div:not(.etageLabel),
  #sloyerEtagetotalTotal>div,
  #totaux>div {
    width: 40%;
    margin-left: 100px;
  }
}

/* -------FIN------------------------------------------- MEDIA QUERIES */


.simuSections,
.contentVisuel {
  position: relative;
}

.titleEtape {
  color: #f2f2f2;
  text-transform: uppercase;

}

.titleEtape,
.contentVisuel .titleEtape {
  top: 0;
  left: 0;
  width: 100%;
  text-align: center;
  color: #fff;
  text-transform: uppercase;
}

.simuSections .titleEtape p:nth-child(1),
.contentVisuel .titleEtape p:nth-child(1) {
  width: 100px;
  margin-right: auto;
  margin-left: auto;
  border-bottom: 1px solid #f2f2f2;
  text-transform: uppercase;
  font-weight: bold;
  padding: 2px;
}

.simuSections .titleEtape p:nth-child(2),
.contentVisuel .titleEtape p:nth-child(2) {
  margin-top: -10px;
  margin-bottom: 2px;
}

#ongletLoyer .titleEtape {
  background-color: var(--colorEtape4);
}

#ongletCharges .titleEtape {
  background-color: var(--colorEtape5);
}

#sBaseCalculBien .titleEtape {
  background-color: var(--colorEtape1);
}

.titleEtape {
  border-top-right-radius: 8px;
}

#sBaseCalculBien #listeRPlus {
  position: absolute;
  background-color: var(--colorEtape3);
  width: 100%;
  text-align: center;
  color: #f2f2f2;
  top: 48px;
  z-index: 2;
  height: 200px;
  overflow: auto;
}

#sBaseCalculBien #listeRPlus li:not(.separator) {
  display: flex;
  align-items: center;
  height: 30px;
  justify-content: center;
}

#sBaseCalculBien #listeRPlus li:not(.separator):hover {
  background-color: #ffe8ac;
  color: #000;
}


#sBaseCalculBien .borderTab {
  border: 2px solid var(--colorEtape1);
  border-top: none;
  border-left-width: 10px;
}

#typeAchat {
  border: 2px solid var(--colorEtape2);
  border-left-width: 10px;
  max-height: 160px;
  border-radius: 12px;
}

#typeAchat .titleEtape {
  background-color: var(--colorEtape2);
}

#ongletCredit .titleEtape {
  background-color: var(--colorEtape6);
}

#sBaseCalcul6 .titleEtape {
  background-color: var(--colorEtape7);
}

#sBaseCalculPrincipal .titleEtape,
#sIndicateurs .titleEtape {
  background-color: var(--colorEtape3);
  border-top-right-radius: 8px;
}

.titleEtape span {
  display: table;
  margin: auto 0 0 auto;
  font-size: 0.7em;
  text-transform: initial;
}

.hasSectionHeader .simuSectionsHeaders {
  background-color: var(--colorEtape3);
  color: #f2f2f2;
}

.borderEtape {
  border-style: solid;
  border-width: 1px;
  border-left-width: 10px;
  border-top-width: 4px;
  border-radius: 10px
}

#sBaseCalculFinancement {
  flex-wrap: nowrap;
}

#sBaseCalculFinancement>label {
  min-width: 120px;
}

#sBaseCalculFinancement .tooltipss {
  position: inherit;
}

#sBaseCalcul6 .tooltipss {
  right: -25px;
}

#sChargesCalcul .simuSectionsHeaders {
  background-color: var(--colorEtape5);
}

#simulateur #sCreditCalcul {
  padding: 0;
}

#simulateur #sCreditCalcul .simuSectionsHeaders {
  background-color: #beb5ae;
  color: #fff;
  margin-top: 0;
}

#simulateur #sCreditCalcul form .formRow label,
#sCreditCalcul form .formRow .champDeroulant {
  width: 90%;
}

#simulateur #sCreditCalcul form .formRow input:not([type="checkbox"]) {
  width: 100%;
}

#sCreditCalcul #sCredit {
  padding: 5px;
}

#sLoyerEtage .appartement {
  display: flex;
  flex-direction: row;
}

#simulateur #etagesAll>div>div {
  display: flex;
  flex-direction: column;
  justify-content: space-evenly;
}

#simulateur .listeDureeCredit {
  position: absolute;
  background-color: var(--colorEtape3);
  color: #f2f2f2;
  right: 0;
  top: 25px;
  width: 165px;
  z-index: 2;
  text-align: center;
}

#simulateur .listeDureeCredit li:not(.separator) {
  display: flex;
  align-items: center;
  height: 30px;
  justify-content: center;
}

#simulateur .listeDureeCredit li:not(.separator):hover {
  background-color: #ffe8ac;
  color: #000;
}

#simulateur .listeDureeCredit li.backgroundRed:hover {
  background-color: #f5b041;
}


.separator {
  width: 100%;
  height: 2px;
  border-top: 2px solid #d7dbdd;
  margin: auto;
}


#sIndicateurs .separator {
  margin-top: 10px;
}

#simulateur select {
  text-align: center;
}

#simulateur #divCharges label {
  position: absolute;
  left: -99999px;
}

#simulateur #sChargesCalcul label {
  position: absolute;
  top: -10000000px;
  left: -999999999px;
}

#simulateur #sChargesCalcul .deviseCharge {
  position: absolute;
  right: 15px;
}

#sLoyerEtage .etage:nth-child(odd) {
  background-color: #eafaf1;
  margin-top: 5px;
  margin-bottom: 5px;
}

#sLoyerEtage .appartement {
  margin: 1px auto;
}


/** Bouton interrupteur **/

/* checkboxn° ck */
/********************Button 2*******************/
.wrapper {
  position: relative;
}

.box-2 {
  width: 60px;
  height: 12px;
  background: rgb(200, 200, 200);
  position: relative;
  border-radius: 12px;
  margin: auto;
}

.box-2 input {
  position: absolute;
  width: 100%;
  height: 100%;
  cursor: pointer;
  opacity: 0;
  z-index: 999;
}

.box-2 .toogle {
  position: absolute;
  z-index: 998;
  width: 25px;
  height: 25px;

  top: -6px;
  box-shadow: 0px 0px 3px rgb(50, 50, 50) inset;
  -webkit-transition: all 0.2s ease;
  -moz-transition: all 0.2s ease;
  -ms-transition: all 0.2s ease;
  -o-transition: all 0.2s ease;
  transition: all 0.2s ease;
  text-align: center;
  border-radius: 100%;
  display: table-cell;
  background: #bf0338;
}

.box-2 .toogle:before {
  content: "OFF";
  color: #fff;
  text-shadow: 1px 1px #000;
  font-family: tahoma;
  font-size: 11px;
  vertical-align: middle;
}

.box-2 input:checked~.toogle {
  margin-left: 35px;
  background: var(--colorEtape3);
}

.box-2 input:checked+.toogle:before {
  content: "ON";
}

.online {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--colorEtape3);
  margin: 25px auto;
  padding: 10px;
  width: 100%;
}

.online label {
  position: absolute;
  left: -99999px;
}

.online input {
  margin: 5px auto;
  width: 100%;
}

#sFicheContact #fiche_contact_annonce {
  width: 100%;
  height: 75px;
}

#sFicheContact label[for="fiche_contact_annonce"] {
  height: fit-content;
}

#simulateur #sChargesCalcul .accordion-header {
  margin-left: unset;
}


#simulateur #btncollapseOptionCharge {
  border: 1px solid var(--colorEtape3);
  padding-top: 5px;
  margin-top: 5px;
}

.backgroundRed {
  background-color: var(--colorEtape5);
}

/**************************************************************************************************************
************************************************ END SIMULATEUR ***********************************************
**************************************************************************************************************/





/**************************************************************************************************************
************************************************ COMPARATEUR ***********************************************
**************************************************************************************************************/

#pageComparateur h1 {
  color: var(--colorEtape3);
}

#pageComparateur h2 {
  font-weight: bold;
}

#pageComparateur>section {
  width: 90%;
  margin: 0 auto;
}

#pageComparateur label {
  box-shadow: none;
}

/*----simulations-----*/

#pageComparateur>section#simulations>div#simuHeader {
  display: none;
}

#pageComparateur>section#simulations>form#formSimu {
  display: flex;
  flex-direction: column;
}

#pageComparateur>section#simulations>form#formSimu>button {
  max-width: 150px;
  margin: 20px auto;
}

/*----comparateur-----*/

#pageComparateur>section#simulations>form>ul>li {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: flex-start;
}

#pageComparateur>section#simulations>form>ul>li>label {
  text-align: left;
  margin-left: 20px;
}

#comparateur>h2 {
  text-align: center;
}

#comparateur h3 {
  font-weight: bold;
  color: var(--colorEtape3);
  border-bottom: 1px solid var(--colorEtape3);
}

#comparateur .mobileScreen div.simuCard {
  padding: 10px 20px;
  background-color: #fff;
  margin: 20px auto;
}

#comparateur .mobileScreen div.simuCard>ul {
  margin: 25px 0;
}

#comparateur .mobileScreen div.simuCard>ul>li {
  margin: 5px 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
}

#comparateur .mobileScreen div.simuCard>ul>li>span:nth-of-type(1) {
  width: 60%;
  font-weight: bold;
}

/**************************************************************************************************************
************************************************ ECHEANCIER ***********************************************
**************************************************************************************************************/


#echeancier article {
  margin: auto;
  max-width: 630px;
  background-color: #DFEDEE;
  text-align: center;

}

#echeancier article .echeancier-header {
  background-color: #318796;
  color: #fff;
  width: 100%;
  margin: auto;
  padding: 0 5px;
}

#echeancier article table {
  margin: auto;
  border: 2px solid var(--colorEtape3);
  border-left-width: 10px;
  border-right-width: 10px;
  padding: 5px;
}

#echeancier article thead {
  background-color: var(--colorEtape1);
}

#echeancier article tbody {
  padding: 5px;
}

#echeancier .orange {
  background-color: var(--colorEtape4);
}

.echeancier-details {
  padding: 5px;
  margin-bottom: 10px;
}

.echeancier-details>div {
  background-color: #fff;
  width: 30%;
  margin: 10px;
  padding: 0 5px;
}

.echeancier-details>div:nth-child(1) {
  width: 100%;
}

.echeancier-details>div:last-child {
  width: 50%;
  margin: auto;
}

#echeancier article thead th {
  border: 1px solid gray;
  border-collapse: collapse;
}

#echeancier article thead .annee {
  width: 60px;
}

#echeancier article thead .mois {
  width: 65px;
}

#echeancier article thead .montant {
  width: 110px;
}

#echeancier article thead .charge {
  width: 110px;
}

#echeancier article thead .mensualite {
  width: 110px;
}

#echeancier article thead .capital {
  width: 160px;
}


/**************************************************************************************************************
************************************************ CONTACT ***************************************************
**************************************************************************************************************/

#contact #contact_content {
  height: 400px;
}





/**************************************************************************************************************
************************************************ GLOSSAIRE ***************************************************
**************************************************************************************************************/

#glossaire_index {
  padding: 0 10px;
}

#glossaire_index table {
  margin-top: 20px;
}

#glossaire_index .first-td span {
  font-weight: bold;
}

#glossaire_index .first-td a {
  max-width: 70px;
  margin: 10px 0;
}

#glossaire_index thead {
  display: none;
}

#glossaire_index thead th {
  padding: 5px 10px;
}

#glossaire_index tbody tr td {
  display: none;
  padding: 5px 10px;
}

#glossaire_index tbody tr td:first-of-type,
#glossaire_index tbody tr td:last-of-type {
  display: table-cell;
}

#glossaire_index tbody tr td:last-of-type a {
  max-width: 90px;
}

.table>:not(:first-child) {
  border-top: none;
}

#glossaire_show {
  padding: 0 15px;
}

#glossaire_show table tr {
  display: flex;
  flex-direction: column;
}

#glossaire_show table td {
  word-break: break-word;
}

#glossaire_show .action {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#glossaire_show .action a,
#glossaire_show .action button {
  width: 130px;
  margin: 5px;
}

.glossaire-edit {
  padding: 0 15px;
}

.glossaire-edit h1 {
  padding-top: 10px;
  margin-bottom: 30px;
}

.glossaire-edit #glossaire>div {
  display: flex;
  flex-direction: column;
  margin-bottom: 15px;
}

.glossaire-edit #glossaire textarea {
  min-height: 50px;
}

.glossaire-edit #glossaire .glossaire-desc {
  min-height: 100px;
}

.glossaire-edit .action {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.glossaire-edit .action a,
.glossaire-edit .action button {
  min-width: 150px;
  max-width: 150px;
  margin: 5px;
}

@media screen and (min-width: 460px) {

  #glossaire_index,
  .glossaire-edit {
    padding: 0 20px;
  }

  #glossaire_show {
    margin-top: 150px;
  }

  #glossaire_show .action,
  .glossaire-edit .action {
    flex-direction: row;
  }
}

/**************************************************************************************************************
************************************************ SECURITY ***********************************************
**************************************************************************************************************/

/* ---------------------------------------- CONNEXION ---------------------------------------- */

#connexion>form {
  width: 90%;
  max-width: 320px;
  margin: 50px auto 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#connexion>form>div {
  width: 100%;
  margin: 10px auto;
}

#connexion>form>div>label {
  box-shadow: none;
}

#connexion>form>div:nth-of-type(1)>label,
#connexion>form>div:nth-of-type(2)>label {
  position: absolute;
  left: -9999px;
}

#connexion>form>div>input[type="text"],
#connexion>form>div>input[type="password"] {
  width: 100%;
  box-sizing: border-box;
  padding: 5px 10px;
  border: 1px solid #000;
}

#connexion>form>input[type="submit"] {
  margin-top: 20px;
}

/**************************************************************************************************************
************************************************ ADMINISTRATION ***********************************************
**************************************************************************************************************/

#homeAdministration nav ul li {
  background-color: var(--colorEtape3);
  padding: 5px 15px;
  margin: 5px 10px;
  color: #fff;
  -webkit-box-shadow: 10px 10px 13px -5px rgba(0, 0, 0, 0.17);
  -moz-box-shadow: 10px 10px 13px -5px rgba(0, 0, 0, 0.17);
  box-shadow: 10px 10px 13px -5px rgba(0, 0, 0, 0.17);
}

#homeAdministration nav a {
  color: #fff;
  width: 100%;
  display: inline-block;
}

#homeAdministration nav a:hover {
  text-decoration: underline;
}

#homeAdministration nav li {
  margin: 5px 0;
}

#homeAdministration nav li:hover {
  transform: scale(1.05);
}

#simulateur span.nonApplicable {
  position: absolute;
  left: unset;
  right: 168px;
  top: 26px;
  z-index: 1;
}

#myProjects .mainHeader {
  background-color: var(--colorEtape1);
  padding: 10px 10px;
  margin-bottom: -25px;
  text-align: center;
}

#myProjects .OneProject * {
  align-items: center;
}

#myProjects .OneProject:nth-child(odd) {
  background-color: #eaf2f8;
}

#myProjects .OneProject:nth-child(even) {
  background-color: #d6eaf8;
}

/*************************************************************************************************************************
*************************************************************************************************************************
*************************************************************************************************************************
*********************************************************MEDIA QUERIES
*************************************************************************************************************************
*************************************************************************************************************************
*************************************************************************************************************************/

@media screen and (min-width: 480px) {
  /************************************************* COMPARATEUR ************************************************/

  #comparateur .mobileScreen div.simuCard {
    padding: 10px 55px;
  }

  /* ---------------------------------------- FORMULAIRES ---------------------------------------- */

  .OneProject>li:not(:nth-of-type(1)),
  .paddingProjectMobile,
  .linkToProjects {
    padding-left: 20px !important;
  }

  .linkToProjects {
    font-size: 1.8rem;
    font-weight: bold;
  }

  /************************************************* ECHEANCIER ************************************************/

  #echeancier .echeancier-resum>div {
    display: flex;
  }

  #echeancier>section>div .label {
    display: inline-block;
    ;
    width: 60%;
  }

  #echeancierListe .error-btns {
    display: flex;
    justify-content: center;
  }

  #echeancierListe .error-btns button {
    margin: 0 5px;
  }

  /************************************************* SIMULATEUR ************************************************/
  .row1 {
    margin: 15px 70px;
  }

  .accordion-body {
    margin: 0 60px;
  }

  #ongletCredit .accordion-body {
    width: auto;
  }
}

@media screen and (min-width: 550px) {

  /************************************************* SIMULATEUR ************************************************/
  .row1 {
    margin: 15px 85px;
  }

  #simulateur #sCreditCalcul form .formRow>label,
  #sCreditCalcul form .formRow .champDeroulant {
    width: 45%;
  }

  #sCreditCalcul form .formRow .champDeroulant label {
    width: 100%;
  }

  #sCreditCalcul form input {
    margin-right: 25px;
  }

  #simulateur #sCreditCalcul form .formRow input:not([type="checkbox"]) {
    width: 180px;
  }

  #sCreditCalcul form .devise {
    right: 30px;
    bottom: 3px;
  }

  #sCreditCalcul form span.obligatoire,
  #sCreditCalcul form span.saisiePossible {
    left: unset;
    right: 195px;
  }



}


@media screen and (min-width: 680px) {

  /************************************************* SIMULATEUR ************************************************/
  .row1 {
    margin: 15px 100px;
  }

  #contentSbaseCalcul .accordion-body {
    margin: 0 90px;
  }

  #sCreditCalcul form span.obligatoire,
  #sCreditCalcul form span.saisiePossible {
    right: 232px;
  }

  #simulateur #etagesLabelColumn {
    display: flex !important;
  }

  #simulateur #etagesLabelColumn>li,
  #sLoyerEtage .etage .appartement>div {
    width: 15%;
    margin: 0;
  }

  #simulateur #etagesLabelColumn>li,
  .etage .appartement .etageLabel {
    text-align: center;
  }

  #simulateur #etagesAll>div>div {
    flex-direction: row !important;
  }

  .etage .appartement>div>label {
    position: absolute;
    left: -99999px;
  }

  #sloyerEtagetotalTotal {
    justify-content: center;
  }

  #sloyerEtagetotalTotal>div {
    width: 30%;
    margin: 0 15px;
  }

  #totaux {
    display: flex;
    justify-content: space-evenly
  }

  #totaux>div {
    width: 15%;
    margin: 0;
  }

  #totaux label {
    position: absolute;
    left: -99999px;
  }

  #simulateur .formRow input:not([type="range"]) {
    padding-right: 40px;
  }

  #simulateur #sCreditCalcul form .formRow input:not([type="checkbox"]) {
    width: 218px;
  }
}

/*****************************************************************************************************************************************
********************************************************** MyProjects ********************************************************************
*****************************************************************************************************************************************/


#myProjects a,
#myProjects a:link,
#myProjects a:visited,
#myProjects a:hover {
  text-decoration: none;
  border-right: 1px solid #5dade2;
}

#myProjects .OneProject {
  background-color: #fafafa;
  margin: 20px auto;
}

#myProjects .linkList>* {
  padding: 15px;
  width: 100%;
  text-align: center;

}

#myProjects .linkList>*:hover {
  background-color: #aed6f1;
}

#myProjects .linkList {
  display: flex;
  flex-direction: row;
  justify-content: space-around;
  cursor: pointer;
  border-top: 1px solid #5dade2;
  margin-top: 10px
}

#myProjects .linkList span {
  border-right: 1px solid #5dade2;
}

#myProjects .linkList span {
  border-right: 1px solid #5dade2;
}



/*****************************************************************************************************************************************
********************************************************** END MyProjects ********************************************************************
*****************************************************************************************************************************************/

/*****************************************************************************************************************************************
********************************************************** MY ACCOUNT ********************************************************************
*****************************************************************************************************************************************/

#myAccount {
  text-align: center;
}

#myAccount .button1 {
  width: 100%;
}

#myAccount .link {
  border: 1px solid #000;
  display: block;
  width: 90%;
  margin: 10px auto;
  padding: 10px;
  background-color: #fed;
}

#myAccount .separator {
  border-top: 1px solid #000;
  width: 70%;
  margin: 15px auto;
}

#myAccount .section {
  width: 80%;
  border-top-width: 3px;
}

#myAccount form select {
  margin-bottom: 15px;
}

#myAccount label {
  position: absolute;
  left: -1000px;
}

#myAccount label[for="account_user_newsletter"] {
  position: unset;
  left: uset;
  height: max-content;
  margin-bottom: 15px;
}

#myAccount input {
  height: 30px;
  width: 80%;
  margin-bottom: 15px;
}

#myAccount button[type="submit"] {
  margin-bottom: 25px;
}

/*****************************************************************************************************************************************
********************************************************** END MYACCOUNT ********************************************************************
*****************************************************************************************************************************************/

/*****************************************************************************************************************************************
********************************************************** ADMINISTRATION ********************************************************************
*****************************************************************************************************************************************/
#usersGestion ul {
  display: flex;
  flex-wrap: wrap;
}

#usersGestion ul li {
  border: 1px solid #000;
  min-width: 320px;
  margin: 15px auto;
}

#usersGestion ul li a,
#usersGestion ul li a:hover,
#usersGestion ul li a:visited,
#usersGestion ul li a:link {
  color: #000;
  text-decoration: none;
}

#usersGestion li.admin .username {
  background-color: var(--colorEtape5);
  width: 100%;
}

#usersGestion li .username {
  background-color: var(--colorEtape3);
  width: 100%;
}

#usersGestion ul li div {
  padding: 5px;
}

#modificationSIndicateur {
  width: 90%;
}

#modificationSIndicateur input {
  width: 90%;
}

#modificationSIndicateur #s_indicateurs div {
  margin-top: 5px;
}

#userGestion>div {
  margin-top: 10px;
}

#userGestion form>div {
  margin-top: 10px;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
}

#userGestion form>div label,
#userGestion form>div input {
  width: 50%;
}

#userGestion h2 {
  color: #F0AF1B;
}

#userGestion input[type="checkbox"] {
  width: 20px;
  height: 20px;
  align-self: center;
}

#admin_mobilier form #prix_mobilier,
#admin_mobilier form #prix_mobilier div {
  margin: auto;
}

#admin_mobilier form #prix_mobilier>div {
  display: flex;
  justify-content: space-between;
  text-align: right;
  max-width: 300px;
  margin-top: 10px;
}

#admin_mobilier button {
  display: block;
  margin: 10px auto;
}


/*****************************************************************************************************************************************
********************************************************** END ADMINISTRATION **************************************************************
*****************************************************************************************************************************************/

/*****************************************************************************************************************************************
********************************************************** ECHEANCIER *******************************************************************
*****************************************************************************************************************************************/
#echeancierListe ul.list {
  display: flex;
  flex-wrap: wrap;
}

#echeancierListe li>a {
  display: block;
  border: 2px solid var(--colorEtape3);
  margin: 15px;
}

#echeancierListe li>a,
#echeancierListe li>a:visited,
#echeancierListe li>a:hover,
#echeancierListe li>a:link {
  color: #000;
  text-decoration: none;
}

#echeancierListe ul ul li {
  padding: 5px 15px;
  width: 230px;
}

#echeancierListe .reference {
  background-color: var(--colorEtape3);
  color: #f2f2f2;
  overflow-wrap: break-word;
}

.echeancier-header .bg-light {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

/*****************************************************************************************************************************************
********************************************************* END ECHEANCIER *******************************************************************
*****************************************************************************************************************************************/



/*****************************************************************************************************************************************
********************************************************* ARTICLE IMAGE *******************************************************************
*****************************************************************************************************************************************/

.image-container {
  display: inline-block;
  margin: 10px;
}

.image-container img {
  max-width: 150px;
  max-height: 150px;
  cursor: pointer;
  border: 2px solid transparent;
}

.image-container img:hover {
  border-color: #007bff;
}

.miniature {
  max-width: 120px;
  max-height: 120px;
  margin: 5px;
  object-fit: contain;
  /* Maintient les proportions de l'image */
  display: block;
}

#listeArticle li a {
  width: 100%;
}

/*****************************************************************************************************************************************
********************************************************* END ARTICLE IMAGE **************************************************************
*****************************************************************************************************************************************/



/*****************************************************************************************************************************************
********************************************************* INSCRIPTION *******************************************************************
*****************************************************************************************************************************************/

#inscription {
  width: 90%;
  padding-top: 15px;
}

#inscription form div {
  display: flex;
  justify-content: space-between;
  margin-top: 5px;
}





/*****************************************************************************************************************************************
********************************************************* GESTION ABONNEMENTS *******************************************************************
*****************************************************************************************************************************************/

#listeAbonnement h2 {
  font-size: 2em;
  margin: 20px auto;
}

#listeAbonnement h3,
#listeAbonnement .price:not(span) {
  font-size: 1.6em;
}

#listeAbonnement .price:not(span) {
  margin-top: 25px;
  margin-bottom: -5px;
}

.abonnementVignette {
  display: block;
  border-bottom: 3px solid #000;
  background-color: #fff;
  box-shadow: 2px 2px 5px #a9a9a9;
  height: 600px;
  width: 270px;
  margin: 5px auto;
}

.bandeau {
  text-align: center;
  font-size: 1.5em;
  font-weight: bolder;
}


.product {
  height: 100%;
}

.product h3 {
  margin-top: 30px;
  display: flex;
  align-items: center;
  /* Aligne verticalement le contenu au centre */
  text-align: center;
}

.product h3 span {
  white-space: nowrap;
}

.product h3::before,
.product h3::after {
  content: "";
  flex: 1;
  /* Les lignes prennent tout l'espace disponible */
  height: 1px;
  /* Épaisseur du trait */
  background: #000;
  /* Couleur du trait */
}

.product h3::before {
  margin-right: 10px;
}

.product h3::after {
  margin-left: 10px;
}

.abonnementVignette img {
  margin: auto;
  text-align: center;
  max-width: 250px;
  max-height: 160px;
}

#listeAbonnement .product {
  padding: 5px;
}

#autreAbonnement>div {
  background-color: #f2f2f2;
  border: 1px solid #000;
  width: 100%;
  padding: 25px;
}

#image_produit {
  width: 150px;
  min-height: 100px;
}

form #image_produit {
  box-shadow: 2px 2px 5px #a9a9a9;
}

#listeAbonnement .description {
  padding-left: 15px;
}


.DemarrageMensuelle {
  border-color: var(--colorEtape1);
}

.DemarrageTrimestrielle {
  border-color: #ffd700;
}

.DemarrageAnnuelle {
  border-color: #614e1a;
}

.DemarrageInvestisseur {
  border-color: #e74c3c;
}

.product:hover {
  transition: all 0.5s;
}

.product.bronze,
.abonnement-bronze {
  border-color: #614e1a !important;
}

#listeAbonnement .product.argent,
.abonnement-argent {
  border-color: #c0c0c0 !important;
}

#listeAbonnement .product.or,
.abonnement-or {
  border-color: #ffd700 !important;
}

#paiement #listeAbonnement>div {
  max-width: 250px;
  margin: auto;
  text-align: center;
  background-color: #fff;
  box-shadow: 2px 2px 4px rgba(0, 0, 0, 0.1);
}



#paiement #listeAbonnement .description {
  text-align: left;
}


#paiement #listeAbonnement a {
  display: none;
}

#paiement {
  background-color: #f2f2f2;

}

.abonnementLogged {
  border-color: #0f347c !important;
}



.debugAbonnement {
  background-color: var(--colorEtape3);
}




#mentionsLegales div,
#mentionsLegales h2,
#mentionsLegales h3 {
  margin: 15px auto;
}

#mentionsLegales div:not(#mentionsLegales div:last-child) {
  border-bottom: 1px solid #0b5345;
}

#mentionsLegales h2,
#mentionsLegales h3 {
  text-align: left;
  margin-left: 15px !important;
  margin-right: auto;
}

.fa-external-link-alt {
  font-size: 0.6em;
  color: #00f;
  position: relative;
  top: -5px;
}




#article img {
  margin: 10px;
  box-shadow: 1px 1px 2px var(--colorEtape3), -1px -1px 2px var(--colorEtape5);
}




/**************************************************************************************************************************
****************************************************************************************************************************
*********************************************  Capacité Emprunt *********************
****************************************************************************************************************************
****************************************************************************************************************************/


#btnCalculer {
  background-color: var(--colorEtape2);
  text-transform: uppercase;
}


/**************************************************************************************************************************
****************************************************************************************************************************
*********************************************  FOOTER *********************
****************************************************************************************************************************
****************************************************************************************************************************/

footer {
  background-color: var(--colorEtape3);
  color: #f2f2f2;
  display: flex;
  flex-direction: column;
  margin: auto;
  text-align: center;
  width: 100%;
}

footer a,
footer a:link,
footer a:visited,
footer a:hover {
  color: #f2f2f2;
}

footer img {
  width: 130px;
  min-width: 130px;
  margin: auto;
}

footer .disclaimer {
  font-size: 1em;
  text-align: left;
  margin-left: 20px;
}

footer ul {
  min-width: 150px;
}

footer .logotext {
  margin: auto;
  margin-bottom: 10px;
}

#aboutSiteModal .modal-body, #aboutSiteModal .modal-header, #aboutSiteModal .modal-footer {
  background-color: #00667C;
}


#modalConnexion .btn-close {
  color: #f2f2f2;
}

.modal-content {
  border-radius: 6px;
}

.modal-header {
  border-top-left-radius: 5px;
  border-top-right-radius: 5px;
}

.modalInformation .modal-header {
  background-color: var(--colorEtape3);
  color: #f2f2f2;
}

.modalInformation .modal-header h4 {
  font-size: 2em;

}

.rotate-icon {
  display: block;
  text-align: center;
  transition: transform 0.3s ease;
}

.open {

  transform: rotate(180deg);
}

.btnExpendInfo {
  width: 100%;
}

.btnExpendInfo {
  width: 100%;
  width: 100%;
  font-size: 1.5em;
  background-color: #f2f2f2;
  color: #000;
  border-color: gray;
}

#_genre {
  margin-top: 15px;
}

#collapseInscription {
  margin-top: -5px;
}

#modalConnexion .modal-header {
  border-bottom: 1px solid #00667C;
}

#modalConnexion .modal-footer {
  /* border-top: 1px solid #00667C; */
  border-top: none;
  height: 0;
}


#toastInfoBox,
#toastReferenceProjet,
#toastDeleteElement {
  position: fixed;
  top: 230px;
  right: 20px;
  width: 280px;
  font-size: 1em;
}

.toast-header img {
  width: 25px;
  height: 25px;
}

#toastInfoBox .toast-header,
#toastReferenceProjet .toast-header,
#toastDeleteElement,
.toast-header {
  background-color: var(--colorEtape4);
  color: #fff;
}

#toastInfoBox.error .toast-header {
  background-color: #dc3545;
}



/**************************************************************************************************************************
****************************************************************************************************************************
*********************************************  END FOOTER *********************
****************************************************************************************************************************
****************************************************************************************************************************/





/**************************************************************************************************************************
****************************************************************************************************************************
*********************************************  CAPACITE EMPRUNT *********************
****************************************************************************************************************************
****************************************************************************************************************************/


#capaciteEmprunt section:not("#result") {
  text-align: right;
}

#capaciteEmprunt i {
  font-size: 1.3em;
  margin: auto 5px;
}

#capaciteEmprunt li {
  display: flex;
  flex-direction: row;
  justify-content: flex-end;
  margin-top: 3px;
  border-bottom: 1px dotted gray;
  padding-bottom: 3px;
}

#capaciteEmprunt input {
  margin-left: 5px;
  text-align: center;
  width: 120px;
}

#capaciteEmprunt .box {
  border-width: 1px;
  border-left-width: 5px;
  border-style: solid;
  margin: 10px auto;
  text-align: right;
}

#capaciteEmprunt .box ul {
  padding: 0 5px;
}

#capaciteEmprunt .box ul>div>div {
  margin-bottom: 5px;
  padding: 3px 5px;

}

#revenues>div,
#pretsImmo>div {
  margin-bottom: 10px;
  border-width: 1px;
  border-style: outset;
}

#revenues>div {
  border-color: var(--colorEtape4);
  box-shadow: 0px 0px var(--colorEtape4), 0em 0 0.2em var(--colorEtape4);
}

#pretsImmo>div {
  border-color: var(--colorEtape5);
  box-shadow: 0px 0px var(--colorEtape5), 0em 0 0.2em var(--colorEtape5);
  margin-bottom: 5px;
  padding: 3px 5px;
}

#capaciteEmprunt #typeAchat {
  max-height: inherit;
}

#capaciteEmprunt #sIndicateurs aside {
  margin: auto;
}

#capaciteEmprunt #sIndicateurs table {
  margin: auto;
}

#capaciteEmprunt #sIndicateurs table td:nth-child(1) {
  width: 120px;
  text-align: center;
}

#capaciteEmprunt #sIndicateurs table td:nth-child(2) {
  width: 75px;
  text-align: center;
}

#capaciteEmprunt #sIndicateurs table td:nth-child(3) {
  width: 110px;
  text-align: center;
}


.progressBarCursor .tooltip {
  transform: translateY(30%);
  /* Ajustez la valeur selon vos besoins */
}



.btn-echeancier {
  width: 200px;
  color: #f2f2f2;
  text-align: center;
  margin: auto;
  background-color: #626567;
  padding-bottom: 1px;
  cursor: pointer;
}

.btn-echeancier img {
  display: inline-block;
  width: 17px !important;
  height: auto;
  vertical-align: middle;
  margin-top: -2px;
}



/**************************************************************************************************************************
****************************************************************************************************************************
*********************************************  CHAMPS IMPORTANTS à placer à la fin pour ne pas ecraser *********************
****************************************************************************************************************************
****************************************************************************************************************************/

#messageInfoMaintenance {
  color: #f2f2f2;
  border: 1px solid black;
  width: 100%;
  padding: 5px;
  padding-top: 10px;
  text-align: center;
  background-color: #000;
  margin-top: 144px;
  margin-bottom: -141px;
}



span.obligatoire,
span.saisiePossible {
  position: absolute;
  left: 3px;
  z-index: 1;
  font-size: 1.1em;
}

span.obligatoire {
  bottom: 0px;
  color: #f00;
}

.likeInput span.obligatoire {
  bottom: 20px;
}


span.saisiePossible {
  bottom: -10px;
  color: #00F;
}

.likeInput span.saisiePossible {
  bottom: 10px;
}

#menuDeDev {
  position: fixed;
  z-index: 1003;
  top: 65px;
  left: 0px;
}

#devOptions {
  background-color: var(--colorEtape5);
  padding: 10px
}

#devOptions li {
  background-color: #bf0338;
  border-top: 2px dotted #f2f2f2;
  color: #f2f2f2;
  cursor: pointer;
  padding: 5px 10px;
}