/* Theme Name: Andrea Gierich Webdesign
Theme Name:     Andrea Gierich 2017
Theme URI:      https://andrea-gierich.de/
Description:    Das Andrea Gierich Theme von 2017
Author:         purpix GmbH
Author URI:     http://www.purpix.de/
Version:        1.0
*/

@import url('https://fonts.googleapis.com/css?family=Caveat:400,700');
@import url('https://fonts.googleapis.com/css?family=Open+Sans:400,700');

body {
	font-family: 'Open Sans', sans-serif;
	font-size: 14px;
	font-weight: 400;
	color: #442a19;
	margin: 0 auto;
	padding: 0;
	background: #fff;
	-moz-osx-font-smoothing: grayscale;
    -webkit-font-smoothing: grayscale;
    font-smoothing: grayscale;
    -webkit-font-smoothing: antialiased;  
	-ms-hyphens: auto;
	-moz-hyphens: auto;
	hyphens: auto;   
	max-width: 1380px;
	margin: auto auto;
}

* {
	box-sizing: border-box;
}

main{
	background: 	#fffbf7;
	margin-bottom: 7px;
}


h1, .h1{
	font-size: 35px;
	font-family: 'Caveat', cursive;
	color: #442a19;
	font-weight: bold;
}

h2{
	font-size: 22px;
}

h3{
	font-size: 20px;
}

h1, h1 a, h2 a, h2, h3, h3 a{
	margin: 0 auto;
	line-height: 1.2em;
	margin-bottom: 20px;
}

pre{
	font-family: 'Caveat', cursive;
	font-weight: 700;
}

.clear{
	clear: both;
}

a{
	text-decoration: none;
	color: #c8af8a;
}

p{
	margin-top: 0;
}

.dark-brown{background-color: #442a19;}
.dark-brown *, .bright-brown * {color: #fff;}

.bright-brown{
	background-color: #c8b08a;
	margin-bottom: 7px;
}

img {
	image-rendering: -webkit-optimize-contrast;
	height: auto;
}

/* Composer max-width */
.entry > .vc_row{
	margin: auto auto;
	max-width: 1280px;
}

section.vc_section:is([data-vc-full-width],.vc-fw){
	max-width: 1280px;
	margin: 0 auto;
	width: 100% !important;
	left: auto !important;
}

.vc_section:is([data-vc-full-width],.vc-fw)>div.vc_row, .single-post section > .vc_row{
	max-width: 1280px;
	width: 100% !important;
	margin: 0 auto;
	left: auto !important;
	overflow: visible;
}

section > .vc_row.full-width{
	max-width: 100%;
}

.vc_row.vc_column-gap-25.sidebar-right > div.vc_column_container {
    padding: 0 25px;
}

.vc_row.vc_column-gap-25 > div.vc_column_container {
    padding: 25px;
}

.single-post .vc_row.vc_column-gap-25 > div.vc_column_container{
	padding-bottom: ;
	margin-bottom: -0px;
	box-sizing: border-box;
}

main .vc_section:is([data-vc-full-width],.vc-fw)>div.vc_row, .footer .vc_section:is([data-vc-full-width],.vc-fw)>div.vc_row{
	margin: 25px auto;
}

div.vc_row[class*="vc_column-gap"]{
	margin: 0 auto;
}


/* ### Header ### */
header pre{
	color: #c8af8a;
	font-weight: 400;
}

header p{
	margin: 0 auto;
}

header a{
	color: #c8af8a;
	text-align: left;
	font-size: 17px;
	font-weight: 700;	
}

.fa, .fa::before, .widgettitle::before {
    font: normal normal normal 14px/1 FontAwesome;
    text-rendering: auto;
    -moz-osx-font-smoothing: grayscale;
}

header a i.fa::before{
	color: #442a19;
	font-size: 24px;
	margin-right: 10px;
    font-weight: 400;
	position: relative;
    top: 2px;
}

.fa-envelope::before {
    content: "\f0e0";
}

.fa-phone-square::before {
    content: "\f098";
}

header a i.fa-phone-square::before{
	content: "\f098";
	font-size: 28px;
}

.icon-leistungen .wpb_single_image {
    height: 88px;
    position: relative;
    margin-bottom: 0;
}

.icon-leistungen .wpb_single_image img {
    position: absolute;
    bottom: 0;
    margin: 0 auto;
    left: 0;
    right: 0;
    height: auto;
    width: inherit;
    max-height: 80%;
}

.icon-leistungen .wpb_single_image + .wpb_text_column, header .icon-leistungen + div .wpb_single_image{
	margin-bottom: 30px;
}

div.wpb_content_element:last-child{
	margin-bottom: 0;
}

header .wpb_single_image.vc_align_left{
	text-align: center;
}

div.wpb_single_image.vc_align_left{
	text-align: center;
}

.wpb_single_image img[alt*="Logo"]{
	max-width: 200px;
	width: 100%;
}

/* ### Navi ### */
#mainnavi .wpb_column{
	padding: 0px; 
}

#mainnavi .widgettitle {
    text-align: left;
    padding: 0 25px;
    font-size: 17px;
    font-weight: 700;
    color: #fff;
	background: #c8af8a;
    line-height: 42px;
}

#mainnavi .widgettitle + .menu-hauptmenue-container{
	display: none;
}

#mainnavi .widgettitle::before {
    content: "\f0c9";
    font-family: FontAwesome;
    margin-right: 12px;
    font-size: 25px;
    position: relative;
    top: 2px;
}

#mainnavi ul{
	padding: 0;	
    margin: 3px auto 0;
}

#mainnavi ul li{
	list-style: none;
	margin-bottom: 3px;
	background: #c8af8a;
}

#mainnavi ul li a {
    color: #fff;
    text-align: left;
    padding: 12px 0px 12px 59px;
    font-weight: 400;
    position: relative;
    display: block;
}

#mainnavi ul li.current_page_item > a, #mainnavi ul li.current-menu-ancestor > a{
	font-weight: 700;
}

#mainnavi ul li.current-menu-parent > .sub-menu{
	display: block;
}

#mainnavi ul li.menu-item-has-children > a::before {
    content: "";
    border: 9px solid #fff;
    border-right-color: transparent;
    border-bottom-color: transparent;
    border-left-color: transparent;
    position: absolute;
    top: 19px;
    left: 27px;
}

#mainnavi ul li .sub-menu {
    display: none;
    background: #c8af8a;
    padding-bottom: 18px;
}

#mainnavi ul li .sub-menu a{
	background: #b29467;
	padding-left: 47px;
}

#mainnavi ul li .sub-menu li{
	margin-bottom: 3px;
	padding: 0 12.5px;
}

#mainnavi .vc_wp_custommenu{margin-bottom: 0;}

/* ### Slider ### */
header .metaslider{
	display: none;
}

header .wpb_text_column.wpb_content_element {
	margin-bottom: 0;
}

header .metaslider .flexslider{
	margin-bottom: 7px;
}

header .slides .caption-wrap{
	display: none;
}

header .slides .caption-wrap {
    background: none;
    opacity: 1;
    transform: translateY(50%);
    bottom: 50%;
}

header .slides .caption-wrap .caption{
	max-width: 1280px;
	margin: 0 auto;
	padding: 0 25px;
    box-sizing: border-box;
}

header .slides .caption div, header .slides .caption p, header .slides .caption a {
    display: inline-block;
    float: left;
    clear: both;
    margin-bottom: 5px;
    padding: 10px;
}

header .slides .caption div, header .slides .caption a{
	background: #442a19;
	color: #fff;
}

header .slides .caption div{text-transform: uppercase;}

header .slides .caption p{
	background-color: #fffbf7;
	color: #442a19;
}

header .slides .caption a{
	font-family: 'Caveat', cursive;
	text-decoration: none;
}

header .flex-control-nav.flex-control-paging {
    bottom: 14px;
    z-index: 100;
    max-width: 1280px;
    margin: 0 auto;
    left: 0;
    right: 0;
    padding: 0 25px;
    box-sizing: border-box;
}

header .flex-control-nav.flex-control-paging li{
	float: left;
}

.flex-control-nav.flex-control-paging li a {
    border-radius: 0;
    width: 39px;
    height: 5px;
    background: #fff;
    box-shadow: none;
    padding: 0;
    margin: 0 5px 0 0;
}

.flex-control-nav.flex-control-paging li a.flex-active{
	background: #442a19;
}

.menu-note{
	margin-bottom: -18px;
}

.menu-note ul{
	padding: 0;
	margin: 0 auto;
}

.menu-note li {
    list-style: none;
    background: #442a19;
    padding: 10px 20px;
    margin-bottom: 2px;
    color: #fff;
    text-transform: uppercase;
    font-size: 18px;
    font-weight: 700;
}

/* ### Content ### */
.content .ngg-slideshow img{
	width: 100% !important;
}

.content .ngg-slideshow{
	max-width: 100% !important;
	max-height: inherit !important;
}

div.flexslider{
	margin-bottom: 0;
}

.wpb_gallery .wpb_flexslider .flex-direction-nav li a{
	display: none;
}

.flex-direction-nav li a::before{
	display: none;
}

.vc_grid-item .vc_gitem-zone{
	background-color: rgba(200,175,138,0.5) !important;
	border-radius: 5px;
}

.vc_grid-item .vc_gitem-zone:hover{
	background-color: rgba(200,175,138,0.8) !important;
}

.vc_grid-item .vc_gitem-zone p{
	font-size: 14px;
}

#content .vc_grid .vc_gitem-link.vc_btn3{
	background-color: #442a19;
	opacity: 0.8;
}

#content .vc_grid .vc_gitem-link.vc_btn3:hover{
	opacity: 1;
}

.vc_gitem-animated-block .vc_gitem-zone-a{
	height: 0;
}

/* Kategorie externe Semniare ausgebucht */
.yes-seminar + .no-booking{
	display: none !important;
}

.no-booking{
	display: none;
}

.no-booking.block{
	display: block;
}

.postmetadata{
	float: left;
	margin-bottom: 0;
}


/* Single Post */
.single-post .contact-form .vc_row.vc_column-gap-25 > .vc_column_container{
	padding-top: 0;
	margin-bottom: 0px;
}

.single-extern-full .wpcf7{
	display: none;
}

.single-extern ul{
	padding: 0;
}

.single-extern li{
	list-style: none;
}

/* tag.php */
.tags .masonry {
    margin: 1.5em 0;
    padding: 0;
    -moz-column-gap: 1.5em;
    -webkit-column-gap: 1.5em;
    column-gap: 1.5em;
}

.tags .item {
    display: inline-block;
    margin: 0 0 1.5em;
    width: 100%;
    box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-shadow: 2px 2px 4px 0 #ccc;
	background-color: rgba(200,175,138,0.5) !important;
	border-radius: 5px;    
}
.tags .item > div{
	padding: 15px;
}

.tagcloud a[aria-label*="Ausgebucht"]{
	display: none;
}

/*
.tags .item.none{
	display: none;
}
*/

.more-link{
	background-color: #442a19;	
	display:inline-block;
	max-width: 100%;
	border-radius: 5px;
}

.more-link a:hover{
	opacity: 1;
}

.more-link a{
	display: inline-block;
	margin-bottom: 0;
	text-align: center;
	vertical-align: middle;
	cursor: pointer;
	-webkit-transition: all .2s ease-in-out;
	transition: all .2s ease-in-out;
	padding: 15px;
	opacity: 0.8;
}

/* sidebar-right */
#content .sidebar-right .slides img{
	border: 4px solid #fff;
	position: relative;
	border-radius: 4px;
	-o-box-shadow: 0 1px 4px rgba(0,0,0,.2);
	box-shadow: 0 1px 4px rgba(0,0,0,.2);
}

.sidebar-right .metaslider .caption-wrap {
    background: none;
    position: relative;
    font-family: 'Caveat', cursive;
    color: #442a19;
    opacity: 1;
    font-size: 17px;
    margin-top: 20px;
	font-size: 20px;    
}

.quotescollection-quote{
	font-family: 'Caveat', cursive;
}
.quotescollection-quote p{
    float: left;
    padding: 0;
    margin: 0;
}

.quotescollection-quote p + .attribution{
	text-align: left;
}

/* Widget Categories */
.widget .tagcloud{
    width: 100%;
    display: table;
    padding: 0;
    margin-top: 20px;
}

.widget .tagcloud a{
	float: left;
	background: #442a19;
	padding: 10px;
	list-style: none;
	color: #c8af8a;
	margin-right: 2px;
	margin-bottom: 2px;
	border-radius: 5px;
	font-size: 15px !important;
	opacity: 0.8;
    -webkit-transition: 0.2s linear 0.2s;
    transition: 0.2s linear 0.2s;	
}

.widget .tagcloud a:hover{
	opacity: 1;
}

/* Composer Tabs */
.vc_tta-panel{
	display: none;
}

.vc_tta-panel.vc_active{
	display: block;
}

ul.vc_tta-tabs-list{
	padding: 0;
	width: 100%;
	display: table;
	margin-bottom: 0;
}

.vc_tta-tabs-list li{
	list-style: none;
	float: left;
	padding: 10px;
	background: #442a19;
	margin-right: 1px;
	border-radius: 5px 5px 0px 0px;
}

.vc_tta-tabs-list li a{
	color: #fff;
	font-weight: 700;
}

.vc_tta-panels-container{
	border: 1px solid #442a19;
	border-radius: 0px 5px 5px 5px;
	padding: 10px;	
}

.vc_tta-panel-title{
	display: none;
}


.vc_tta-panel-title a{
	color: #442a19;
	font-size: 18px;
}

/* Kontaktform */
form.wpcf7-form {
    padding: 29px;
    border: 1px solid #c8b08a;
    margin-bottom: 15px;
    border-radius: 7px;
}

.wpcf7-form[action*="/kontakt/"]{
	border: none;
}

.wpcf7-form table{
	width: 100%;
}

.wpcf7-form td{
	width: 100%;
	float: left;
	min-height: 30px;
	display: table-cell;
	vertical-align: middle;
}

.wpcf7-form td > *{
	line-height: 30px;
}

.wpcf7-form input.wpcf7-captchar{
	max-width: 130px;
}

.wpcf7-form td span input{
	width: 100%;
	box-sizing: border-box;
}

.wpcf7-form input, .wpcf7-form td textarea{
	font-size: 15px;
	font-family: 'Open Sans', sans-serif;
	width: 100%;
}

.wpcf7-form input[class*="submit"]{
	max-width: 320px;
}

.wpcf7-form textarea{
	width: 100%;
}

.single-post .vc_column_container.none{
	display: none;
}

/* ### Footer ### */
.footer ul{
	padding: 0;
	margin-bottom: 0;
}

.footer li {
    list-style: none;
    line-height: 1.2em;
    margin-bottom: 10px;
    display: inline-block;
    width: 100%;
}

.footer .wpb_content_element{margin-bottom: 0;}

.footer .vc_row.vc_column-gap-25 > div.vc_column_container{
	padding-bottom: 0;
}

.footer .vc_row.vc_column-gap-25 > div.vc_column_container:last-child{
	padding-bottom: 25px;
}

.footer div.wpb_single_image.vc_align_left{
	text-align: left;
}

.footer a{
	float: left;
	clear: both;
line-height: 1.2em;	
}

.footer a +br{display: none;}

/* ============================ Allgemein ab 480px ============================ */
@media only screen and (min-width: 480px) {
/* ### Header ### */

header .icon-leistungen + .wpb_column .wpb_content_element{
	float: left;
	position: relative;
}

header .icon-leistungen + .wpb_column .wpb_single_image + .wpb_content_element .wpb_wrapper {
    bottom: -97px;
    right: -25px;
    position: relative;
}

/* tags.php */
.tags .masonry {
    -moz-column-count: 2;
    -webkit-column-count: 2;
    column-count: 2;
}

/* ### Footer ### */
.footer .vc_row.vc_column-gap-25 > div.vc_column_container{
	float: left;
	width: 50%;
	margin: 25px auto;
	padding-top: 0;
}

.footer .vc_row.vc_column-gap-25 > div.vc_column_container:nth-child(odd){
	clear: both;
}


.footer-end .vc_row.vc_column-gap-25 > div.vc_column_container:first-child{
	float: none;
}

.footer .footer-end .vc_row.vc_column-gap-25 > div.vc_column_container:nth-child(odd){
	clear: none;
}

.footer div.wpb_single_image.vc_align_left{
	text-align: center;
}

}

/* ============================ Allgemein ab 768px ============================ */
@media only screen and (min-width: 768px) {

body{
	font-size: 15px;
	line-height: 1.5em;
}

h1, .h1{
	font-size: 45px;
}

.content pre{
	font-size: 25px;
}

.vc_masonry_grid h4 {
-ms-hyphens: auto;
-moz-hyphens: auto;
  hyphens: auto;
}

/* ### Header ### */
header pre{
	font-size: 14px;
}

header .icon-leistungen .wpb_wrapper .vc_row {
	position: absolute;
    bottom: 0;
    width: 100%;
    display: flex;
}

header .icon-leistungen .wpb_wrapper .vc_row .vc_col-sm-2 {
    width: auto;
    padding: 0 10px 0 0;
    flex: 1;
}
header .icon-leistungen + .wpb_column .wpb_content_element.wpb_single_image{
	margin-bottom: 9px;
	float: right;
}

header .header-contact{
	display: none;	
}

/* navi */
#mainnavi{;
	margin-bottom: 7px;
}

/* Slider */
header .metaslider{
	display: block;
}

header .slides .caption-wrap{
	display: block;
}

header .metaslider .slides img{
	width: 200%;
	position: relative;
	left: -50%;
}

header .seminar-box{
	display: none;
}

/* tag.php */
.tags .masonry {
    -moz-column-count: 3;
    -webkit-column-count: 3;
    column-count: 3;
}


/* Kontaktform */
.single-post .vc_column_container.none{
	display: block;
}

	
}


/* ============================ Allgemein ab 1024px ============================ */
@media only screen and (min-width: 1024px) {

h3{
	font-size: 20px;
}

/* ### Header ### */
header pre {
    font-size: 18px;
}
/* Navi */
#mainnavi, #mainnavi > .vc_row{
	overflow: visible;
}


#mainnavi.vc_section:is([data-vc-full-width],.vc-fw)>div.vc_row , .vc_section:is([data-vc-full-width],.vc-fw)>div.vc_row.full-width{
	max-width: 100%;
}

#mainnavi .widgettitle{
	display: none;
}

#mainnavi .widgettitle + .menu-hauptmenue-container {
    display: block !important;
    line-height: 44px;
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 25px;
    box-sizing: border-box;
}

.menu-hauptmenue-container .sub-menu a{
	line-height: 1.5em;
}

#mainnavi .wpb_column{
	background: #c8af8a;
}

#mainnavi .menu {
    margin: 0 auto;
    width: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	position: relative;  
}

#mainnavi ul li{
	margin-bottom: 0;
	background: inherit;
	position: relative;
}

#mainnavi ul li:hover > a{
	text-decoration: underline;
}

#mainnavi ul li a, #mainnavi ul li.menu-item-has-children > a {
    color: #fff;
    font-size: 17px;
    padding: 0 10px;;
}

#mainnavi ul li:first-child a{
	padding-left: 0;
}

#mainnavi ul li:last-child a{
	padding-right: 0;
}

#mainnavi ul li.menu-item-has-children > a::before{display: none;}

#mainnavi ul li .sub-menu{
	display: none;
	position: absolute;
	z-index: 10;
	padding: 20px 0px 0px 0px;
	background: none;
	left: -5%;	
	top:28px;
}

#mainnavi ul li.menu-item-has-children:hover > .sub-menu, #mainnavi ul li.current-menu-parent:hover > .sub-menu{
	display: block !important;
}

.footer ul li.current-menu-item a{
	font-weight: 700;
}

#mainnavi ul li.current-menu-parent > .sub-menu{
	display: none;
}

#mainnavi ul li .sub-menu {
	max-width: 200px;
}

#mainnavi ul li .sub-menu li{
	padding: 0;
	min-width:200%;
	max-width: 250px;
	margin-bottom: 1px;
}

#mainnavi ul li .sub-menu a{
	padding: 10px 20px;
}

/* Slider */
header .metaslider .slides img{
	width: 100%;
	left: 0%;
}

header .slides .caption div{
	font-size: 30px;
	font-weight: 700;
}

header .slides .caption a{
	font-size: 20px;
}

/* Kontaktform */
.wpcf7-form {
	display: table;
	width: 100%;
}

.wpcf7-form td{
	width: 48%;
}

.wpcf7-form td + td{
	float: right;
}

.wpcf7-form div{
	float: left;
	width: 49.5%;
	margin-right: 1%;
}

.wpcf7-form div + div{
	margin-right: 0;
}

.wpcf7-form div.submit{
	margin-right: 0;
	width: 100%;
}


/* ### Fotter ### */
.footer .wpb_single_image.vc_align_left{
	text-align: left;
}

.footer .vc_row.vc_column-gap-25 > div.vc_column_container, .footer .vc_row.vc_column-gap-25 > div.vc_column_container:nth-child(odd){
	width: 25%;
	clear: none;
	float: left;	
}

.footer .vc_row.vc_column-gap-25 > div.vc_column_container.vc_col-sm-6{
	width: 50%;
}

.footer div.wpb_single_image.vc_align_left{
	text-align: left;
}

}


/* ============================ Allgemein ab 1280px ============================ */
@media only screen and (min-width: 1280px) {

body{
	font-size: 18px;
	font-size: 1.1rem;
}

.widget .tagcloud a{
	font-size: 18px !important;
}

}