/*
Version: 1.0
Author: theysen.de - Komm.-Designer Jens Theysen
Author URI: http://www.theysen.de
*/

/* Page 
------------------------------------------------------------------------- */
html {
    overflow-y: scroll;
}
html, body {
	height: 100%;
}
div {
	text-align: left;
}
body {
	text-align: center;
	font-family: Arial, Helvetica, sans-serif;
	background: #F5F5F5;
	overflow: -moz-scrollbars-vertical;
}
#pageouter {
	min-height: 100%;
	height: auto !important;
	height: 100%;
	margin: 0 auto -40px auto;
	background: #FFF;
}
#pageinner {
	
}
#header {
	height: 9em;
	background: transparent url(../images/logo.png) center center no-repeat;
	background: transparent url(../images/logo.svg) center center no-repeat;
}
#footerouter a {
    float:left;
    z-index: 9999;
    display: block;
    padding: .5em .5em;
    color: #FFF;
    text-align: center;
    font-size: .9em;
    text-shadow: 1px 1px 0px rgba(0,0,0,.1);
}
#logo {
	margin: .75em 0 1em 0;
	background: transparent url(../images/logo-ls-300x34.png) top right no-repeat;
	background: transparent url(../images/logo-ls-300x34.svg) top right no-repeat;
	background-size: contain;
}
#logo a {
	display: block;
	height: 2.125em;
}

/*
#heroimage {
	margin: 0 auto 1.875em;
	width: 100%;
	height: 250px;
}
#heroimage div {
	height: 100%;
	border-radius: 10px;
	background-color: #EEE;
	background-position: center;
	background-repeat: no-repeat;
}
*/
#hi-outer {
	margin-bottom: 1.875em;
}
#heroimage {
	/*margin: 0 auto 1.875em;*/
	width: 100%;
	position: relative;
	height: 0;
	overflow: hidden;
	padding-bottom: 21.929%;
}
#heroimage div {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	max-width: 1140px;
	max-height: 250px;
	border-radius: 10px;
	background-color: #EEE;
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
}



#heroimage .kanzlei {
	background-image: url(../images/h-stapel.jpg);
}
#heroimage .betriebswirtschaftliche-beratung,
#heroimage .wirtschaftspruefung,
#heroimage .steuerberatung,
#heroimage .finanzbuchhaltung,
#heroimage .lohnabrechnungen,
#heroimage .unternehmensnachfolge {
	background-image: url(../images/h-messen.jpg);
}
#heroimage .aktuelles {
	background-image: url(../images/h-schach3.jpg);
}
#heroimage .mandanten {
	background-image: url(../images/h-ordner.jpg);
}
#heroimage .suchergebnis,
#heroimage .startseite {
	background-image: url(../images/h-schach.jpg);
}
#heroimage .kontakt,
#heroimage .impressum,
#heroimage .datenschutz {
	background-image: url(../images/h-kompass.jpg);
}
#middle {
	clear: both;
	padding: 25px 0 30px 0;
}
#foot, #footer {
	height: 40px;
}
#footerouter {
	height: 40px;
	background: #FBB900;
}
#footerinner {
	padding: 0;
	font-size: .75em;
	text-align: center;
	vertical-align: middle;
	color: #FBB900;
}
.metanav {
    width: 220px;
    margin: 0 auto;
}
.hpgp {
	position: relative;
	float: right;
	margin: -242px 1em 0 0;
	/*width: 357px;
	height: 280px;*/
	overflow: hidden;
}

/* MAIN NAVIGATION 
------------------------------------------------------------------------- */
#back2hp,
#jump,
#back {
	display: none;
}

@media screen and (min-width:63em) {
	#centercontent .col_4:nth-child(4n) {
		clear: both;
	}
	#centercontent.steuerberatung .col_4,
	#centercontent.finanzbuchhaltung .col_4,
	#centercontent.lohnabrechnungen .col_4 {
		clear: none;
	}
}

@media screen and (min-width:48em) {
	
	#navigation {
		margin: .75em 0;
		height: 2.1em;
		border-top: 1px solid #FFF;
	}
	#navigation ul {
		list-style-type: none;
	}
	#navigation li {
		margin: 0 1em 0 0;
		float: left;
		text-align: center;
	}
	#navigation a:hover, #navigation a:focus {
		border-bottom: 5px solid #FBB900;
	}
	#navigation a.aktiv {
		border-bottom: 5px solid #FBB900;
	}
	#navigation a {
		padding-bottom: 5px;
		color: #333;
		text-decoration: none;
		text-align: center;
		font-size: 1em;
	}
	
	#subnavigation {
		clear: both;
		border-top: 1px solid #FFF;
	}
	#subnavigation ul {
		list-style-type: none;
	}
	#subnavigation li {
		margin: 0 .75em .2em 0;
		float: left;
		text-align: center;
	}
	#subnavigation a:hover, #navigation a:focus {
		color: #FBB900;
	}
	#subnavigation a.aktiv {
		color: #FBB900;
	}
	#subnavigation a {
		color: #BBB;
		text-decoration: none;
		text-align: center;
		font-size: .9em;
	}
	
}

/* CI 
------------------------------------------------------------------------- */
#ci-top {
	height: 25px;
	background: #EEE;
}
#ci-bottom {
	height: 40px;
}

/* SCHRIFT 
------------------------------------------------------------------------- */
h1 {
	margin: 0 0 1em 0;
	font-size: 1.3125em;
	line-height: 1em;
	font-weight: normal;
	color: #666;
}
h1 a, h1 a:active, h1 a:visited {
	text-decoration: none;
	color: #666;
}
h1 a:hover, h1 a:focus {
	text-decoration: none;
	color: #FBB900;
}
h2 {
	margin: 1em 0 .75em 0;
	font-size: .9375em;
	font-weight: bold;
	color: #666;
}
h3 {
	margin: 0;
	font-size: 0.75em;
	font-weight: bold;
	font-style: normal;
	color: #333;
}
h4 {
	
}
h5 {
	font-size: 1em;
	color: #FBB900;
}

p {
	margin: 0 0 1em 0;
	line-height: 1.2em;
}

a {
	color: #FBB900;
}

.intro {
	font-size: .875em;
	color: #666;
	font-style: italic;
	font-weight: normal;
}
.content {
	font-size: .875em;
	color: #666;
	font-style: normal;
	font-weight: normal;
}
ul#bullets, ul.bullets {
	padding: .875em .875em 1.25em .75em;
	background: #EEE;
	border-radius: 10px;
}
ul#bullets li, ul.bullets li {
	font-size: .75em;
	padding: 0 0 .2em 0;
}

.hpbox {
	padding: 0 0 1.5em 0;
}
.hpbox h1 span {
	display: block;
	float: left;
	margin: 0 .25em 1em 0;
	width: .75em;
	height: .75em;
	background: #FBB900;
}
.hpbox .introbullets-hp {
	padding: .875em .875em 1.25em .75em;
	background: #EEE;
	border-radius: 10px;
}
.hpbox .introbullets-hp ul {
	margin: 0;
}
.hpbox .introbullets-hp ul li {
	padding: 0 0 .2em 0;
	font-size: .75em;
	color: #333;
}
div.introbullets {
	padding: 0 0 0 .1em;
	font-size: 1em;
	color: #666;
	border-left: 10px solid #FBB900;
}
#leistungen-navi {
	float: left;
	padding: 0 0 0 .1em;
	font-size: 1em;
	color: #666;
	border-left: 10px solid #FBB900;
}
#leistungen-navi ul {
	margin: 0;
	list-style-type: none;
}
#leistungen-navi ul li {
	margin: 0 0 .25em .5em;
	color: #666;
	font-weight: bold;
}
#leistungen-navi ul li a, #leistungen-navi ul li a:active, #leistungen-navi ul li a:visited {
	text-decoration: none;
	color: #666;
}
#leistungen-navi ul li a:hover, #leistungen-navi ul li a:focus {
	text-decoration: none;
	color: #FBB900;
}

.downloads {
	margin: 0 0 1.5em 0;
}
.downloads table {
	
}
.downloads table.fd-table {
	margin: 0;
	font-size: .75em;
}
.downloads table.fd-table a {
	color: #FBB900;
}
.downloads h3 {
	color: #FBB900;
}
.downloads table tr.fd-file {
	
}
.downloads table tr.fd-file td {
	padding: .25em;
}
.downloads table tr.fd-file td img {
	margin: 0;
	padding: 0;
}

/* D-RSS
------------------------------------------------------------------------- */
.datev-mitglied {
	
}
.datev-mitglied img {
	float: left;
	margin: 0 1em 1em 0;
}
.datev-mitglied p {
	font-size: .75em;
	color: #333;
}
.d-rss {
	
}
.d-rss .datum {
	font-size: .75em;
	color: #FBB900;
}
.d-rss h3.titel {
	font-size: .75em;
}
.d-rss p.text {
	padding: 0 0 1em 0;
	font-size: .75em;
	line-height: 1.25em;
}
.d-rss p.text a {
	color: #FBB900;
	text-decoration: underline;
}
.yt-video, .d-iframe {
	position: relative;
	height: 0;
	overflow: hidden;
}
.yt-video {
	padding-bottom: 56.25%;
}
.d-iframe {
	padding-bottom: 65%;	/*40.82%;*/
}
.yt-video iframe,
.yt-video object,
.yt-video embed,
.d-iframe iframe,
.d-iframe object,
.d-iframe embed {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
#newsletter {
	position: relative;
	padding-bottom: 90%;
}
#newsletter iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* AKTUELLES MMK
------------------------------------------------------------------------- */
div#newsbymmk {
	padding: 0 1em 1em 1em;
	background: #EEE;
	border-radius: 10px;
}
div#newsbymmk h1 {
	margin: 0 0 .5em 0;
	padding: .2em;
	font-size: 1em;
	font-weight: bold;
	color: #333;
	text-transform: uppercase;
}
div#newsbymmk h4 {
	margin: 0 0 .5em 0;
	padding: .2em;
	font-size: 1em;
	font-weight: bold;
	color: #444;
}
div#newsbymmk p {
	padding: .2em;
	font-size: .8em;
	color: #444;
}
div#newsbymmk div.moses_index_item {
	margin: 0 0 .5em 0;
	padding: 0 0 0 .25em;
	font-size: 0.8em;
	border-left: 1em solid #FBB900;
}
div#newsbymmk div.moses_index_item a {
	color: #555;
	font-weight: bold;
}
div#newsbymmk div.moses_index_desc {
	padding: 0 0 1.5em 0;
	font-size: .75em;
}
div#newsbymmk div.p {
	font-size: .8em;
	line-height: 1.1em;
	color: #666;
}
div#newsbymmk div.p a {
	color: #FBB900;
}
div#newsbymmk div.p a:hover, div.p a:focus {
	color: #FBB900;
}
div#newsbymmk div.moses_event-date {
	
}
div#newsbymmk div.moses_event-title {
	
}
div#newsbymmk div.moses_event-title strong {
	
}
div#newsbymmk div.moses_event-details {
	
}
div#newsbymmk div.pageNavNext,
div#newsbymmk div.pageNavPrev,
div#newsbymmk div.pageBack {
	font-size: .75em;
}
div#newsbymmk div.pageNavNext a,
div#newsbymmk div.pageNavPrev a,
div#newsbymmk div.pageBack a {
	color: #333;
	text-transform: uppercase;
	text-decoration: underline;
}
div#newsbymmk div.pageNavNext a:hover,
div#newsbymmk div.pageNavPrev a:hover,
div#newsbymmk div.pageBack a:hover {
	color: #FBB900;
}

/* VOLLTEXTSUCHE
------------------------------------------------------------------------- */
#volltextsuche {
	
}
#ajaxSearch_form {
	position: relative;
}
#ajaxSearch_input {
	position: relative;
	float: right;
	padding: .6em .3em;
	width: 50%;
	color: #999;
	font-size: .75em;
	border: 1px solid #CCC;
	border-radius: 10px;
	background: #F5F5F5;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#ajaxSearch_input:focus {
	color: #444;
	border: 1px solid #FBB900;
	background: #FFF;
}
#ajaxSearch_submit {
	position: absolute;
	top: 10%;
	right: 2%;
}

p.ajaxSearch_resultsInfos, div.AS_ajax_resultsIntroFailure {
	font-size: .75em;
	color: #333;
}
span.ajaxSearch_highlight, span.ajaxSearch_highlight {
	color: #000;
	border-bottom: 2px solid #FBB900;
}
span.ajaxSearch_grpResultsDisplayed {
	font-size: .75em;
	color: #333;
}
div.paging1 {
	margin: 0 0 1em 0;
	padding: .2em 0;
	font-size: .6em;
	color: #777;
	text-align: center;
}
span.paging1Infos {
	
}
div.ajaxSearch_result {
	margin: 0 0 .5em 0;
	padding: 1em;
	font-size: .75em;
	background: #EEE;
	border-radius: 10px;
}
a.ajaxSearch_resultLink {
	font-size: 1em;
	font-weight: bold;
	font-style: italic;
	color: #333;
}
a.ajaxSearch_resultLink:hover, a.ajaxSearch_resultLink:focus {
	color: #FBB900;
}
div.ajaxSearch_result p {
	padding: .25em 0 0 0;
}

/* DL
------------------------------------------------------------------------- */
dl {
	margin: 0 0 .5em 0;
	padding: 0;
	font-size: 1em;
}
dt {
	display: block;
	float: left;
	width: 30%;
	white-space: nowrap;
	font-weight: bold;
	color: #666;
}
dd {
	padding: 0 0 .4em 0;
	white-space: nowrap;
	color: #333;
}

.info-buerozeiten, .info-telefonnummer, .hp-absender {
	font-size: .75em;
	color: #666;
}
.info-buerozeiten img, .info-telefonnummer img, .hp-absender img {
	float: left;
	margin: 0 1em 1em 0;
}
.info-telefonnummer p {
	margin: 0 0 .25em 0;
	padding: 0;
	white-space: nowrap;
	font-size: 2em;
	font-weight: bold;
	color: #FBB900;
}
.hp-absender h2 {
	margin: 0;
	font-size: 1em;
}

/* FORMULARE
------------------------------------------------------------------------- */
#kf div {
	padding: 0 0 2px 0;
}
#kf p, #newsletter p {
	padding: 0 10px 10px 0;
	font-size: .75em;
}
#kf label, #newsletter label {
	display: block;
	margin: .5em 0 .2em 0;
	font-size: .75em;
	font-weight: bold;
	color: #FBB900;
}
#kf div.errors {
	margin: 0 0 1em 0;
	font-size: 1em;
}
#kf div.errors strong {
	color: #F00;
}
#kf label.required, #kf label.error, #kf span.asterisk {
	color: #F00;
}
#kf input, #newsletter input,
#kf select, #newsletter select,
#kf textarea {
	padding: .3em;
	width: 95%;
	color: #333;
	font-size: 1em;
	border: 1px solid #CCC;
	border-radius: 10px;
	background: #F5F5F5;
	-moz-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
}
#kf select, #newsletter select {
	width: 98%;
}
#kf input[type="text"]:focus, #newsletter input[type="text"]:focus,
#kf input[type="date"]:focus,
#kf select:focus, #newsletter select:focus,
#kf textarea:focus {
	border: 1px solid #FBB900;
	background: #FFF;
}
#kf input.error, #kf select.error, #kf textarea.error {
	border-color: #F00;
}
#kf option, #newsletter option {
	background: #FFF;
}
.radios, .checkboxs {
	float: left;
	color: #333;
}
.radios label, .checkboxs label {
	display: inline;
	float: none;
	width: auto;
	font-weight: normal;
	color: #333;
}
#kf input[type="submit"], #newsletter input[type="submit"] {
	padding: .3em;
	width: 98%;
	color: #FFF;
	font-weight: bold;
	background: #FBB900;
}
input[type="radio"] { vertical-align: text-bottom; }
input[type="checkbox"] { margin:0;padding:0;vertical-align: bottom; *vertical-align: baseline; }
.ie6 input { vertical-align: text-bottom; }

@media screen and (max-width:63em) and (min-width:48em) {
	
	#navigation li {
		margin: 0 0 1em 0;
		width: 37%;
		float: left;
		text-align: left;
	}
	#navigation a:hover, #navigation a:focus {
		
	}
	#navigation a.aktiv {
		
	}
	#navigation a {
		padding-bottom: 0;
		color: #333;
		text-decoration: none;
		text-align: left;
		font-size: 1.3em;
		border-bottom: 0;
	}
	
	#subnavigation {
		display: none;
	}
	
	#centercontent .last {
		margin-right: 3.8% !important;
	}
	#centercontent .col_3, #centercontent .col_4, #centercontent .col_5 {
		width: 48.1%;
	}
	#centercontent .col_8 {
		clear: both;
		width: 100%;
		float: left;
	}
	#centercontent .col_4:nth-child(2n+2) {
		margin-right: 0 !important;
	}
	#centercontent .col_4:nth-child(2n+1) {
		clear: both;
		margin-right: 3.8%;
	}
	#centercontent .col_5 {
		margin-right: 0 !important;
	}
	
	.hpgp {
		display: none;
	}
	
	
}

@media screen and (max-width:48em) {

	#pageouter {
		width: 100%;
	}
	#pageinner {
		padding: 0;
	}
	#header {
		height: 53px;
		border-bottom: 1px solid #CCC;
		background-image: none;
		background-color: #FFF;
		overflow: visible;
	}
	#hi-outer {
		margin-bottom: .5em;
	}
	#hi-outer .col_12 {
		margin: 0;
		padding: 0;
	}
	#heroimage div {
		height: 100%;
		border-radius: 0px;
		background-color: #EEE;
		background-size: cover;
	}
	#middle {
		padding: 1.5625em .5em 1.875em;
	}
	#footerouter {
		width: 100%;
	}
	
	h2 {
		padding: .25em;
		text-align: center;
		background: #EEE;
		border-radius: 10px;
	}
	.hpbox h2 {
		text-align: left;
		background: transparent;
	}
	
	
	#navigation ul {
		list-style: none;
	}
	#navigation {
		/*margin: 0 -1em; PROBLEM TODO*/
	}
	#navigation ul {
		margin-bottom: 0;
	}
	#navigation a {
		display: block;
		border-bottom: 1px solid;
		padding: .5em 1em;
	}
	#navigation li.empty {
		display: none;
	}
	
	/*	COLOR */
	#main-navigation {
		margin: 0;
		/*background: #FFF;*/
		box-shadow: 0px 0px 1em rgba(0, 0, 0, 0.45);
	}
	#main-navigation li {
		margin: 0;
	}
	#main-navigation a {
		color: #EEE;
		font-weight: bold;
		text-transform: uppercase;
		text-decoration: none;
		border-color: #EEE;
		background: #FBB900 url(../images/arrow.png) 97% 50% no-repeat;
	}
	#main-navigation a:hover, #main-navigation a:focus {
		color: #FFF;
		background-color: #FCC900;
	}
	
	body:not(:target) #main-navigation {
		outline: 0;
		margin: 0;
		padding-top: 54px;
		position: absolute;
		top: 0;
		right: 0;
		left: 0;
		z-index: 1000;
	}

	body:not(:target) #main-navigation a {
		border-bottom-width: 0;
		overflow: hidden;
		height: 0;
		line-height: 0;
		padding: 0 1em;
	}
	body:not(:target) #main-navigation li ul li a {
		text-transform: none;
		padding: 0 1em 0 2em;
	}
	
	body:not(:target) #main-navigation:target {
		/* unless it&rsquo;s showing */
		z-index: 1001;
	}
	body:not(:target) #main-navigation:target a {
		/* make nav links sit up a level */
		position: relative;
		z-index: 1;
		border-bottom-width: 1px;
		line-height: 3em;
		height: 3em;
         -moz-transition: height .25s, line-height .25s;
          -ms-transition: height .25s, line-height .25s;
           -o-transition: height .25s, line-height .25s;
      -webkit-transition: height .25s, line-height .25s;
              transition: height .25s, line-height .25s;
	}

	#jump {
		background: #FFF url(../images/ico-navi.png) 50% 50% no-repeat;
		border: 1px solid #CCC;
		border-width: 0 0 1px 1px;
		cursor: pointer;
		display: block;
		padding: 0;
		height: 53px;
		width: 53px;
		text-indent: -999em;
		position: absolute;
		right: 0;
		top: 0;
		z-index:1001;
	}
	#jump:active, #jump:hover, #jump:focus {
		background: #FFF url(../images/ico-navi-active.png) 50% 50% no-repeat;
	}
	
	body:not(:target) #main-navigation:target #back {
		/* establish a positioning context for the closer */
		position: relative;
		display: block;
	}
	body:not(:target) #main-navigation:target #back a {
		display: block;
		height: auto;
		position:: absolute;
		/* turn the link into a ghost */
		background: transparent;
		border: 0;
		text-indent: -999em;
		/* make it fill the screen */
		position: absolute;
		top: -101em;
		bottom: -10em;
		left: 0;
		right: 0;
		/* ensure it sits behind the other links */
		z-index: 0;
	}
	
	#back2hp {
		display: block;
	}
	#ci-top, #subnavigation, #volltextsuche {
		display: none;
	}
	#header {
		position: relative;
	}
	#logo {
		position: absolute;
		right: 4em;
		width: 16em;
		height: 3em;
		margin: .5em 0 0 0;
	}

	input, select, textarea {
		width: 100%;
	}
	
	dt {
		float: none;
	}
	
	.hpgp {
		display: none;
	}
	
}

.clearfix:after {
    content: "."; 
    display: block; 
    height: 0; 
    clear: both; 
    visibility: hidden;
}

.clearfix {display: inline-block;}

/* Hides from IE-mac \*/
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */
