/*
	
Theme Name: Webgearing
Theme URI: http://webgearing.com
Description: based on the Starkers Theme.
Version: 1.0
Author: Andris Linz @ webgearing ag
Author URI: http://webgearing.com

*/

/* COLORS 
	
	pink:			#2C5F9B
	schwarz:		#1d1d1b
	weiss:			#fff
	
*/




/* ------------------------- RESET ------------------------- */


body, html, h1, h2, h3, h4, h5, h6, p, ul, li, ol, img, fieldset { margin:0; padding:0; border:0; }

ul, li, ol { list-style:none; }

:focus { outline:none; }

/* ------------------------- UTILITIES ------------------------- */

.clear { clear:both; height:0;}

.floatLeft { float:left; }

.floatRight { float:right; }

.blau {
	color:#2C5F9B !important;
}

.bg-blau {
	background:#2C5F9B !important;
	color:#fff !important;
	padding:90px;
}

.bg-dark {
	background:#222 !important;
	color:#fff !important;
	padding:90px;
}

.border-bottom {
	border-bottom:#2C5F9B 120px solid;
}

/* ------------------------- MAIN-STYLES ------------------------- */


body {
	font-family:'Source Sans Pro', Verdana, Helvetica, Arial, sans-serif; 
	color:#201F1D; 
	background:#fff; 
	font-size:16px; 
	background:#fff;
	}


/* BUTTON */

.button {padding:15px 45px !important; background:#C1C1C1 !important; font-size:1em !important; border:0 !important; font-weight:600 !important; display:inline-block; border-radius:15px 0 15px 0 !important; line-height:1.5em !important; }

.button span, .button {color:#201F1D !important; hyphens:auto;}

.button:hover {cursor:pointer !important; background:#2C5F9B !important; border:0 !important; }

.button:hover span, .button:hover {color:#fff !important;}

/* BUTTON-LINK */

.button-link {padding:15px 45px !important; background:#C1C1C1 !important; font-size:1em !important; border:0 !important; font-weight:600 !important; display:inline-block; border-radius:15px 0 15px 0 !important; line-height:1.5em !important;  color:#201F1D !important; hyphens:auto; text-decoration:none;}

.button-link:hover {cursor:pointer !important; background:#2C5F9B !important; border:0 !important; color:#fff !important; text-decoration:none;}


/* BUTTON WEISS */

.button-weiss {
	padding:10px 40px !important; 
	background:#fff !important; 
	font-size:16px !important; 
	border:0 !important; 
	font-weight:500 !important; 
	display:inline-block; 
	line-height:20px !important; 
	border:#fff 2px solid !important;
	}

.button-weiss span, .button-weiss {
	color:#222 !important; 
	hyphens:auto;
	}

.button-weiss:hover {
	cursor:pointer !important; 
	background:transparent !important; 
	border:#fff 2px solid !important;
	}

.button-weiss:hover span, .button-weiss:hover {
	color:#fff !important;
	}

/* ------------------------- TYPO ------------------------- */


h1	{
	font-size:72px; 
	font-weight:500; 
	line-height:74px; 
	margin:0; 
	}

h2 	{
	font-size:44px; 
	font-weight:600; 
	line-height:46px; 
	margin:0 0 30px 0; 
}

h3 	{
	font-size:33px; 
	font-weight:600; 
	line-height:40px; 
	margin:0 0 30px 0;  
	}

p 	{font-size:16px; line-height:22px; font-weight:300; margin:0 0 30px 0; hyphens:auto;}

p strong {font-weight:700;}


a {text-decoration:underline; color:rgba(0,0,0,1); transition: all ease 0.3s;}

a:hover {text-decoration:underline; color:rgba(0,0,0,0.5); transition: all ease 0.3s;}

hr {border:none; border-bottom:#dd3333 1px solid; height:1px; background:transparent; margin:0 0 13px 0; width:33%; min-width:150px;}

.so-widget-sow-editor ul {margin:0 0 30px 0px;}

.so-widget-sow-editor ul li {list-style:none; padding:0 0 0 30px; margin:0 0 15px 0; background:url('images/bullet.png') no-repeat 0px 5px; background-size:.8em .8em; hyphens:auto;}

.so-widget-sow-editor ol {margin:0 0 15px 15px;}

.so-widget-sow-editor ol li {list-style: decimal; padding:0 0 0 5px; margin:0 0 5px 0;}

/* BG FELD */

.bg-feld {
	position:relative;
	height:478px;
	width:577px;
	display:flex;
	align-items: center;
}

.bg-feld:before {
	content:url(images/bg-feld.png);
	position:absolute;
	mix-blend-mode:multiply;
	z-index:1;
	inset:0;
	
}

.bg-feld h3 {
	color:#fff;
	text-align:right;
	z-index:2;
	display:block;
	border-bottom:0;
	position:relative;
	font-size:55px;
	line-height:60px;
}


/* ------------------------- HEADER ------------------------- */

/* TOPHEADER AREA */

#topheader-area {
	background:#fff;
	color:#2C5F9B;
	padding:10px 26px;
	width:calc(100% - 52px);
	position:fixed;
	height:20px;
}

#topheader-area p {
	margin:0;
	font-size:16px;
	
}

#topheader-area p a {}

#topheader-area p a:hover {}

#topheader-area ul li {float:right; display:inline-block; list-style:none; margin:0 0 0 13px;}

#topheader-area ul li a {background:#fff; color:#3D3832; font-size:12px; text-transform:uppercase; padding:6px 13px;} 

#topheader-area ul li a:hover, #topheader-area ul li.current-menu-item a {background:#007759; color:#fff;}

/* HEADER */

header {
	width:calc(100% - 60px); 
	padding:0 30px; 
	background:#2C5F9B; 
	position:fixed;
	z-index:2;
	height:140px;
	transition: all ease 0.5s;
	}

.inner {
	width:1280px; 
	margin: 0 auto;
	}


/* LOGO AREA */

#logo-area {float:left; width:auto;}

#logo-area img {
	height:80px; 
	width:auto; 
	border-radius:0;
	transition: all ease 0.5s;
}

#logo-area .widget-container {
	margin:0; 
	padding:30px 0;
	transition: all ease 0.5s;
	}


/* MENU AREA */

#menu-area {height:117px; width:auto; float:right; text-align:left; padding:0;}

/* ------------------------- NAVIGATION ------------------------- */


#menu-area .menu {
	height:140px; 
	position:relative; 
	}

#menu-area .menu li {
	display:inline-block; 
	line-height:140px; 
	position:relative;
	transition: all ease 0.5s;
	}

#menu-area .menu li a {
	color:#fff; 
	font-size:16px; 
	transition: all ease 0.3s; 
	padding:0 15px; 
	font-weight:500; 
	text-decoration: none; 
	
	}

#menu-area .menu li.menu-item-has-children a {
	padding:0 15px; 
	margin:0 13px 0 0;
	}

#menu-area .menu li a:hover {
	transition: all ease 0.3s; 
	text-decoration: none;
	}

#menu-area .menu li.current-menu-item a, #menu-area .menu li.current-menu-ancestor > a {
	transition: all ease 0.3s;
	}

#menu-area .menu li.menu-item-has-children a:after {
	position:absolute; 
	right:0; 
	top:65px; 
	content: "\f107"; 
	display: inline-block; 
	font-family: FontAwesome; 
	font-style: normal; 
	font-weight: 400; 
	line-height: 1; 
	color:#2C5F9B; 
	}

#menu-area .menu .sub-menu {
	display:block;
	opacity:0;
	position:absolute; 
	top:95px;
	box-shadow:3px 3px 3px 0px rgba(0,0,0,0.16);
	z-index:999; 
	padding:15px 0; 
	border-radius: 15px 0px 15px 0px; 
	background:#2C5F9B;
	transition: all ease 0.5s;
	}


#menu-area .menu li.menu-item-has-children:hover .sub-menu {
	opacity:1;
	transition: all ease 0.5s; 
	}
	
#menu-area .menu li.align-right.menu-item-has-children .sub-menu {
	right:-30px;
	}

#menu-area .menu li.menu-item-has-children .sub-menu li {
	display:block; 
	line-height:40px; 
	width:auto; 
	min-width:200px; 
	text-align:left;
	}

#menu-area .menu li.menu-item-has-children .sub-menu li a {
	color:rgba(255,255,255,0.8); 
	display:block; 
	font-weight:500;
	}

#menu-area .menu li.menu-item-has-children:hover .sub-menu li.current-menu-item a, #menu-area .menu li.menu-item-has-children:hover .sub-menu li a:hover { 
	color:rgba(255,255,255,1);
	}

#menu-area .menu li.menu-item-has-children#menu-item-147 .sub-menu li.current-menu-item a {
	font-weight:500;
	}

#menu-area .menu li.menu-item-has-children#menu-item-147 .sub-menu li.current-menu-item a:hover {
	font-weight:900;
	}

#menu-area .menu li.menu-item-has-children .sub-menu li a:after {
	content: "";
	}


/* Menu Underline */

#menu-area .menu li {
	list-style:none; 
	margin-bottom:5px;
}

#menu-area .menu li a {
	text-decoration:none; 
	display:block;  
	font-weight:700;
	width:auto; 
	position:relative; 
	display:inline-block;
}

#menu-area .menu li a:hover {
	
}

#menu-area .menu li a:before {
  content: "";
  position: absolute;
  width: 0;
  height: 3px;
  bottom:40px;
  left: 0;
  background-color:#fff;
  visibility: hidden;
  transition: all 0.3s ease-in-out;
}

#menu-area .menu li a:hover:before, #menu-area .menu li.current-menu-item a:before {
  visibility: visible;
  width:100%;
}

#menu-area .menu li.menu-item-has-children:hover a:before {
	width:0;
	visibility:hidden;
}

/* Menu Toggle */

#menutoggle {
	position:fixed;
	top:40px;
	right:25px;
	width: 28px;
	height: 22px;
	-webkit-transform: rotate(0deg);
	-moz-transform: rotate(0deg);
	-o-transform: rotate(0deg);
	transform: rotate(0deg);
	-webkit-transition: .5s ease-in-out;
	-moz-transition: .5s ease-in-out;
	-o-transition: .5s ease-in-out;
	transition: .5s ease-in-out;
	cursor: pointer;
	z-index:999999999;
	display:none;
}

body.sticky.menu--open #menutoggle.open {
	position:fixed;
	top:35px;
	right:25px;
}


#menutoggle span {
  display: block;
  position: absolute;
  height: 4px;
  width: 100%;
  background:#fff;
  opacity: 1;
  left: 0;
  -webkit-transform: rotate(0deg);
  -moz-transform: rotate(0deg);
  -o-transform: rotate(0deg);
  transform: rotate(0deg);
  -webkit-transition: .25s ease-in-out;
  -moz-transition: .25s ease-in-out;
  -o-transition: .25s ease-in-out;
  transition: .25s ease-in-out;
}

body.sticky #menutoggle span {
	background:#000;
}

#menutoggle span:nth-child(1) {
  top: 0px;
}

#menutoggle span:nth-child(2) {
  top: 8px;
}

#menutoggle span:nth-child(3) {
  top: 16px;
}

#menutoggle.open span:nth-child(1) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 7px;
}

#menutoggle.open span:nth-child(2) {
  -webkit-transform: rotate(45deg);
  -moz-transform: rotate(45deg);
  -o-transform: rotate(45deg);
  transform: rotate(45deg);
  top: 7px;
}

#menutoggle.open span:nth-child(3) {
  -webkit-transform: rotate(-45deg);
  -moz-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 7px;
}


body #overlay-area {
	display:none;
}

body.menu--open #overlay-area {
	display:block;
	overflow:scroll;
	padding-top:30px;
}

#overlay-area {
	position:fixed; 
	top:0; 
	left:0; 
	bottom:0; 
	right:0; 
	background:#2C5F9B; 
	z-index:9999999; 
	padding:30px;
}

#overlay-area .menu {
	margin:0 auto 30px auto;
}

#overlay-area .menu li {
	list-style:none; 
	margin-bottom:15px;
}

#overlay-area .menu li a {
	text-decoration:none; 
	display:block; 
	font-size:30px; 
	line-height:40px; 
	font-weight:300;
	color:#222; 
	width:auto; 
	position:relative; 
	display:inline-block;
	
}

#overlay-area .menu li a:hover, #overlay-area .menu li.current-menu-item .sub-menu li a:hover {
	color:rgba(0,0,0,0.5);
}

#overlay-area .menu li.current-menu-item a, #overlay-area .menu li.current-menu-item .sub-menu li.current-menu-item a, #overlay-area .menu li.current-menu-ancestor a, #overlay-area .menu li.current-menu-ancestor .sub-menu li.current-menu-item a  {
	color:rgba(255,255,255,1);
}

#overlay-area .menu li .sub-menu li a {
	color:rgba(0,0,0,1);
}

#overlay-area .menu .sub-menu {
	padding:0;
	margin-bottom:15px;
}

#overlay-area .menu .sub-menu li {
	margin-bottom:5px;
}

#overlay-area .menu .sub-menu li a {
	font-size:18px;
	line-height:28px;
}


.overlay-logo img {
	width:200px;
	height:auto;
}

/* Sticky Header */

body.sticky header {
	background:#fff;
	height:80px;
	transition: all ease 0.5s;
	box-shadow:rgba(0,0,0,0.16) 0px 3px 5px;
}

body.sticky #logo-area .widget-container {
	padding:20px 0;
	transition: all ease 0.5s;
}

body.sticky #logo-area img {
	height:40px;
	transition: all ease 0.5s;
	content: url("https://relaunch22.webgearing.com/wp-content/uploads/2022/03/webgearing-logo-blau.svg");
}

body.sticky #menu-area .menu li {
	line-height:80px;
	transition: all ease 0.5s;
}

body.sticky #menu-area .menu li a:before {
	bottom:0;
	transition: all ease 0.5s;
}

body.sticky #menu-area .menu li a {
	color:#2C5F9B;	
}

body.sticky #menu-area .menu li a:before {
	background-color:#2C5F9B;
}

/* ------------------------- MAIN ------------------------- */


#main {
	max-width:1280px;
	padding:140px 0 90px 0;
	margin:0 auto;
	z-index:1;
	position:relative;
	}


/* HEADER */


/* HOME */

.icon img {
	width:200px;
	height:auto;
}

/* Slider */

.so-widget-sow-layout-slider h1, .so-widget-sow-layout-slider h2, .so-widget-sow-layout-slider h3, .so-widget-sow-layout-slider h4, .so-widget-sow-layout-slider h5, .so-widget-sow-layout-slider h6, .so-widget-sow-layout-slider p {
	color:#fff;
}

.header-home {
	text-shadow:5px 5px 3px rgba(0,0,0,0.16);
}


/* AKTUELLES */

.single-aktuelles h1 {
	margin-bottom:60px;
}

.teaserpost {
	border-left:1px #ddd solid;
	padding:0px 30px 0px 30px;
	position:relative;
	box-sizing: border-box;
}

.teaserpost p:last-child {
	margin-bottom:0px;
}


/* TEASERBOXEN */

.teaserbox {
	border-left:1px #ddd solid;
	padding:0 30px 30px 30px;
	position:relative;
	box-sizing: border-box;
}

.teaserbox .panel-last-child {
	position:absolute;
	bottom:0px;
	width:auto;
}

/* REFERENZEN */

#main.single {
	padding-top:60px;
}

.single-header {
	height:calc(100vh - 200px);
	max-height:800px; 
	width:100vw;
	position:relative;
	background-position:center center; 
	background-size:cover; 
	background-attachment:fixed; 
	background-blend-mode:saturation;
	display:flex;
	align-items: center;
	padding-top:120px;
	box-sizing: border-box;
}

.single-header .inner {
/* 	background:#2C5F9B; */
	padding:30px;
}

.single-header h1 {
	color:#fff;
	font-size:40px;
	line-height:50px;
	font-weight:700;
	text-shadow:5px 5px 3px rgba(0,0,0,0.16);
	max-width:50%;	
	margin-bottom:15px;
}

.single-header p {
	font-size:22px;
	line-height:22px;
}

.single-header p a {
	color:#fff;	
}



/* ------------------------- FORMULAR ------------------------- */



.nf-form-fields-required {
	margin-bottom:30px;
}

/*
.nf-field-label {
	display:none;
}
*/

.nf-form-content {
	max-width:100% !important;
}

.nf-form-content input[type="text"], .nf-form-content input[type="email"], .nf-form-content textarea {
	border:#707070 1px solid;
	background-color:#fff !important;
	font-family: Verdana, Helvetica, Arial, sans-serif;
	font-size:1em;
	color:#201F1D !important;
}

.nf-form-content input[type="text"]:focus,.nf-form-content input[type="email"]:focus, .nf-form-content textarea:focus	 {
	border:#2C5F9B 2px solid !important;
}

.nf-form-content input[type="button"] {
	background:#C1C1C1 !important;
	color:#201F1D !important;
	
	padding:15px 45px !important;
	line-height:1em;
}

.nf-form-content input[type="button"]:hover {
	background:#2C5F9B !important;
	color:#fff !important;
}

.nf-form-content input[type="text"]::placeholder, .nf-form-content input[type="email"]::placeholder, .nf-form-content textarea::placeholder {
	opacity:1;
}

/*
.nf-error.field-wrap .nf-field-element::after {
	border-radius:0px 0px 15px 0px !important;
}
*/


/* ------------------------- PAGE ------------------------- */


table {font-size:16px; margin-bottom:30px;}

table thead {background:#1d1d1b; color:#fff;}

table tbody {background:#fff; color:#222;}

table td {padding:10px; vertical-align:top;}

/* ------------------------- FOOTER ------------------------- */



footer {background:#2C5F9B; padding:60px 0; color:#222; width:100%;}

footer .inner {padding:0 30px; margin:0 auto;}

#first-footer-widget-area {margin:0;}

footer p, footer h3 {
	color:#fff;
	
}

footer a {text-decoration:underline; color:rgba(255,255,255,1);}

footer a:hover {text-decoration:underline; color:rgba(255,255,255,0.5);}

footer h3 {font-size:26px; font-weight:300; line-height:34px; margin:0;}



/* ----- RESPONSIVE TABLET STYLES ----- */


@media screen and (max-width: 1240px){
	


	#logo-area img {height:40px; width:auto;}

	#menutoggle {
		display:block;
	}

	#menu-area {
		display:none;
	}
}


@media screen and (max-width: 1023px) { 
	
	header .inner {width:calc(100% - 80px); margin:0 40px;}
	
	#main {width:calc(100% - 80px); padding:0 40px; margin:0 auto; }
	
	footer .inner {width:calc(100% - 80px);}
	
	
	
/*
	#menu-area .menu {
		height:40px; 
		position:relative; 
		}
	
	#menu-area .menu li {
		display:inline-block; 
		line-height:40px; 
		position:relative;
		}
	
	#menu-area .menu li a {
		color:#1d1d1b; 
		font-size:12px; 
		transition: all ease 0.3s; 
		padding:0 4px; 
		font-weight:500; 
		text-decoration: none; 
		
		}
*/


}








@media screen and (max-width: 778px) { 

rs-layer h1 {
	font-size:5em !important; 
	font-weight:300 !important; 
	line-height:1.1em !important; 
	margin:0 0 20px 0;
	
	}

rs-layer h2 {
	font-size:3em !important; 
	font-weight:600 !important; 
	line-height:1.2em !important; 
	margin:0 0 10px 0; 
	
	}

rs-layer h3 {
	font-size:2em !important; 
	font-weight:600 !important; 
	line-height:1.2em !important; 
	margin:0 0 10px 0; 
	
	}

rs-layer h4 {
	font-size:2.5em !important; 
	font-weight:600 !important; 
	line-height:1.2em !important; 
	margin:0 0 30px 0 !important; 
	
	}

rs-layer p {
	font-size:2em !important; 
	line-height:1.2em !important; 
	font-weight:300 !important; 
	margin:0 0 30px 0;
	}

}

/* ----- RESPONSIVE MOBILE STYLES ----- */


@media screen and (max-width: 687px) { 
	
	/* LAYOUT */
		
	#topheader-area {
		display:none;
	}
	
	header .inner {width:calc(100% - 52px); margin:0 auto;}
		
	#logo-area img {height:40px; width:auto;}
	
	
		
	#main {width:calc(100% - 40px); padding:0 20px; margin:0 auto; }
			
/* 	footer .inner {width:calc(100% - 40px); margin:0 auto;} */
	
	footer h3 {font-size:22px; line-height:26px; margin:0;}
	
	/* TYPO */
	
	h1 {
		font-size:2.2em;
	}
	
	h2 {
		font-size:1.8em;
	}
	
	h3 {
		font-size:1.6em;
	}
	
	/* HEADER HOME */
	
	.header-home {
		border-radius:0px 0px 50px 0px;
	}
	
	.header-home-text {
		padding:45px;
		max-width:calc(80% - 90px);
		border-radius:0px 0px 50px 0px;
	}
	
	/* SECTION TITLE */
	
	.section-title {
		height:250px;
		border-radius:50px 0px 50px 0px;
	}
	
	.section-title h2 {
		padding:30px 0;
		border-radius:0px 0px 50px 0px;
	}
	
	/* AKTUELLES */
	
	.aktuelles-home h2 {
		width:auto;
	}
	
	/* JOBS */
	
	
	.teaserposts .teaserpost, .grid-sizer {
		width:auto;
	}
	
	/* FOOTER BILD */
	
	.footer-bild {
		height:250px;
	}
	
}

.sow-video-wrapper iframe {
	max-width:100%;
}
