/* === XS === */

html,
body {
	font-family: 'FagoWeb', sans-serif;
	font-size:   16px;
	line-height: 24px;
	box-sizing:  border-box;
}

body > .container-canvas {
	margin:     auto;
	position:   relative;
	max-width:  1600px;
	overflow-x: hidden;
}

main {
	width:         100%;
	max-width:     1224px !important;
	padding:       120px 20px 0 !important;
	margin-bottom: 48px !important;
}

/* -- Images -- */

img {
	max-width: 100%;
	height:    auto;
}

/* --- Colors --- */

a[data-toggle] {
	cursor: pointer;
}

a.btn-green,
.object-preview-datas a.object-contact,
.pagecreator_texteditor form .wpcf7-submit,
footer .ak-widget.text-3,
footer.mobile .ak-widget.text-6 {
	color: #fff;
}

.collapse.in::before,
.service-contact-container,
.pagecreator_texteditor .wpcf7,
.object-preview-datas .object-info-box,
#slider-object .ms-view,
footer .ak-widget.nav_menu-2::before,
footer.mobile .ak-widget.text-5::before {
	background-color: #f2f2f2;
}

.text-grey,
div.hotline > div,
header.container-header #navigation-top ul li a,
#navigation-mobile > ul > li:first-of-type > a {
	color: #b2b2b2;
}

.text-green,
a.green,
header.container-header #navigation-main ul li.current-menu-item > a,
header.container-header #navigation-main > ul > li.current-menu-parent > a,
#navigation-mobile > ul li.current-menu-parent > a,
#navigation-mobile > ul li.current_page_item > a,
#navigation-mobile > ul li.current_page_item > a,
nav.breadcrumb a,
.reference-list ul,
#accordion_service .panel-body ul li::before,
ul.accord-navigation li a,
ul.accord-navigation li::before,
ul.green li::before,
ul.accord-navigation,
.reference-list a,
.contact-email a,
.office-container a,
.service-contact-container .service-contact-email a,
a.download-file-meta,
footer .ak-widget.text-2,
footer.mobile .ak-widget.text-4 {
	color: #8d0;
}

a.btn-green,
.pagecreator_texteditor form .wpcf7-submit,
footer .ak-widget.text-3::before,
footer.mobile .ak-widget.text-6::before {
	background-color: #8d0;
}

a.green,
header.container-header #navigation-main > ul > li.current_page_item > a,
.contact-email a,
.office-container a,
.service-contact-container .service-contact-email a,
ul.accord-navigation li a,
a.download-file-meta {
	border-bottom-color: #8d0 !important;
}

html, body,
nav.breadcrumb span,
.contact-form form p input,
.contact-form form p select {
	color: #014;
}

.object-preview-datas a.object-contact,
.contact-form form p input.wpcf7-submit {
	background-color: #014;
}

header.container-header #navigation-main > ul > li:hover > a {
	border-bottom: 8px solid #014;
}

tr.border-bottom {
	border-bottom: 1px solid #014;
}

b, strong {
	font-family: 'FagoWebBold', sans-serif;
}

h1, h2, h3, h4, h5, h6 {
	font-family:     'FagoWebBold', sans-serif;
	margin:          0;
	-ms-hyphens:     manual;
	-moz-hyphens:    manual;
	-webkit-hyphens: manual;
	hyphens:         manual;
}

h1:not(.article__headline) {
	font-family:   'FagoWeb', sans-serif;
	font-size:     1.5rem;
	line-height:   1.2;
	margin-bottom: 2.5rem;
	font-weight:   100;
}

h2:not(.article__headline) {
	font-family:   'FagoWeb', sans-serif;
	font-size:     1.5rem;
	font-weight:   100;
	margin-bottom: 2.5rem;
}

.home h2,
.content-main h2,
body.slug-verwaltung h2 {
	margin-bottom: 1rem;
	margin-top:    2.5rem;
}

h2.panel-title {
	margin-bottom: 0;
}

body.slug-impressum h2,
body.slug-datenschutz h2 {
	font-family:   'FagoWebBold', sans-serif;
	display:       block;
	font-size:     1.25rem;
	min-height:    48px;
	width:         70%;
	margin-bottom: 0;
}

body:not(.slug-jobs) .panel.panel-default a:not(.collapsed) h2 {
	font-family:   'FagoWebBold', sans-serif;
	padding-right: 50px;
}

a[aria-expanded=true] h2 {
	font-family: 'FagoWebBold', sans-serif;
}

h3 {
	font-size:     1.25rem;
	margin-bottom: 1rem;
}

.object-preview-content h3,
.object-preview-content .object-headline {
	font-size:   1.5rem;
	hyphens:     auto;
	line-height: 1.25;
}

.object-preview h3 {
	margin-bottom: 0.5rem;
}

body.home h3 {
	font-family:   'FagoWeb', sans-serif;
	font-size:     1.5rem;
	font-weight:   100;
	margin-bottom: 1rem;
}

h4,
.modal-title,
.widget-headline {
	display:       block;
	font-size:     1.5rem;
	line-height:   1.2;
	margin-bottom: 5px;
	margin-top:    24px;
}

.text-lg {
	font-size: 1.8rem;
}

.text-md {
	font-size:   1.15rem;
	line-height: 1.25;
}

.text-sm {
	font-size:     0.8rem;
	margin-bottom: 7px;
	font-weight:   300;
	margin-top:    -7px;
}

.text-grey {
	color: #aaa;
}

.uppercase {
	text-transform: uppercase;
}

.wide {
	letter-spacing: 0.05rem;
}

.spacing {
	letter-spacing: 1px;
}

ul.no-bullet,
ul.no-bullet > li {
	list-style-type: none !important;
}

ul.accord-navigation {
	padding:    0 3px;
	list-style: none;
}

ul.accord-navigation li {
	margin-bottom: 7px;
}

ul.accord-navigation li a {
	border-bottom:  1px solid transparent;
	padding-bottom: 2px;
}

ul.accord-navigation li::before {
	content:  '\25AA';
	position: relative;
	top:      -3px;
	left:     -5px;
}

nav.pagination h2,
nav.pagination .next.page-numbers {
	display: none;
}

.pagecreator_wysiwygeditor {
	margin-bottom: 48px;
}

#cookie-notice .button.wp-default {
	font-size:  13px;
	color:      #014;
	background: #fff;
}

a.goto {
	top: -12rem;
}

.panel > span.goto {
	position: relative;
	top:      -5rem;
	height:   0 !important;
}

a.green {
	border-bottom:  1px solid transparent;
	padding-bottom: 2px;
}

a.btn-green {
	/*width:      150px;*/
	height:     30px;
	display:    block;
	text-align: center;
	/*padding:    6px;*/
	font-size:  1.15rem;
	width: -moz-fit-content;
	width: -webkit-fit-content;
	width: fit-content;
	min-width: 150px;
	padding: 6px 18px;
}

.spacer-bottom-24 {
	margin-bottom: 24px;
}

.spacer-bottom-18 {
	margin-bottom: 18px;
}

.spacer-bottom-12 {
	margin-bottom: 12px;
}

/* --- Tooltip --- */

.tooltip {

	position:                absolute;
	top:                     0;
	left:                    0;
	z-index:                 1060;
	display:                 none;
	max-width:               276px;
	padding:                 1px;
	font-style:              normal;
	line-height:             1.42857143;
	text-align:              left;
	text-decoration:         none;
	text-shadow:             none;
	letter-spacing:          normal;
	word-break:              normal;
	word-spacing:            normal;
	word-wrap:               normal;
	white-space:             normal;
	background-color:        #fff;
	-webkit-background-clip: padding-box;
	background-clip:         padding-box;
	-webkit-box-shadow:      0 0 12px rgba(0, 0, 0, .1);
	box-shadow:              0 0 12px rgba(0, 0, 0, .1);
	line-break:              auto;

	font-size:               0.8rem;
	font-family:             Lato, sans-serif;
	font-weight:             600;
	text-transform:          uppercase;
	hyphens:                 manual;
}

.tooltip.in {
	filter:  alpha(opacity=100);
	opacity: 1;
}

.tooltip-inner {
	max-width:        250px;
	padding:          12px 24px;
	color:            #001566;
	text-align:       center;
	background-color: #fff;
	border-radius:    0;
}

.tooltip.top {
	margin-top: -10px;
}

.tooltip.right {
	margin-left: 10px;
}

.tooltip.bottom {
	margin-top: 10px;
}

.tooltip.left {
	margin-left: -10px;
}

.tooltip > .tooltip-arrow,
.tooltip > .tooltip-arrow:after {
	position:     absolute;
	display:      block;
	width:        0;
	height:       0;
	border-color: transparent;
	border-style: solid;
}

.tooltip > .tooltip-arrow {
	border-width: 11px;
}

.tooltip > .tooltip-arrow:after {
	content:      "";
	border-width: 10px;
}

.tooltip.top > .tooltip-arrow {
	bottom:              -11px;
	left:                50%;
	margin-left:         -11px;
	border-top-color:    #fff;
	border-bottom-width: 0;
}

.tooltip.top > .tooltip-arrow:after {
	bottom:              1px;
	margin-left:         -10px;
	content:             " ";
	border-top-color:    #fff;
	border-bottom-width: 0;
}

.tooltip.right > .tooltip-arrow {
	top:                50%;
	left:               -11px;
	margin-top:         -11px;
	border-right-color: #fff;
	border-left-width:  0;
}

.tooltip.right > .tooltip-arrow:after {
	bottom:             -10px;
	left:               1px;
	content:            " ";
	border-right-color: #fff;
	border-left-width:  0;
}

.tooltip.bottom > .tooltip-arrow {
	top:         -11px;
	left:        50%;
	margin-left: -11px;
}

.tooltip.bottom > .tooltip-arrow:after {
	top:                 1px;
	margin-left:         -10px;
	content:             " ";
	border-top-width:    0;
	border-bottom-color: #fff;
}

.tooltip.left > .tooltip-arrow {
	top:                50%;
	right:              -11px;
	margin-top:         -11px;
	border-right-width: 0;
	border-left-color:  #fff;
}

.tooltip.left > .tooltip-arrow:after {
	right:              1px;
	bottom:             -10px;
	content:            " ";
	border-right-width: 0;
	border-left-color:  #fff;
}

.objectcategory-preheadline {
	display:       block;
	font-size:     1.5rem;
	line-height:   1.2;
	margin-bottom: 5px;
	margin-top:    0;
}

.objectcategory-headline {
	font-family: 'FagoWeb', sans-serif;
	font-size: 1.5rem;
	font-weight: 100;
	margin-top: -14px;
	margin-bottom: 2.35rem;
}

.objectcategory-subheadline {
	margin-bottom: 1rem;
	margin-top: 2.5rem;
}

/* GROUPS */
.group_default--margin {
	margin: 3rem 0 0;
}

.group_default--margin h2 {
	font-family: 'FagoWebBold', sans-serif;
}

/* === SM === */

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

}

/* === MD === */

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

	html,
	body {
		font-size:   16px;
		line-height: 24px;
	}

	body.slug-standort h1 {
		margin-top: 0;
	}

	h4,
	.modal-title,
	.widget-headline {
		margin-top: 0;
	}

	main {
		padding: 192px 24px 0 !important;
	}

	a.btn-green {
		width:      200px;
		height:     36px;
		display:    block;
		text-align: center;
		padding:    6px;
		font-size:  1rem;
	}
}

/* === LG === */

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

	main {
		padding: 144px 24px 62px !important;
	}

	body.home main {
		padding: 144px 24px 0 !important;
	}

}

/* === Special === */

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

	main {
		padding: 144px 0 62px !important;
	}

	body.home main {
		padding: 144px 0 0 !important;
	}

}

