/**

	v1.1 2016-09-07

 */

@font-face {
	font-family: 'FontAwesome';
	src: url('../fonts/fontawesome/fontawesome-webfont.eot?v=4.7.0');
	src: url('../fonts/fontawesome/fontawesome-webfont.eot?#iefix&v=4.7.0') format('embedded-opentype'), url('../fonts/fontawesome/fontawesome-webfont.woff2?v=4.7.0') format('woff2'), url('../fonts/fontawesome/fontawesome-webfont.woff?v=4.7.0') format('woff'), url('../fonts/fontawesome/fontawesome-webfont.ttf?v=4.7.0') format('truetype'), url('../fonts/fontawesome/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular') format('svg');
	font-weight: normal;
	font-style: normal;
}

* {
	-webkit-box-sizing: border-box; /* padding verändert width nicht */
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

html {
	background: #ffffff;
	color: #333;
	font-family: Arial, sans-serif; /* 1 */
	font-size: 15px;
	-ms-text-size-adjust: 100%; /* 2 */
	-webkit-text-size-adjust: 100%; /* 2 */
	line-height: 1.3;
	word-wrap: break-word;
}

/**
 * Remove default margin.
 */

body {
	margin: 0;
	padding: 0;
}

#header, div, main, h1, p {
	position: relative;
}

body, div, h2, h3, input, textarea, select {
	-webkit-box-sizing: border-box; /* padding verändert width nicht */
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

widget .search-submit:before, div.search widget .search-submit:before {
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-family: "Genericons";
	font-size: 16px;
	font-style: normal;
	font-variant: normal;
	font-weight: normal;
	line-height: 1;
	speak: none;
	text-align: center;
	text-decoration: inherit;
	text-transform: none;
	vertical-align: top;
}

/* HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 * and Firefox.
 * Correct `block` display not defined for `main` in IE 11.
 */

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
	display: block;
	max-width: 100%;
}

/**
 * 1. Correct `inline-block` display not defined in IE 8/9.
 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 */

audio,
canvas,
progress,
video {
	display: inline-block; /* 1 */
	max-width: 100%;
	vertical-align: baseline; /* 2 */
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]) {
	display: none;
	height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9/10.
 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 */

[hidden],
template {
	display: none;
}

/* Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a,
figure figcaption a {
	background-color: transparent;
	color: #386286;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,
a:hover,
a:focus,
.current-cat > a,
.current-menu-item > a,
.current-menu-parent > a,
.current_page_item > a,
.current_page_parent > a {
	outline: 0;
	/* border-bottom: none; Links sollen bei hover unterstrichen sein */
}

.menu-item > a {
	border: none;
	text-decoration: none;
	color: #fff;
}

.current-menu-item > a {
	color: #386286;
}

a[href*=".pdf"] {
	background: url("../img/pdf16.png") no-repeat transparent;
	text-align: left;
	padding-left: 22px;
}

/* Text-level semantics
   ========================================================================== */

/**
 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 */

abbr[title] {
	border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 */

b,
strong {
	font-weight: bold;
}

/**
 * Address styling not present in Safari and Chrome.
 */

dfn {
	font-style: italic;
}

/**
 * Address styling not present in IE 8/9.
 */

mark {
	background: #ff0;
	color: #000;
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

small {
	font-size: 80%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,
sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup {
	top: -0.5em;
}

sub {
	bottom: -0.25em;
}

/* Embedded content
   ========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9/10.
 */

img {
	height: auto;
	max-width: 100%;
}

/**
 * Correct overflow not hidden in IE 9/10/11.
 */

svg:not(:root) {
	overflow: hidden;
}

/* Grouping content
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari.
 */

figure {
	margin: 1.6rem 0;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr {
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	height: 0;
}

/**
 * Contain overflow in all browsers.
 */

pre {
	overflow: auto;
}

/**
 * Address odd `em`-unit font size rendering in all browsers.
 */

code,
kbd,
pre,
samp {
	font-family: monospace, monospace;
	font-size: 1em;
}

/* Forms
   ========================================================================== */

/**
 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 * styling of `select`, unless a `border` property is set.
 */

/**
 * 1. Correct color not being inherited.
 *    Known issue: affects color of disabled elements.
 * 2. Correct font properties not being inherited.
 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 */

button,
input,
optgroup,
select,
textarea {
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
	color: inherit; /* 1 */
	font: inherit; /* 2 */
	margin: 0; /* 3 */
	max-width: 100%;
}

/**
 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 */

button {
	background: none;
	border: none;
	overflow: visible;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 * Correct `select` style inheritance in Firefox.
 */

button,
select {
	text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,
html input[type="button"], /* 1 */
input[type="reset"],
input[type="submit"] {
	-webkit-appearance: button; /* 2 */
	cursor: pointer; /* 3 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],
html input[disabled] {
	cursor: default;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,
input::-moz-focus-inner {
	border: 0;
	padding: 0;
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

input {
	line-height: normal;
}

/**
 * It's recommended that you don't attempt to style these elements.
 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 *
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type="checkbox"],
input[type="radio"] {
	box-sizing: border-box; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 * `font-size` values of the `input`, it causes the cursor style of the
 * decrement button to change from `default` to `text`.
 */

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button {
	height: auto;
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 *    (include `-moz` to future-proof).
 */

input[type="search"] {
	-webkit-appearance: textfield; /* 1 */
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box; /* 2 */
	box-sizing: content-box;
}

/**
 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 * Safari (but not Chrome) clips the cancel button when the search input has
 * padding (and `textfield` appearance).
 */

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration {
	-webkit-appearance: none;
}

/**
 * Define consistent border, margin, and padding.
 */

fieldset {
	border: 1px solid #c0c0c0;
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend {
	border: 0; /* 1 */
	padding: 0; /* 2 */
}

/**
 * Remove default vertical scrollbar in IE 8/9/10/11.
 */

textarea {
	overflow: auto;
	resize: vertical;
	width: 100%;
}

/**
 * Don't inherit the `font-weight` (applied by a rule above).
 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 */

optgroup {
	font-weight: bold;
}

/* Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table {
	border-collapse: collapse;
	border-spacing: 0;
	margin: 0 0 1.6rem;
	font-size: 0.9em;
}

td,
th {
	padding: .4rem;
	vertical-align: top;
}

table tr:first-of-type {
	border-top: 0;
}

table tr {
	border-top: thin solid;
}

table.table_wide {
	width: 100%;
}

iframe {
	max-width: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	font-weight: 400;
	color: #015192;
}

h1, .entry-title {
	font-size: 1.5rem;
	line-height: 1.3;
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 1em;
	padding-bottom: 0.5em;
}

h2 {
	font-size: 1.5rem;
	line-height: 1.3;
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 1em;
	padding-bottom: 0.125em;
}

.search-result h2 {
	font-size: 1rem;
	line-height: 1.3;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0 0 1em 0;
}

.search-result h2::before {
	content: '\f429';
	font-family: Genericons;
	font-size: 18px;
	padding: 0 0.5em 0 0;
	vertical-align: bottom;
}

.search-result h2 a {
	/* border: none; */
}

h3 {
	font-size: 1.2rem;
	line-height: 1.3;
	/* margin: 2.4rem 0 0; */
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0.3em;
}

h4 {
	font-size: 1.1rem;
	line-height: 1.3;
	margin: 2rem 0 0;
}

h5 {
	font-size: 1.05rem;
	line-height: 1.3;
	margin: 1.8rem 0 0;
}

h6 {
	font-size: 1rem;
	line-height: 1.3;
	margin: 1.6rem 0 0;
}

p {
	margin: 0 0 0.8em;
}

p.empty {
	height: 0.6em;
}

blockquote {
	margin: 1.6rem 2rem;
}

dl {
	margin: .8rem 0 0;
}

dd {
	margin-bottom: .4rem;
	margin-left: 2rem;
}

dt {
	font-weight: 700;
}

ul,
ol {
	margin: 1.6rem 0;
	padding-left: 1rem;
}

h2 + ul,
h3 + ul,
h4 + ul,
h5 + ul,
h6 + ul,
h2 + ol,
h3 + ol,
h4 + ol,
h5 + ol,
h6 + ol {
	margin-top: .8rem;
}

ul ul,
ol ol,
ul ol,
ol ul {
	margin: 0;
	padding-left: 1.6rem;
}

li {
	margin-top: .4rem;
}

iframe {
	margin: 1.6rem 0 !important; /* !important to overwrite inline styles from embeds */
}

.screen-reader-text {
	clip: rect(1px, 1px, 1px, 1px);
	height: 1px;
	overflow: hidden;
	position: absolute !important;
	width: 1px;
	/* many screen reader and browser combinations announce broken words as they would appear visually */
	word-wrap: normal !important;
}

.skip-link {
	background-color: #f1f1f1;
	box-shadow: 0 0 1px 1px rgba(0, 0, 0, 0.2);
	display: block;
	font-size: 14px;
	font-weight: 700;
	left: -9999em;
	outline: none;
	padding: 15px 23px 14px;
	text-decoration: none;
	text-transform: none;
	top: -9999em;
}

.skip-link:focus {
	clip: auto;
	height: auto;
	left: 6px;
	top: 7px;
	width: auto;
	z-index: 100000;
}

.sticky {
}

.gallery-caption {

}

.bypostauthor {
}

.alignleft {
	display: block;
	float: left;
	margin-right: 1.2rem;
}

.alignright {
	display: block;
	float: right;
	margin-left: 1.2rem;
}

.aligncenter {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

.alignnone {
	margin-bottom: 0.8rem;
	display: block;
}


.alignleft,
.alignright {
	margin-bottom: 0.8rem;
}


.alignleft.nomargin,
.alignright.nomargin {
	margin-top: 0;
	margin-bottom: 0;
}

figure.alignleft,
figure.alignright,
figure.alignnone {
	margin-top: 0;
}

.alignleft img,
.alignright img {
	margin: 0;
}

.wp-caption-text {
	font-size: 0.9rem;
	font-style: italic;
}

#header::after, 
.clearfix::after {
	clear: both;
	content: '';
	display: block;
}

/* --------- Kopfbild -------*/

div.site-branding {
	position: relative;
	z-index: 1000;
	margin: 0 auto;
	width: 100%;
	
	overflow: hidden;
	padding-top: 0; /* defines aspect ratio */
	height: 85px;
}



#header div#logo {
	position: absolute;
	z-index: 2000;
	background: url(/wp-content/themes/brod02-child/img/logo.svg) left top no-repeat;
	background-size: 100%;
	width: 190px;
	height: 30px;
	bottom: 28px;
	left: 20px;
}

#header div#logo a{
	text-decoration: none;
	display: block;
	height: 100%;
	width: 100%;
	padding: 10px;
	border: none;
}


#header .site-branding .site-title {
	word-wrap: normal;
	font-size: 1.8rem;
	line-height: 1.2;
	margin: 0;
	padding-top: 4px;
	padding-left: 60px;
	color: #0f5b9a;
}

#header .site-description {
	position: absolute;
	font-size: 0.8rem;
	margin: 0;
	white-space: nowrap;
	color: #000000;
	left: 20px;
	bottom: 6px;
}

#header .logo {
	margin: 0;
}

#menu-toggle {
	display: none;

}

#menu-toggle:focus {
	text-decoration: none;
	outline: none;
	border: none;
	box-shadow: none;
}


#header div.header-nav {
	margin-top: 5px;
	float: left;
	width: 100%;
	background-color: #989998;
}

#header .desktop-nav li {
	list-style-type: none;
}

.no-js .dropdown-toggle {
	display: none;
}

.dropdown-toggle.toggled-on {
	-ms-transform: rotate(180deg);
	-webkit-transform: rotate(180deg);
	transform: rotate(180deg);
}

#header div.mobile-nav {
	display: none;
	list-style-type: none;
	position: relative;
}

#header .mobile-nav ul {
	list-style-type: none;
	position: relative;
	margin: 0;
	padding: 0;
	background-color: #999999;
	-moz-box-shadow: inset 0 -5px 5px -5px rgba(0, 0, 0, 0.5), inset 0 5px 5px -5px rgba(0, 0, 0, 0.5);
	box-shadow: inset 0 -5px 5px -5px rgba(0, 0, 0, 0.5), inset 0 5px 5px -5px rgba(0, 0, 0, 0.5);
}

#header .mobile-nav ul li {
	margin: 0;
	padding-left: 20px;
}

#content {
	clear: both;
	overflow: auto; /* hilft falls z.B: h1 margin-top hat, damit dies nicht ausserhalb content wirkung zeigt */
	background-color: #fff;
	min-height: 600px;
	/* min-height: calc( 100vh - 162px); */
	padding-bottom: 30px;
}

#content::after {
	clear: both;
	content: '';
	display: block;
}

#content ul {
	margin-top: 0;
	margin-bottom: 0;
	padding-left: 20px;	/* damit die listenpunkte auf linkem Rand kommen */
	overflow: auto;	/* damit listenpunkte bei bild umlfiessen nicht am Bild kleben  */
}

#content .widgets_on_page ul{
	padding-left: 0;
}

/*
Für spezielle li-Style-Types
#content ul > li::before {
	content: '\f428';
	font-family: Genericons;
	left: -20px;
	top: 0;
	position: absolute;
	color: #0e5a9a;
}

#content .nav li::before {
	display: none;
}

#content .widgets_on_page li::before {
	content: none;	
}

*/

main {
	width: 100%; 
	padding-left: 20px;
	padding-right: 20px;
}



article {
	margin-top: 0;
	padding: 0;

}

.entry-header a,
.gallery a,
figure a {
	border-bottom: none;
}

.entry-title {
	margin: 0;
}

.blog .format-gallery .entry-title {
	margin-top: .2rem;
}

.entry-header .entry-date {
	display: block;
	font-style: italic;
	margin-top: .4rem;
}




.entry-content > div.gallery {
	margin: 0;
}

.gallery::after {
	clear: both;
	content: '';
	display: block;
}

.gallery-item {
	float: left;
	margin: 0;
	padding: 0;
}

.gallery-size-large .gallery-item {
	float: none;
	padding-left: 0;
	padding-right: 0;
}

.gallery-size-thumbnail .gallery-item {
	line-height: 0;
}

.gallery-size-thumbnail .gallery-item figcaption {
	display: none;
	line-height: 1rem;
}

.gallery-columns-1 .gallery-item:nth-of-type(1n),
.gallery-columns-2 .gallery-item:nth-of-type(2n-1),
.gallery-columns-3 .gallery-item:nth-of-type(3n-2),
.gallery-columns-4 .gallery-item:nth-of-type(4n-3),
.gallery-columns-5 .gallery-item:nth-of-type(5n-4),
.gallery-columns-6 .gallery-item:nth-of-type(6n-5) {
	clear: left;
}







article footer {
	margin-top: 1.6rem;
}

article footer p > span {
	font-weight: 700;
}

article footer p > span > span {
	font-weight: 400;
}

article footer p span.comments::before,
article footer p span.trackbacks::before {
	content: "";
	display: block;
}

article footer p span.comments + span.trackbacks::before {
	display: none;
}

.post-navigation .nav-previous a::before {
	content: "« ";
}

.post-navigation .nav-next a::after {
	content: " »";
}

#comments {
	clear: both;
	margin-top: 4.8rem;
}

.comment-respond input,
.comment-respond textarea {
	margin-top: 0;
}

.commentlist {
	padding-left: 0;
}

li.comment {
	margin-top: 0;
}

article.comment {
	margin-top: 1.6rem;
}

.comment,
.pingback {
	list-style-type: none;
}

.commentlist .children {
	padding-left: 1em;
}

.avatar {
	display: none;
}

.fn {
	display: block;
}

#commentform label {
	display: block;
}

input,
textarea {
	border: thin solid;
	margin-top: .8rem;
	padding: .5em;
}

select {
	margin-top: .8rem;
}

input:hover,
input:focus,
input:active,
textarea:hover,
textarea:focus,
textarea:active {
	border-color: #bbb;
}

input[type=text],
input[type=email],
input[type=url] {
	width: 100%;
}

input[type=submit] {
	background: #444;
	border: none;
	color: #fff;
}

input[type=submit]:hover,
input[type=submit]:focus,
input[type=submit]:active {
	background: none;
	color: #444;
}

.navigation::before {
	clear: both;
	content: "";
	display: block;
}

.navigation {
	margin-top: 4.8rem;
}

.page-numbers {
	font-weight: 700;
	padding-left: 0;
	margin: 0;
}

.page-numbers::after,
.footer-menu::after {
	clear: both;
	content: '';
	display: block;
}

.page-numbers li {
	display: block;
	float: left;
	list-style-type: none;
	margin: 0 .5em;
}

.page-numbers li:first-of-type {
	margin-left: 0;
}

.page-numbers li:last-of-type {
	margin-right: 0;
}

#secondary {
	clear: both;
	padding: 10px 20px;
	padding-left: 20px;
	background-color: #005191;
	color: #fff;
	font-size: 15px;

}

#secondary a {
	color: #fff;
}

#secondary ul.adresse li {
	float: left;
	display: inline-block;
	padding: 0 10px 0 0;
	white-space: nowrap;
	margin: 0;
}

.widget {
	margin-top: 1rem;
}

#secondary .widget:first-of-type {
	margin-top: 0;
}

.widget-title {
	margin-top: 0;
	font-size: 1.1em;
	font-weight: bold;
	text-transform: uppercase;
}

.widget-title + * {
	margin-top: .3rem;
}

.widget p {
	font-size: 0.8rem;
}


.widget li {
	font-size: 0.8em;
}

.widget ul > li::before {
	content: none!important;
}

.widget div.textwidget > div {
	font-size: 0.9em;
}

.widget div.textwidget > ul {
	margin-top: 0;
}

.widget div.search {
	margin: 0 0;
	width: 180px;
}

.widget .search-form {
	position: relative;
	width: 100%;
	background-color: #fff;
}

input[type="search"].search-field {
	background-color: #f7f7f7;
	width: 150px;
	height: 24px;
	border: 1px solid #ddd;
	border-radius: 2px 0 0 2px;
	xborder: none;
	margin: 0;
	padding: 0 10px;
	color: #000;
}

input[type="search"].search-field:focus {
	outline: none;
	border-color: #0f5b9a;
	background-color: #fff;
}

.widget .search-submit:before, div.search .search-submit:before {
	content: '\f400';
	font: normal 20px/28px 'Genericons';
	display: inline-block;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: relative;
	width: 20px;
	color: #fff;

}

.widget .search-submit, div.search .search-submit {
	background-color: #ddd;
	border-radius: 0 2px 2px 0;
	overflow: hidden;
	padding: 0;
	margin: 0;
	position: absolute;
	XXXright: 0;	/* todo lupenposition überprüfen */
	top: 0;
	width: 26px;
	height: 26px;
}

.widget .search-submit:hover, div.search .search-submit:hover {
	background-color: #0f5b9a;
}



div#wpgmza_map {
	float: none !important; /* das Plugin schreibt float:left */
	width: auto!important;
	margin-left: -20px;
	margin-right: -20px;
}


#footer {
	clear: both;
	padding: 0 0; /* 2017 */
	background-color: #979797;
	color: #fff;
	font-size: 15px;
}

#innerfooter {
	padding: 0 20px;
}

#footer div.widget {
	margin: 0;
}

#footer ul {
	margin: 0;
	padding: 0;
}

#footer a {
	color: #fff;
	border-bottom: none;
	text-decoration: none;
}

#footer li {
	float: left;
	display: inline-block;
	padding: 0 10px 0 0;
	white-space: nowrap;
	margin: 0;
}

#footer .footer-menu li:not(:first-child):before {
	content: "\2013";
	padding-right: 10px;
}

#footer li a {
	font-size: 12px;
}

.theme-author,
#footer nav {
	clear: both;
}

#footer nav {
	padding: 0;
}

#footer nav li {
	margin: .5em 0;
}

.theme-author {
	font-size: .9em;
	text-align: center;
	margin-top: 1.6rem;
}

/* PAGE TEMPLATES */

.page-template-portfolio-page main,
.page-template-portfolio-archive-page main {
	width: 100%
}

.page-template-portfolio-page .element,
.page-template-portfolio-archive-page .element,
.page-template-portfolio-category-page .element {
	display: block;
	float: left;
	line-height: 0;
	margin: 0;
	padding: .5em;
}

.page-template-portfolio-page .element img,
.page-template-portfolio-archive-page .element img,
.page-template-portfolio-category-page .element img {
	line-height: 1rem;
}

.page-template-portfolio-page .element-alt div h2,
.page-template-portfolio-category-page .element-alt div h2 {
	margin-top: .4rem;
}

.page-template-portfolio-page .element-alt > a,
.page-template-portfolio-category-page .element-alt > a,
.page-template-portfolio-category-page .element > a,
.page-template-portfolio-archive-page .element > a {
	border-bottom: none;
}

/* PAGE TEMPLATES END */

/* SLIDER */

.slider {
	position: relative;
}

.slider .owl-prev,
.slider .owl-next {
	display: none !important;;
}

.slider .owl-item .portrait img {
	margin: 0 auto;
	width: auto;
}

/* SLIDER END */

#header {
	background-position: center 25px;
	background-repeat: repeat-x;
	background-color: #ffffff;
	background-size: auto 60px;
	background-image: url(/wp-content/themes/brod02-child/img/header_mobile_bg.jpg);
}

/*
Bei diesem Design sollte #content , #innerheader, #innerfooter, div.desktop-nav gleich behandelt werden, wenn es um width und margin geht.

 */

#innerheader, #content, #secondary, #innerfooter, div.desktop-nav {
	margin-left: auto;
	margin-right: auto;
}

@media screen and (max-width: 31.99em) {
	/* switch Bis hier hin ist Mobile  */
	
	#header {
		background-position: center 10px;
	}
	
	div.site-branding {
		height: 70px;
	}

	.js #menu-toggle {
		display: block;
		padding: 0;
	}

	/* "\f0c9" */

	#menu-toggle {
		line-height: 1;
		color: #015192;
		position: absolute;
		right: 20px;
		top: 29px;
		z-index: 9000;
		font-size: 32px;
		font-family: Genericons;
	}

	#header div.mobile-nav {
		clear: both;
	}

	.js #header div.desktop-nav {
		display: none;
	}

	#header .mobile-nav li {
		padding: .5em 0;
	}

	#header .mobile-nav .sub-menu {
		padding-left: 1.5em;
		padding-top: .5em;
	}

	.js #header .mobile-nav .sub-menu {
		display: none;
	}

	#header .mobile-nav .sub-menu li:last-child {
		padding-bottom: 0;
	}

	.js #header .mobile-nav.toggled-on {
		display: block;
	}

	.js #header .mobile-nav .menu-item-has-children::after {
		clear: left;
		content: "";
		display: block;
	}

	.js #header .mobile-nav .sub-menu.toggled-on {
		clear: both;
	}

	.js #header .mobile-nav .menu-item-has-children > a {
		float: left;
		width: 80%;
	}

	.js #header .mobile-nav .dropdown-toggle {
		border: thin solid #777;
		float: right;
		margin-left: 1em;
	}

	.js #header .mobile-nav .dropdown-toggle svg {
		fill: #444;
	}

	#header .mobile-nav .menu-item-has-children .sub-menu.toggled-on {
		display: block;
	}

	img.size-portrait{
		width: calc(15% + 43px);	/* damit wird die porpotionale steigung verringert anstatt widh = 20% */
	}
	
	.alignleft,
	.alignright,
	.alignnone {
		float: none;
		margin-left: auto;
		margin-right: auto;
	}
	
	.entry-content p, .entry-content li {
		font-size: 0.9em;
	}

}

@media screen and (min-width: 24em) {
	#header div#logo {
		width: 220px;
		height: 35px;
		bottom: 25px;
	}
	
	#header .site-description {
		font-size: 0.9rem;
		bottom: 2px;
	}
}

@media screen and (min-width: 32em) {
	/* switch desktop-mobile = desktop 480px */
	body {
		background-position: center 0;
		background-size: 120%; /* ein bischen zu gross, da momentan die Bilder nicht hoch genug sind */
		background-attachment: scroll;
	}
	
	/*
	.header-nav {
		background-color: #f8f8f8;
		-moz-box-shadow: inset 0 -5px 5px -5px rgba(0, 0, 0, 0.5), inset 0 5px 5px -5px rgba(0, 0, 0, 0.5);
		box-shadow: inset 0 -5px 5px -5px rgba(0, 0, 0, 0.5), inset 0 5px 5px -5px rgba(0, 0, 0, 0.5);
	}
	*/

	#header .primary-menu {
		padding: 0 20px;
		margin:0;
		float: left;
		line-height: 1;
		width: 100%;
		font-size: 0.93rem;
	}

	#header .desktop-nav > ul > li {
		display: block;
		float: left;
		padding: 3px 10px;
		border-left: 1px solid #fff;
	}

	#header .desktop-nav > ul > li {
		z-index: 3000;
		margin: 0 0.74em 0 0;
	}

	#header .desktop-nav > ul > li:first-of-type {
		margin-left: 0;
		border-left: none;
		padding-left: 0;
	}

	#header .desktop-nav > ul > li:last-of-type {
		margin-right: 0;
		padding-right: 0;
	}

	#header .desktop-nav li {
		position: relative;
	}

	#header .desktop-nav .menu-item-has-children::after {
		content: "›";
		display: inline-block;
		margin-left: .2em;
		-ms-transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}

	#header .desktop-nav .dropdown-toggle {
		display: none;
	}

	#header .mobile-nav .sub-menu {
		left: -9999em;
		text-align: right;
		background: #fff;
		padding: 0 .6em .6em;
		position: absolute;
		white-space: nowrap;
		z-index: 9;
	}

	#header .mobile-nav .sub-menu li {
		margin: .6rem 0;
	}

	#header .mobile-nav > ul > li:hover > .sub-menu,
	#header .mobile-nav > ul > li:focus > .sub-menu,
	#header .mobile-nav > ul > li.focus > .sub-menu {
		left: auto;
		right: .2rem;
	}

	#header .mobile-nav .sub-menu li:hover > .sub-menu,
	#header .mobile-nav .sub-menu li:focus > .sub-menu,
	#header .mobile-nav .sub-menu li.focus > .sub-menu {
		left: auto;
		right: 100%;
		top: -.5em;
	}

	#header .mobile-nav .menu-item-has-children .menu-item-has-children::after {
		position: relative;
		top: .3em;
		-ms-transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		transform: rotate(180deg);
	}

	#header .site-branding .site-title {
		font-size: 2.6rem;
		line-height: 1.2;
	}
	
		
	#content {
		/* min-height: calc( 100vh - 218px); */
	}
	
	h1, .entry-title {
		font-size: 1.7rem;
	}
	
	h2 {
		font-size: 1.7rem;
	}
	
	h3 {
		font-size: 1.3rem;
	}
	
	h4 {
		font-size: 1.2rem;
	}
	
	h5 {
		font-size: 1.1rem;
	}
	
	h6 {
		font-size: 1rem;
	}
	

	#footer nav, #footer .footer-menu {
		clear: none;
	}


	article.element-alt::after {
		clear: both;
		content: "";
		display: block;
	}

	.page-template-portfolio-page .element-alt,
	.page-template-portfolio-archive-page .element-alt,
	.page-template-portfolio-category-page .element-alt {
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	.page-template-portfolio-page .element-alt > a,
	.page-template-portfolio-archive-page .element-alt > a,
	.page-template-portfolio-category-page .element-alt > a {
		display: inline-block;
		max-width: 50%;
		margin-left: -3px;
		padding-right: 1em;
		vertical-align: middle;
	}

	.page-template-portfolio-page .element-alt div,
	.page-template-portfolio-archive-page .element-alt div,
	.page-template-portfolio-category-page .element-alt div {
		display: inline-block;
		max-width: 50%;
		margin-left: -3px;
		padding-right: 1em;
		vertical-align: middle;
	}

	.page-template-portfolio-page .element-alt div h2,
	.page-template-portfolio-category-page .element-alt div h2 {
		margin-top: 0;
	}

	.slider .owl-prev,
	.slider .owl-next {
		display: block !important;
		font-size: 3em;
		position: absolute;
		top: 40%;
	}

	.slider .owl-prev {
		left: -.5em;
	}

	.slider .owl-next {
		right: -.5em;
	}
}


@media screen and (min-width: 44.5em) {
	#header {
		background-image: url(/wp-content/themes/brod02-child/img/header_2019_bg.jpg);
	}
}


@media screen and (min-width: 49em) {
	/* ab hier eingemitter Content mit Hintergrund */
	
	#innerheader, #content, #secondary, #innerfooter, div.desktop-nav {
		width: 750px;
	}

	main {
		width: 100%;
		padding-left: 30px;
		padding-right: 30px;
	}
	
	#header .primary-menu {
		padding: 0 30px;
	}

	#header .site-branding .site-title {
		padding-left: 30px;
	}
	#header div#logo {
		left: 30px;
	}

	#header .site-description {
		left: 30px;
	}
	
	#innerfooter {
		padding: 0 30px;
	}
	
	div#wpgmza_map {
		float: none !important; /* das Plugin schreibt float:left */
		width: auto!important;
		margin-left: -30px;
		margin-right: -30px;
	}
	
	
	img.size-portrait{
		width: inherit;
	}
	
}



@media screen and (max-width: 26.2499em) {
	/* switch Bis hier hin ist Mobile klein < 420px  */

	.hide_420 {
		display: none;
	}

}

@media screen and (max-width: 22.499em) {
	/* switch Bis hier hin ist Mobile klein < 360px  */

	.hide_360 {
		display: none;
	}

}


	/******************************
	Lightbox
	*******************************/

.lightbox {
	border-bottom: none;
}

#imagelightbox {
	position: fixed;
	z-index: 9999;
	-ms-touch-action: none;
	touch-action: none;
}

#imagelightbox-loading,
#imagelightbox-loading div {
	border-radius: 50%;
}

#imagelightbox-loading {
	width: 1em; /* 40 */
	height: 1em; /* 40 */
	background-color: #444444;
	background-color: rgba(0, 0, 0, .5);
	position: fixed;
	z-index: 10003;
	top: 50%;
	left: 50%;
	padding: 0.625em; /* 10 */
	margin: -1.25em 0 0 -1.25em; /* 20 */
	-webkit-box-shadow: 0 0 2.5em rgba(0, 0, 0, .75); /* 40 */
	box-shadow: 0 0 2.5em rgba(0, 0, 0, .75); /* 40 */
}

#imagelightbox-loading div {
	width: 1em; /* 20 */
	height: 1em; /* 20 */
	background-color: #ffffff;
	-webkit-animation: imagelightbox-loading .5s ease infinite;
	animation: imagelightbox-loading .5s ease infinite;
}

@-webkit-keyframes imagelightbox-loading {
	from {
		opacity: .5;
		-webkit-transform: scale(.75);
	}
	50% {
		opacity: 1;
		-webkit-transform: scale(1);
	}
	to {
		opacity: .5;
		-webkit-transform: scale(.75);
	}
}

@keyframes imagelightbox-loading {
	from {
		opacity: .5;
		transform: scale(.75);
	}
	50% {
		opacity: 1;
		transform: scale(1);
	}
	to {
		opacity: .5;
		transform: scale(.75);
	}
}

/* OVERLAY */

#imagelightbox-overlay {
	background-color: #000000;
	background-color: rgba(0, 0, 0, .9);
	position: fixed;
	z-index: 9998;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
}

/* "CLOSE" BUTTON */

#imagelightbox-close {
	color: #ffffff;
	width: 2.5em; /* 40 */
	height: 2.5em; /* 40 */
	text-align: left;
	background-color: transparent;
	border-radius: 50%;
	position: fixed;
	z-index: 10002;
	top: 1em; /* 40 */
	right: 1em; /* 40 */
	-webkit-transition: color .3s ease;
	transition: color .3s ease;
}

#imagelightbox-close:hover,
#imagelightbox-close:active {
	color: #dddddd;
}

/* ARROWS */

.imagelightbox-arrow {
	color: #ffffff;
	font-size: 4em;
	width: 1em; /* 60 */
	height: 7.5em; /* 120 */
	background-color: transparent;
	vertical-align: middle;
	display: none;
	position: fixed;
	z-index: 10001;
	top: 50%;
	margin-top: -3.75em; /* 60 */
}

/* Wir brauchen anstelle das Plugin "jQuery ColorBox"
@media screen and (max-width: 49.99em ) {
	.imagelightbox-arrow {
		display: none !important;
	}
}
*/

.imagelightbox-arrow:hover,
.imagelightbox-arrow:active,
.imagelightbox-arrow:focus {
	opacity: .5;
}

.imagelightbox-arrow-left {
	left: 0; /* 40 */
}

.imagelightbox-arrow-right {
	right: 0; /* 40 */
}

#imagelightbox-loading,
#imagelightbox-overlay,
#imagelightbox-close,
#imagelightbox-caption,
#imagelightbox-nav,
.imagelightbox-arrow {
	-webkit-animation: fade-in .25s linear;
	animation: fade-in .25s linear;
}

@-webkit-keyframes fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fade-in {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

/* ------- brod -------------*/

main, article, div.entry-content {
	overflow: visible;
}



span.edit-link a {
	margin-left: 20px;
	font-size: 12px;
	color: #999;
	border-style: none;
}
