/*
Theme Name:     Masonic Child
Description:    Child Theme zum Haupt Design für kleinere Style änderungen.
Author:         Nico Stephan
Template:       masonic

(optional values you can add: Theme URI, Author URI, Version, License, License URI, Tags, Text Domain)
*/

/* - Allgemeines - */
body, button, input, select, textarea {
	color: #404040;
}
.wrapper {
	width: 1280px;
	max-width: 100%;
}
.site-content {
	padding: 22px 0;
}
.primary > .hentry {
	-webkit-box-shadow: none;
	-moz-box-shadow: none;
	box-shadow: none;
	border: 0;
}
.clearboth {
	clear: both;
}
button {
	color: #FFF;
	background: #2e795e;
}
.button {
	color: #2e795e;
}
button:hover {
	color: #2e795e;
	background: #c1d5cd;
}
button:focus, input[type="button"]:focus, input[type="reset"]:focus, input[type="submit"]:focus, button:active, input[type="button"]:active, input[type="reset"]:active, input[type="submit"]:active {
	background: #2e795e;
	color: #FFF;
}
input[type="text"]:focus, input[type="email"]:focus, input[type="url"]:focus, input[type="password"]:focus, input[type="search"]:focus, textarea:focus {
	color: rgba(255,255,255,0.8);
}

h2 {
	margin-bottom: 0.25em;
}
p {
	color: #404040;
}

.main-header a, a {
	color: #404040;
}
.main-header a:hover, a:hover, a:focus, a:active, .button:hover {
  color: #2e795e;	
}
.underline {
	background: none repeat scroll 0 0 #2e795e;
}
.widget_recent_entries li::before, .widget_recent_comments li::before, .post-header .entry-author, .post-header .entry-standard, .post-header .entry-date, .post-header .entry-tag, .entry-author::before, .entry-date::before, .entry-standard::before {
	color: #2e795e;
}

/* - Header - */
.site-header, .navigation {
	background-color: white;
}
.navigation {
	float: left;
}
.main-header {
	float: none;
	margin: 0.5em auto 0 auto;
}
.site-branding {
	display: flex;
	display: -ms-flexbox;
	position: relative;
	justify-content: space-between;
}
.site-branding:before, .site-branding:after {
	display: none;
}
.logo-img-holder img {
	width: 65px;
	height: 84px;
	margin-right: 1em;
	line-height: 2.5em;
}
.site-branding #rundgang, .site-branding .site-title {
	top: 40%;
	transform: translate(0, -50%);
}
.site-branding #rundgang {
	position: absolute;
	display: none;
	right: 0;
	padding: 0;
	height: 40px;
	width: 285px;
	line-height: 2.5em;
}
.site-branding #rundgang label {
	width: 46px;
	display: block;
	float: left;
	background-color: #2e795e;
	height: 100%;
	margin: 0;
	border-right: 1px solid white;
	background-image: url(/wp-content/themes/masonic-child/img/weg_w.png);
}
.site-branding #rundgang label:hover, .site-branding #rundgang:hover label {
	background-color: #c1d5cd;
	background-image: url(/wp-content/themes/masonic-child/img/weg_g.png);
}
.site-branding #rundgang-toggle {
	display: none;
}
.site-branding .site-header-text {
	bottom: 0px;
	display: flex;
	display: -ms-flexbox;
}
.logo-img-holder {
	margin: 0;	
}
.main-header .site-title {
	position: relative;
	font-size: 28px;
	height: 44px;
	left: 0;
	margin-top: 0;
}
.main-header .site-title a, .main-header .site-title a:hover {
	color: #404040;
}
#masonic {
	margin-bottom: 0.5em;
}
#wp-custom-header figure img {
	width: 100%;
	max-width: 1280px;
}
.wp-custom-header .angled-background {
	/*background: none repeat scroll 0 0 rgba(0,0,0,0.5);*/
	background: transparent;
}
nav > div > ul {
	border-top: 1px solid #404040;
	border-bottom: 1px solid #404040;
}
.sub-menu li a {
	padding: 2px 21px;
}
#masonic .current_page_item .sub-menu a, nav li:hover ul > a, nav li:hover ul li > a {
    background: #2e795e;
}
#masonic .current_page_item .sub-menu a:hover, nav li:hover ul a:hover {
    background: #c1d5cd;
	color: #2e795e;
}
nav li a {
	color: #404040;
}
nav li a:hover {
	color: #2e795e;
	background: transparent;
}
#masonic .current-menu-item > a {
	background: #FFF;
	color: #2e795e;
}
.current-page-ancestor a, .current-menu-ancestor a, .current-menu-parent a, .current-page-parent a {
	color: #2e795e;
}
footer .current-page-ancestor a, footer .current-menu-ancestor a, footer .current-menu-parent a, footer .current-page-parent a {
	color: #FFF;
}
#menu-hauptmenue {
	width: 1222px;
	max-width: calc(100% - 58px);
}

.masonic-search > input {
	color: #FFF;
}
.masonic-search-toggle {
	background: #2e795e;
	max-width: 1280px;
	left: 50%;
	transform: translate(-50%,0);
}
.masonic-search-toggle .masonic-search {
	border-bottom: 1px solid #FFF;
}
.sb-search {
    width: 58px;
    right: 0;
    position: relative;
    top: 0px;
    float: left;
    height: 58px;
	background: #c1d5cd;
}
.sb-icon-search, .sb-search-submit {
	background: transparent;
	bottom: 0px;
}
.sb-search i {
	color: #2e795e;
}
	
/* - Content - */
.primary {/*Setze Primärcontent Rechts, dass Sidebar Links ist.*/
	float: right;
	margin-right: 0;
}
.primary h2 span {
    font-size: 0.6em;
	float: right;
}
.entry-content {
	padding-top: 0;
}
.entry-info {
	display: none;
}
.entry-content .underline {
	margin-top: 0;
	height: 0;
	width: 0;
}
.primary h1, .page-title {
	color: #2e795e;
	margin: 0.4em 0 0.5em 0;
	text-transform: uppercase;
}
.page {/*Content Box Shadow*/
	box-shadow: none;
}
.form-submit input[type="submit"] { /*Formular Senden Button*/
	font-size: 0.75em;
}
/* + Grid Selection + */
#post-grid {
	display: flex;
	display: -ms-flexbox;
	flex-wrap: wrap;
	justify-content: space-between;
}
.g-1-3 {
	flex-basis: 30%;
	margin-bottom: 1em;
	/*margin-right: 3%;*/
}
#fill-2, #fill-3 {
	display: none;
}
#post-grid #fill-2:nth-child(3n-1), #post-grid #fill-2:nth-child(3n) {
	display: block;
}
#post-grid #fill-3:nth-child(3n) {
	display: block;
}
.post-grid-header {
	border-top: 1px solid #404040;
	border-bottom: 1px solid #404040;
	text-align: center;
	margin: 5px 0;
	min-height: 50px;
}
.post-grid-header span {
	position: relative;
	top: 25px;
	line-height: 25px;
	transform: translate(0,-50%);
	display: inline-block;
}
.post-grid-image img {
	max-height: 300px;
	max-width: 100%;
}

/* - Sidebar - */
.secondary a {
  color: #404040;	
}
.secondary a:hover {
  color: #2e795e;	
}
aside.blog-post {
    background: #c1d5cd;
}

.widget ul li.event {
    margin: 0 0.5em 1.5em 22px;
}
.event-info .event-content { /*Termin Beschreibung*/
	font-size: 1em;
}
.widget {/*Content Box Shadow*/
	box-shadow: none;
}

/* - Widgets - */
.widget_subpa.widget-title, .widget-title h3 {
	background-color: #c1d5cd;
	color: #333;
	border: 0;
}
.widget_subpages .widget-title h3 {
    padding-top: 1.25em;
}
footer .widget-title h3 {
	background: #2e795e;
	color: #FFF;
}
aside.widget_subpages {
	background-color: #c1d5cd;
}
aside.widget_subpages li ul li {
	border-bottom: 1px solid black;
	margin-bottom: 0.25em;
	margin-top: 0.5em;
	padding-bottom: 0.25em;
	color: black;
}
.widget-title {
	margin-bottom: 0;
	border: 0;
}
.widget-title h3 {
	padding: 10px 22px;
}
.event-list > p {
	margin-left: 25px;
}
.event-date {
	float: none;
}
.event-date.multi-date {
	width: 100%;
}
/*.secondary .event-list .event-date.multi-date .enddate {
	margin-left: 3.8em;
}*/
.event-list .enddate {
	margin-left: 0!important;
}
.event-list .startdate + .enddate {
	margin-left: 3.8em!important;
}
.event-info.multi-day {
	margin: 0;
}

.widget_subpages #sm_container {
	margin: 0 10px 0 25px;
}
.widget_subpages #sm_container > .sm_item {
	min-height: 44px;
	position: relative;
	padding-right: 44px;
	margin-bottom: 1em;
	display: flex;
	display: -ms-flexbox;
	align-items: center;
}
.widget_subpages #sm_container > .sm_item.open {
	display: block
}
.widget_subpages #sm_container > .sm_item > .sm_sub_container {
	max-height: 0;
	overflow: hidden;
	display: none;
	position: relative;
}
.widget_subpages #sm_container > .sm_item > .sm_sub_container.open {
	max-height: 100%;
	display: block;
}
.widget_subpages #sm_container > .sm_item .sm_button {
	display: none;
}
.widget_subpages #sm_container > .sm_item .sm_sub_container + .sm_button {
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 44px;
	height: 100%;
}
.widget_subpages #sm_container .sm_item .sm_sub_container + .sm_button span:first-child {
	position: absolute;
	top: 0px;
	right: 0px;
	display: block;
	width: 46px;
	height: 100%;
	background: transparent;
	z-index: 99;
	font-size: 45px;
	line-height: 32px;
	padding: 4px 0 0 10px;
	color: #2e795e;
	cursor: pointer;
}
.widget_subpages #sm_container .sm_item .sm_sub_container + .sm_button span:last-child {
	position: absolute;
	top: 0px;
	right: 0px;
	display: block;
	width: 46px;
	height: 46px;
	background: transparent;
	z-index: 99;
	font-size: 46px;
	line-height: 32px;
	padding: 1px 0 0 11px;
	margin-top: 0px;
	opacity: 0;
	color: #2e795e;
	cursor: pointer;
}
.widget_subpages #sm_container .sm_item .sm_sub_container.open + .sm_button span:first-child {
	opacity: 0;
}
.widget_subpages #sm_container .sm_item .sm_sub_container.open + .sm_button span:last-child {
	opacity: 1;
}

/*nav .menu-item-has-children.open::after {
	opacity: 1;
	border-left: 1px solid #c1d5cd;
	color: #c1d5cd;
}*/
nav .menu-item-has-children.open ul .menu-item-has-children::after, nav .menu-item-has-children.open ul .menu-item-has-children::before {
	border-color: #2e795e4d;
	color: #2e795e;
}

.widget_recent_entries li::before, .widget_recent_comments li::before, .entry-author::before, .entry-date::before, .entry-standard::before {
	content:'';
	display: none;
}

/* - Footer - */
footer {
	color: white;
}
.footer-background {
	background: #2e795e;
}
.footer-background {
	border-color: #2e795e;
}
footer > .footer-content {
	width:100%;
	padding: 20px;
}
footer > .footer-content > div {
	display: flex;
	display: -ms-flexbox;
	justify-content: space-around;
}
footer > .footer-content > div {
	width: 100%;
	max-width: 1600px;
	margin: 0 auto;
}
footer > .footer-content > div::before, footer > .footer-content > div::after {
	display: none;
}
footer a {
	color: white;
}
footer a:hover, footer a:active {
	text-decoration: underline;
	color: white;
}
footer .widget {/*Footer Widget*/
	margin: 0;
	padding: 0 20px;
}
footer .tg-one-third {
	width: auto;
}
footer .widget_nav_menu a {
	padding-left: 0;	
}
.tg-one-third:first-child .widget-title h3, .tg-one-third:first-child .textwidget {
	padding-left: 0;
}
.copyright .copyright-header, .copyright .copyright-year {
	color: white;
}
.copyright .copyright-year {
	margin: 0;
	text-align: center;
}

/* - Mobil Styles - */
/*--------------------------------------------------------------
13.0 Responsive Main Theme Copy
--------------------------------------------------------------*/
@media screen and (max-width: 1280px) {
	.wrapper {
		width:94%;
		margin:0 auto;
	}
	.post-grid-header span {
		font-size: 0.9em;
	}
}
@media only screen and (max-width:1024px) {
	.g-1-3 {
		flex-basis: 45%;
	}
}
@media screen and (max-width: 860px) {
.wrapper {
	width:94%;
	margin:0 auto;
}
.primary h1, .page-title {
	font-size: 120%;
}
.main-header {
	float: left;
	position: relative;
	left: 50%;
	transform: translate(-50%,0);
	min-height: 80px;
	max-width: 100%;
	margin-top: 1em;
}
.tg-one-third:first-child .widget-title h3, .tg-one-third:first-child .textwidget {
	padding-left: 20px;
}
.site-branding {
	 position: relative;
	 padding-left: 0;
	 width: 100%;
}
.site-branding .site-header-text {
	bottom: 0px;
	position: relative;
	width: 100%;	
}
.site-branding #rundgang {
    position: fixed;
    top: 85px;
	right: -239px;
}
	#rundgang-toggle:checked + #rundgang {
	right: 0;
}
.site-header-text {
	 bottom: 20px;
	 /*margin: 0 30px;*/
	 position: absolute;
}
.logo-img-holder img {
    width: 36px;
	height: 47px;
}
	.main-header .site-title {
		font-size: 16px;
	}
.site-title {
	display: none;
}
#masonic-toggle:checked ~ .sb-search-res {
	display: none;
}
nav li:hover ul a {
    color: #FFF;
}
#menu-hauptmenue {
	position: relative;
	border-top: 0px solid #2e795e4d;
	border-bottom: 0px solid #2e795e4d;
    max-width: 100%;
}
#menu-hauptmenue::before {
    height: 53px;
	width: 100%;
    border-bottom: 1px solid #2e795e4d;
	background-color: #c1d5cd;
	display: block;
	position: sticky;
	z-index:5001;
	top: 0;
	left: 0;
}
#masonic-toggle:checked ~ #masonic #menu-hauptmenu::before {
	z-index: 3;
}
#masonic-toggle:checked ~ #masonic #menu-hauptmenu > li {
	z-index: 2;
}
nav .menu-item-has-children.open ul li a {
    background: #c1d5cd;
    color: #404040;
}

#masonic .current-menu-item > a, nav .menu-item-has-children.open ul li.open > a  {
	background-color: transparent;
	color: #2e795e;
}
nav .menu-item-has-children > ul {
	background: transparent;
}
nav .menu-item-has-children {
	position: relative;
}
nav .menu-item-has-children > ul {
	max-height: 0;
	overflow: hidden;
}
nav .menu-item-has-children.open > ul {
	max-height: 100%;
}
nav .menu-item-has-children::before {
    content: '+';
	position: absolute;
	top: 0px;
	right: 0px;
	display: block;
	width: 46px;
	height: 46px;
	background: transparent;
	z-index: 99;
	font-size: 45px;
	line-height: 32px;
	padding: 3px 0 0 10px;
	color: #2e795e;
}
nav .menu-item-has-children::after {
	content: '–';
	position: absolute;
	top: 0px;
	right: 0px;
	display: block;
	width: 46px;
	height: 46px;
	background: transparent;
	z-index: 99;
	font-size: 46px;
	line-height: 32px;
	padding: 0px 0 0 11px;
	margin-top: 0px;
	color: #2e795e;
	opacity: 0;
	cursor: pointer;
}
nav .menu-item-has-children.open::before {
	opacity: 0
}
nav .menu-item-has-children.open::after {
	opacity: 1;
	/*border-left: 1px solid #c1d5cd;
	color: #c1d5cd;*/
}
nav .menu-item-has-children.open ul .menu-item-has-children::after, nav .menu-item-has-children.open ul .menu-item-has-children::before {
	border-color: #2e795e4d;
	color: #2e795e;
}
 
nav #menu-hauptmenue > li:hover > a {
	color: #2e795e;
}
nav li:hover ul li a:hover {
	background: #c1d5cd;
	color: #2e795e;
}
/*nav .menu-item-has-children:not(.open):hover::before, nav .menu-item-has-children:not(.open):hover::after {
	background: #2e795e;
	color:#fff;
	border-left: 1px solid #FFF;
}*/
/*#masonic {
	margin-top: 52px;		
}*/
.fa {
	color: #2e795e;
}
.main-header {
	min-height: 0;
    margin: 0;
    overflow: visible;
    top: 0;
    z-index: 99;
}

	.site-title {
		float: left;
		font-size: 50px;
		line-height: 60px;
		 /*font-size: 46px;*/
		 word-break: break-all;
	}
	nav {
	 height: 52px;
}
	.sb-search {
		float: right;
		height: 50px;
		min-width: 50px;
		overflow: hidden;
		position: relative;
		transition: width 0.3s ease 0s;
		width: 0;
		margin: 5px 0;
	}
	.sb-icon-search {
		right: 10px;
	}
	.angled-background {
		background: none repeat scroll 0 0 black;
		height: 1000px;
		margin: -500px -741px;
		opacity: 0.5;
		transform: rotate(55deg);
		width: 100%;
	}
	.sb-search {
		display: none;
	}
	.sb-search-res {
		display: block;
	}
	.masonic-input {
		width: 98%;
	}
	.submenu {
		list-style-type:none;
		margin:0 auto;
		padding:0;
		position: absolute;
	}
	.sub-menu li a {
		max-width: 100%;
		padding:2px 46px 2px 25px;
	}
	.sub-menu ul ul {
		margin: 0;
		padding: 0;
	}
	nav ul {
		z-index:5000;
		position: static;
	}
	nav li a {
		text-align:start;
	}
	nav li ul {
		display:block;
		margin: 0;
		position: relative;
	}
	.submenu a {
		font-size:100%;
		border: none;
		padding:10px 20px;
	}
	nav ul li, nav li a {
		width: 100%;
	}
	.current-page-ancestor a,
	.current-menu-ancestor a,
	.current-menu-parent a,
	.current-page-parent a {
		color: #2e795e;/*#c1d5cd;*/
	}
	.current-page-ancestor.menu-item-has-children:before,
	.current-menu-ancestor.menu-item-has-children:before,
	.current-menu-parent.menu-item-has-children:before,
	.current-page-parent.menu-item-has-children:before,
	.current-page-ancestor.menu-item-has-children:hover::before,
	.current-menu-ancestor.menu-item-has-children:hover::before,
	.current-menu-parent.menu-item-has-children:hover::before,
	.current-page-parent.menu-item-has-children:hover::before{
		color: #2e795e;/*#c1d5cd;*/
	}
	.current-page-ancestor.menu-item-has-children.open ~ ul {
		max-height: 100%;
	}
	nav li a {
		border-bottom: 1px solid #2e795e4d;
	}
	nav .show-menu {
		display:inline;
	}
	nav ul {
		border: 0;
		position: static;
	}
	nav li {
		margin-bottom: 1px;
	}
	nav li a {
		padding: 5px 0 5px 10px;
		width: 100%;
	}
/*	nav li:hover ul li a:hover, nav li a:hover {
		background: #2e795e;
		color:#fff;
	}*/
	nav ul ul ul{
		left: 0;
		margin: 0;
		max-width: 100%;
		padding-left: 20px;
	}
	#masonic-toggle-label {
		display:block;
		cursor: pointer;
		z-index:5;
	}
	#masonic-toggle-label:before {
		display: block;
		left: auto;
		right: -10px;
		color: #2e795e;
		-moz-transition: all 1s cubic-bezier(.75, 1.81, .87, -0.5) 0s;
		position: relative;
		top: 4px;
	}
	#masonic {
		position: fixed;
		top: 0;
		left:-300px;
		height: 100%;
		width: 300px;
		overflow-x: hidden;
		overflow-y: scroll;
		-webkit-overflow-scrolling: touch;
		z-index: 9999;
		background: #c1d5cd;
	}
	#masonic-toggle:checked ~ #masonic-toggle-label, #masonic-toggle:checked ~ header {
		width: 60px;
		left: 0;
	}
	#masonic-toggle:checked ~ #masonic {
		left: 0px;
		z-index:4;
	}
	#masonic-toggle:checked ~ #page-content {
		margin-left: 300px;
	}
	/* Menu item styles */
	#masonic ul {
		list-style-type:none;
	}
	#masonic .current_page_item .sub-menu a, nav li:hover ul > a {
    	background: transparent;
    	color: #404040;
	}
	.post {
		width:46.8%;
	}
	.blog-post {
		width: 100%;
	}
	.meta-info {
		margin: 65px 0 0;
	}
	.catagory-type {
		position: absolute;
	}
	.catagory-type a {
		position: relative;
		z-index: 999;
	}
	.catagory-type a:hover {
		color:#ffc800;
	}
	.post-header > figure, .post-header .entry-info {
		width: 100%;
		margin-bottom:10px;
	}
	.primary, .secondary {
		width:100%;
	}
	.post-header > .entry-info-horizantol {
		float: left;
		font-size: 14px;
		width: 100%;
	}
	.entry-info-horizantol .entry-author, .entry-info-horizantol .entry-standard, .entry-info-horizantol .entry-date {
		color: #ffc800;
		float: left;
		margin:5px;
	}
	.comments-area .form-submit {
		width: 100%;
	}
	#post-grid.alone {
    	justify-content: space-around;
    	margin-top: 2em;
	}
	.g-1-3 {
		flex-basis: 45%;
	}
	.logo-img-holder {
		position: absolute;
		top: 2px;
		left: 50%;
		transform: translate(-50%,0);
	}
	.logo-img-holder a {
		margin-top: 2px;
	}
	
	.primary h1, .page-title {
		font-size: 4vw;
	}
	.post-container {
		position: static;
		width: 97%;
	}
	footer .widget {
		padding: 0;
	}
}
/* - Mobile Styles - */
@media only screen and (max-width:800px) {
	.wrapper {
		width: 100%;
	}
	.widget_subpages {
		display: none;
	}
}
@media only screen and (max-width:720px) {
	footer  > .footer-content > div {
		flex-direction: column;
	}
	footer > .footer-content > div #menu-sitemap {
		padding-left:22px;
	}
	footer .widget .menu {
    	width: 100%;
    	margin: 0;
	}
	footer .textwidget {
    	padding: 0 20px 0px;
	}
}
@media only screen and (max-width:640px) {
	.main-header .site-title {
		font-size: 13px;
	}
	.primary h1, .page-title {
		font-size: 1.2em;
	}
}
@media only screen and (max-width:480px) {
	.g-1-3 {
		flex-basis: 100%;
	}
	footer * {
		font-size: 100%;
	}
	#masonic-toggle:checked ~ #masonic {
		width: 100%;
		z-index: 4;
	}	
}