/*
Theme Name: K1 SE Theme
Author: SECONDRED Newmedia GmbH
Author URI: http://www.secondred.de/
Version: 1.0
Text Domain: k1theme 
*/
@font-face {
    font-family: 'Rufina Bold';
    src: url('font/rufina-bold-webfont.eot');
    src: url('font/rufina-bold-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/rufina-bold-webfont.woff') format('woff'),
         url('font/rufina-bold-webfont.ttf') format('truetype'),
         url('font/rufina-bold-webfont.svg#rufinabold') format('svg');
    font-weight: normal;
    font-style: normal;

}
@font-face {
    font-family: 'Rufina';
    src: url('font/rufina-regular-webfont.eot');
    src: url('font/rufina-regular-webfont.eot?#iefix') format('embedded-opentype'),
         url('font/rufina-regular-webfont.woff') format('woff'),
         url('font/rufina-regular-webfont.ttf') format('truetype'),
         url('font/rufina-regular-webfont.svg#rufinaregular') format('svg');
    font-weight: normal;
    font-style: normal;

} 

/* -- Global Reset -- */
body, html {  height:100%; width:100%;} 

* { padding:0; margin:0;}
*:focus { outline:none }

p { margin-bottom:12px;}
input.formText, textarea { font-family:"Arial", "Helvetica", sans-serif}
textarea { resize:vertical; overflow:auto}
button { -webkit-box-sizing: border-box;-moz-box-sizing: border-box;box-sizing: border-box;}
ul {padding-left:23px;}
ul li {}

ol {padding-left:23px;}
ol li {}

img { border:0;}
canvas { -ms-touch-action: double-tap-zoom;}

a,button, img  {
-webkit-transition: color .13s  ease-in-out, border-color .13s  ease-in-out, background-color .13s  ease-in-out, opacity .15s  ease-in-out, box-shadow .25s  ease-in-out;
-moz-transition:  color .13s  ease-in-out, border-color .13s  ease-in-out, background-color .13s  ease-in-out, opacity .15s  ease-in-out, box-shadow .25s  ease-in-out;
transition: color .13s  ease-in-out, border-color .13s  ease-in-out, background-color .13s  ease-in-out, opacity .15s  ease-in-out, box-shadow .25s  ease-in-out;
}
.ht{text-indent: 100%;white-space: nowrap;overflow: hidden;}

a { color:#1f367e}
a:active { background-color:transparent}
a:hover { text-decoration:none}
noscript.msg div{
	background-color:#C00;
	color:#fff;
	font-size:12px;
	padding:10px 20px;
	display:block;
}
/* -- LandignPage -- */
body {
	font-family: 'Rufina', serif;
	/*background-image:url(gfx/body-bgv2.jpg);
	background-position:top right;
	background-size:120% auto; */
	color:#333;
	-webkit-overflow-scrolling: touch;
	perspective: 1000;
	font-smoothing: antialiased
}
body.home {
	min-width:980px;
	min-height:480px;
}
body.admin-bar { padding-top:0}
#backgrnd {
	position:fixed;
	z-index:1;
	background-image:url(gfx/body-bgv2.jpg);
	background-position:top right;
	background-size:cover;
	top:0;
	right:0;
	left:0;
	bottom:0;
	-webkit-transition: left .3s  ease-in-out, right .3s  ease-in-out;
	-moz-transition: left .3s  ease-in-out, right .3s  ease-in-out;
	transition: left .3s  ease-in-out, right .3s  ease-in-out;
}
body.bglft #backgrnd{left:-100px}
body.bgrt #backgrnd{right:-100px}

body.home #container {min-height:100%; overflow:hidden; position:relative; z-index:2}
#header  { background-color:#fff; padding:24px 0;  z-index:2;position: relative}
body.home #header {position:fixed; left:0;right:0; top:0;}
body.home.admin-bar { padding-top:0}
body.home.admin-bar #header {top:32px;}

#header #logo { margin:0; padding:0}
#header #logo a{
	margin:0 auto;
	text-indent: 100%;
	white-space: nowrap;
	overflow: hidden;
	font-size:0;
	color:rgba(0,0,0,0);
	width:169px;
	height:53px;
	background-image:url(gfx/k1-se-logo.png);
	display:block;
}
body.home #nav { position:absolute; width:920px; height:160px;left:50%;top:50%;margin-left:-460px;margin-top:-80px;}
body.home a.box {
	display:block;
	display:table;
	width:420px;
	height:140px;
	border:10px solid #fff;
	border:10px solid rgba(255,255,255, .8);
	text-align:center;
	color:#fff;
	color:rgba(255,255,255, .9);
	text-decoration:none;
	text-transform:uppercase;
	-webkit-transition: color .20s  ease-in-out, border .20s  ease-in-out;
	-moz-transition:color .20s  ease-in-out, border .20s  ease-in-out;
	transition: color .20s  ease-in-out, border .20s  ease-in-out;
}
body.home a.box:hover {border:10px solid #fff;border:10px solid rgba(255,255,255, 1);color:#fff;color:rgba(255,255,255, 1);}
#nav.prozess a.fltlft,
#nav.vorrat a.fltrt {border:10px solid rgba(255,255,255, .6);color:rgba(255,255,255, .7);}

body.home #nav h2{ display:inline}


body.home a.box strong { padding:53px 0; font-size:27px;font-weight:normal; display:block}
body.home #line { 
	width:1px;
	height:2000px;
	background-color:#fff;
	background-color:rgba(255,255,255,.9);
	position:absolute;
	top:-1000px;
	left:50%;
	-moz-transform: rotate(32deg) translateX(41px);
	-webkit-transform: rotate(32deg) translateX(41px);
    transform: rotate(32deg) translateX(41px);
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
#nav.vorrat #line {
	-moz-transform: rotate(32deg) translateX(-166px);
	-webkit-transform: rotate(32deg) translateX(-166px);
    transform: rotate(32deg) translateX(-166px);
}
#nav.prozess #line {
	-moz-transform: rotate(32deg) translateX(238px);
	-webkit-transform: rotate(32deg) translateX(238px);
    transform: rotate(32deg) translateX(238px);
}
/* --- Layout --- */
#menu {
	/*background-image:url(gfx/body-bgv2.jpg);
	background-position:top right;
	background-size:cover; */
	-webkit-transform: translate3d(0, 0, 0);
	position:relative;
	overflow:hidden
}
#menu nav { z-index:2}
#menu #bg {
	position:absolute;
	z-index:1;
	left:0;
	top:0;
	right:0;
	bottom:0;
	background-image:url(gfx/body-bgv2.jpg);
	background-position:top right;
	background-size:cover;
	-webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
	-webkit-transition: left .3s  ease-in-out, right .3s  ease-in-out;
	-moz-transition:  left .3s  ease-in-out, right .3s  ease-in-out;
	transition: left .3s  ease-in-out, right .3s  ease-in-out;
}
body.bglft #menu #bg{left:-40px}
body.bgrt #menu #bg{right:-40px}

#mainmenu{padding:40px 0; overflow:hidden; position:relative}
#mainmenu ul {width:920px;margin: 0 auto;list-style:none;padding:0}
#mainmenu ul li{ float:left;}
#mainmenu ul li a{
	display:block;
	border:7px solid #fff;
	border:7px solid rgba(255,255,255, .8);
	font-size:27px;
	padding:30px 0;
	text-align:center;
	text-transform:uppercase;
	text-decoration:none;
	color:#fff;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width:440px
}
#mainmenu ul li#menu-item-38 a{ margin-right:40px}

#mainmenu ul li.current-page-ancestor a,
#mainmenu ul li.current_page_item a,
#mainmenu ul li a:hover{
	border:7px solid #fff;
	border:7px solid rgba(255,255,255, 1);
}
#mainmenu #line { 
	width:1px;
	height:110px;
	background-color:#fff;
	background-color:rgba(255,255,255,.9);
	position:absolute;
	top:17px;
	left:50%;
	-moz-transform: rotate(31deg) translate(11px, 18px) scale(1, 2);
	-webkit-transform: rotate(31deg) translate(11px, 18px) scale(1, 2);
    transform: rotate(31deg) translate(11px, 18px) scale(1, 2);
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
}

#mainmenu.vorrat #line {
	-moz-transform: rotate(31deg) translate(-200px, 145px) scale(1, 2);	
	-webkit-transform: rotate(31deg) translate(-200px, 145px) scale(1, 2);
    transform:rotate(31deg) translate(-200px, 145px) scale(1, 2);
}

#mainmenu.prozess #line{
	-moz-transform: rotate(31deg) translate(220px, -106px) scale(1, 2);
	-webkit-transform: rotate(31deg) translate(220px, -106px) scale(1, 2);
    transform:rotate(31deg) translate(220px, -106px) scale(1, 2);
}
#mainmenu.vorrat_hover #line {
	-moz-transform: rotate(31deg) translate(-200px, 145px) scale(1, 2) !important;
	-webkit-transform: rotate(31deg) translate(-200px, 145px) scale(1, 2) !important;
    transform:rotate(31deg) translate(-200px, 145px) scale(1, 2) !important;
}
#mainmenu.prozess_hover #line {
	-moz-transform: rotate(31deg) translate(220px, -106px) scale(1, 2) !important;
	-webkit-transform: rotate(31deg) translate(220px, -106px) scale(1, 2) !important;
    transform:rotate(31deg) translate(220px, -106px) scale(1, 2) !important;
}

/* -- Submenu -- */
#submenu { padding:20px 0;background-color:rgba(255,255,255, .9); position:relative}
#submenu ul { width:920px; margin: 0 auto; text-align:center}
#submenu ul li { display:inline-block; padding:0 10px}
#submenu ul li a{color:#999; text-decoration:none; position:relative; padding-left:10px; text-transform:uppercase}
#submenu ul li a:before {
	width:1px;
	height:15px;
	background:#999;
	position:absolute;
	left:0;
	top:1px;
	-moz-transform: rotate(32deg) translate(0, 1px);
	-webkit-transform: rotate(32deg) translate(0, 1px);
    transform: rotate(32deg) translate(0, 1px);
	content: " ";
	display:block;
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
#submenu ul li a:hover:before {
	-moz-transform: rotate(32deg) translate(0, 1px) scale(1,2);
	-webkit-transform: rotate(32deg) translate(0, 1px) scale(1,2);
    transform: rotate(32deg) translate(0, 1px) scale(1,2);
}
#submenu ul li a:hover{ color:#666}

#submenu ul li.current_page_item a {color:#1f367e;}
#submenu ul li.current_page_item a:before{background:#1f367e;}

/* -- Submenu -- */
#submenu2 { padding:20px 0;background-color:rgba(255,255,255, .7); position:relative}
#submenu2 ul { width:920px; margin: 0 auto; text-align:center}
#submenu2 ul li { display:inline-block; padding:0 10px}
#submenu2 ul li a{color:#999; text-decoration:none; position:relative; padding-left:10px; text-transform:uppercase}
#submenu2 ul li a:before {
	width:1px;
	height:15px;
	background:#999;
	position:absolute;
	left:0;
	top:1px;	
	-webkit-transform: rotate(32deg) translate(0, 1px);
	-moz-transform: rotate(32deg) translate(0, 1px);
	transform: rotate(32deg) translate(0, 1px);
	content: " ";
	display:block;
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
#submenu2 ul li a:hover:before {
	-webkit-transform: rotate(32deg) translate(0, 1px) scale(1,2);
	-moz-transform: rotate(32deg) translate(0, 1px) scale(1,2);
	transform: rotate(32deg) translate(0, 1px) scale(1,2);
}
#submenu2 ul li a:hover{ color:#666}

#submenu2 ul li.current_page_item a {color:#1f367e;}
#submenu2 ul li.current_page_item a:before{background:#1f367e;}

/* -- Innerlayout -- */

#inner { padding:40px 0}

/* -- MainContent -- */
#mainContent {
	-webkit-box-sizing:content-box;
	-moz-box-sizing:content-box;
	box-sizing:content-box;
	width:826px;
	margin: 0 auto;
	border:9px solid #f1f1f1;
	padding:40px; 
	color:#333
}
#mainContent.noborder { width:924px; border:0; padding:0;}
#mainContent h1 { font-size:40px; color:#999; margin-bottom:50px; text-transform:uppercase; font-weight:normal}
#mainContent h2 { color:#1f347e; font-size:20px; font-weight:normal;text-transform:uppercase; margin-bottom:30px}
#mainContent p { line-height:25px; margin-bottom:30px}
#mainContent p:last-child { margin-bottom:0}

#mainContent a { color:#1f347e; text-decoration:none; position:relative;display:inline-block;}
#mainContent a:before {
	height:1px;
	width:0;
	content: " ";
	position:absolute;
	bottom:2px;
	left:0;
	display:block;
	background:#1f347e;
	-webkit-transition: width .20s  ease-in-out;
	-moz-transition:width .20s  ease-in-out;
	transition:width .20s  ease-in-out;
}
#mainContent a:hover { }
#mainContent a:hover:before {width:100%}

#mainContent article .entry-content > ul { margin:0; padding:0;margin-bottom:30px}
#mainContent article .entry-content > ul li {
	list-style:none;
	background:url(gfx/icon-list.png) left center no-repeat;
	padding:17px 0 17px 60px;
	
}
#mainContent article.post-karriere{ border:9px solid #f1f1f1; margin-bottom:40px}
#mainContent article.post-karriere:last-child { margin-bottom:0}
#mainContent article.post-karriere .entry-header{padding:40px 40px 0;}
#mainContent article.post-karriere .entry-content{padding:0 40px 40px;}
#mainContent article.post-karriere .entry-meta{padding:25px 40px 19px; background-color:#f1f1f1}
#mainContent article.post-karriere .entry-meta a { font-size:20px; padding-left:15px; display:inline-block}
#mainContent article.post-karriere .entry-meta a:hover { color:#666}
#mainContent article.post-karriere .entry-meta a:before {
	width:1px;
	height:18px;
	background:#1f367e;
	position:absolute;
	left:0;
	top:3px;
	-moz-transform: rotate(32deg) translate(0, 1px);
	-webkit-transform: rotate(32deg) translate(0, 1px);
    transform: rotate(32deg) translate(0, 1px);
	content: " ";
	display:block;
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-o-transition: -o-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
#mainContent article.post-karriere .entry-meta a:hover:before {
	-moz-transform: rotate(32deg) translate(0, 1px) scale(1,2);
	-webkit-transform: rotate(32deg) translate(0, 1px) scale(1,2);
    transform: rotate(32deg) translate(0, 1px) scale(1,2);}

/* -- Content Elements  -- */
#mainContent figure { margin:70px -40px; padding:40px; background-color:#f1f1f1; position:relative}
#mainContent .entry-content figure:last-child {margin:70px -40px -40px}
#mainContent figure.gmap { padding:0} 
#mainContent figure.line:before {
	content: " ";
	width:1px;
	background-color:#ccc;
	display:block;
	-moz-transform: rotate(32deg);
	-webkit-transform:rotate(32deg);
    transform: rotate(32deg);
	position:absolute;
	top:-70px;
	bottom:-70px;
	left:440px;
}
#mainContent figure blockquote { float:left}
#mainContent figure .img { position:absolute; bottom:0; right:40px}
#mainContent figure .img img { float:right}
#mainContent figure .img small { font-size:11px; line-height:normal;position:absolute; bottom:30px; text-align:right; width:100px; left:-120px}
#mainContent figure blockquote h3 { text-transform:uppercase; color:#999; font-size:20px; margin-bottom:20px; font-weight:normal}
#mainContent figure blockquote table { width:100%; border-collapse:collapse}

#mainContent figure blockquote table th,
#mainContent figure blockquote table td{ font-size:15px; font-weight:normal; vertical-align:top; padding-bottom:10px}

#mainContent figure blockquote table th{ width:215px;text-align:left;}
#mainContent figure blockquote table td{text-align:right;}

#mainContent figure blockquote table tfoot th,
#mainContent figure blockquote table tfoot td{ color:#1f357e}

#mainContent figure.midLine blockquote.lft { width:350px; margin-right:145px}
#mainContent figure.midLine blockquote.rt {}

#mainContent figure.rtLine:before {left:610px}
#mainContent figure.rtLine blockquote.lft { width:515px; margin-right:0}
#mainContent figure.rtLine blockquote.rt {}

#mainContent figure blockquote.big {color:#999;	font-size:27px; line-height:32px}
#mainContent figure blockquote.big strong { font-weight:normal; color:#1f337e}
#mainContent figure blockquote.big p{line-height:32px}


#mainContent figure.imgbox {background:url(gfx/content-img-box-bg.jpg) no-repeat center; padding: 70px 40px}
#mainContent figure.imgbox blockquote {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	width:444px;
	border:7px solid #fff;
	border:7px solid rgba(255,255,255, .8);
	padding:30px;
	position:relative
}
#mainContent figure.imgbox blockquote p { position:relative; z-index:2}
#mainContent figure.imgbox blockquote:before {
	content: " ";
	width:1px;
	background-color:#fff;
	display:block;
	-moz-transform: rotate(32deg);
	-webkit-transform:rotate(32deg);
    transform: rotate(32deg);
	position:absolute;
	top:-55px;
	bottom:-115px;
	left:205px;
	z-index:1
}

/* -- Tags -- */
#mainContent .tag-links { padding-top:80px; font-size:13px; color:#999;}
#mainContent .tag-links a{ color:#999;}
#mainContent .tag-links a:before { display:none}
#mainContent .tag-links a:hover { text-decoration:underline}

.post-navigation { padding-top:15px}
/* -- ContentEnd  -- */
#contentEnd {background-color:#f1f1f1; padding:40px 0}
#contentEnd .cols { width:920px; margin: 0 auto}
#contentEnd .cols .border {border:7px solid #fff}
#contentEnd .cols .lft,
#contentEnd .cols .rt{ 
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	padding:30px 40px;
	width:440px;
	float:left;
	position:relative;
	min-height:250px
}

#contentEnd .cols .lft{ margin-right:40px}
#contentEnd .cols .pl{ padding:0; display:table}
#contentEnd .cols .pl .textwidget { display:table}
#contentEnd .cols .img  img{ position:absolute; right:30px; bottom:0;}
#contentEnd a.imgBox {
	display:block;
	display:table-cell;
	vertical-align:middle;
	text-align:center;
	background-image:url(gfx/img-serviceblock.jpg);
	background-size:100%;
	background-position:center;
	width:440px;
	height:250px;
	text-decoration:none;
	color:#fff;
	-webkit-transition: background-size .20s  ease-in-out;
	-moz-transition: background-size .20s  ease-in-out;
	transition: background-size .20s  ease-in-out;
}
#contentEnd a.imgBox strong {
	display:inline-block;
	font-size:27px;
	padding:15px 20px;
	border:7px solid rgba(255,255,255, .8);
	font-weight:normal;
	text-transform:uppercase;
	-webkit-transition: border .20s  ease-in-out;
	-moz-transition: border .20s  ease-in-out;
	transition: border .20s  ease-in-out;
}
#contentEnd a.imgBox:hover { background-size:110%;}
#contentEnd a.imgBox:hover strong{border:7px solid rgba(255,255,255, 1);}

#contentEnd h3{ color:#999; font-size:20px; text-transform:uppercase; margin-bottom:30px; font-weight:normal}
#contentEnd p { line-height:27px}
#contentEnd ul { margin:0; padding:0}
#contentEnd ul li { list-style:none; margin:0 0 10px 0; padding:0}
#contentEnd ul li a { color:#1f367e; text-decoration:none; position:relative;padding-left:10px;}
#contentEnd ul li a:hover {color:#666}
#contentEnd ul li a:before {
	width:1px;
	height:15px;
	background:#1f367e;
	position:absolute;
	left:0;
	top:1px;
	-moz-transform: rotate(32deg) translate(0, 1px);
	-webkit-transform: rotate(32deg) translate(0, 1px);
    transform: rotate(32deg) translate(0, 1px);
    content: " ";
	display:block;
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-o-transition: -o-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
#contentEnd ul li a:hover:before {
	-moz-transform: rotate(32deg) translate(0, 1px) scale(1,2);
	-webkit-transform: rotate(32deg) translate(0, 1px) scale(1,2);
    transform: rotate(32deg) translate(0, 1px) scale(1,2);
}

/* -- Formular -- */
div.wpcf7 { margin-bottom:20px}
fieldset { border:0;}
fieldset .formItem { position:relative; border-bottom:1px solid #ddd}

fieldset .formItem.focus {
	border-bottom:1px solid #fff;
	-moz-box-shadow:0 -1px 0 0 #fff;
	box-shadow:0 -1px 0 0 #fff;
}
fieldset .formItem label{ 
	position:absolute; 
	padding:17px 20px; 
	font-size:20px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	z-index:1
}
fieldset .formItem:before {
	content: " ";
	width:1px;
	background:#ddd;
	position:absolute;
	height:95px;
	left:150px;
	outline:1px solid transparent;
	-moz-transform: rotate(0) translate(0, 50%) scale(1,0);
	-webkit-transform: rotate(0) translate(0, 50%) scale(1,0);
    transform: rotate(0) translate(0, 50%) scale(1,0);
	z-index:3;
	opacity:0;
	margin-top:-58px;
	-webkit-transition: -webkit-transform .30s  ease-in-out .40s, opacity .30s  ease-in-out;
	-moz-transition: -moz-transform .30s  ease-in-out .40s, opacity .30s  ease-in-out;
	transition: transform .30s  ease-in-out .40s, opacity .30s  ease-in-out;
}
fieldset .formItem.focus:before {
	opacity:1;
	-moz-transform: rotate(32deg) translate(0, 50%) scale(1,1);
	-webkit-transform: rotate(32deg) translate(0, 50%) scale(1,1);
    transform: rotate(32deg) translate(0, 50%) scale(1,1);
}
fieldset .formItem input,
fieldset .formItem textarea{
	padding:15px 15px 15px 180px;
	background-color:transparent;
	font-family: 'Rufina';
	color:#666;
	border:6px solid #fff;
	width:100%;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	position:relative;
	z-index:2;
	-webkit-transition: border .30s  ease-in-out, color .30s  ease-in-out;
	-moz-transition:border .30s  ease-in-out, color .30s  ease-in-out;
	transition: border .30s  ease-in-out, color .30s  ease-in-out;
}
fieldset .formItem textarea{
	-webkit-transition: height 0.2s;
	-moz-transition: height 0.2s;
	transition: height 0.2s;
	height:10px;
	padding:15px 15px 0 160px;
}
fieldset .formItem input:focus,
fieldset .formItem textarea:focus{color:#1f337e;border:6px solid #f1f1f1}

fieldset .formCaptcha {}
fieldset .formCaptcha .img{ position:absolute; left:180px; top:15px;}
.single-domain fieldset .formCaptcha .img{ left:190px;}
fieldset .formCaptcha input{padding:15px 15px 15px 260px;}

fieldset .formCheckbox { position:relative;}
fieldset .formCheckbox:after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;height: 0;}
fieldset .formCheckbox .wpcf7-form-control-wrap {position:absolute;left:20px; top:20px;z-index: 3}
fieldset .formCheckbox .wpcf7-form-control-wrap span.wpcf7-not-valid-tip {margin-left: -20px}
fieldset .formCheckbox input {  filter: alpha(opacity=0);opacity: 0; height: 42px; width: 42px; z-index: 2; cursor: pointer}
fieldset .formCheckbox .wpcf7-list-item-label { display:none}

fieldset .formCheckbox label{ display:table; width: 100%; position: relative}
fieldset .formCheckbox label span { display:table-cell; overflow:hidden; color:#777; padding:0 0 0 20px; min-height:42px; vertical-align:middle }
fieldset .formCheckbox label span:before {content: "";display: inline-block; vertical-align: middle; height: 100%;}
fieldset .formCheckbox label i { width:42px; height:42px;border:3px solid #f1f1f1;background:#fff; display:table-cell; cursor:pointer; position:relative}
fieldset .formCheckbox label i.error,
fieldset .formCheckbox input.error + label i{border-top:1px solid red}
fieldset .formCheckbox label i:before,
fieldset .formCheckbox label i:after { 
	content:" "; height:1px; width:30px; background:#1f367e; display:block; position:absolute; top:50%; left:6px; margin-top:-1px;
	-webkit-transition: -webkit-transform 250ms cubic-bezier(0.2, 1, 0.3, 1);-moz-transition: -moz-transform 250ms cubic-bezier(0.2, 1, 0.3, 1);
	-o-transition: -o-transform 250ms cubic-bezier(0.2, 1, 0.3, 1);transition: transform 250ms cubic-bezier(0.2, 1, 0.3, 1);
}

fieldset .formCheckbox label i:before {
	-webkit-transform: rotate(45deg) scale(0,1);-moz-transform: rotate(45deg) scale(0,1);-o-transform: rotate(45deg) scale(0,1);
	-ms-transform: rotate(45deg) scale(0,1);transform: rotate(45deg) scale(0,1);
}
fieldset .formCheckbox label i:after {
	-webkit-transform: rotate(135deg) scale(0,1);-moz-transform: rotate(135deg) scale(0,1);-o-transform: rotate(135deg) scale(0,1);
	-ms-transform: rotate(135deg) scale(0,1);transform: rotate(135deg) scale(0,1);
}

fieldset .formCheckbox.active label i:before {
	-webkit-transform: rotate(45deg) scale(1);-moz-transform: rotate(45deg) scale(1);-o-transform: rotate(45deg) scale(1);
	-ms-transform: rotate(45deg) scale(1);	transform: rotate(45deg) scale(1);
}
fieldset .formCheckbox.active  label i:after {
	-webkit-transform: rotate(135deg) scale(1);-moz-transform: rotate(135deg) scale(1);-o-transform: rotate(135deg) scale(1);
	-ms-transform: rotate(135deg) scale(1);transform: rotate(135deg) scale(1);
}


fieldset .btn { position:relative; padding-left:10px; margin-top:30px}
fieldset .btn:before {
	width:1px;
	height:20px;
	background:#1f367e;
	position:absolute;
	left:0;
	top:1px;
	-moz-transform: rotate(32deg) translate(0, 1px);
	-webkit-transform: rotate(32deg) translate(0, 1px);
    transform: rotate(32deg) translate(0, 1px);
	content: " ";
	display:block;
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
fieldset .btn input {
	font-family: 'Rufina';
	border:0;
	background-color:transparent;
	font-size:20px;
	text-transform:lowercase;
	cursor:pointer;
	color:#1f367e;
}
fieldset .btn input:hover { color:#666}
/* -- Footer -- */
#footer {
	background-color:#fff;
	background-color:rgba(255,255,255,.8);
	position:relative;
	padding:20px;
	z-index:2;
	text-align:center;
	font-size:15px;
	color:#999;
}
body.home #footer {position:fixed;bottom:0;left:0;right:0;}

#footer nav { text-align:center}
#footer nav ul{}
#footer nav ul li { display:inline-block; padding:0 10px}
#footer nav ul li a{color:#1f367e; text-decoration:none; position:relative; padding-left:10px; text-transform:uppercase}
#footer nav ul li a:before {
	width:1px;
	height:15px;
	background:#1f367e;
	position:absolute;
	left:0;
	top:1px;
	-moz-transform: rotate(32deg) translate(0, 1px);
	-webkit-transform: rotate(32deg) translate(0, 1px);
    transform: rotate(32deg) translate(0, 1px);
	content: " ";
	display:block;
	-webkit-transition: -webkit-transform .20s  ease-in-out;
	-moz-transition: -moz-transform .20s  ease-in-out;
	transition: transform .20s  ease-in-out;
	outline: 1px solid transparent;
}
#footer nav ul li a:hover:before {
	-moz-transform: rotate(32deg) translate(0, 1px) scale(1,2);
	-webkit-transform: rotate(32deg) translate(0, 1px) scale(1,2);
    transform: rotate(32deg) translate(0, 1px) scale(1,2);
}
#footer nav ul li a:hover{ color:#666}

/* -- Schnellsuche  -- */
.sr-only {position: absolute;width: 1px;height: 1px;padding: 0;margin: -1px;overflow: hidden;clip: rect(0,0,0,0);border: 0}
button#show-search {
    width: 40px; height: 40px;
    background:transparent url(gfx/lupe.svg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 30px auto;
    cursor: pointer;
    border: 0;
    position: absolute;
    top: 50%; margin-top: -20px; right: 40px;
}
dialog#quick-search {
    left: 50%; top:50%;
    transform: translate(-50%, -50%);
    border: 0;
    background: transparent;
    text-align: left;
    width: 80%;
    max-width: 1050px;
}
dialog#quick-search::backdrop {
    background: rgba(255,255,255, .9);
}
dialog#quick-search fieldset {
    display: flex;
    flex-direction: row;
    border-bottom: 1px solid #1F367E
}
dialog#quick-search fieldset .formItem { flex: 1}
dialog#quick-search fieldset .formItem input {
    font-size: 70px; text-transform: uppercase;
    border: 0;padding: 10px 0;color: #1F367E
    
}
dialog#quick-search button {
    background: transparent;
    border: 0;font-size: 19px;
    cursor: pointer;
    color: #1F367E;
    	font-family: 'Rufina';
}
dialog#quick-search button::before {
    content:"/"; margin-right: 5px
}
dialog#quick-search ::-webkit-input-placeholder { color:#CDCDCD; opacity:1}
dialog#quick-search :focus::-webkit-input-placeholder {opacity: .5}

dialog#quick-search ::-moz-placeholder { color: #CDCDCD; opacity: 1}
dialog#quick-search :focus::-moz-input-placeholder {opacity: .5}

dialog#quick-search :-moz-placeholder { color: #CDCDCD; opacity: 1}
dialog#quick-search :focus:-moz-input-placeholder {opacity: .5}
.search-results article + article { margin-top: 50px;}
.search-results #mainContent article p{ font-size: 16px}
.search-results #mainContent article h2 { margin-bottom: 10px}

/* -- Custom Domainübersicht -- */

article.domain { margin-bottom: 30px;}
.domain-content article p { text-align: center}
.domain-content article p.larger {  color: #1F367E; font-size: 2rem}

.domain-content article p.large {color: #1F367E; font-size: 1.5rem; text-align: left; margin-top: -40px; margin-bottom: 40px;}
.domain-content fieldset { margin-top: 50px}
.domain-content fieldset input:not([type="submit"]),
.domain-content fieldset select,
.domain-content fieldset textarea { padding-left: 220px}
.domain-content fieldset .formCaptcha input { padding-left: 290px}

.domain-content .nav-links{
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.post-type-archive-domain {}
.post-type-archive-domain #mainContent h2 {font-size: 24px}
.post-type-archive-domain #mainContent h2 a{color: #666}
.post-type-archive-domain #mainContent h2 a:hover {}

.post-type-archive-domain article.domain { margin-bottom: 30px;}
.post-type-archive-domain #mainContent article.domain h2 { margin-bottom: 0}

.alphabet-pagination {}
.alphabet-pagination ul{
    display: flex;flex-direction: row; flex-wrap: wrap; margin-bottom: 30px;
    list-style: none; padding-left: 0; gap: 2px
}
.alphabet-pagination ul li {}
.alphabet-pagination ul li a { display: block; padding: 5px 10px; background: #f1f1f1}

fieldset.domain-search { margin-bottom: 30px; }
fieldset.domain-search .suggest-wrap {position: relative; z-index: 10}
fieldset.domain-search .suggest-wrap #suggestions,
fieldset.domain-search .suggest-wrap #suggestions_cat{
    position: absolute;
    left: 0; top: 0; width: 100%; 
    background: #fff;padding: 20px;
    border: 1px solid #f1f1f1;
    border-bottom: 2px solid #1f347e;
    box-sizing: border-box;
    display: none
}
fieldset.domain-search .suggest-wrap #suggestions a,
fieldset.domain-search .suggest-wrap #suggestions_cat a{color: #999; display: block; padding: 10px 0}

fieldset.domain-search .suggest-wrap #suggestions a strong,
fieldset.domain-search .suggest-wrap #suggestions_cat a strong{color: #1f347e}

.taxonomy-content {}
.taxonomy-content .pagination-wrapper {
    display: flex;
    flex-direction: row;
    justify-content: space-between;
}

.domain-categorys { margin-bottom: 30px}
.domain-categorys strong{ display: block; margin-bottom: 15px}
.domain-categorys ul {display: flex; flex-direction: row; flex-wrap: wrap; padding-left: 0; gap: 15px; list-style: none;}
.domain-categorys ul li{}
/* -- Wiederverwendabr-- */
.fltrt {float: right;}
.fltlft {float: left;}
.clearfloat {clear:both;height:0;font-size: 1px;line-height: 0px;}
.clearfix:after {content: ".";display: block;clear: both;visibility: hidden;line-height: 0;	height: 0;}