/* roboto-300 - latin */
@font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 300;
	src: url('./fonts/roboto/roboto-v30-latin-300.eot'); /* IE9 Compat Modes */
	src: url('./fonts/roboto/roboto-v30-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('./fonts/roboto/roboto-v30-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
		 url('./fonts/roboto/roboto-v30-latin-300.woff') format('woff'), /* Modern Browsers */
		 url('./fonts/roboto/roboto-v30-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('./fonts/roboto/roboto-v30-latin-300.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-regular - latin */
  @font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 400;
	src: url('./fonts/roboto/roboto-v30-latin-regular.eot'); /* IE9 Compat Modes */
	src: url('./fonts/roboto/roboto-v30-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('./fonts/roboto/roboto-v30-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
		 url('./fonts/roboto/roboto-v30-latin-regular.woff') format('woff'), /* Modern Browsers */
		 url('./fonts/roboto/roboto-v30-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('./fonts/roboto/roboto-v30-latin-regular.svg#Roboto') format('svg'); /* Legacy iOS */
  }
  /* roboto-500 - latin */
  @font-face {
	font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
	font-family: 'Roboto';
	font-style: normal;
	font-weight: 500;
	src: url('./fonts/roboto/roboto-v30-latin-500.eot'); /* IE9 Compat Modes */
	src: url('./fonts/roboto/roboto-v30-latin-500.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
		 url('./fonts/roboto/roboto-v30-latin-500.woff2') format('woff2'), /* Super Modern Browsers */
		 url('./fonts/roboto/roboto-v30-latin-500.woff') format('woff'), /* Modern Browsers */
		 url('./fonts/roboto/roboto-v30-latin-500.ttf') format('truetype'), /* Safari, Android, iOS */
		 url('./fonts/roboto/roboto-v30-latin-500.svg#Roboto') format('svg'); /* Legacy iOS */
  }

:root {
  --bs-primary: #48443f;
  --bs-secondary: #ac9a8f;
  --bs-light: #ffffff;
  --bs-primary-rgb: 72, 68, 63;
  --bs-secondary-rgb: 172,154,143;
  --bs-light-rgb: 255,255,255;
  --bs-border-color: #48443f;
  --bs-body-color: #48443f;
  --bs-danger: #612914;
  --bs-danger-rgb: 97,41,20;
  --bs-link-color: #48443f;
  --bs-link-hover-color: #ac9a8f;

  --navbar-height: 100px;
  
  	/* TRANSITIONS */
	--transition-all: all 250ms ease-in-out;
	--transition-height: height 250ms ease-in-out,  min-height 250ms ease-in-out,  max-height 250ms ease-in-out;
	--transition-width: width 250ms ease-in-out,  min-width 250ms ease-in-out,  max-width 250ms ease-in-out;
	--transition-transform: transform 250ms ease-in-out;
	--transition-opacity: opacity 250ms ease-in-out;
	--transition-color-text: color 250ms ease-in-out;
	--transition-color-bg: background-color 250ms ease-in-out;
	--transition-color-border: border-color 250ms ease-in-out;
	--transition-color-all: color 250ms ease-in-out, background-color 250ms ease-in-out, border-color 250ms ease-in-out;
}

.btn-primary {
	--bs-btn-color: #fff;
	--bs-btn-hover-color: #fff;
	--bs-btn-bg: var(--bs-primary);
	--bs-btn-border-color: var(--bs-primary);
	--bs-btn-hover-bg: #000;
	--bs-btn-hover-border-color: #000;
	--bs-btn-active-bg: #000;
	--bs-btn-active-border-color: #000;

	--bs-btn-disabled-bg: var(--bs-primary);
    --bs-btn-disabled-border-color: var(--bs-primary);
  }
  

.btn-outline-primary {
  --bs-btn-color: var(--bs-primary);
  --bs-btn-border-color: var(--bs-primary);
  --bs-btn-hover-bg: var(--bs-primary);
  --bs-btn-hover-border-color: var(--bs-primary);
  --bs-btn-active-bg: var(--bs-primary);
  --bs-btn-active-border-color: var(--bs-primary);
}

.btn-outline-secondary {
	--bs-btn-color: var(--bs-secondary);
	--bs-btn-border-color: var(--bs-secondary);
	--bs-btn-hover-bg: var(--bs-secondary);
	--bs-btn-hover-border-color: var(--bs-secondary);
	--bs-btn-active-bg: var(--bs-secondary);
	--bs-btn-active-border-color: var(--bs-secondary);
  }

.modal {
	--bs-modal-inner-border-radius: 0;
	--bs-modal-border-radius: 0;
	--bs-modal-header-border-color: var(--bs-secondary);
	--bs-modal-footer-border-color: var(--bs-secondary);
}

.accordion {
	--bs-accordion-border-radius: 0;
	--bs-accordion-inner-border-radius: 0;
	--bs-accordion-btn-focus-border-color: var(--bs-primary);
	--bs-accordion-color: var(--bs-primary);
	--bs-accordion-active-color: #000;
	--bs-accordion-active-bg: var(--bs-secondary);
	--bs-accordion-btn-color: var(--bs-primary);
	--bs-accordion-btn-bg: var(--bs-light);
}

.accordion-button.collapsed:focus {
	box-shadow: none;
}

.accordion-button:focus:not(.collapsed) {
	box-shadow: inset 0 calc(var(--bs-accordion-border-width) * -1) 0 var(--bs-accordion-border-color);
}

.accordion-button:hover {
	background-color: var(--bs-secondary);
}

.accordion-button:not(.collapsed)::after {
	background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%2348443f'%3e%3cpath fill-rule='evenodd' d='M1.646 4.646a.5.5 0 0 1 .708 0L8 10.293l5.646-5.647a.5.5 0 0 1 .708.708l-6 6a.5.5 0 0 1-.708 0l-6-6a.5.5 0 0 1 0-.708z'/%3e%3c/svg%3e");
}

.badge {
	--bs-badge-border-radius: 0;
	--bs-badge-font-weight: 500;
}

.table {
	--bs-table-color: var(--bs-light);
	--bs-table-border-color: var(--bs-light);
}

.btn {
	--bs-btn-border-radius: 0;
	text-transform: uppercase;
	font-weight: 500;
}

.big {
	font-size: 22px;
}

.tiny {
	font-size: 12px;
}

.highlight {
	font-weight: 500;
	text-transform: uppercase;
}

.light {
	font-weight: 300;
}

b, .bold {
	font-weight: 500;
}

.uppercase {
	text-transform: uppercase;
}

body {
  margin: 0;
  font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Helvetica Neue", Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  color: #48443f;
  padding-top: var(--navbar-height);
}

#carouselHeader .carousel-item {
  height: calc( 100vh - var(--navbar-height) );
  min-height: 350px;
  background: no-repeat center center scroll;
  -webkit-background-size: cover;
  -moz-background-size: cover;
  -o-background-size: cover;
  background-size: cover;
}

#carouselFooter .carousel-item {
	min-height: 520px;
	background: no-repeat center center scroll;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	-o-background-size: cover;
	background-size: cover;
  }

  .carousel-control-next, .carousel-control-prev {
	align-items: end;
	padding-bottom: 30px;
  }

  .carousel-control-next-icon, .carousel-control-prev-icon {
	background-color: var(--bs-primary);
	border-radius: 50%;
	padding: 10px;
	width: 3rem;
	height: 3rem;
	background-size: 60%;
  }

.header-logo {
	position: absolute;
	top: 25px;
	left: 40px;
	z-index: 2;
}

	.header-logo img {
		max-height: 200px;
	}

	@media(max-width: 767px) {
		.header-logo img {
			max-height: 150px;
		}	
	}

.header-navbar {
	width: 100%;
	height: var(--navbar-height);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 5;

	transition: all .3s ease-in-out;

	background: var(--bs-primary);
}

.navbar-logo img {
	height: 40px;
	width: auto;
	transition: all .3s ease-in-out;

	max-width: 300px;
}

	@media(max-width: 767px) {
		.navbar-logo img {
			max-width: 220px;
		}

		:root {
			--navbar-height: 80px;
		}
	}

.header-hamburger {
	position: fixed;
	top: 12px;
	right: 0;
	z-index: 5;
	color: #fff;
}

.hamburger-inner, .hamburger-inner:after, .hamburger-inner:before {
	background-color: #fff;
	height: 2px;
}

.hamburger {
	padding-top: 18px;
	padding-right: 0;
}

.hamburger.is-active {
	color: var(--bs-light);
}
.hamburger.is-active .hamburger-inner, .hamburger.is-active .hamburger-inner:after, .hamburger.is-active .hamburger-inner:before {
	background-color: var(--bs-light);
}

.hamburger-box {
    display: inline-block;
    vertical-align: middle;
}

.hamburger-label {
    font-weight: 600;
    display: inline-block;
    margin-left: 5px;
    vertical-align: middle;
    text-transform: uppercase;
}

h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 {
	font-weight: 400;
	letter-spacing: 2px;
}

.display-1,
.display-2,
.display-3,
.display-4,
.display-5 {
	text-transform: uppercase;
	font-weight: 400;
	letter-spacing: 2px;
}

#menu {
	min-height: 0vh;
	max-height: 0;
	z-index: 3;
	position: fixed;
	top: var(--navbar-height);
	left: 0;
	width: 100%;
	
	transition: all .3s ease-in-out;
	overflow: hidden;

	text-align: center;
}

#menu.is-active {
	min-height: 100vh;
	max-height: 100vh;
}

#menu ul {
	padding: 20px;
	list-style: none;
	margin: 0;
}

#menu ul li {
	padding: 0;
	margin: 0;

	margin-top: 15px;
	margin-bottom: 15px;
}

#menu ul li a {
	color: var(--bs-light);
	text-decoration: none;
	text-transform: uppercase;
	font-size: 2rem;
	transition: color .2s ease-in-out;
	letter-spacing: 2px;
}

#menu ul li a:hover {
	color: #fff;
	text-decoration: underline;
	text-underline-offset: 5px;
}

@media(max-width: 575px) {

	#menu ul li a {
		font-size: 1.5rem;
	}
}

.icon {
	max-height: 150px;
}

.icon-small {
	max-height: 85px;
}

.icon-tiny {
	max-height: 40px;
}

footer {
	
}

footer a:link,
footer a:visited {
	color: var(--bs-secondary);
}

footer a:hover {
	color: var(--bs-primary);
}


.contact {
	position: relative;
}

.remax-balloon {
	position: absolute;
	right: 40px;
	top: -100px;
	width: fit-content;
}

@media(min-width: 767px) {
	.remax-balloon {
		left: 40px;
	}
}

.contact a:link:not(.btn),
.contact a:visited:not(.btn) {
	color: #fff;
	font-size: calc(1.325rem);
	font-weight: 400;
	text-decoration: none;
}

.contact a:hover:not(.btn) {
	color: var(--bs-secondary);
	text-decoration: underline;
}


.horizontal-menu ul {
	list-style: none;
	padding: 0;
	margin: 0;
	text-align: right;
}

.horizontal-menu ul li {
	display: inline-block;
	margin-left: 15px;
	margin-right: 15px;
}

.horizontal-menu ul li a:link,
.horizontal-menu ul li a:visited {
	color: var(--bs-light);
	text-decoration: none;
	text-transform: uppercase;
	letter-spacing: 2px;
	font-size: 20px;

	transition: var(--transition-color-all);
	padding: 10px 20px;

}

.horizontal-menu ul li.is-active a {
	background-color: var(--bs-secondary);
	color: var(--bs-primary);
}

.horizontal-menu ul li.is-active a:hover,
.horizontal-menu ul li a:hover {
	background-color: var(--bs-secondary);
	color: var(--bs-light);
}

.section a img {
	transition: all .2s ease-in-out;
	border: 2px solid var(--bs-secondary);
}

.section a:hover img {
	border-color: var(--bs-primary);
}

.section .text-white a img {
	border: 2px solid var(--bs-light);
}

.section .text-white a:hover img {
	border-color: var(--bs-secondary);
}

/* akkordeon */
#accordionWohneinheiten a img {
	transition: all .2s ease-in-out;
	z-index: 10;
	border: 2px solid var(--bs-secondary);
	max-height: 820px;
}

#accordionWohneinheiten a:hover img {
	border-color: var(--bs-primary);
}

.accordion-sold {
	opacity: 0.3;
}

.accordion-button.accordion-sold::after {
	display: none;
}

.accordion-item:not(:first-of-type) {
	border: var(--bs-accordion-border-width) solid var(--bs-accordion-border-color);
}


.eckdaten-icon {
	background-color: var(--bs-secondary);
	color: var(--bs-light);
	display: inline-block;
	font-size: 40px;
	border-radius: 50%;
	width: 80px;
	height: 80px;
	line-height: 80px;
	text-align: center;
	margin-bottom: 10px;
}

.lb-data .lb-caption {
	font-weight: 400;
}

.distanz-bubble {
	background-color: var(--bs-danger);
	color: var(--bs-light);
	border-radius: 50%;
	
	
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;

	font-size: 13px;
	height: 280px;
	width: 280px;

	margin-top: 30px;
	margin-left: auto;
	margin-right: auto;

	transition: var(--transition-all);
}

@media(min-width: 768px) {
	.distanz-bubble {
		font-size: 14px;
		height: 300px;
		width: 300px;
	}
}

@media(min-width: 991px) {
	.distanz-bubble {
		margin-top: 0;
		position: absolute;
	}
}


.form-range::-webkit-slider-thumb {
	background: var(--bs-primary);
}
.form-range::-moz-range-thumb {   
	background: var(--bs-primary);
}
.form-range::-ms-thumb {   
	background: var(--bs-primary);
}

.form-range::-webkit-slider-thumb:active {
    background-color: var(--bs-secondary);
	box-shadow: var(--bs-secondary);
}

.form-range:focus::-webkit-slider-thumb, 
.form-range:focus::-moz-range-thumb,
.form-range:focus::-ms-thumb {
    box-shadow: var(--bs-secondary);
}

.einheiten-filter .badge {
	min-width: 60px;
}

.region-section img.promenade {
	height: 170px;
	width: 100%;
	object-fit: cover;
	object-position: left;
}

.alert,
.form-check-input[type=checkbox],
.form-control,
.textarea,
.form-select {
	border-radius: 0 !important;
}

.form-check-input:checked {
	background-color: var(--bs-primary);
	border-color: var(--bs-primary);
}

.btn-check:focus+.btn, .btn:focus,
.form-check-input:focus,
.form-select:focus,
.form-control:focus {
	box-shadow: 0 0 0 0.25rem rgba(var(--bs-primary-rgb), .25);
}

.contact-form:not(.input-allowed) button[type="submit"] {
	display: none !important;
}

.contact-form.is-sending button[type="submit"] {
	display: none !important;
}

.contact-form:not(.is-sending) .is-sending-button {
	display: none !important;
}

.contact-form:not(.is-success) .alert-success {
	display: none !important;
}

.contact-form:not(.is-error) .alert-danger {
	display: none !important;
}

.contact-form:not(.form-visible) .row {
	display: none !important;
}