/*!
Theme Name: Mustersite
Theme URI: http://www.mustersite.ch
Author: RESIGN.
Description: Mustersite Custom Wordpress Theme
Version: 1.0.v11
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
This theme, like WordPress, is licensed under the GPL.
 */

/*************************************************************************/
/*  Basics   */

 
html {
	position: relative;
}
body {
	font-family: lato, sans-serif;
	font-weight: 300;
	font-style: normal;
	font-size: 21px;
	line-height: 170%;
	color: #000;
	background-color: #fff;	
}


@media only screen and (max-width: 1440px) {
	body {font-size: 18px; line-height: 160%;}
} 
@media only screen and (max-width: 970px) {
	body {font-size: 18px; line-height: 190%;}
} 



a {
	transition: all .3s ease-in-out;
}
a:hover {
	opacity: .6;
	transition: all .3s ease-in-out;
}

.brand-color {
	color: #4a90e2;
}


/*************************************************************************/
/* Titel */

h1, h2, h3, h4, h5, h6 {
	font-family: lato, sans-serif;
	font-weight: 700;
	line-height: 110%;
	text-transform: uppercase;
		word-break: break-word;
} 
h1 {
	font-size: 300%;
}
h2 {
	font-size: 240%;
}
h3 {
	font-size: 150%;
}
h4 {
	font-size: 130%;
}
h5 {
	font-size: 115%;
}
h6 {
    font-size: 100%;
	font-weight: 300; 
}
@media only screen and (min-width: 1390px) {
	.headliner {
	font-size: 50px !important;
}
}

@media only screen and (max-width: 1440px) {
	h1 {font-size: 180%;}
	h2 {font-size: 160%;}
	h3 {font-size: 140%;}
	h4 {font-size: 110%;}
}

@media only screen and (max-width: 970px) {
	h1 {font-size: 180%;}
	h2 {font-size: 160%;}
	h3 {font-size: 140%;}
	h4 {font-size: 110%;}
}



/*************************************************************************/
/*  Header   */

.res-header {
    box-shadow: 0px 0px 20px #e2e2e2;
	padding: 30px 0 0 0;
}

@media only screen and (min-width: 1690px) {
	.res-header .container {
		max-width: 1500px;
	}
}

.logo {
}

.logo img {
    max-width: 320px;
    padding-bottom: 30px;
}


/*************************************************************************/
/*  Nav   */

.res-nav-section {
}

.res-header .res-nav-section .res-nav li a {
	text-transform: uppercase;
	font-size: 85%;
	letter-spacing: 0.05em;
	font-weight: 400;
	color: #565656;
}

.res-nav .nav-link {
	font-size: 100%;
}


@media (min-width: 970px) {
	.navbar-expand-md .navbar-nav .nav-link {
		padding: 1rem 1rem 0rem 1rem;
	}
}

@media (min-width: 1100px) {
	.navbar-expand-md .navbar-nav .nav-link {
		padding: 1.8rem 1.5rem 0rem 1.5rem;
	}
}

/* hover */
.res-header .res-nav-section li a:hover{
	transition: all .3s ease-in-out;
    opacity: 1;
	color: #4a90e2 !important;
}

/* active */
li.active a.nav-link,
li.active .current-menu-item a.dropdown-item {
	color: #e82f71 !important;
	font-weight:700 !important; 
} 

.res-nav .dropdown-item:hover {
	transition: all 0.2s ease-in-out;
	transform: translateX(3px);
}


.res-nav-topheader{
}
.res-nav-topheader .nav-tabs {
    flex-wrap: nowrap;
}


.res-nav-topheader{
	margin-top: 20px;
	position: relative;
	font-size: 70%;

}
.res-nav-topheader .nav-link {
    padding: 0.5rem 0.7rem;
}



/*************************************************************************/
/*  Shop Stuff ins andere CSS spaeter  */

.res-headershop-icon,
.res-language-header-menu,
.res-search-header-icon {
	padding: 0 10px;
}

.res-card-dropdown,
.res-login-dropdown{
	min-width: 20rem;
}



.res-headershop-icon::after,
.res-headershop-icon .dropdown-toggle::after{
    border: 0 solid transparent !important;
}



/*************************************************************************/
/*  Dropdown  */

.dropdown-menu{
	box-shadow: 0 5px 10px -5px rgba(200, 200, 200, 0.8);
}

/* dropdown li */
.dropdown-item {
    padding: 0.5rem 2rem;
    font-weight: 300;
}

/* dropdown pfeil */
.dropdown-toggle::after {
    border-top: 0.2em solid;
    border-right: 0.23em solid transparent;
    border-left: 0.2em solid transparent;
}

@media only screen and (max-width: 970px) {
	.res-nav-section .dropdown-menu{
		box-shadow: none;
		border: 0;
	}
	.res-nav-section .dropdown-menu {
		padding: 0 0 0 14px;
		margin: 0;
	}
	.res-nav-section .dropdown-menu .dropdown-item{
		padding: 5px 0;
		font-size: 105%;
		font-weight: 400;
	}
}
.res-nav-section .dropdown-item.active, 
.res-nav-section .dropdown-item:active {
    color: #000;
    background-color: transparent;
}


/*************************************************************************/
/*  Mobile Nav  */


@media only screen and (max-width: 970px) {
	
	/* menu nav abstand */
	.res-nav .nav-link {
		font-size: 120%;
		padding-top: 15px;
		padding-bottom: 15px;
	}
 .res-header-mobile {
    position: absolute;
    z-index: 66;
    width: 100%;
    top: 0;
    background-color: #fff;
    transition: all 0.3s ease-out;
	padding: 0; 
}

	/* mobile logo size */
	.res-nav .logo-mobile img { 
		height: 35px;
		width: auto;
		max-width: 100%;
	}
	
	/* header height */
	.res-nav .navbar-brand.logo-mobile{
		padding-top: 22px;
		padding-bottom: 15px;
	}
	.res-nav .navbar-nav {
		padding-top: 25px;
		padding-bottom: 35px;
	}

	
	.nav-up-mobile{	top: -120px;}
	
	.res-nav .nav-link {outline: 0 !important;}	
	
	.navbar-toggler,.navbar-toggler:focus { font-size: 100%; border: 0;	outline: 0;}
    
    .mobile-x-close {
        width: 30px;
        height: 20px;
        position: relative;
        margin: 0px;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .5s ease-in-out;
        transition: .5s ease-in-out;
        cursor: pointer;
    }

    .mobile-x-close span {
        display: block;
        position: absolute;
        height: 3px;
        width: 100%;
        border-radius: 9px;
        opacity: 1;
        left: 0;
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
        -webkit-transition: .25s ease-in-out;
        transition: .25s ease-in-out;
    }
    .mobile-x-close span {
       background: #000;   /* color burger menu */
    }
    .animated-icon1 span:nth-child(1) {
        top: 0px;
    }
    .animated-icon1 span:nth-child(2) {
        top: 10px;
    }
    .mobile-x-close span:nth-child(1) {
        top: 0px;
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }

    .mobile-x-close span:nth-child(2) {
        top: 10px;
        -webkit-transform-origin: left center;
        transform-origin: left center;
    }

    .mobile-x-close span:nth-child(3) {
        top: 20px;
        -webkit-transform-origin: left center;
        transform-origin: left center;
        color: red;
    }

    .mobile-x-close.open span:nth-child(1) {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        top: 0px;
        left: 8px;
    }

    .mobile-x-close.open span:nth-child(2) {
        width: 0%;
        opacity: 0;
    }

    .mobile-x-close.open span:nth-child(3) {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
        top: 21px;
        left: 8px;
        color: #000;
    }

}

@media only screen and (min-width: 970px) {
	.res-header-mobile.fixedNav-mobile {
/*		display: none;*/
	}
} 

/*************************************************************************/
/* Language Menu   */

/*
.sprache-switcher-dropdown .dropdown-item {
    padding: 0 2rem;
	font-size: 85%;
}
.sprache-switcher-dropdown .dropdown-menu {
    min-width: auto;
}
	
*/


/*************************************************************************/
/* Fixed Nav   */

.fadeFixNavIn {
	opacity: 1 !important;
	-webkit-transition: all 1s ease;
	transition: all 1s ease;
}
.nav-up{
	top: -200px !important;
}


#fixedNav .res-header {
	position: fixed;
	z-index: 100;
	width: 100%;
	top: 0px;
	-webkit-transition: top 0.1s ease-in-out;
	transition: top 0.1s ease-in-out;
	background: rgba(255,255,255, 1.0);
	padding: 10px 0 10px 0;
	box-shadow: 0 5px 13px -5px rgba(150, 150, 150, 0.3);
}
#fixedNav .container{
	width: 100%;
}
@media only screen and (max-width: 1790px) {
	#fixedNav .container{
	width: 94%;
}
}

#fixedNav .res-nav{
	padding: 3px 0;
	margin: 0;
}
#fixedNav .res-nav li a {
    font-size: 70%;
    padding: 0 1rem;
}
#fixedNav .navbar {
    padding: 0;
}
#fixedNav .res-nav-topheader {
	padding: 10px 0 0 0;
	margin: 0;
}
#fixedNav  .res-nav-topheader .nav-link {
	opacity: .8;
}

#fixedNav .logo img {
	max-width: 110px;
	padding-top: 5px;
	padding-bottom: 5px;
}




/*************************************************************************/
/*   Content & Layouts   */


.res-content{
}
@media only screen and (max-width: 970px) {
	.res-content{ padding-top: 90px;}
	}

.res-content-topspace{
	padding-top: 90px;
}



/*  Dropdown Custom  */

/*@media only screen and (min-width: 1100px) {*/
/*
	
	.res-nav-tab {
		position: relative;
		min-height: 60px;
	}
	.res-nav-tab-box {
		position: absolute;
		z-index: 2;
		width: 100%;
		display: block;
		box-shadow: 0 5px 10px -5px rgba(220, 220, 220, 0.6);
	}
	.res-nav-tab .nav-link {
		font-size: 85%;
		padding: 0.8rem 1.2rem;

	}
}
*/




/*************************************************************************/
/* Buttons   */


.btn{
	margin: 8px 0;
	padding: 0.6rem 2rem;
	text-transform: uppercase;
    font-weight: 700;
}

.btn-sm{
	font-size: 100%;
	padding: 10px 20px;
}
.btn-primary{    
	border-color: #e60565;
    background-color: #e60565;
}

.btn-primary:hover {
    background-color: #000;
    border-color: #000;
	opacity: 1; 
}

.btn-secondary{
	border-color: #096cb4;
	background-color: #096cb4;
	color: #fff;
}

.btn-secondary:hover {
    background-color: #000;
    border-color: #000;
	opacity: 1; 
}

.btn-outline{
	border: 1px solid #000;
	background-color: transparent;
	color: #000;
}




/*************************************************************************/
/* Header Video  */

.sloganBox{
	color: #fff;
}

@media only screen and (min-width: 1390px) {
	.sloganBox { padding-right: 23%; }
}


.sloganBox h1{
	font-size: 330%;
	line-height: 100%;
	text-transform: uppercase;
}
@media only screen and (max-width: 1100px) {
	.sloganBox h1 {
    font-size: 200%;
}
} 
.sloganBox h2{
	font-size: 120%;
	text-transform: none;
	font-weight: 300; 
}

.sloganBox .btn-xs{
    padding: 0.7rem 2rem;
    font-size: 90%;
}
	
.vertical-center-homescreen {
	position: absolute;
	top: 60%; 
	left: 0;
	width: 100%;
	height: auto;
	z-index: 1; 
	transform: translateY(-50%);
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}
@media only screen and (min-width: 1440px) {
		.headerIntroVideo .container{
		max-width: 1300px;
	}
}
/* --- Video Fullscreen  ---- */
.headerIntroVideo {
	height: 100vh;
	position: relative;
	overflow: hidden;
	background-color: transparent;
	background-color: #000;
}
.fullscreenVideo video {
	width: 100%;
	height: auto;
	border: none;
	opacity: 0.85;
}
.fullscreenVideo .videoScale {
	position: absolute;
	top: 50%;
	left: 50%;
	min-width: 100%;
	min-height: 100%;
	width: auto;
	height: auto;
	z-index: 0;
	transform: translateX(-50%) translateY(-50%);
	transition: 1s opacity;
	background-color: #000;
}
	
	
@media only screen and (max-width: 970px) {	
	.sloganBox h1{ font-size: 170%;}
	.sloganBox h2{ font-size: 90%; line-height: 120%;}
	.headerIntroVideo .container{ max-width: 85%;}
	}


/*
@media (min-aspect-ratio: 2/1) {
.fullscreenVideo .videoScale {
    position: relative;
    top: auto;
    left: auto;
    width: 100vw;
    height: auto;
    z-index: 0;
    transition: 1s opacity;
    min-width: auto;
    min-height: auto;
    transform: translateX(0%) translateY(-3vw);
    background-color: white;
}
	}
*/






/*************************************************************************/
/* Footer  */


.res-footer {
	background-color: #000;
}
.res-footer p, .res-footer a, .res-footer span, .res-footer address, .res-footer h2 {
	color: #bdbbba;
}
/*
@media only screen and (min-width: 1690px) {
	.res-footer .container{ max-width: 1700px;
	}
}
*/

.res-footer img {
	max-width: 180px; 
	margin-right: 40px; 
}

.res-widget-footer {
    font-size: 80%;
    line-height: 200%;
}

.res-footer h4 {
    font-size: 110%;
	margin-bottom: 15px;
	color: #bdbbba;
	font-weight: 400; 
}

.res-footer-copyright{
}

.res-widget-footer .footer-links li {
     margin-left: 0px !important;
}
.res-widget-footer .footer-links li:before{
	display: none;
}

.footer-links .nav-link {
    display: block;
    padding: 0.5rem 0;
	border-bottom: 3px solid #e82f71; 
}

.footer-links .nav-link i {
    margin-top: 10px;
	margin-right: 10px;
    font-size: 20px;
}


.res-widget-footer.footer-social-icon i {
    transition: all .3s ease-in-out;
    width: 55px;
    height: 55px;
    font-size: 23px;
    margin-bottom: 15px;
    line-height: 55px;
    text-align: center;
    margin-right: 10px;
    background: #e82f71;
    color: #000;
}

@media only screen and (max-width: 1100px) {
.res-widget-footer.footer-social-icon i {margin-bottom:0;}
}

.res-widget-footer.footer-social-icon i:hover {
    opacity: 1 !important;
    transform: scale(1.1);
    background-color: #fff;
}

.res-widget-footer.footer-social-icon a:hover {
    opacity: 1 !important;

}


.res-footer-copyright {
    font-size: 13px;
	opacity: .8;
	font-weight: 500; 
}

.res-footer-copyright span {
	display: inline-block;
	padding-right: 20px;
}


.res-footer-newsletter i {
	font-size: 48px;
	padding-right: 15px; 
	color: #e82f71;
}

.res-footer-newsletter p {
	display: inline-block;
	line-height: 125%;
}

.res-footer-newsletter a:not([href]):hover {
    color: #fff; 
}

@media only screen and (max-width: 1100px) {
    .res-footer-newsletter i { font-size: 30px; }
	.res-widget-footer.footer-social-icon i { width: 35px; height: 35px; font-size: 15px; line-height: 35px; margin-right: 3px; }
	.res-footer-newsletter p {display: block;margin-left: 0 !important;}
}



/*************************************************************************/
/*  jarallax  */

.jarallax {
    position: relative;
    z-index: 0;
}
.jarallax > .jarallax-img {
    position: absolute;
    object-fit: cover;
    font-family: 'object-fit: cover;';
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
}
.res-content-parallax{
	background-color: #000;

}
.res-content-parallax .jarallax-img{
	opacity: 0.7;
}
@media only screen and (min-width: 1390px) {
	.res-content-parallax .txt-shorter {
		padding-right: 20%;
		}
}
@media only screen and (max-width: 970px) {
	.jarallax .w-50 {
		width: 80% !important;
	}
}




/*************************************************************************/
/*  Formulare    to CHECK */

.form-control {
    padding: 0.4rem 1rem;
	font-size: 90%;
    font-weight: 400;
    color: #000;
    background-color: #eee;
    border: 0px solid transparent;
}
input.form-control {
    height: calc(2.67em + 0.8rem + 2px);
}



/* Formular Title über inputfield */
.vfbp-form label { display: none;}
.vfbp-form .vfb-required-asterisk { display: none;}
.vfbp-form .vfb-fieldType-checkbox label, .vfb-fieldType-radio label, .vfb-fieldType-file-upload label, .vfb-fieldType-range-slider label {	display: block;}

/* Formular gleiche Abstände */
.vfbp-form .vfb-name-block input[class*='vfb-namepart-'] {
    margin-bottom: 15px;
}

.vfbp-form .btn-primary {
    color: #fff !important;
    border-color: #e60565;
    background-color: #e60565;
    padding: 15px 25px;
    border-radius: 0;
}
.vfbp-form .btn-primary:hover, .vfbp-form .btn-primary:focus, .vfbp-form .btn-primary.focus, .vfbp-form .btn-primary:active, .vfbp-form .btn-primary.active, .vfbp-form .open>.dropdown-toggle.btn-primary {
    color: #fff !important;
    border-color: #e60565;
    background-color: #e60565;
}

.vfbp-form label {
    font-weight: 400;
    font-size: 100%;
}
.vfbp-form h6 {
    font-size: 90%;
}

form.vfbp-form {
    margin-left: -15px;
}
.vfbp-form input[type="radio"], .vfbp-form input[type="checkbox"] {
    margin: 8px 0 0;
}

.vfb-form-group h1,
.vfb-form-group h2,
.vfb-form-group h3,
.vfb-form-group h4,
.vfb-form-group h5,
.vfb-form-group h6,
.vfb-form-group p
{
	margin-left: 15px;
}

.vfbp-form a {
    color: #000000;
    text-decoration: underline;
}

.vfb-form-group h3 {
    border-bottom: 1px solid #eee;
    padding-bottom: 5px;
}

.vfbp-form .vfb-form-control:focus {
    border-color: #797979;
    outline: 0;
    -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(144, 144, 144, 0.3);
    box-shadow: inset 0 1px 1px rgba(0,0,0,0.075), 0 0 8px rgba(144, 144, 144, 0.3);
}
.vfbp-form .vfb-form-control {
    height: 55px;
    padding: 10px 20px;
    font-size: 80%;
    color: #000;
    background-color: #eee;
    background-image: none;
    border: none;
    border-radius: 0;
    -webkit-box-shadow: none;
    box-shadow: none;
    -webkit-transition: none;
    -o-transition: none;
    transition: none;
}

.vfbp-form .datenschutz[type="radio"], .vfbp-form .datenschutz[type="checkbox"] {
    margin: 9px 0 0;
}

.contactform-7 textarea, .contactform-7 label, .contactform-7 label * {
    width: 100%;
}

.contactform-7 .wpcf7-form-control-wrap input[type=text],
.contactform-7 .wpcf7-form-control-wrap input[type=email],
.contactform-7 .wpcf7-form-control-wrap input[type=number] {
    padding: 0.4rem 3rem;
    font-size: 1.2rem;
    font-weight: 400;
    color: #000000;
    background-color: #fff;
    border: 1px solid transparent;
    height: calc(2.67em + 0.8rem + 2px);
    margin-bottom: 10px;
}


.contactform-7 textarea {
    padding: 0.4rem 3rem;
    font-size: 1.2rem;
    font-weight: 400;
    color: #000000;
    background-color: #fff;
    border: 1px solid transparent;
    margin-bottom: 10px;
}
@media only screen and (max-width: 970px) {
	.contactform-7 .wpcf7-form-control-wrap input[type=text], .contactform-7 .wpcf7-form-control-wrap input[type=email], .contactform-7 .wpcf7-form-control-wrap input[type=number] {
    padding: 0.4rem 1rem;
}
	.contactform-7 textarea {
    padding: 0.4rem 1rem;
}
} 
.contactform-7 .wpcf7-list-item label * {
    width: auto;
}

.wpcf7-submit {
    color: #fff;
    background-color: #6db75a;
    border-color: #6db75a;
    padding: 0.7rem 2rem;
    font-size: 100%;
    text-transform: uppercase;
    border: none;
}

.grecaptcha-badge {
	display: none !important;
}

.vfbp-form .btn {
	font-size: 18px; 
	text-transform: uppercase; 
	font-weight: 700;
}

.modal-body {
    padding: 0 2rem 2rem 2rem;
}


.modal-header {
    border-bottom: none;
}

.vfb-fieldType-captcha .vfb-form-control.captcha  {
		width: 60px; 
	}


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


	#vfbp-form-1 .vfb-fieldType-captcha .vfb-help-block {
		margin-left: 10px; 
	}
	
	#vfbp-form-1 .vfb-fieldType-captcha .vfb-form-group div {
		display: flex; 
	}
	
	.logged-in .vfb-fieldType-captcha div {
		font-size: 14px;
	}
}




/*************************************************************************/
/*  Allgemeine Klassen   */

.scale {
    transition: all .2s ease-in-out;
}
.scale:hover {
    transition: all .4s ease-in-out;
    transform: scale(1.02);
}




/*************************************************************************/
/* WP Gutenberg BLOCK Algin   */


@media only screen and (max-width: 1100px) {
		.container{
			max-width: 90%;
		}
	}

@media only screen and (max-width: 970px) {
		.container{
			max-width: 90%;
		}
	}


@media only screen and (min-width: 1600px) {
	.alignwide {
    margin-left: -150px;
    margin-right: -150px;
}
}
.alignfull {
    margin-left: calc( -100vw / 2 + 100% / 2 );
    margin-right: calc( -100vw / 2 + 100% / 2 );
    max-width: calc(100vw - 9px); 
}
@media only screen and (max-width: 970px) {
	.alignfull {
    max-width: calc(100vw);
}
} 

/*
.alignfull .content-container {
    max-width: 1250px;
    width: 100%;
    padding-right: 15px;
    padding-left: 15px;
    margin-right: auto;
    margin-left: auto;
}
*/



/*************************************************************************/
/* WP Gutenberg  */


.wp-block-embed-youtube iframe{
	width: 100%;
	max-width: 900px;
	height: 520px;
}
@media only screen and (max-width: 970px) {
	.wp-block-embed-youtube iframe{	height: 200px;	}
}


/*************************************************************************/
/* WP Adminbar eingeloggt  */

html {
    margin-top: 0px !important;
}

body.admin-bar {
    margin-top: -32px !important;
    padding-top: 0px !important;
}

#wpadminbar {
	position: fixed;
	z-index: 99;
	max-width: 80%;
	right: auto;
	left: 10%;
	top: auto;
	bottom: 4%;
	background-color: #333;
	height: auto;
	opacity: .9;
}

#wpadminbar .ab-submenu{
	margin-top: -120px;
	background-color: #333;
}
@media only screen and (max-width: 970px) {
    #wpadminbar { display: none; }
	body.admin-bar {  margin-top: -46px !important;}
}



/*************************************************************************/
/*  Google Maps  */

#googleMapsBox {
    width: 100%;
    height: 640px;
}

@media only screen and (max-width: 970px) {
	#googleMapsBox {height: 440px;}
}


/*************************************************************************/
/*  Blog  */



.res-sidebar .share-tools .fab {
    font-family: "Font Awesome 5 Brands";
    font-weight: 400;
    width: 25px;
}
.sidebar-archiv select {
    font-size: 85%;
    padding: 10px 15px;
    background-color: #eee;
    border: 0;
}
.sidebar-cat ul .children {
    padding-left: 8px;
}

.res-sidebar li {
    list-style-type: none;
}
.res-sidebar ul {
    padding-left: 5px;
    list-style-type: none;
    display: flex;
}
@media only screen and (max-width: 970px) {
	.res-sidebar ul {
    display: inline-block;
}
} 
@media only screen and (min-width: 970px) {
	.sidebar-cat {
    display: flex;
    align-items: center;
}
} 

@media only screen and (max-width: 970px) {
.sidebar-cat { margin-top: 140px !important; }
}

.res-sidebar .sidebar-cat li:hover,
.res-sidebar .sidebar-share li:hover {
    transform: translateX(4px);
    opacity: .8;
	transition: all .2s ease-in-out;
}

.res-sidebar h1, .res-sidebar h2 {
    font-size: 105%;
    margin-right: 30px;
    margin-bottom: 11.5px;
    margin-top: 0px;
}


.res-sidebar h1, .res-sidebar h2 {
    font-size: 105%;
    margin-right: 30px;
    margin-bottom: 11.5px;
    margin-top: 0px;
}
@media only screen and (min-width: 970px) {
	.res-sidebar .widget_categories{
	margin-top: 40px;
}
} 

.res-sidebar .share-tools i{
	margin-right: 10px;
}
.res-sidebar ul{
	padding-left: 5px;
	list-style-type: none;
}
.res-sidebar li {
    -webkit-padding-start: 0px;
    font-size: 100%;
    float: left;
    position: relative;
    margin-right: 30px;
	    transition: all .3s ease-in-out;
}
@media only screen and (max-width: 970px) {
	.res-sidebar li {
    margin-right: 20px;
}
} 
.res-sidebar li a {
    padding-left: 40px;
}

@media only screen and (max-width: 1100px) {
	.res-sidebar li a {
    padding-left: 20px;
    font-size: 85%;
}
}
@media only screen and (max-width: 970px) {
	.res-sidebar li a {
    padding-left: 25px;
    padding-bottom: 5px;
    padding-top: 5px;
    display: inline-block;
    font-size: 90%;
}
} 
.res-sidebar li:before {
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    content: "\f111";
    left: 10px;
    position: absolute;
    top: 0;
    transition: all .3s ease-in-out;
    font-size: 90%;
}
@media only screen and (max-width: 970px) {
	.res-sidebar li:before {
    font-size: 80%;
    line-height: 270%;
}
} 
.res-sidebar li.current-cat:before,
.res-sidebar li:hover:before {
    font-weight: 600;
    color: #096cb4;
	    transition: all .3s ease-in-out;
}


@media only screen and (max-width: 970px) {
	.search-page .searchBox {
    flex-direction: column-reverse;
}
	.search-page .searchBox h4 {
    font-size: 110%;
}
} 


.wp-block-columns ul {
    -webkit-padding-start: 25px;
	list-style: none;
	font-size: 100%;
	padding: 10px 0 10px 0;
	
}
.wp-block-columns li {
    padding-bottom: 10px;
    margin-left: 35px;
}
.wp-block-columns li:before {
	content: "\f111";
    font-family: "Font Awesome 5 Pro";
    position: absolute;
    margin-left: -30px;
    text-decoration: inherit;
    font-style: normal;
    font-weight: 600;
    font-size: 70%;
    opacity: 1;
	color: #e60565;
}
.wp-block-columns .bullet-checklist li:before {
    content: "\f00c";
    font-family: "Font Awesome 5 Pro";
	position:absolute;
	margin-left:-35px;
    text-decoration: inherit;
    font-style: normal;
    font-weight: normal;
	font-size: 100%;
	opacity: 0.3;
}
@media only screen and (max-width: 970px) {
.wp-block-columns li {margin-left: 25px;}
.wp-block-columns li:before {margin-left:-25px;}
} 


/* ---- .grid-item ---- */
.grid-sizer,
.grid-item {
  width: 33.333%;
}
@media only screen and (max-width: 1280px) {
	.grid-sizer, .grid-item {
    width: 50%;
}
}
@media only screen and (max-width: 970px) {
	.grid-sizer,
.grid-item {
  width: 100%;
}
} 

.grid-item {
    float: left;
    padding-left: 10px;
    padding-right: 10px;
    padding-bottom: 20px;
	transition: all .3s ease-in-out;
}

.gridStyle .postBox {
    transition: all .3s ease-in-out;
}
.grid-item:hover,
.gridStyle .postBox:hover {
    transform: scale(0.98);
    transition: all .3s ease-in-out;
}
@media only screen and (max-width: 970px) {
	.grid-item {
    padding-left: 0px;
    padding-right: 0px;
}
} 

.sidebar-cat ul .children {
    padding-left: 8px;
    float: right;
    margin-left: 20px;
}

/*************************************************************************/
/*     CAROUSEL    */


.carousel-control-prev, .carousel-control-next {
    width: 10%;
}

.carousel-control-prev {
    transform: translateX(-100%);
    -moz-transform: translateX(-100%);
    -ms-transform: translateX(-100%);
    -webkit-transform: translateX(-100%);
}

.carousel-control-next {
    transform: translateX(100%);
    -moz-transform: translateX(100%);
    -ms-transform: translateX(100%);
    -webkit-transform: translateX(100%);
}

@media only screen and (max-width: 970px) {
	.carousel-control-prev {
    transform: translateX(-30%);
    -moz-transform: translateX(-30%);
    -ms-transform: translateX(-30%);
    -webkit-transform: translateX(-30%);
}

.carousel-control-next {
    transform: translateX(30%);
    -moz-transform: translateX(30%);
    -ms-transform: translateX(30%);
    -webkit-transform: translateX(30%);
}
} 

.carousel-control-prev-icon:after {
    font-size: 250%;
    color: #000;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
    content: "\f053";
    right: 30px;
    position: absolute;
}

.carousel-control-next-icon:after {
    content: '\f054';
    font-size: 250%;
    color: #000;
    font-family: "Font Awesome 5 Pro";
    font-weight: 300;
	left: 30px;
    position: absolute;
}

.carousel-control-next-icon, .carousel-control-prev-icon {
	background-image: none; 
}




/*************************************************************************/
/*     CUSTOM BLOCKS    */


.res-text-icon-repeater h2 {
    z-index: 5;
}

.res-home-einleitung-txt h1, .res-vorteile h2, .res-text-icon-repeater h2, .res-aktuell-boxes h2 {
	text-indent: 0.5em;
	position: relative;
}

.res-text-icon-repeater h2:before, .res-vorteile h2:before, .res-aktuell-boxes h2:before {
    content: "";
    position: absolute;
    width: 10px;
    height: 40px;
    background-color: #e60565;
    left: 0;
    top: 9px;
}

.res-home-einleitung-txt h1:before {
	content: "";
    position: absolute;
    width: 15px;
    height: 53px;
    background-color: #e60565;
    left: 0;
    top: 9px;
}


h2.headline-style {
	text-indent: 0.5em;
	position: relative;
}

h2.headline-style:before {
	content: "";
    position: absolute;
    width: 10px;
    height: 40px;
    background-color: #e60565;
    left: 0;
    top: 9px;
}

@media only screen and (max-width: 1440px) {
	.res-home-einleitung-txt h1:before {width: 10px; height: 30px; top: 3px;}
	.res-text-icon-repeater h2:before, .res-vorteile h2:before, .res-aktuell-boxes h2:before {width: 10px; height: 25px; top: 4px;}
	h2.headline-style:before {width: 8px;height: 23px; top: 6px;}	
}

@media only screen and (max-width: 970px) {
.res-home-einleitung-txt h1:before {width: 10px;height: 25px; top: 6px;}	
.res-text-icon-repeater h2:before, .res-vorteile h2:before, .res-aktuell-boxes h2:before {width: 8px;height: 23px; top: 6px;}
h2.headline-style:before {width: 8px;height: 23px; top: 6px;}	
}



/*
.bg-element {
    background-image: url(https://www.musterpage.ch/k3p/cm/wp-content/uploads/2020/08/hg-elements.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 100%; 
}
*/

@media only screen and (max-width: 970px) {
.res-vorteile .vorteile-icon .postImg img, .res-text-facts .vorteile-icon .postImg img {max-width: 80px; }
.res-text-facts .vorteile-icon{ margin-top: 20px; }
}



.res-text-icon-repeater img {
	position: absolute;
    left: 40%;
    top: 25%;
    max-width: 200px;
    z-index: 2;
	opacity: 0.5;
}

.res-header-video {
	position: relative; 
}

.svg-video {
	position: absolute;
    bottom: 0;
}

.res-angebot-boxes .postImg, .res-team-boxes .postImg {
	position: relative; 
}

.res-team-boxes .svg-box {
	position: absolute;
    bottom: 0;
    left: 0;
}
.res-team-boxes .postBox {
    background-color: #e60565;
}

.res-team-boxes .postContent i {
	color: #fff;
}

.res-team-boxes h3 {
	font-size: 100%; 
}

.res-angebot-boxes .postContent, .res-team-boxes .postContent { 
	background-color: #e60565;
    color: #fff;
}

#box-element {
	position: absolute;
    bottom: 0;
    left: 0;
}

.res-angebot-boxes .svg-box {
	fill:#e60565;
}

.res-angebot-boxes .box-blau .svg-box {
	fill: #096cb4; 
}

.res-angebot-boxes .box-blau .postContent {
	background-color: #096cb4; 
}

@media only screen and (max-width: 970px) {
.res-angebot-boxes .postContent i { float: none !important; display: block; padding-top: 5px;}
.res-team-boxes .postContent i { float: none !important; display: block; padding-top: 15px;}
}

.res-einleitung-txt.hg-pink {
	background-color:#e82f71;
	color:#fff;
}

.res-einleitung-txt.hg-blau {
	background-color:#096cb4;
	color:#fff;
}

.res-einleitung-txt.hg-grau {
	background-color:#f2f1f1;
	color:#000;
}

.res-text-icon-repeater h2.textelement-blau:before {
	background-color: #096cb4;
}

.res-aktuell-boxes i, .res-bild-text-teaser i {
	font-size: 150%; 
}

.res-testimonial-parallax .carousel-control-next-icon:after, .res-testimonial-parallax .carousel-control-prev-icon:after {
    color: #fff;
}

@media only screen and (max-width: 970px) {
.res-footer-copyright .text-right { text-align: left !important; }
}
@media only screen and (max-width: 970px) {
.res-header-parallax .header-height { height: 300px !important; }
}
@media only screen and (max-width: 970px) {
.res-einleitung-txt .postBox { padding-bottom: 30px; }
}

.res-testimonial-parallax {
	position: relative; 
}

.res-testimonial-parallax * {
	color: #fff;
}

.res-testimonial-parallax p.kundenstatement {
	font-size: 110%;
    line-height: 130%;
    font-weight: 400;
}


@media only screen and (max-width: 970px) {
.res-testimonial-parallax p.kundenstatement {font-size: 100%;}
.res-testimonial-parallax #testimonialSlider img {max-width: 200px;}
.kundeninfo {font-size: 90%;}	
}

@media only screen and (max-width: 970px) {
.res-cta {padding-bottom:50px;}
}

@media only screen and (max-width: 970px) {
.pb-5, .py-5 {padding-bottom: 3rem !important;}
.pt-5, .py-5 {padding-top: 3rem !important;}
.w-75 {width: 100% !important;}
.wp-block-spacer {height: 50px !important;} 
.pb-3, .py-3 {padding-bottom: 0.75rem !important;}
.pt-3, .py-3 {padding-bottom: 0.75rem !important;}	
.mb-5, .my-5 {margin-bottom: 3rem !important;}
.mt-5, .my-5 {margin-top: 3rem !important;}
}

@media only screen and (max-width: 970px) {
	.res-team-boxes .svg-box {bottom:-2px;}
}

@media only screen and (max-width: 1100px) {
#testimonialSlider.container { max-width: 75%;}
}

.svg-bottom, .svg-video, .svg-box {
margin-bottom: -1px;
}

#svg-einleitung {
	margin-top: -1px; 
}

#newsletter small, #newsletter .small {
    font-size: 70%;
    font-weight: 400;
}

