/*
 Theme Name:     Divi Child Theme
 Theme URI:      http://www.elegantthemes.com
 Description:    Child Theme for Divi Theme by Elegant Themes
 Author:         Divi.world
 Author URI:     http://divi.world
 Template:       Divi
 Version:        1.0.0
*/

/* =Ab hier kannst du deine CSS-Anpassungen eintragen
------------------------------------------------------- */
:root {
	--nsh-spacing: 0;
	--light: 300;
	--bold: 650;
	--xbold: 750;
	--body: 20px;
	--h3: 25px;
	--h2: 40px;
	--h1small: 40px;
	--h1big: 60px;

	--nsh-blue: #00BAFF;
	--nsh-darkblue: #002546;
	--nsh-gray: #D6D7D9;
	--nsh-secondary1: #B6DDDA;
	--nsh-secondary2: #B9E0B7;
	--nsh-secondary3: #DEEAC4;
	--nsh-secondary4: #DED7BB;
	--nsh-secondary5: #FEC75C;
	--nsh-text: #000;

}
@media (max-width: 767px) {
	:root {
		--body: 20px;
		--h3: 25px;
		--h2: 40px;
		--h1small: 40px;
		--h1big: 45px;
	}
}
@media (max-width: 767px) {
	:root {
		--body: 18px;
		--h3: 22px;
		--h2: 35px;
		--h1small: 35px;
		--h1big: 40px;
		--light: 350;
	}
}

@font-face {
	font-family: 'Figtree';
	src: url('fonts/figtree-variable.woff2') format('woff2');
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}

@font-face {
	font-family: 'Figtree';
	src: url('fonts/figtree-variable-italic.woff2') format('woff2');
	font-weight: 100 900;
	font-style: italic;
	font-display: swap;
}

.invisible {
	display: none !important;
}

/*	Overwrite Divi Inline CSS */
body,
.et_pb_column_1_2 .et_quote_content blockquote cite,
.et_pb_column_1_2 .et_link_content a.et_link_main_url,
.et_pb_column_1_3 .et_quote_content blockquote cite,
.et_pb_column_3_8 .et_quote_content blockquote cite,
.et_pb_column_1_4 .et_quote_content blockquote cite,
.et_pb_blog_grid .et_quote_content blockquote cite,
.et_pb_column_1_3 .et_link_content a.et_link_main_url,
.et_pb_column_3_8 .et_link_content a.et_link_main_url,
.et_pb_column_1_4 .et_link_content a.et_link_main_url,
.et_pb_blog_grid .et_link_content a.et_link_main_url,
body .et_pb_bg_layout_light .et_pb_post p,
body .et_pb_bg_layout_dark .et_pb_post p {
	font-size: var(--body) !important;
}

body {
	font-family: "Figtree", sans-serif;
	font-style: normal;
	font-weight: var(--light);
	line-height: 1.4;
	letter-spacing: var(--nsh-spacing);
	color: var(--nsh-text);
	scroll-behavior: smooth;
}

h2, h3, h4, h5, h6 {
	font-weight: var(--bold);
}

h1 {
	font-size: var(--h1big);
	font-weight: var(--xbold);
}

h2 {
	font-size: var(--h2);
}

h3 {
	font-size: var(--h3);
}

h4, h5, h6 {
	font-size: var(--body);
}

p, ul li, ol li {
	font-size: var(--body);
	padding-bottom: 0.5em;
}

strong {
	font-weight: var(--bold);
}

/*** Hide Sidebar ***/
#sidebar {
	display: none;
}

/*** Take out the divider line between content and sidebar ***/
#main-content .container:before {
	background: none;
}

/*** Expand the content area to fullwidth ***/
@media (min-width: 981px) {
	#left-area {
		width: 100%;
		padding: 23px 0px 0px !important;
		float: none !important;
	}
}

/*	Main menu */

/* show hamburger menu on desktop */
/* https://www.peeayecreative.com/how-to-show-a-divi-hamburger-menu-on-desktop */
@media (min-width: 980px) {
	.et_pb_menu .et_pb_menu__menu, .et_pb_fullwidth_menu .et_pb_menu__menu {
		display: none;
	}
}

.et_pb_menu .et_mobile_nav_menu, .et_pb_fullwidth_menu .et_mobile_nav_menu {
	display: flex;
	float: none;
	margin: 0 6px;
	align-items: start;
}

.et_pb_menu .et_mobile_nav_menu li {
	list-style-type: none;
}

/*	Reverse the menu module logo and navigation*/
.et_pb_menu--style-left_aligned .et_pb_menu_inner_container {
	flex-direction: row-reverse;
}

/*	move the navigation completely to the left*/
.et_pb_menu--style-left_aligned.et_pb_text_align_center .et_pb_menu__wrap {
	justify-content: left;
	align-content: center;
}

@media (max-width: 980px) {
	.et_pb_menu .et_mobile_nav_menu {
		-webkit-box-align: start;
		-ms-flex-align: start;
		align-items: start;
	}

	.et_pb_menu--style-left_aligned .et_pb_menu__wrap {
		-webkit-box-pack: start;
		-ms-flex-pack: start;
		justify-content: flex-start;
	}
}


/*	move the logo completely to the right*/
.et_pb_menu--style-left_aligned .et_pb_menu__logo {
	margin-right: 0px;
	margin-left: 30px;
}

/*	Logo background */
.et_pb_menu__logo {
	background-color: #ffffffcc;
	padding: 2px 20px 5px;
}
/* 
.mobile_menu_bar {
	height: 70px;
}
.et_pb_sticky .mobile_menu_bar {
	height: 53px;
} */

/*	Change Hamburger to image */
.mobile_menu_bar::before {
	background-image: url(img/hamburger.svg);
	background-repeat: no-repeat;
	background-size: cover;
	font-size: 70px;
	/* display: inline-flex;
	height: 100%; */
	color: transparent !important;
}
.et_pb_sticky .mobile_menu_bar::before {
	font-size: 50px;
}

.mobile_menu_bar:hover::before {
	background-image: url(img/hamburgerHover.svg);
}

/* change open menu to X */
.mobile_nav.opened .mobile_menu_bar::before {
	background-image: url(img/hamburgerClose.svg);
}

.mobile_nav.opened .mobile_menu_bar:hover::before {
	background-image: url(img/hamburgerCloseHover.svg);
}

/* transition? */
.mobile_menu_bar:before, .mobile_nav.opened .mobile_menu_bar::before {
	transition: all .4s ease;
}
/*	Corrections for positioning & size */
.et_pb_menu--style-left_aligned .et_pb_menu_inner_container, 
.et_pb_menu--style-left_aligned .et_pb_row {
	-webkit-box-align: start;
	-ms-flex-align: start;
	align-items: start;
}
.et_pb_module .mobile_menu_bar::before {
	top: 5px;
}

@media only screen and (max-width: 980px) {
    .et_pb_menu_0_tb_header .et_pb_menu_inner_container > .et_pb_menu__logo-wrap, 
    .et_pb_menu_0_tb_header .et_pb_menu__logo-slot {
        width: 128px;
    }
    .et_pb_sticky .et_pb_menu_0_tb_header .et_pb_menu_inner_container > .et_pb_menu__logo-wrap, 
    .et_pb_sticky .et_pb_menu_0_tb_header .et_pb_menu__logo-slot {
		width: 128px !important;
    }
    .et_pb_menu__logo {
		padding: 5px 12px;
    }
    .mobile_menu_bar::before {
		/* display: inline-flex;
		height: 53px; */
		font-size: 50px;
	}
	.et_pb_sticky .mobile_menu_bar::before {
		/* height: 42px; */
		display: block;
		margin-top: 5px;
		font-size: 40px;
	}
	.et_pb_module .mobile_menu_bar::before {
		top: 1px;
	}	
}
.et_pb_sticky .et_pb_row--with-menu {
	background-color: RGBA(255,255,255,255);
}
.et_pb_menu--style-left_aligned .et_pb_menu__logo {
	margin-right: 0;
	margin-left: 0;
	margin-top: 2px;
}
.et_pb_menu .et_mobile_nav_menu, .et_pb_fullwidth_menu .et_mobile_nav_menu {
	margin: 0;
	align-items: start;
}

/*	Menu items */
#nsh-menu .et_mobile_menu li a:hover, .nav ul li a:hover {
	background-color: #00BAFF;
	opacity: 1;
}
#nsh-menu .et-menu-nav li a:hover {
	color: white;
}
.et-l--header #nsh-menu ul {
	padding: 0;
}
#nsh-menu .et_mobile_menu li a {
	/* padding: 10px 5%; */
	padding: 15px;
}
@media only screen and (max-width: 767px) {
	#nsh-menu .et_mobile_menu li a {
		padding: 5px 10px;
	}
}
@media only screen and (min-width: 981px) {
	#nsh-menu .et_mobile_menu {
	border-top: none;
	margin-top: 20px;
	}
	.et_pb_sticky #nsh-menu .et_mobile_menu {
	margin-top: 17px;
	}
	#nsh-menu .et_mobile_menu li {
		padding-bottom: 0;
	}
}

/*	Transitions off */

/* @media only screen and (max-width: 980px) {
	#nsh-menu .mobile_menu_bar::before, 
	#nsh-menu .mobile_nav.opened 
	#nsh-menu .mobile_menu_bar::before {
		transition: none;
	}
	#nsh-menu  .et_pb_menu_0_tb_header .et_pb_menu__logo-slot,
	#nsh-menu  .et_pb_menu_0_tb_header .et_pb_menu_inner_container > .et_pb_menu__logo-wrap {
		transition: none;
	}
} */

/*	Fullwidth header */
.et_pb_fullwidth_header .et_pb_fullwidth_header_container.center .header-content {
	width: 100%;
	max-width: none;
}

.et_pb_fullscreen .et_pb_fullwidth_header_container {
	width: 100%;
}

/*	Header scroll down button */
.scroll-down.et-pb-icon {
	content: url(img/scrollDown.svg);
}
.scroll-down.et-pb-icon:hover {
	content: url(img/scrollDownHover.svg);
}
.et_pb_fullwidth_header .et_pb_fullwidth_header_scroll {
	padding-bottom: 50px;
}

/*	Step 1-3 */
.custom-triangle {
	width: 0;
	height: 0;
	border-left: 40px solid transparent;
	/* Linke Seite des Dreiecks */
	border-right: 40px solid transparent;
	/* Rechte Seite des Dreiecks */
	border-top: 40px solid var(--nsh-secondary2);
	/* Farbe des Dreiecks */
	margin: 0 auto;
	/* Zentriert das Dreieck horizontal */
}

/*	Timeline */

/* Minimal height */
.et_pb_module.diti_timeline_item {
	/*min-height: 8em;*/
}
.diti_timeline_0 .timeline-line {
	/* background-color: #00BAFF;
	margin-left: -1.5px;
	width: 3px; */
	z-index: -1;
}
.timeline .timeline-panel {
	border: none;
	box-shadow: none;
}
.timeline-panel::before {
  display: none !important;
}
/* Badge */
.diti_timeline_item .timeline-badge {
	background-color: white;
	border-radius: 40px;
	padding: 0;
	width: 80px;
  height: 80px;
  border: 3px solid #00BAFF;
}
.timeline-badge img {
	padding-top: 10%;
}
.diti_timeline_item_0 .timeline-badge {
	/* margin-top: -40px; */
}
.diti_divi_timeline ul.timeline {
	/* padding: 0; */
	background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgba(255,255,255,0) 1%, rgba(255,255,255,0) 90%, rgb(255, 255, 255) 100%);
}
@media (max-width: 767px) {
	.timeline .diti_timeline_item.diti_timeline_item_0 .timeline-badge {
		margin-top: -20px;
	}
	.diti_timeline_0.diti_timeline .diti_timeline_item.diti_timeline_item_0 .timeline-panel {
		padding-top: 0 !important;
	}	
	.timeline-heading {
		/* padding: 0 20px; */
	}
	ul.timeline .timeline-badge {
		top:0;
		width:40px;
		height: 40px;
	}
	.timeline-body p {
		font-size: 16px;
		line-height: 1.2;
	}
	  
}

.diti_timeline_item_0 .timeline-panel {
	top: -10px;
}
/* Last Badge 
#nsh-timeline .et_pb_module.diti_timeline_item:last-child {
	margin-bottom: -240px !important;
}
#nsh-timeline .et_pb_module.diti_timeline_item:last-child .timeline-badge {
	margin-top: -100px !important;
}
*/
.diti_timeline_item:last-of-type .timeline-badge {
	/* margin-top: 100px !important; */
}
.diti_timeline_item:last-of-type .timeline-badge img {
	max-width: 100%;
	padding-top: 0;
}  
.timeline-line {
	/* top: 50px;
	bottom: 110px; */
}

/*	FilterGrid */
.three-column-grid .dp-dfg-layout-grid .dp-dfg-items {
    grid-template-columns: repeat(auto-fill,minmax(30%,1fr)) !important;
}
.nshnews .dp-dfg-skin-default .dp-dfg-item {
	border: none;
}
.nshnews .dp-dfg-header.entry-header {
  margin: 20px -10px 0;
  padding: 0 !important;
}
.nshnews .dp-dfg-meta.entry-meta {
  margin: 0 -1em 2em;
}
.nshnews .dp-dfg-content.entry-summary {
  margin: 0 -10px;
}
/* Einheitliche Bildhöhe im nshnews-Modul */
.nshnews img {
	width: 100% !important;
	aspect-ratio: 16 / 9;
	object-fit: cover;
	display: block;
}
  