/* Navigation start */
.navbar__logo {
	height: 62px;
	
	@media (max-width: 767px) {
		height: 30px;
	}
}
.nav-pills .nav-link.active, 
.nav-pills .show>.nav-link {
	background-color: transparent;
	color: var(--second-color);
}
.nav-link {
	padding: 0 1rem;
}
.navbar-expand-lg {
	@media (min-width: 992px) {
		margin-top: 40px;
		align-items: end;
	}
}
.meta-nav {
	background-color: var(--first-color);
	& > .container {
		
		& > .frame {
			min-height: 50px;
			align-items: center;
		}
	}
	&.border-bottom {
		border-bottom: none !important;
	}
	
	* {
		color: var(--brightest);
	}
}
/* Navigation end */

body {
	font-family: 'Arimo', sans-serif;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}

/* Footer start */
footer {
	padding: 0;
	border-top: none;
	background-color: var(--first-color);
	
	& .frame + .frame:not(.frame-layout-500) {
		border-top: 1px solid #FFFFFF32;
	}
	& .inner {
		> .row__grid--2 {
			width: 100%;
		}
	}
	& * {
		color: var(--brightest);
	}
	& .footer__cookie-btn {
		padding: 0;
		background-color: transparent;
		color: var(--first-color);
		
		&:hover {
			background-color: transparent;
			color: var(--second-color);
		}
	}
	& .rhsocialmedia {
		& span {
			display: none;
		}
		& i {
			font-size: 2.5rem;
		}
		@media (max-width: 767px) {
			gap: 0 !important;
			
			& i {
				font-size: 1.5rem;
			}
		}
	}
	/* 300 = horizontal, rechtsbündig (menü) */
	& .frame-layout-300 {
		@media (max-width: 1399px) {
			& .inner {
				justify-content: end;
			}
			& ul {
				flex-direction: column;
				gap: .1rem;
			}
		}
	}
	/* later to be removed: erste zeile im footer in der die mittleren leer sind */
	& .custom-class-temp-respo-hide-2-center-cols {
		@media (max-width: 991px) {
			& .hm-col {
				&:nth-child(2), &:nth-child(3) {
					display: none;
				}
			}
		}
	}
	& .image-embed-item {
		max-width: 100px;
	}
	
	& > div:not(.frame-layout-500, .custom-class-temp-respo-hide-2-center-cols) {
		& .inner {
			display: grid;
			grid-template-columns: repeat(3, minmax(0,1fr));
			
			@media (min-width: 768px) and (max-width: 991px) {
				grid-template-columns: repeat(2, 1fr);
				grid-template-rows: repeat(2, 1fr);
				gap: 30px;
				
				& div:nth-child(1) { 
					grid-area: 1 / 1 / 3 / 2; 
				}
				& div:nth-child(2) { 
					grid-area: 1 / 2 / 2 / 3; 
					display: flex;
					justify-content: end;
				}
				& div:nth-child(3) { 
					grid-area: 2 / 2 / 3 / 3; 
					display: flex;
					justify-content: end;
				}
			}
			
			@media (max-width: 767px) {
				grid-template-columns: minmax(0,1fr);
				gap: 30px;
			}
		}
		& .rhsocialmedia {
			flex-wrap: wrap;
			gap: 0 !important;
			row-gap: 10px !important;
			column-gap: 30px !important;
			
			& .rh-sm-header {
				flex-shrink: 0;
				flex-grow: 1;
				flex-basis: 100%;
				margin-bottom: 0;
				font-size: 18px;
				font-weight: 400;
			}
		}
		& .rh-address__contact,
		& .rh-address__address {
			margin-top: 0 !important;
		}
		& .rh-address__contact {
			@media (min-width: 768px) and (max-width: 1199px) {
				display: flex;
				justify-content: center;
			}
		}
		& .frame-layout-512 {
			* {
				font-size: 18px;	
			}
		}
	}
	
}
.frame-layout-310 {
	margin-left: auto;
	width: auto;
	margin-right: 0;
	
	& ul {
		margin-bottom: 0;
		padding-left: 0;
		
		& li {
			list-style-type: none;
			
			& a {
				text-decoration: none;
			}
		}
	}
}
/* 500 = Copyright-Container */
.frame-layout-500 {
	padding: 15px 0;
	
	& * {
		color: var(--font-color);
	}
	&.frame-type-hm-1-cols-container .inner, 
	& .hm-col {
		> * + * {
			margin-top: 0;
		}
	}
}
/* 510 = Adressbox im Foooter */
.frame-layout-510 {
	@media (min-width: 768px) {
		margin-top: 0 !important;
	}
	@media (min-width: 992px) {
		display: flex;
		justify-content: end;
		gap: 100px;
		
		& .rhaddress__contact {
			order: 1;
		}
		& .rhaddress__box {
			order: 2;
		}
		& .rhaddress__box {
			+ .rhaddress__contact {
				margin-top: 0px;
			}
		}
	}
}
/* Footer end */
/* Login Form FE-User start */
.frame-type-felogin_login {
	& form {
		background-color: var(--light-color);
		padding: calc(var(--marginSmall)/2) var(--marginSmall);
		
		@media (max-width: 575px) {
			padding: calc(var(--marginSmall)/4) calc(var(--marginSmall)/2);
		}
		
		& label {
			display: grid;
			grid-template-columns: 150px 300px;
			
			@media (max-width: 767px) {
				grid-template-columns: 150px auto;
			}
			@media (max-width: 575px) {
				grid-template-columns: 1fr;
			}
		}
		& div {
			margin-top: 10px;
		}
	}	
}
/* Login Form FE-User end */
.body__fixed-header {
	&.be-pagets__rh_mhcf {
		padding-top: 115px;
		@media (min-width: 768px) {
			padding-top: 132px;
		}
	}
	@media (min-width: 992px) {
		padding-top: 105px;
		
		&.be-pagets__rh_mhcf {
			padding-top: 168px;
		}
	}
	@media (min-width: 768px) and (max-width: 991px) {
		padding-top: 68px;
	}
	@media (max-width: 767px) {
		padding-top: 62px;
	}
}

/* Pröpster Startseite/n Layout */
.be-pagets__rh_hcf_pblue {
	@media (min-width: 992px) {
		padding-top: var(--upper-header-height);
	}
	.nav-link {
		padding-top: 2px;
		padding-bottom: 2px;
		@media (max-width: 991px) {
			padding-top: 10px;
			padding-bottom: 10px;
		}
	}
	.hamburger-box {
		filter: invert(1);
	}
	& .siteheader {
		background-color: transparent;
		border-bottom-color: transparent;
		& nav {
			@media (max-width: 991px) {	
				justify-content: end;
			}
		}
		& .nav {
			display: flex;
			width: 100%;
			justify-content: space-between;
		}
	}
	& .siteheader__upper {
		background-color: var(--p-dark-blue);
		padding: 1.5rem 0;
		min-height: var(--upper-header-height);
		display: flex;
		align-items: end;
	}
	& .siteheader__lower {
		background-color: var(--first-color-90);
		
		@media (max-width: 991px) {	
			position: absolute;
			top: 0;
			width: 100%;
			background-color: transparent;
			padding-top: 10px;
		}
		
		* {
			color: var(--brightest);
		}
	}
	& .navbar-expand-lg {
		@media (min-width: 992px) {
			margin-top: 0px;
		}
	}
	
	.nav-pills .nav-link.active, .nav-pills .show>.nav-link {
		color: #ffffff80;
	}
	.logout-container-username {
		display: none;
	}
	.nav__respo-fixed {
		@media (max-width: 991px) {
			& #mainnav {
				background-color: var(--first-color);
			}
		}
	}
	@media (min-width: 768px) and (max-width: 991px) {
		& .navbar__logo {
			height: 40px;
		}
		& .nav__respo-fixed {
			& #mainnav {
				top: 85px;
			}
		}
	}	
	@media (max-width: 767px) {
		& .nav__respo-fixed {
			& #mainnav {
				top: 75px;
			}
		}
	}	
}

.frame-layout-170 {
	--first-line-font-size: 50px;
	--second-line-font-size: 120px;
	--thrid-line-font-size: 43px;
	--claim-margin: -45px;
	
	@media (max-width: 1199px) {
		--first-line-font-size: calc(50px / 4 * 3);
		--second-line-font-size: calc(120px / 4 * 3);
		--thrid-line-font-size: calc(43px / 4 * 3);
		--claim-margin: calc(-45px / 4 * 3);
	}
	@media (max-width: 767px) {
		margin-top: 30px;
	}
	@media (max-width: 340px) {
		--first-line-font-size: calc(50px / 4 * 2);
		--second-line-font-size: calc(120px / 4 * 2);
		--thrid-line-font-size: calc(43px / 4 * 2);
		--claim-margin: calc(-45px / 4 * 2);
	}
	@media (max-width: 240px) {
		--first-line-font-size: calc(50px / 4);
		--second-line-font-size: calc(120px / 4);
		--thrid-line-font-size: calc(43px / 4);
		--claim-margin: calc(-45px / 4);
	}
	
	& .ce-bodytext {
		& p {
			text-align: center;
			margin: 0;
			text-shadow: 0 3px 6px #00000029;
			
			&:nth-child(1) {
				font-size: var(--first-line-font-size);
			}
			&:nth-child(2) {
				font-size: var(--second-line-font-size);
				margin-top: var(--claim-margin);
			}
			&:nth-child(3) {
				font-size: var(--thrid-line-font-size);
				margin-top: var(--claim-margin);
			}
		}
	}
}

.frame-layout-610.container {
	max-width: 420px;
	
	@media (max-width: 1199px) {
		max-width: 320px;
		margin-top: 0px;
	}
	
	@media (max-width: 767px) {
		margin-bottom: 30px;
	}
	
	& > .inner {
		> h3, > p {
			display: none;
		}
	}
	
	&.frame-type-felogin_login {
		& form {
			padding: 0;
			background-color: transparent;
			
			input {
				border: none;
				border-radius: 5px;
				box-shadow: inset 0 0 5px #00000029;
				color: var(--font-color);
				padding: 8px 16px;
			}
			
			& label {
				display: grid;
				grid-template-columns: minmax(0, 1fr);
			}
			
			legend {
				display: none;
			}
			
			.btn {
				width: 100%;
				padding: 8px 16px;
			}
		}
	}
}

.breadcrumb__wrapper {
	border: none;
	background-color: var(--first-color);
	padding: 2px 0;
	
	& .breadcrumb__current {
		font-weight: 600;
	}
	* {
		color: var(--brightest);
		font-size: 18px;
	}
	& .breadcrum__seperator {
		i {
			font-size: 12px;
			transform: translateY(-1px);
		}
	}
	& a {
		&:hover {
			color: var(--brightest);
			opacity: .5;
		}
	}
	& .breadcrumb__current,
	& .breadcrumb__link {
		padding: 0 8px;
	}
}
.rh-header__no-image {
	border-bottom: 1px solid var(--brightest);
}
@media (min-width: 1400px) {
	.container {
		max-width: 1200px;
	}
}
.form-check-wrapping-label {
	display: grid;
	grid-template-columns: 30px auto;
}
#kontakt-233 h2 {
	margin-bottom: .5rem;
	font-size: calc(1.275rem + .3vw);
}
.form-navigation {
	& button {
		display: block;
		width: 100%;
		margin-top: 15px;
	}
}
.frame-type-semiprog_fesemiprog.wb-py-small {
	padding-top: 0px;
	padding-bottom: 0px;
	
	& .semiprog {
		padding-top: calc(var(--margin) / 2);
		padding-bottom: calc(var(--margin) / 2);
	}
}
.frame-type-semiprog_fesemiprog.wb-py-big {
	padding-top: 0px;
	padding-bottom: 0px;
	
	& .semiprog {
		padding-top: var(--margin);
		padding-bottom: var(--margin);
	}
}
.captcha a {
	text-decoration: none;
}
[for="kontakt-233-captcha-1"] {
	margin-top: 15px;
}