@media (max-width: 1050px) {

	.hide-desktop-menu {
        display: inherit;
    }

    .hide-mobile-menu {
        display: none;
    }

}

@media (max-width: 900px) {

	.header-image-section h1 {
        display: inherit;
    }

    .header-span {
	    line-height: 14px;
		font-size: 38px;
    }

    .header-logo {
	    margin-left: 30px;
    }
    
    
    body {

	}

}

@media (max-width: 1700px) and (min-width: 1521px) {
	
	.header-text h1,
	.header-text h2 {
		font-size: 50px;
		line-height: 60px;	
	}
	
}

@media (max-width: 1520px) {

	.main-navigation li {

	}

	.main-navigation a,
	.main-navigation .current-menu-item > a {
		font-size: 16px;
	}

	.subheader span {
		font-size: 22px;
	}
	
	.header-image-section h1,
	.header-image-section h2 {
		font-size: 40px;
        line-height: 42px;
	}

}

@media (max-width: 1130px) {

	.header-social {
		display: none;
	}

	#site-navigation-2 {
		margin-right: 0;
	}

	.home .subheader {
		display: none;
	}

}

@media (max-width: 1200px) {
	
	body h2 {
		font-size: 32px;
	}
	
	.colors-section h2 {

	}
	
	.colors-section p {
	    font-size: 12px;
	    line-height: 16px;
	}
	
	body p,
	.text-section p,
	.text-section ul li, 
	.product-section ul li, 
	.productteaser-section ul li {
		font-size: 16px;
		line-height: 26px;
	}

	.main-navigation a,
	.main-navigation .current-menu-item > a {
		font-size: 12px;
	}
	
	.timeline-icon {
		width: 80px;
	}
	
	.header-icon {

	}
	
	.footer-social img {
		margin-right: 6px;
	}
	
	.mobile-header-box {
		position: relative;
		height: 50vh;
	}
	
	.header-img-end-mobile {
		position: absolute;
		bottom: -1px;
		width: 100%;
	}

}

@media (max-width: 959px) {
    .header-image-section {
		margin-top: 100px;
		padding-bottom: 0 !important;
	}
}

@media (max-width: 1050px) {
	
	.header-image-section {
		margin-top: 0;
		padding-bottom: 0 !important;
		height: auto !important;
	}
	
	.hl-box {
		padding: 30px !important;
	}
	
	.border-img-start {
		margin-top: 30px;
	}
	
	body h1 {
		font-size: 30px;
	}

	.mb-5 {
		margin-bottom: 1rem !important;
	}

	.mt-5 {
		margin-top: 1rem !important;
	}

	.home .subheader {
		display: inherit !important;
	}

	.subheader span {
		font-size: 20px;
	    display: block;
	    width: 100%;
	    line-height: 24px;
	}

	.subheader .block {
		width: auto;
		float: none;
	}

	.subheader img {
		display: none;
	}

	.subheader {
		bottom: 0;
	}

	.text-section .row img {
		margin: 0 auto;
	}
	
	.contact-rose {
		display: none;
	}

	a[href^="tel"],
	a[href^="mailto"] {
	    color:inherit;
	    text-decoration:none;
	    font-weight: inherit;
	}

	.header-social {
		display: none;
	}

	.section {
		padding-top: 40px !important;
		padding-bottom: 40px !important;
	}

	body h2 {
		font-size: 28px;
	}
	
	.img-teaser-section {
		padding: 30px !important;
	}

    #wpadminbar {
        display: none;
    }

    .hide-desktop {
        display: inherit;
    }

    .hide-mobile {
        display: none;
    }

    .site-header {
        top: 0;
        height: 90px;
		margin-top: 20px;
    }
    
    .header-wrapper {
	    
    }

    body p {
	    line-height: 26px;
    }

    .header-logo {
        width: auto;
	    float: none;
	    position: fixed;
	    top: 12px;
	    left: 0;
	    z-index: 99;
	    margin-left: 0;
    }

    .header-logo img {
        margin: 0 auto 0 30px;
    }

    .fa-bars {
        position: fixed;
	    right: 30px;
	    top: 24px;
	    font-size: 40px;
	    color: #000000;
	    z-index: 9999;
    }

    .mobile-menu {
	    margin: 120px 0px 0 0px;
	    overflow-y: scroll;
		background: rgba(255, 255, 255, 0.76);
	    box-shadow: 0 4px 30px rgba(0, 0, 0, 0.1);
	    backdrop-filter: blur(10px);
	    -webkit-backdrop-filter: blur(10px);
	    height: 100%;
	    position: fixed;
	    top: 6px;
	    right: 0;
	    width: 100%;
	    height: 70vh;
        transform: translateY(-100%);
        opacity: 0;
	    transition: all 0.3s ease;
	    border-radius: 30px;
    }
    
    .mobile-menu.open {
	    background: rgba(255, 255, 255, 1);
	}
	
	.mobile-menu.open {
        transform: translateY(0%);
        opacity: 1;
	}

    .mobile-menu ul {
        margin-left: 0;
        padding-left: 00px;
    }

    .mobile-menu ul li {
        list-style-type: none;
        font-size: 24px;
        padding: 16px 20px !important;
        line-height: 34px;
        text-align: left;
    }

	.mobile-menu ul li a {
		color: #000000;
		font-weight: 600;
		font-size: 40px;
		line-height: 60px;
	}

    .mobile-menu ul li a:active,
    .mobile-menu ul li a:hover {
	    color: #2B2E33;
	    text-decoration: none;
    }

    .mobile-menu ul li .sub-menu li {
	    line-height: 26px;
	    border-left: solid 2px #9B2321;
    }

    .mobile-menu ul > li {
        font-size: 30px;
    }
    
    .mobile-menu ul li.current-menu-item a {
	    border-bottom: 4px solid #8EFEC7;
    }

    #primary-menu-1 {
        margin-bottom: 0;
    }

    .home .header-image-section {
	    height: auto !important;
	   /* padding-top: 120px !important;*/
	    margin-top: 0;
	    padding-top: 0 !important;
	    position: relative;
    }
    
    .faq-section img {
	    margin-bottom: 20px;
    }
    
    .faq-section .card-body {
	    padding-right: 0;
    }

    .header-image-section p {
        bottom: 10%;
    }

    .header-image-section h1 {
        bottom: 40%;
    }

    .header-icon {
	    width: 25%;
	    max-width: 100px;
        right: 30px;
        bottom: 30px;
    }

    body h3 {
        line-height: 30px;
    }

    .contact-section {
		padding-left: 30px;
		padding-right: 30px;
    }
    
    .productteaser-section .product-tile {
	    padding: 30px !important;
    }

    .cv-section .container {
        padding: 30px;
    }

    .cv-list .date {
        width: 100%;
        float: none;
    }
    
    .cv-list .text {
	    float: none;
	    width: 100%;
	    margin-bottom: 20px;
	}

    .text-section .bg-img {
	    display: none;
    }

    .sub-menu li a:before {
	    content: '';
    }

    .sub-menu li a {
	    font-size: 22px;
    }
    
    .wir-section .card-opener {
	    float: none;
        position: absolute;
        top: 40px;
        right: 40px;
	}

    .footer-menu {
	    float: none;
	    margin: 0;
    }

    .product-section {
	    padding-left: 30px;
	    padding-right: 30px;
    }

    .product-section img {
	    margin-top: 30px;
	    height: auto;
    }

    .sub-menu {
	    list-style: none;
	    padding: 10px 0;
    }

    .mobile-margin {
	    margin-bottom: 40px !important;
    }

    .activities-section .button {
	    margin-top: 0 !important;
    }

    .activities-section h4 {
		min-height: auto;
	}

	.header-image-section h1 {
		font-size: 30px;
		line-height: 70px;
	}

	html body {

	}

	.img-section h1 {
	    font-size: 38px;
	    line-height: 38px;
	}

	.img-section .hl-box {
		bottom: 15%;
	}

	.header-image-section .hl-box {
		top: 40%;
		left: 5%;
		width: 80%;
	}

	.home .header-image-section .hl-box {
		bottom: 15%;
	    top: auto;
	    padding: 0;
	    text-align: left;
	}

	.footer-menu a {
		font-weight: 300;
	}

	.site-main {

	}

	.header-span {
		font-size: 30px;
		line-height: 32px;
	    padding-right: 10px;
	    padding-left: 0px;
	    box-shadow: -10px 0 0 #ffffff;
	    display: block;
	    display: inline;
	    white-space: pre-wrap;
	}

	.header-social {
	    width: 80px;
	    position: fixed;
	    top: 30px;
	    right: 0px;
	    z-index: 999;
	}

	.header-social img {
	    width: 34px;
	    margin-right: 2px;
	}

	.imgteaser-section p {
		font-size: 18px;
	    line-height: 20px;
	    padding: 6px 4px;
	    bottom: 0px;
	    left: 10%;
	    width: 80%;
	}

	.imgteaser-section h3 {
	    text-align: center;
	    position: absolute;
	    bottom: 23%;
	    color: #fff;
	    font-size: 24px;
	    letter-spacing: 1px;
	    width: 100%;
	    left: 0;
	}

	.facts-section {
		/*margin-top: -60px;*/
	}

	.accordion-section h3 button, .accordion-section h3 button:focus {
		font-size: 18px;
	}

	.accordion-section h2 {
		margin-left: 40px;
	}

	.accordion-button {
		text-align: left;
		margin-left: 30px;
	}

	.accordion-section .card-body p {
	    color: #fff;
	    padding-left: 40px;
	    padding-right: 0;
	}

	.accordion-section h3 img {
		position: absolute;
		left: 10px;
	}

	.text-section {
		width: 100% !important;
	}
	
	.text-section .font-blue {
	}

	.card-header {
		padding-left: 0;
		padding-right: 0;
	}
	
	.card-header span {
		width: 85%;
		text-align: left;
	}

	.subheader {
		display: none !important;
	}

	.portfolio-item {
        width: 100%;
    }

    .portfolio-item.portfolio-left .portfolio-dot {
        left: -12px;
    }

    .portfolio-item.portfolio-left {
        border-left: solid 3px #8EFEC7;
        border-right: none;
        padding: 30px;
        margin-left: 0;
        text-align: left;
    }

    .portfolio-item.portfolio-right {
        margin-left: 0;
        padding-left: 30px;
    }
    
    .footer-social {
	    position: initial;
	    margin-top: 20px;
    }
    
    .eventbox .button-blue {
		float: none !important;
		margin-top: 10px !important;
	}
	
	.event-wrapper {
		width: 100%;
	}
	
	.button, 
	.button:visited {
		text-align: center;
        padding: 8px 20px !important;	
	}
	
	.filter-section span, 
	.filter-section button {
		padding: 0 0;	
	}
	
	.filter-section button {
		margin-right: 10px;
	}
	
	.post .bluebox {
		margin-top: 40px;
	}
	
	.post-footer p {
		font-size: 24px;
	}
	
	.post-thumb {
	    width: 100%;
	    height: 200px;
	    background-size: cover !important;
	    background-position: center !important;
	    border-radius: 24px;
	}
	
	.post {
		padding-top: 80px;
	}
	
	.post-header-grey {
		top: 100px;
		height: 100px;
	}
	
	.border-post-top {
	    top: 200px;
	}
	
	.header-text {
		height: auto;
        width: 100%;
        padding: 30px;
	}
	
	.header-image-section h1,
	.header-image-section h2 {
		width: 100%;
	}
	
	.header-image-section h2 {
        line-height: 36px;
	}
	
	.header-image-section .hl-box {
	    position: inherit;
	    padding: 30px !important;
	    left: 0;
	    margin: 0 30px;
	}
	
	.swiper-slide img {
	    width: 70%;
	    border-radius: 14px;
	}
	
	.swiper-button-next img, .swiper-button-prev img {
	    width: 40px;
	}
	
	.swiper {
	    padding-bottom: 0px;
	}
	
	.swiper-button-next {
		right: 12px;
		bottom: 50%;
		top: auto;
	}
	
	.swiper-button-prev {
		left: 12px;
		bottom: 50%;
		top: auto;
	}
	
	.post-1127 {
		
	}
	
	.event-tag {
	    display: inline-block;
	    margin-bottom: 4px;
	}
	
	.vert-center {
		position: relative;
	}
	
	.main-navigation-mobile .menu-hauptmenue-rechts-container > ul > li > .sub-menu {
		display: none;
	}
	
	.main-navigation-mobile .menu-hauptmenue-rechts-container > ul .menuarrow {
		display: none;
	}
	
	.main-navigation-mobile .menu-hauptmenue-rechts-container > ul > li.menu-item-has-children > a .menuarrow {
	    display: inline-block;
	    height: 20px;
	    margin-left: 16px;
	    transition: transform 0.2s;
	    margin-top: -6px;
	}
	
	.wir-section .card-header {
	    padding: 40px 20px !important;
	}
	
	.wir-section button {
		font-size: 50px;
		text-align: left;
	}
	
	.wir-icon {
		display: flex;
	}
	
	.wir-section .card-body {
	    padding: 0px 30px 30px 30px;
	}
	
	.wir-section .swiper-button-next, .wir-section .swiper-button-prev {
	    top: 85%;
	}
	
	.wir-section .swiper-button-prev {
	    left: 15px;
	}
	
	.wir-section .swiper-button-next {
	    right: -6px;
	}
	
	.header-wrapper .header-first {
		width: 100%;
		float: none;
	}
	
	.header-wrapper .header-second {
		float: none;
		width: 100%;
		height: 300px;
	}
	
	.header-text-wrapper {
		padding-top: 120px;
		padding-bottom: 40px;
	}
	
	.header-image-section p {
	    font-size: 16px;
	    line-height: 28px;
	}
	
	.product-wrapper {
		padding: 0;
	}
	
	.text-img-big-section .text-wrapper {
		width: 100%;
		float: none;
		height: auto;
	}
	
	.text-img-big-section .image-wrapper {
		width: 100%;
		float: none;
		height: 300px;
		min-height: 200px;
	}
	
	.fa-facebook, .fa-instagram {
		margin-bottom: 30px;
	}
	
	.footer-copyright,
	.footer-menu {
		float: none;
		width: 100%;
		text-align: left;
	}

}

@media (max-width: 600px) {
	
	#post-248 .img-teaser-section {
		padding-top: 80px !important;
	}

	.header-image-section h1 {
	    font-size: 40px;
	    line-height: 50px;
	    margin-bottom: 20px;
	}

	.site-main {
	    padding-top: 0;
	}

	.mobile-menu ul li a {
		font-size: 28px;
		line-height: 24px;
	}
	
	.header-image-section h2 {
        line-height: 32px;
        font-size: 28px;
    }
    
    .img-teaser-section .simpleParallax {
	    position: absolute;
        height: 200px;
        width: 100%;
        top: -80px;
    }
    
    .img-teaser-section {
        padding: 0px !important;
        position: relative;
        margin-top: 80px;
        padding-bottom: 30px !important;
    }

}

@media (max-width: 420px) {
	
	.header-image-section h1 {
        font-size: 34px;
        line-height: 38px;
    }
    
}

@media (max-width: 375px) {

	body h2 {
        font-size: 24px;
    }

	.text-section p {
        font-size: 16px;
        line-height: 22px;
    }
    
    .button, .button:visited {
	    font-size: 14px;
    }
    
    body p {
        line-height: 22px;
        font-size: 16px;
    }
    
    .img-teaser-section {
        padding: 20px !important;
    }
    
    .header-image-section h1 {
        font-size: 30px;
        line-height: 34px;
        margin-bottom: 20px;
    }
    
    .text-section ul li, .product-section ul li, .productteaser-section ul li {
	    line-height: 24px;
	}
	
	.text-img-big-section .text-wrapper {
	    min-height: auto;
	    height: auto;
        padding: 60px 0;
	}

}
