body {
    background: #EFF2F6;
}	
	:root {
		--myFont: 'Outfit', sans-serif;
    --mainColor: #0d2048;
    --accentColor: #dc1c2e;
    --textColor: #171c47;
    --defaultTextColor: #333;
    --progressBar: var(--accentColor);
    --buttonColor: var(--accentColor);
    --headingFontWeight: 300;
    --boldFontWeight: 800;
    --sliderPulseColor0: rgba(28, 133, 232, 0.7);
    --sliderPulseColor100: rgba(28, 133, 232, 0);
    --showProgress: block;
	}

	.mainbody .transparent {
		padding: 30px;
		margin-top: 25px;
		margin-bottom: 25px;
		background: white;
	}
.mainbody .indented {
    border-radius: 20px;
    box-shadow: rgba(100, 100, 111, 0.2) 0px 7px 29px 0px;
}
*:not(.fa):not(.fas):not(.fal):not(.far) {
    font-family: var(--myFont) !important;
}
.indented {
    overflow: hidden;
    margin: 0 auto;
    max-width: 1080px;
}
h1 {
		margin: 20px 0 0 0;
		font-size: clamp(1.5em, 5vw, 2em);
	}
b {
    font-weight: var(--boldFontWeight);
}
	

h1, h2, h3, h4, h5 {
    color: var(--textColor) !important;
    font-weight: var(--headingFontWeight);
}
	h4 {
		margin-bottom: 0;
	}

	#success {
		overflow: auto;
	}

	#error {
		display: none;
	}

	a {
		color: var(--mainColor);
		display: inline-block;
		margin-top: 10px;
	}

	.ui-slider .ui-slider-handle {
		margin-top: 0px;
	}

	body::before {
		content: "";
		position: fixed;
		bottom: clamp(125px, 35%, 325px);
		left: 0px;
		width: 100%;
		height: 45px;
		background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1441 25" class="wave-02 cms-block__wave"><path fill="%230d2048" d="M0 25h1441v-1c-142.31 0-423.46-24-560.5-24-182.63 0-325.29 23.81-593.1 23.81C104.5 23.81 0 0 0 0z" class="wave-mask"></path></svg>');
		background-repeat: no-repeat;
		background-size: auto 100%;
		z-index: 1;
	}

	body::after {
		content: "";
		position: fixed;
		bottom: 0;
		left: 0;
		width: 100%;
		height: clamp(125px, 35%, 325px);
		background-color: #0e2048;
		background-image: url(https://leaddoubler.s3.eu-west-1.amazonaws.com/customerfiles/REMAX/Arbres_doubles_dark.6bd7a07.jpg);
		background-repeat: no-repeat;
		background-size: 100% auto;
		background-position: center 30%;
	}
form ul {
    margin: 0;
    padding: 0;
    list-style-type: none;
}
.divider-text {
    position: relative;
    text-align: center;
    margin-top: 15px;
    margin-bottom: 15px;
}
.divider-text span {
    padding: 7px;
    font-size: 12px;
    position: relative;   
    z-index: 2;
}
.divider-text:after {
    content: "";
    position: absolute;
    width: 100%;
    border-bottom: 1px solid #ddd;
    top: 55%;
    left: 0;
    z-index: 1;
}
.form-control {
    display: block;
    width: 100%;
    padding: .775rem .75rem;
}
.input-group-text {
    display: flex;
    align-items: center;
    padding: 1.2rem 1.2rem;
}
.btn-primary, .btn-success {
    background: var(--buttonColor) !important;
}
.btn {
    border-radius: 100px;
    padding: 8px 50px;
    max-width: unset;
    width: auto !important;
    outline: none !important;
    border: none !important;
    font-size: 1em;
    font-weight: 100;
}
	#logo {
		margin: 0px;
		height: clamp(40px, 10vw, 55px);
	}

	.mainbody {
		z-index: 9;
	}

	#mapContainer {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		padding: 0px;
	}

	#map {
		position: absolute !important;
		top: 0;
		left: 0;
		height: 100% !important;
		width: 100%;
		display: none;
	}

	#map,
	#map * {
		pointer-events: none !important;
	}

	#title {
		font-size: clamp(1.7em, 2.5vw, 2.5em);
		font-weight: 500;
		margin-top: 0;
		margin-bottom: 10px;
	}

	#address {
		font-size: clamp(1em, 1.5vw, 1.2em);
	}

	#price {
		font-size: clamp(2.1em, 5vw, 4em);
		font-weight: 800;
		text-wrap: balance;
		margin: 15px 0px;
	}

	#titleContainer {
		text-align: center;
	}

	.eregner li input.text {
		background: none;
	}

	.eregner li[id^=inputitem]:has(.input-group) label.desc {
		margin-left: 25px;
		margin-top: -3px;
	}

	.eregner li:has(input.text) label.desc {

		margin-top: -3px;
	}

	.eregner li[id^=inputitem] .input-group-addon i {
		margin-top: -5px;
		color: rgb(14 32 72 / 25%);
		font-size: 1.2em;
	}
	.error {
		color: var(--bs-form-invalid-border-color);
		margin-top: 0;
	}
	label {
		display: inline-block;
		opacity: 0.8;
	}
	.eregner .textPlaceholderFocus {
		font-size: 1em !important;
		font-weight: 400 !important;
		top: 10px;
		opacity: 0.5;
	}

	.eregner li input.text {
		padding-bottom: 10px !important;
	}

	.eregner li {
		margin-bottom: 5px;
	}

	.eregner li[id^=inputitem]:has(.input-group) label.desc {
		margin-left: 25px;
		margin-top: -3px;
	}

	.eregner li:has(input.text) label.desc {

		margin-top: -3px;
	}

	.eregner li[id^=inputitem] .input-group-addon i {
		margin-top: -5px;
		color: rgb(14 32 72 / 25%);
		font-size: 1.2em;
	}

	.eregner .textPlaceholderFocus {
		font-size: 1em !important;
		font-weight: 400 !important;
		top: 10px;
		opacity: 0.5;
	}

	.eregner li input.text {
		padding-bottom: 10px !important;
	}

	.eregner li {
		margin-bottom: 5px;
	}

	#ldContainer {
		padding: 0px;
	}

	.inputitem .radio-inline input {
		top: calc(50% - 2px);
	}

	.btn-success {
		padding: 8px 25px !important;
		float: right;
	}

	#charlesImage img {
		position: absolute;
		top: -35%;
		left: -125%;
		height: 200%;
		width: auto;
	}

	#charlesImage {
		width: 250px;
		height: 250px;
		position: relative;
		border-radius: 100%;
		overflow: hidden;
		margin: 0 auto;
	}

	#leftColumn {
		padding-top: 25px;
		padding-bottom: 35px;
	}

	#leftColumnContentContainer {
		box-shadow: 0 20px 20px 0 rgba(53, 64, 82, .15) !important;
		padding: 25px;
		background: #ffffff;
		max-width: 375px;
		margin: 0 auto;
		border: 1px solid #ededed;
		border-radius: 10px;
	}

	#nameContainer {
		text-align: center;
		margin-top: 10px;
		font-weight: 500;
		color: #dc1c2e;
		font-size: 1.2em;
	}

	@media screen and (max-width: 900px) {
		#mapContainer {
			margin-top: 0;
			height: 40%;
		}

		body {
			background: #0e2048;
		}

		body::before {
			background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1441 81" class="wave-03 footer__wave"><path fill="%230d2048" d="M0 81h1441V0c-164.48 34.31-288.33 57.33-373.55 69.06-283.53 39-426.88-42.43-698.26-57.51Q158.77-.15 0 31z" class="wave-mask"></path></svg>');
			bottom: 60%;
			background-size: auto 100%;
			background-position: 0%;
			height: 70px;
			z-index: 9;
		}

		#ldContainer {
			padding: 30px;
			padding-bottom: 25px;
		}

		#copyright {
			margin: 0;
			padding: 0px;
		}

		body::after {
			background-size: contain;
			background-position: bottom;
		}

		#copyright,
		#copyright * {
			color: white !important;
			opacity: 0.75;
			z-index: 1;
			position: relative;
		}

		#copyright:hover,
		#copyright:hover * {
			opacity: 1;
		}

		.bottombanner:has(#copyright) {
			text-align: center;
		}

		body.mapShown #ldContainer {
			margin-top: 75px;
		}

		body.mapShown .mainbody {
			margin-top: 125px;
		}
	}

	@media screen and (max-width: 600px) {
		#charlesImage {
			aspect-ratio: 1/1;
			width: 100%;
			height: auto;
		}
        #ldContainer {
			padding: 30px;
			padding-bottom: 25px;
		}
		#leftColumnContentContainer {
            box-shadow: 0 20px 20px 0 rgba(53, 64, 82, .15) !important;
            padding: 25px;
            background: #ffffff;
            max-width: 270px;
            margin: 0 auto;
            border: 1px solid #ededed;
            border-radius: 10px;
        }
		.mainbody div[class*="col-"]:has(#logo) {
			text-wrap-style: balance;
			text-align: center;
			padding: 0px 15px;
		}

		.mainbody .transparent {
			padding: 15px 0px;
			margin-top: 0px;
		}

		.mainbody div[class*="col-"]:has(#logo) h1 {
			font-size: 1.3em;
		}

		.mainbody div[class*="col-"]:has(#logo) h1 b {
			font-size: 1.4em;
		}

		.btn-success {
			float: unset;
		}

		.buttons {
			text-align: center;
		}
	}