/*
*
*
*
*
*
*Diese Datei ist urheberrechtlich geschützt von "Rene Weik | weik.online GmbH" und darf nicht kopiert oder auf anderen Webseiten verwendet werden.
*
*
*
*
*
*/
/*Template CSS 01-04

JULIAS NEUES DESIGN

*/
/*Templatefarbe: #e2001a / 226,0,26 */

/* 
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
LAYOUTin
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
-------------------------------------------------------------------------------- 
*/
#wrap {
	height: 100%;
}

.startseite .innerwrap {
	height: 100%;
}

.startseite #logo {
	display: none!important;
}

/* Burgermenü schon auf dem Desktop */
@media (min-width: 992px) {

    /* Burgerbutton im Kopfbereich */
    #mainmenu .toggle-wrap {
        display: block;
    }

  /* Beschriftung unter dem Burgerbutton ausblenden */
#mainmenu .togglehead {
    display: none !important;
}

    /* Schließen-Button innerhalb des Menüs */
    #hauptnavigation .toggle-wrap-mobile {
        display: block;
    }

    /* Sichtbare Burgerstriche */
    #mainmenu .navbar-toggle .icon-bar {
        position: relative;
        background: var(--templatefarbe_hex);
    }
}

/* ==========================================================
   MOBILES MENÜ AUCH AUF DESKTOP
   Nach allen bestehenden Menü- und Template-CSS-Dateien laden
   ========================================================== */

/* Beschriftung auf allen Bildschirmgrößen ausblenden */
#mainmenu .togglehead {
    display: none !important;
}

/* Burgerstriche auf allen Bildschirmgrößen einfärben */
#mainmenu .toggle-wrap button.navbar-toggle .icon-bar {
    background-color: #202020;
}


@media (min-width: 992px) {

    /* ------------------------------------------------------
       Burgerbutton und Schließen-Button
       ------------------------------------------------------ */

/* Burgerbutton im Kopfbereich vergrößern */
#mainmenu .toggle-wrap .icon-bar {
    width: 36px;      /* Länge der Striche */
    height: 4px;     /* Dicke der Striche */
    background-color: #202020!important; /* Farbe der Striche */
}

#mainmenu .toggle-wrap .icon-bar + .icon-bar {
    margin-top: 6px; /* Abstand zwischen den Strichen */
}

    #mainmenu .toggle-wrap,
    #hauptnavigation .toggle-wrap-mobile {
        display: block;
    }

    #hauptnavigation .toggle-wrap-mobile {
        width: 40px;
        margin: 20px auto 10px;
    }

    #mainmenu .navbar-toggle .icon-bar {
        position: relative;
        background: var(--templatefarbe_hex);
    }

    #mainmenu .navbar-toggle.close_btn .icon-bar.bar1 {
        top: 6px;
        transform: rotate(45deg);
    }

    #mainmenu .navbar-toggle.close_btn .icon-bar.bar2 {
        background: transparent;
    }

    #mainmenu .navbar-toggle.close_btn .icon-bar.bar3 {
        top: -8px;
        transform: rotate(-45deg);
    }


    /* ------------------------------------------------------
       Menüfläche: geschlossen rechts außerhalb des Fensters
       ------------------------------------------------------ */

    #mainmenu .collapse.navbar-collapse#hauptnavigation {
        position: fixed;
        inset: 0 -100% 0 auto;

        display: block !important;
        flex-basis: auto;
        flex-grow: 0;

        width: 100%;
        height: 100% !important;
        max-height: none;

        margin: 0 !important;
        padding: 0;

        background: var(--mobilmenuhintergrundfarbe_hex);

        overflow-x: hidden !important;
        overflow-y: auto !important;
        visibility: visible !important;

        z-index: 1000;

        transition: right 0.3s ease;
    }

    /* Die vorhandene JavaScript-Funktion setzt diese Klasse */
    #mainmenu .collapse.navbar-collapse#hauptnavigation.show-left-menu {
        right: 0 !important;
    }


    /* ------------------------------------------------------
       Menüpunkte untereinander
       ------------------------------------------------------ */

    #mainmenu #hauptnavigation > ul.nav {
        position: relative;

        display: block !important;
        flex-direction: column;

        float: none;
        width: 100%;

        margin: 25px 0 15px;
        padding: 0;

        border-radius: 0;
        text-align: center;
    }

    #mainmenu #hauptnavigation ul.nav li {
        display: block;
        float: none;

        width: 100%;
        margin: 0;

        clear: both;
    }

    #mainmenu #hauptnavigation ul.nav li.open {
        z-index: 1;
    }

    #mainmenu #hauptnavigation ul.nav li a {
        position: relative;

        display: inline-block;
        float: none;

        height: 50px;
        line-height: 50px;

        padding: 0 12px !important;

        color: var(--mobilmenutextfarbe_hex) !important;
        font-size: 19px;
        font-weight: bold;

        text-align: left;
        text-decoration: none;
    }

    #mainmenu #hauptnavigation ul.nav li a:hover,
    #mainmenu #hauptnavigation ul.nav li a:focus {
        color: var(--mobilmenutextfarbe_hex) !important;
        text-decoration: none;
    }

    #mainmenu #hauptnavigation ul.nav > li > a.main_a {
        float: none;
    }

    #mainmenu #hauptnavigation ul.nav li a.active,
    #mainmenu #hauptnavigation ul.nav li a.active:hover {
        padding: 0 50px !important;

        background: var(--mobilmenubuttonfarbe_hex) !important;
        color: var(--mobilmenubuttontextfarbe_hex) !important;

        font-weight: bold;
        text-align: center;
    }

    #mainmenu #hauptnavigation ul.nav li a.homebutton.active,
    #mainmenu #hauptnavigation ul.nav li a.homebutton.active:hover {
        background: transparent !important;
        color: var(--mobilmenutextfarbe_hex) !important;
    }



    /* ------------------------------------------------------
       Bestehende Ausblendungen weiterhin berücksichtigen
       ------------------------------------------------------ */

    #mainmenu #hauptnavigation .hide-dropdown a.caret_a,
    #mainmenu #hauptnavigation .hide-dropdown a.submenu-caret,
    #mainmenu #hauptnavigation .hide-dropdown a.sidebarnavititle .caret {
        display: none !important;
    }
}






/* INFOBAR ----------------------------------------*/
.startseite #infobar {
	-webkit-transition: margin 1.0s linear;
    -moz-transition: margin 1.0s linear;
    -ms-transition: margin 1.0s linear;
    -o-transition: margin 1.0s linear;
    transition: margin 1.0s linear;		
}
.startseite.scrolled #infobar {
	transition-delay: 1.0s;		
}
@media (min-width: 768px) {
.startseite #infobar {
	margin-top: -35px;	
	-webkit-transition: margin 1.0s linear;
    -moz-transition: margin 1.0s linear;
    -ms-transition: margin 1.0s linear;
    -o-transition: margin 1.0s linear;
    transition: margin 1.0s linear;		
}
.startseite.scrolled #infobar {
	margin-top: 0;
	transition-delay: 1.0s;		
}
}
@media (min-width: 992px) {
.startseite #infobar {
	margin-top: -40px;
}
}


#innerinfobar{
	padding: 0 15px;	
}
@media (min-width: 576px) {
#innerinfobar{
	padding: 0 15px;	
}
}
@media (min-width: 768px) {
#innerinfobar {
	padding: 0 30px;
}
}



/* KOPFBEREICH ----------------------------------------*/
/* KOPFBEREICH ----------------------------------------*/
/* KOPFBEREICH ----------------------------------------*/
#kopfbereichwrap {
    height: 105px;
    position: absolute !important;
    top: 0;
    left: 0;
    right: 0;
    width: 100%;
}
@media (min-width: 576px) {
#kopfbereichwrap {
	height: 105px;	
}
.scrolled #kopfbereichwrap {
	height: 105px;	
}
}
@media (min-width: 768px) {
#kopfbereichwrap {
	height: 110px;	
}
.scrolled #kopfbereichwrap {
	height: 110px;	
}
}
@media (min-width: 992px) {
#kopfbereichwrap {
	height: 115px;	
}
.scrolled #kopfbereichwrap {
	height: 115px;	
}
}
@media (min-width: 1200px) {
#kopfbereichwrap {
	height: 115px;	
}
.scrolled #kopfbereichwrap {
	height: 115px;	
}
}


#upperkopfbereichwrap{
	background-color: none!important;
}
/*
.scrolled #upperkopfbereichwrap{
	border-bottom: 4px solid var(--templatefarbe_hex);
	background-color: var(--menuhintergrundfarbe_hex);
	-webkit-transition: background 0.4s linear;
	-moz-transition: background 0.4s linear;
	-ms-transition: background 0.4s linear;	
	-o-transition: background 0.4s linear;	
	transition: background 0.4s linear;		
}
@media (min-width: 768px) {
.scrolled #upperkopfbereichwrap{
	border-bottom: 4px solid var(--templatefarbe_hex);
	background: transparent;
	-webkit-transition: background 0.4s linear;
	-moz-transition: background 0.4s linear;
	-ms-transition: background 0.4s linear;	
	-o-transition: background 0.4s linear;	
	transition: background 0.4s linear;		
}
}*/


.startseite #upperkopfbereichwrap {
    position: absolute;
    top: 0;
    width: 100%;
    z-index: 2000;
}

/*
@media (min-width: 768px) {
.scrolled  #upperkopfbereichwrap  {
    background-color: rgba(var(--menuhintergrundfarbe_rgb),0.95);
	-webkit-box-shadow: 0px 2px 5px 0px rgba(204,204,204,1);
	-moz-box-shadow: 0px 2px 5px 0px rgba(204,204,204,1);
	box-shadow: 0px 2px 5px 0px rgba(204,204,204,1);	
}
}
*/
@media (min-width: 768px) {
#kopfbereich{
	width: 100%;
}
}

#kopfbereich .container {
	background-color: var(--menuhintergrundfarbe_hex);
}

.megamenu .container {
	background-color: transparent !important;
}



/* KOPFBEREICH -------------------------------*/
/* KOPFBEREICH -------------------------------*/
/* KOPFBEREICH -------------------------------*/
#kopfbereich{
	background-color: transparent;
	padding: 0;	
}
@media (min-width: 576px) {
#kopfbereich{
	padding: 0;	
}
}
@media (min-width: 768px) {
#kopfbereich {
	padding: 0 30px;
}
}

@media (min-width: 992px) {
#kopfbereich {
	padding: 0px 30px;
	-webkit-transition: padding 0.4s linear;
	-moz-transition: padding 0.4s linear;
	-ms-transition: padding 0.4s linear;	
	-o-transition: padding 0.4s linear;	
	transition: padding 0.4s linear;	
}
.scrolled #kopfbereich { /* damit paqdding von #logo undverändert bleiben kann und nicht flackert, bei mobil aber dennoch einen kleineren Rand hat */
	background-color: transparent;
	padding: 0px 30px;
	-webkit-transition: padding 0.4s linear;
	-moz-transition: padding 0.4s linear;
	-ms-transition: padding 0.4s linear;	
	-o-transition: padding 0.4s linear;	
	transition: padding 0.4s linear;		
}
}

#innerkopfbereich{
	height: 75px;
    background-color: transparent;
	-webkit-transition: all 0.4s linear;
	-moz-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;	
	-o-transition: all 0.4s linear;	
	transition: all 0.4s linear;		
}
@media (min-width: 576px) {
#innerkopfbereich{
	height: 75px;	
}
.scrolled #innerkopfbereich {
	height: 75px;
	-webkit-transition: all 0.4s linear;
	-moz-transition: all 0.4s linear;
	-ms-transition: all 0.4s linear;	
	-o-transition: all 0.4s linear;	
	transition: all 0.4s linear;	
}
}
@media (min-width: 768px) {
#innerkopfbereich {
	height: 75px;
	padding: 0px 0px;
	-webkit-transition: padding 0.4s linear;
	-moz-transition: padding 0.4s linear;
	-ms-transition: padding 0.4s linear;	
	-o-transition: padding 0.4s linear;	
	transition: padding 0.4s linear;	
}
.scrolled #innerkopfbereich {
	height: 75px !important;
	padding: 0px 15px;
	-webkit-transition: padding 0.4s linear;
	-moz-transition: padding 0.4s linear;
	-ms-transition: padding 0.4s linear;	
	-o-transition: padding 0.4s linear;	
	transition: padding 0.4s linear;		
}
}
@media (min-width: 992px) {
#innerkopfbereich {
	height: 75px;
}
.scrolled #innerkopfbereich {
	height: 75px !important;
}
}
@media (min-width: 1200px) {
#innerkopfbereich {
	height: 75px;	
}
.scrolled #innerkopfbereich {
	height: 75px !important;
}
}


.startseite #mainmenu .navbar-default ul.nav > li > a {
    color: #fff;
    font-weight: bold;
}

.startseite.scrolled #mainmenu .navbar-default ul.nav > li > a {
    color: 	var(--schriftfarbe_hex);;
    font-weight: bold;
}

.scrolled #mainmenu .navbar-default ul.nav li a.active,
.scrolled #mainmenu .navbar-default ul.nav li a.active:hover,
.scrolled #mainmenu .navbar-default ul.nav li a.active:focus,
.scrolled #hauptnavigation > ul > li.dropdown.m_open.open > ul > li.dropdown-submenu.m_open.grau > a	{
	color: #fff !important;
	background-color: var(--templatefarbe_hex);					
	cursor: default;
}


@media (max-width: 767px) {
.welcome {
    left: 50%;
    transform: translateX(-50%);
  }
}


/* TEASER -------------------------------*/
/* TEASER -------------------------------*/
/* TEASER -------------------------------*/
#teaser {
	clear: both;
	width: 100%;
	height: 100%;	
}
@media (min-width: 768px) {
#teaser {
	width: 100%;
	height: 100%;
	padding-top: 0px;	
}
}
@media (min-width: 992px) {
#teaser {
	padding-top: 0px;	
}
}
@media (min-width: 1200px) {
#teaser {
	padding-top: 0px;	
}
}

/*@media (min-width: 992px) {
.startseite #teaser {					
	-webkit-transition: margin-top 0.4s linear;
	-moz-transition: margin-top 0.4s linear;
	-ms-transition: margin-top 0.4s linear;	
	-o-transition: margin-top 0.4s linear;	
	transition: margin-top 0.4s linear;	
}	

.startseite.scrolled #teaser {	
	margin-top: -50px !important;
	-webkit-transition: margin-top 0.4s linear;
	-moz-transition: margin-top 0.4s linear;
	-ms-transition: margin-top 0.4s linear;	
	-o-transition: margin-top 0.4s linear;	
	transition: margin-top 0.4s linear;	
}
}*/






/* WELCOMEBOX----------------------------------------*/
/* WELCOMEBOX----------------------------------------*/
/* WELCOMEBOX----------------------------------------*/
.welcomewrap {
	display: block;
}
@media (min-width: 768px) {
	.welcomewrap {
	display: block;
}
}
.welcomewrap .container {
    padding: 0 0px;
}

.welcome {
    position: absolute;
    padding: 12px 15px;
    text-align: center;
    border-radius: 2px;
    vertical-align: middle;
    color: #fff !important;
    text-shadow: 1px 1px #444;
    z-index: 100;
    top: 50%;						/*XYZ*/
    left: 50%;						/*XYZ*/
    transform: translate(-50%, -50%);	/*XYZ*/
}

.welcome {
	width: 100% !important;
	max-width: 1380px !important;
	padding: 25px 0;
}
@media (min-width: 768px) {
.welcome {
	width: 93% !important;
}
}
@media (min-width: 992px) {
.welcome {
	width: 98% !important;
}
}
@media (min-width: 1200px) {
.welcome {
	width: 80%;	
}
}

.welcome {
	background: transparent !important;
	padding-right: 30px !important;
	padding-left: 30px !important;
}

.welcome-color {
    background: rgba(var(--welcomeboxhintergrundfarbe_rgb), 0.85);
    padding-top: 25px !important;
    padding-bottom: 25px !important;	
    padding-right: 25px !important;
    padding-left: 25px !important;		
}


@media (max-height: 500px) {
.welcome {
    display: none !important;	/*XYZ*/
}
}

:root {
--welcomeh2: 90px;
--welcomeh3: calc(var(--welcomeh2) * 0.3);
}

.welcome h2,
.welcome h3 {
	text-transform: none !important;
}
	
.welcome h2{
	font-size: calc(var(--welcomeh2) * 0.55);	
}
@media (min-width: 768px) {
.welcome h2{
	font-size: calc(var(--welcomeh2) * 0.65);	
}
}
@media (min-width: 992px) {
.welcome h2{
	font-size: calc(var(--welcomeh2) * 0.7);	
}
}
@media (min-width: 1200px) {
.welcome h2{
	font-size: calc(var(--welcomeh2) * 0.85);
}
}
@media (min-width: 1400px) {
.welcome h2{
	font-size: var(--welcomeh2);	
}
}

.welcome h3{
	font-size: calc(var(--welcomeh3) * 0.55);
}
@media (min-width: 768px) {
.welcome h3{
	font-size: calc(var(--welcomeh3) * 0.65);
}
}
@media (min-width: 992px) {
.welcome h3{
	font-size: calc(var(--welcomeh3) * 0.7);
}
}
@media (min-width: 1200px) {
.welcome h3{
	font-size: calc(var(--welcomeh3) * 0.85);
}
}
@media (min-width: 1400px) {
.welcome h3{
	font-size: var(--welcomeh3);
}
}

.welcome .btn-lg {
	border-radius: 0px;
    font-size: 12px;
    margin-top: 10px;
    text-decoration: none;
    color: #fff;
    font-weight: bold;
	text-shadow: none;
    background-color: #444;
    border: none !important;
    padding: 4px 7px;	
}
@media (min-width: 768px) {
.welcome .btn-lg {
	border-radius: 0px;
    font-size: 12px;
    margin-top: 10px;
    text-decoration: none;
    color: #fff;
    font-weight: bold;
	text-shadow: none;
    background-color: #444;
    border: none !important;
    padding: 4px 7px;	
}
}
@media (min-width: 992px) {
.welcome .btn-lg {
    font-size: 14px;
    margin-top: 15px;
    padding: 7px 8px;
    border: none !important;				
}
}

.btn-primary:not(:disabled):not(.disabled):active, 
.btn-primary:not(:disabled):not(.disabled).active,
.show > .btn-primary.dropdown-toggle,
.welcome .btn-lg:hover,
.welcome .btn-lg:focus {
    background-color: #999 !important;
    border: none !important;
}


/* HAUPTBEREICH----------------------------------------*/
/* HAUPTBEREICH----------------------------------------*/
/* HAUPTBEREICH----------------------------------------*/
#hauptbereichwrap {
	width: 100%;
	background-color: var(--hintergrundfarbe_hex);						/*Hintergrund Mittelbereich*/
	padding: 20px 0px 20px 0px;		
}
@media (min-width: 1200px) {
#hauptbereichwrap {
	padding: 40px 0px 40px 0px;	
}
}

.startseite #hauptbereichwrap {
	padding: 30px 0px 0px 0px;	
}
@media (min-width: 768px) {
.startseite #hauptbereichwrap {
	padding: 45px 0px 40px 0px;	
}
}


 #hauptbereichwrap {					
	margin-top: 110px;
}
@media (min-width: 576px) {					
 #hauptbereichwrap {					
	margin-top: 110px;
}
}
@media (min-width: 768px) {					
 #hauptbereichwrap {					
	margin-top: 110px;
}
}
@media (min-width: 992px) {					
 #hauptbereichwrap {					
	margin-top: 115px;
}
.scrolled #hauptbereichwrap {				
	margin-top: 100px;
	-webkit-transition: margin 0.4s linear;
	-moz-transition: margin 0.4s linear;
	-ms-transition: margin 0.4s linear;	
	-o-transition: margin 0.4s linear;	
	transition: margin 0.4s linear;							
}
}						
@media (min-width: 1200px) {					
 #hauptbereichwrap {					
	margin-top: 115px;
}
.scrolled #hauptbereichwrap {				
	margin-top: 130px;
	-webkit-transition: margin 0.4s linear;
	-moz-transition: margin 0.4s linear;
	-ms-transition: margin 0.4s linear;	
	-o-transition: margin 0.4s linear;	
	transition: margin 0.4s linear;						
}					
}



#innerhauptbereich {
	background-repeat: repeat-x;
	background-position: top;
	overflow: hidden;
	background-color: var(--hintergrundfarbe_hex);	
	padding: 0 0 0 0;	
}

#farbbox {
	display: none;			
}



.startseite #hauptbereichwrap {					
	margin-top: 0px !important;
}

@media (min-width: 576px) {					
.startseite #hauptbereichwrap {					
	margin-top: 0px !important;
}
}

@media (min-width: 768px) {					
.startseite #hauptbereichwrap {					
	margin-top: 0px !important;
}
}

@media (min-width: 992px) {					
.startseite #hauptbereichwrap {					
	margin-top: 0px !important;
}
.startseite.scrolled #hauptbereichwrap {				
	margin-top: 0px !important;						
}
}						

@media (min-width: 1200px) {					
.startseite #hauptbereichwrap {					
	margin-top: 0px !important;
}
.startseite.scrolled #hauptbereichwrap {				
	margin-top: 0px !important;						
}					
}	









/* FOOTER----------------------------------------------------*/
/* FOOTER----------------------------------------------------*/
/* FOOTER----------------------------------------------------*/


/* BUTTON FOOTER */
#footer .btn,
#footer .btn-footer {
	font-size: 12px;
	-moz-border-radius: 0px;
	-webkit-border-radius: 0px;  
	border-radius: 0px;  	
}
@media (min-width: 992px) {	
#footer .btn,
#footer .btn-footer {
	font-size: 14px; 	
}
}
@media (min-width: 1440px) {	
#footer .btn,
#footer .btn-footer {
	font-size: 16px; 	
}
}



/* Sebastian */

#teaser {
	background: #222222;
	transition: background 0.4s ease-out;
}

#slider-container{
	opacity: 1;
	}

.welcome-color {
	background: none!important;
}

.scrolled #teaser, .scrolled #slider-container {
	background: none!important;
	opacity: 100%!important;
    transition: 1.2s;
}


.scrolldown {
	display: none !important;
}

@media (min-width: 992px) {
#mainmenu .navbar-default ul.nav li a.active,
#mainmenu .navbar-default ul.nav li a.active:hover,
#mainmenu .navbar-default ul.nav li a.active:focus,
#hauptnavigation > ul > li.dropdown.m_open.open > ul > li.dropdown-submenu.m_open.grau > a	{
	color: #fff;
	background-color: var(--akzentfarbe_hex);					
	cursor: default;
}
#mainmenu .navbar-default ul.nav li a:hover,
#mainmenu .navbar-default ul.nav li a:focus {
	color: #fff;
	text-decoration: none;
	background-color: rgba(0,0,0,0.2) !important;
}
}
