/*
Theme Name: Freiwillige Feuerwehr Neulingen
Author: BG – Web, Print & Foto
Author URI: http://benjamin-gantikow.de/
Description: Theme für die Freiwillige Feuerwehr Neulingen
Version: 1.0
Text Domain: ffneulingen
*/

/**
 * 1.0 - Reset
 *
 */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {
	border: 0;
	font-family: inherit;
	font-size: 100%;
	font-style: inherit;
	font-weight: inherit;
	margin: 0;
	outline: 0;
	padding: 0;
	vertical-align: baseline;
}

html {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	font-size: 62.5%;
	overflow-y: scroll;
	-webkit-text-size-adjust: 100%;
	-ms-text-size-adjust: 100%;
}

*,
*::before,
*::after {
	-webkit-box-sizing: inherit;
	-moz-box-sizing: inherit;
	box-sizing: inherit;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
main,
nav,
section {
	display: block;
}

ol,
ul {
	list-style: none;
}

table {
	border-collapse: separate;
	border-spacing: 0;
}

caption,
th,
td {
	font-weight: normal;
	text-align: left;
}

blockquote::before,
blockquote::after,
q::before,
q::after {
	content: "";
}

blockquote,
q {
	-webkit-hyphens: none;
	-moz-hyphens: none;
	-ms-hyphens: none;
	hyphens: none;
	quotes: none;
}

a img {
	border: 0;
}

/**
 * 2.0 - Freiwillige Feuerwehr Neulingen
 *
 */

html {
	font-size: 16px;
}

body {
	background: #fff;
}

body,
button,
input,
select,
textarea {
	color: #000;
	font-family: 'Roboto', sans-serif;
	font-size: 1rem;
	line-height: 1.5;
}

h1,
h2,
h3,
h4,
h5,
h6 {
	clear: both;
	font-weight: 400;
}

p,
table {
	margin-bottom: 1.6em;
}

b,
strong {
	font-weight: 700;
}

dfn,
cite,
em,
i {
	font-style: italic;
}

a {
	color: #555;
	transition: 0.3s;
}

a:hover,
a:active,
a:focus {
	color: #000;
}

a button {
	cursor: pointer;
}

/* */

h1 {
	font-size: 3em;
	font-weight: 500;
}

h2 {
	font-size: 2em;
	font-weight: 500;
	margin: 1em 0 0.5em;
}

h3 {
	font-size: 1.5em;
	line-height: 1.3em;
	margin: 0.5em 0 1em;
}

img {
	height: auto;
	max-width: 100%;
	vertical-align: middle;
}

img.aligncenter {
	clear: both;
	display: block;
	margin: 1rem auto;
}

img.alignleft {
	float: left;
	margin: 0 2rem 1rem 0;
}

img.alignright {
	float: right;
	margin: 0 0 1rem 2rem;
}

ol,
ul {
	margin-left: 1.5em;
}

ol {
	list-style: decimal;
}

ul {
	list-style: disc;
}

.entry-content iframe {
	border: 1px solid #e5e5e5;
	margin: 1rem 0;
}

.site > header {
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
	width: 100%;
	position: relative;
	transition: padding 500ms;
}

.site > header > div > *,
.site > footer > * {
	font-weight: 400;
	margin: 0 auto;
	max-width: 1140px;
}

.site > header .nav-cnt {
	background: #fff;
	line-height: 100px;
}

.site > header .nav-cnt a {
	display: block;
	height: inherit;
}

.site > header .logo-cnt img {
	height: 80px;
}

.site > header .nav-inner-cnt {
	padding: 0 1em;
}

.site > header .nav-cnt .nav-inner-cnt > * {
	float: left;
}

.site > header .logo-cnt {
	width: 216px;
}

.site > header nav {
	line-height: 60px;
	width: calc(100% - 216px);
}

.site > header nav ul {
	margin: 0;
}

.site > header a,
.site > header label {
	color: #000;
	transition: 0.3s;
}

nav ul.nav-menu {
	height: 100px;
}

nav ul > li a:hover,
nav ul > li.current-menu-item > a,
nav ul > li.current-page-ancestor > a,
nav ul > li.more label:hover,
nav ul > li.more .nav-trigger:checked ~ label {
	color: #c00;
}

nav ul.nav-menu > li {
	color: #9d9d9d;
	display: block;
	float: left;
	padding: 0 10px;
}

nav ul > li > a {
	font-size: 1em;
	position: relative;
	text-decoration: none;
}

nav ul.nav-menu > li > a,
nav ul.nav-menu > li.more label {
	margin: 20px 0;
	padding: 0 10px;
	text-transform: uppercase;
}

nav ul.nav-menu li.highlight > a {
	background-color: rgba(245, 171, 53, 0.3);
}

.site > header nav .menu-item-has-children > a::after {
	content: "\f0d7";
	cursor: pointer;
	display: inline-block;
	font: normal normal normal 14px/1 "Font Awesome 5 Free";
	font-size: inherit;
	font-weight: 900;
	margin-left: 3px;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0, 0);
}

.site > header nav .menu-item-has-children:hover > a {
	color: #c00;
}

.site > header nav .menu-item-has-children:hover ul.sub-menu {
	display: block;
}

.site > header nav ul.sub-menu {
	background: #fff;
	box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
	display: none;
	position: absolute;
	z-index: 100;
}

.site > header nav ul.sub-menu > li {
	display: block;
	line-height: 1.5em;
	white-space: nowrap;
}

.site > header nav ul.sub-menu > li + li {
	border-top: 1px solid #ccc;
}

.site > header nav ul.sub-menu > li > a {
	padding: 0.5em 1em;
}

.site > header nav ul.sub-menu > li.highlight > a {
	background: none;
}

.site > header nav ul.sub-menu > li.highlight {
	background-color: rgba(245, 171, 53, 0.3);
}

nav ul > li.more {
	padding: 0;
	position: relative;
}

nav ul > li.more.hidden {
	display: none;
}

nav ul > li.more label {
	display: inline-block;
	padding: 0 20px;
	cursor: pointer;
}

nav ul > li.more .nav-trigger:checked ~ ul.sub-menu {
	display: block;
}

nav ul > li.more label::after {
	background: #9f9f9f;
	border-radius: 20px;
	color: #f2f2f2;
	content: attr(count);
	min-width: 10px;
	padding: 2px 8px;
	position: relative;
	text-align: center;
	top: -15px;
}

nav ul > li.more ul.sub-menu {
	right: 0;
}

nav ul > li.more .menu-item-has-children > a::after {
	display: none;
}

.nav-trigger {
	display: none;
	cursor: pointer;
}

.header-cnt {
	max-width: 1140px;
}

.content-area { overflow: auto; }

main {
	margin-left: auto;
	margin-right: auto;
	max-width: 1140px;
}

header.page-header,
article > header.entry-header {
	margin-top: 3em;
	margin-bottom: 3em;
}

article .header-cnt {
	margin-left: 0.6em;
}

article .header-cnt h1 {
	line-height: 1em;
}

article .header-cnt h2 {
	font-size: 1em;
	line-height: 1.5em;
	margin: 0;
}

.entry-content > section,
.entry-content > div.parallax {
	max-width: none;
}

.clearfix::after,
.row::after {
	content: "";
	display: table;
	clear: both;
}

::-moz-selection { background-color: #ea5340; color: #fff; }
::selection { background-color: #ea5340; color: #fff; }

/* Buttons */

.btn,
input[type="submit"],
input[type="reset"],
button {
	background-color: transparent;
	border: 2px solid #222;
	border-radius: 4px;
	color: #222;
	cursor: pointer;
	display: inline-block;
	font-family: inherit;
	font-size: 1em;
	font-style: normal;
	font-weight: 400;
	line-height: 42px;
	padding: 0 1.5em;
	position: relative;
	text-align: center;
	text-decoration: none;
	transition: color 0.1s linear 0s, background-color 0.1s linear 0s, border-color 0.1s linear 0s;
	white-space: nowrap;
	-webkit-appearance: none;
}

.btn:hover,
input[type="submit"]:hover,
input[type="reset"]:hover,
button:hover,
a:hover button,
a:hover .btn,
.btn:active,
input[type="submit"]:active,
input[type="reset"]:active,
button:active,
a:active button,
a:active .btn {
	border-color: #ea5340;
	color: #ea5340;
	text-decoration: none;
}

.btn.white { color: #fff; border-color: #fff; }
.btn.white:hover { color: #fff; }
.btn.transparent:hover { background-color: rgba(255, 255, 255, 0.25); }
.btn.inline, input[type="submit"].inline, input[type="reset"].inline, button.inline { line-height: 32px; }

/* Inputs */

select,
textarea,
input[type="text"],
input[type="password"],
input[type="datetime"],
input[type="datetime-local"],
input[type="date"],
input[type="month"],
input[type="time"],
input[type="week"],
input[type="number"],
input[type="email"],
input[type="url"],
input[type="search"],
input[type="tel"],
input[type="color"] {
	background-color: #fafafa;
	background-image: none;
	border-width: 0;
	border-bottom-width: 2px;
	border-color: #cfd8dc;
	border-radius: 0;
	border-style: solid;
	color: #222;
	font-size: 1em;
	height: 36px;
	outline: none;
	padding: 0 0.5rem;
	resize: none;
	transition: border-color 0.15s ease-in-out 0s, box-shadow 0.15s ease-in-out 0s;
	width: 100%;
}

select:hover,
textarea:hover,
input[type="text"]:hover,
input[type="password"]:hover,
input[type="datetime"]:hover,
input[type="datetime-local"]:hover,
input[type="date"]:hover,
input[type="month"]:hover,
input[type="time"]:hover,
input[type="week"]:hover,
input[type="number"]:hover,
input[type="email"]:hover,
input[type="url"]:hover,
input[type="search"]:hover,
input[type="tel"]:hover,
input[type="color"]:hover {
	background-color: #f5f5f5;
	border-color: #ea5340;
}

select:active,
textarea:active,
input[type="text"]:active,
input[type="password"]:active,
input[type="datetime"]:active,
input[type="datetime-local"]:active,
input[type="date"]:active,
input[type="month"]:active,
input[type="time"]:active,
input[type="week"]:active,
input[type="number"]:active,
input[type="email"]:active,
input[type="url"]:active,
input[type="search"]:active,
input[type="tel"]:active,
input[type="color"]:active,
select:focus,
textarea:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus {
	background-color: #f0f0f0;
	border-color: #ea5340;
}

input::-moz-placeholder { font-style: italic; }
input::-webkit-input-placeholder { font-style: italic; }

input::-ms-clear {
	margin-right: 1em;
}

input[type="search"] {
	-webkit-appearance: none;
}

select {
	cursor: pointer;
	-moz-appearance: none;
	-ms-appearance: none;
	-webkit-appearance: none;
	appearance: none;
}

select::-ms-expand {
    display: none;
}

textarea {
	height: auto;
	overflow: auto;
	padding-bottom: 8px;
	padding-top: 8px;
}

/* Labels */

.comments-area label,
.wpcf7 label {
	display: block;
	margin-bottom: 5px;
}

/* Form Icons */

.form-group input { padding-right: 2rem; }

.form-group.icon { position: relative; }

.form-group.icon::before {
	color: #6c6c6c;
	pointer-events: none;
	position: absolute;
	right: 10px;
	text-decoration: inherit;
	top: 6px;
	z-index: 2;
}

.form-group.icon.text::before { content: "\f141"; font-weight: 900; }
.form-group.icon.location::before { content: "\f124"; font-weight: 900; }
.form-group.icon.date::before { content: "\f073"; }
.form-group.icon.email::before { content: "\f1fa"; font-weight: 900; }
.form-group.icon.phone::before { content: "\f095"; font-weight: 900; }
.form-group.icon.search::before { content: "\f002"; font-weight: 900; }
.form-group.icon.select::before { content: "\f107"; font-weight: 900; }
.form-group.icon.password::before { content: "\f023"; font-weight: 900; }
.form-group.icon.number::before { content: "\f338"; font-weight: 900; }

/* Icons */

.icon::before {
	display: inline-block;
	font-family: "Font Awesome 5 Free";
	font-size: inherit;
	font-weight: 400;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	transform: translate(0, 0);
}

.fa.bs-menu::before {
	content: "\f0c9";
}

.nav-trigger:checked ~ .site header .fa.bs-menu::before {
	content: "\f00d";
}

/* Footer */

.site > footer {
	background: #ea5340;
	color: #222;
	margin-top: 50px;
	padding: 2em 0;
}

.site > footer .footer-cnt {
	display: flex;
	flex-wrap: wrap;
}

.site > footer ::-moz-selection {
	background-color: #fff;
	color: #000;
}

.site > footer ::selection {
	background-color: #fff;
	color: #222;
}

.site > footer .footer-cnt > div {
	align-items: stretch;
	flex: 1 1 33%;
	padding: 0 1rem 2rem;
}

.site > footer h3 { margin: 0 0 1em; }

.site > footer ul { list-style: none; margin: 0; }
.site > footer ul li + li { margin-top: 1rem; }

.site > footer .icon.phone {
	color: #fff;
	font-size: 3em;
	line-height: 2em;
	margin-bottom: 1em;
	padding-left: 60px;
	position: relative;
}

.site > footer .icon.phone::before {
	content: "\f879";
	font-size: 6rem;
	font-weight: 900;
	left: 0;
	position: absolute;
	top: 10px;
	text-shadow: 5px 0 0 rgba(255, 255, 255, 0.3);
	transform: rotate(20deg);
}

.site > footer .icon.phone h4 {
	font-weight: 500;
	text-shadow: 3px 2px 0 rgba(255, 255, 255, 0.3);
}

.site > footer .icon.phone p {
	font-size: 1rem;
	font-weight: 500;
	line-height: 1em;
	padding-left: 45px;
}

.site > footer .social-networks .btn {
	display: inline-block;
	font-size: 0.85rem;
	line-height: 1;
	margin: 0.25rem 0;
	padding: 0;
	text-align: left;
}

.site > footer .social-networks .btn:hover { border-color: #000; color: #000; }

.site > footer .social-networks .btn img { border-radius: 1px; height: 35px; }
.site > footer .social-networks .btn span { display: none; padding: 0 0.5rem; }

.site > footer .social-networks.ismobile .btn { display: block; margin: 0.5rem 0; }
.site > footer .social-networks.ismobile .btn span { display: inline-block; }

.site > footer .social-networks .btn.ios,
.site > footer .social-networks .btn.android { display: none; }

.site > footer .social-networks.ismobile.ios .btn.ios { display: block; }
.site > footer .social-networks.ismobile.android .btn.android { display: block; }

.site > footer .search-form { margin-top: 1rem; }
.site > footer .search-form .form-group { display: inline-block; }

.site > footer .search-form input { background-color: #fff; border-color: #999; }
.site > footer .search-form input:hover { border-color: #555; }

/* Blog - Index, Search & Sonstiges */

body.index article > a,
body.search article > a,
body.single article .entry-navigation a {
	align-items: stretch;
	display: flex;
	flex: 1 1 50%;
	overflow: hidden;
	text-decoration: none;
}

body.index article > a,
body.search article > a,
body.single article .entry-navigation a,
body.single article .author-info .author-description {
	background-color: #fff;
	border-radius: 3px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
	border-top: 1px solid #f5f5f5;
}

body.index article > a:hover,
body.search article > a:hover,
body.single article .entry-navigation a:hover {
	background-color: #fafafa;
}

body.index article .entry-thumbnail,
body.search article .entry-thumbnail,
body.single article .entry-navigation a .entry-thumbnail {
	background-position: center;
	background-size: cover;
	flex: 0 0 20%;
}

body.index article .entry-title,
body.search article .entry-title { margin: 0; }

body.index article header h2,
body.search article header h2 { margin-top: 0; }

body.index article .entry-content,
body.search article .entry-content { margin-top: 1em; }

.entry-meta > span + span::before { content: " | "; }

/* Blog - Single */

body.single article.has-post-thumbnail header {
	margin-top: 0;
	padding: 0;
}

body.single article.post.has-post-thumbnail header {
	height: 400px;
	overflow: hidden;
	padding-top: 0;
	position: relative;
}

body.single article.post.has-post-thumbnail header .text-cnt {
	bottom: 10%;
	position: absolute;
	text-align: center;
	text-shadow: 1px 2px 3px rgba(0, 0, 0, 0.5);
	width: 100%;
	z-index: 100;
}

body.single article.post.has-post-thumbnail header .text-cnt,
body.single article.post.has-post-thumbnail header .text-cnt a { color: #fff; }

body.single article.post.has-post-thumbnail header .text-cnt > * { margin: 0 2rem; }

body.single article.post header .entry-thumbnail {
	background-position: center;
	background-size: cover;
	-webkit-filter: blur(5px) grayscale(0.5);
	filter: blur(5px) grayscale(0.5);
	height: 100%;
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	transition: all 0.5s;
}

body.single article.post header:hover .entry-thumbnail {
	filter: none;
	transform: none;
}

body.single article.post .entry-navigation .navigation-cnt {
	display: flex;
	justify-content: center;
}

body.single article.post .entry-navigation h2,
body.single article.post .entry-navigation .navigation-cnt a {
	margin-left: 1rem;
	margin-right: 1rem;
}

body.single article .entry-navigation a.prev .entry-thumbnail { order: 1; }
body.single article .entry-navigation a.next .entry-thumbnail { order: -1; }

body.index article .entry-container,
body.search article .entry-container,
body.single article .entry-navigation a .entry-container {
	padding: 1rem 1.5rem;
	flex: 1 1 75%;
}

body.single article .entry-navigation a.prev .button { order: -1; }
body.single article .entry-navigation a.next .button { order: 1; }

body.single article .entry-navigation a .entry-container .entry-content {
	font-size: 0.8em;
}

body.single article .entry-navigation a .button {
	align-items: center;
	background: #ff804f;
	color: #fff;
	display: flex;
	flex: 0 1 7%;
	text-align: center;
}

body.single article .entry-navigation a .button::before {
	font-size: 3rem;
	width: 100%;
}

body.single article .entry-navigation a.next .button::before { content: "\f105"; font-weight: 900; }
body.single article .entry-navigation a.prev .button::before { content: "\f104"; font-weight: 900; }

body.single article .author-info {
	padding-bottom: 1rem;
	padding-top: 1rem;
}

body.single article .author-info .author-description { padding: 1rem; }
body.single article .author-info .author-description h3 { margin: 0 0 0.5em; }
body.single article .author-info .author-description p { margin: 0; }

/* Kommentare */

.comments-area ul { list-style-type: none; margin: 0; }
.comments-area .comment-list li { padding: 1rem; }

.comments-area .comment-list article { border-bottom: 2px solid #ccc; }
.comments-area .comment-list article:hover { border-color: #ea5340; }

/* Teaser */

article .entry-content table { border-collapse: collapse; }

article .entry-content table,
article .entry-content table td {
	border: 2px solid #cfd8dc;
}

article .entry-content table td { padding: 0.5rem 1rem; }

/* Teaser */

.teaser a {
	background-color: #fff;
	border-radius: 3px;
	border-top: 1px solid #f5f5f5;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
	display: block;
	overflow: hidden;
	text-decoration: none;
}

.teaser a:hover {
	background-color: #fafafa;
}

.teaser .image-cnt img {
	width: 100%;
}

.teaser .text-cnt {
	padding: 1.5em;
}

.teaser .text-cnt > * {
	margin: 0;
}

.teaser .text-cnt > * + * {
	margin-top: 1em;
}

.teaser .text-cnt h2 {
	line-height: 1.2em;
}

/* Einsätze */

.accordion h2 {
	margin: 0;
}

.accordion h3 {
	margin-bottom: 0;
}

.accordion p {
	margin: 0;
}

.accordion p ~ ul {
	margin-top: 1em;
}

.accordion section + section {
	margin-top: 1em;
}

.accordion label {
	display: block;
	cursor: pointer;
	position: relative;
}

.accordion label:hover,
.accordion section > div.content > ul > li:hover {
	background: #fcfcfc;
	border-color: #ea5340;
}

.accordion label::before {
	content: "\f054";
	font-size: 1.2rem;
	font-weight: 900;
	padding-left: 0.5em;
	position: relative;
	top: -3px;
	width: 1.5em;
}

.accordion label:hover::before {
	content: "\f078";
	padding-left: 0.3em;
}

.accordion div.content {
	display: none;
}

.accordion section > label {
	border-bottom: 2px solid #cfd8dc;
}

.accordion section > div.content {
	padding: 0 2em;
}

.accordion section > div.content > ul {
	list-style-type: none;
	margin: 0;
}

.accordion section > div.content > ul > li {
	border-bottom: 2px solid #cfd8dc;
}

.accordion section > div.content div.content {
	margin: 0 2em 1em;
}

.accordion label * {
	display: inline-block;
}

.accordion section > div.content label {
	padding: 1em 0;
}

.accordion section > div.content label * {
	display: block;
	margin-left: 2rem;
	margin-right: 2rem;
}

.accordion section > div.content label::before {
	padding-top: 1rem;
	position: absolute;
}

.accordion input[type="checkbox"] {
	display: none;
}

.accordion input[type="checkbox"]:checked ~ div.content {
	display: block;
}

.accordion input[type="checkbox"]:checked ~ label,
.accordion section > div.content > ul > li input[type="checkbox"]:checked ~ li {
	border-color: #ea5340;
}

.accordion input[type="checkbox"]:checked ~ label::before {
	color: #ea5340;
	content: "\f078";
	padding-left: 0.3em;
}

/* Error 404 */

.error404 .content-area { text-align: center; }
.error404 .content-area .page-content img { width: 100%; }
.error404 .content-area .page-content img + p { margin-top: 2rem; }
.error404 .content-area .page-content form > * { display: inline-block; }

/* Events - Liste */

.event-cnt {
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
}

.event-cnt > div {
	padding-bottom: 1rem;
	padding-top: 1rem;
}

.event-item {
	background: #ffffff;
	border-radius: 3px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
	display: block;
	height: 100%;
	overflow: hidden;
	text-decoration: none;
}

.event-item:hover {
    background-color: #fafafa;
}

.event-item .content {
	padding: 1.5em;
}

.event-item .content > * {
	margin: 0;
}

.event-item .content > * + * {
	margin: 0.7em 0 0;
}

.event-item .content h2 {
	font-size: 1.2em;
	margin: 0.15em 0 0;
}

.event-item .content h3 {
	color: #ffb74d;
	font-size: 0.9em;
}

.event-item .content p {
	font-size: 0.9em;
}

/* Events - Suchformular */

div.css-search {
	padding: 1em;
}

div.css-search input,
div.css-search select {
	display: inline-block;
	height: 36px;
	padding: 0 12px;
}

div.css-search div.em-search-text,
div.css-search div.em-search-geo {
	background: none;
	margin: 0;
	padding-left: 0;
}

div.css-search input[type="text"] {
	background-color: #fff;
	border: 1px solid #cfd8dc;
	border-radius: 0;
	border-width: 0 0 2px;
	box-shadow: none;
	font-size: 1em !important;
	line-height: 1.2em !important;
	width: 100% !important;
}

div.css-search input[type="text"]:hover,
div.css-search input[type="text"]:active,
div.css-search input[type="text"]:focus {
	background-color: #fcfcfc;
	border-color: #66afe9;
}

div.css-search input::-moz-placeholder {
	color: inherit !important;
	font-size: inherit !important;
	padding: inherit !important;
}

div.css-search .form-group {
	margin-bottom: 1em;
}

div.css-search div.em-search-main .form-group,
div.css-search div.em-search-advanced .form-group {
	display: inline-block;
	margin-right: 1em;
	vertical-align: middle;
	width: 40%;
}

div.css-search button {
	line-height: 2em;
	padding: 0 1.5em;
}

div.css-search.has-advanced div.em-search-main {
	border-bottom: 2px dotted #cfd8dc;
	margin-bottom: 1em;
	padding-bottom: 1em;
}

div.css-search div.em-search-advanced,
div.css-search div.em-search-options {
	padding: 0;
}

div.css-search div.em-search-advanced > * + * {
	margin-top: 1em;
}

div.css-search div.em-search-advanced label {
	display: inline-block;
	float: none;
	min-width: 0;
}

div.css-search select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	border-width: 0 0 2px 0;
	box-shadow: none;
	outline: none;
	width: 100%;
}

/* Widget Google Maps */

.so-panel.widget_sow-google-map p { margin: 0; }

/* Grid */

.panel-grid-cell,
article > .entry-header,
body.single .entry-content > *,
body.single .entry-footer,
body.single .author-info,
body.single .comments-area,
.site > footer {
	padding-left: 1rem;
	padding-right: 1rem;
}

.panel-grid-cell > * {
	padding-bottom: 2rem;
}

/* Media Queries */

@media only screen and (max-width: 1024px) {
	/*.panel-grid,
	.panel-grid-cell {
		margin: 0 !important;
	}

	.so-panel {
		padding-top: 30px;
	}

	.entry-content:first-child .so-panel.panel-first-child.master-slider-main-widget,
	.entry-content:first-child .so-panel.panel-first-child.widget_sow-google-map {
		padding-top: 0;
	}*/

	.master-slider.ms-skin-default .ms-nav-prev,
	.master-slider.ms-skin-default .ms-nav-next {
		top: 30%;
	}
}

@media only screen and (max-width: 980px) {
	header.page-header,
	header.entry-header,
	.entry-content > *,
	.entry-footer,
	.author-info,
	.comments-area,
	.site > footer {
		padding-left: 1rem;
		padding-right: 1rem;
	}

	body.single article.post .entry-navigation > h2,
	body.single article.post .entry-navigation .navigation-cnt > a {
		margin-left: 1rem;
		margin-right: 1rem;
	}

	.site > footer .footer-cnt > div {
		flex-basis: 50%;
		padding-bottom: 1rem;
		padding-top: 1rem;
	}

	body.single article .entry-navigation a { flex-direction: column; flex-grow: 1; }

	body.single article .entry-navigation a .entry-thumbnail { flex: none; height: 100px; }
	body.single article .entry-navigation a.prev .entry-thumbnail { order: -1; }
	body.single article .entry-navigation a.next .entry-thumbnail { order: -1; }

	body.single article .entry-navigation a .button { flex: none; font-size: 0.6em; height: 40px; }
	body.single article .entry-navigation a.prev .button { order: 1; }
	body.single article .entry-navigation a.next .button { order: 1; }
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1024px) and (orientation: landscape) {
	.master-slider.ms-skin-default .ms-nav-prev,
	.master-slider.ms-skin-default .ms-nav-next {
		top: 35%;
	}
}

@media only screen and (max-width: 767px) {
	/*body.page .entry-content > * { padding: 0; }*/

	.site > header nav ul.sub-menu ul.sub-menu {
		display: none !important;
	}

	.nav-trigger:checked ~ .site header nav {
		display: block;
	}

	iframe {
		width: 100%;
	}

	body.index article a {
		display: block;
	}

	body.index article .entry-thumbnail {
		height: 200px;
		width: 100%;
	}

	body.single article.post.has-post-thumbnail header .text-cnt > * {
		margin: 0 1rem;
	}

	.entry-meta > span { display: block; }
	.entry-meta > span + span::before { content: ''; }

	div.css-search div.em-search-main .form-group,
	div.css-search div.em-search-advanced .form-group {
		width: calc(50% - 1em - 2px);
	}

	.master-slider.ms-skin-default .ms-nav-prev,
	.master-slider.ms-skin-default .ms-nav-next {
		font-size: 3rem;
		top: 30%;
	}

	.master-slider.ms-skin-default .ms-bullets .ms-bullet {
		height: 7px;
		width: 7px;
	}

	.master-slider.ms-skin-default .ms-slide-info {
		font-size: 0.9em;
	}
}

@media only screen and (max-width: 600px) {
	body.single article .entry-navigation .navigation-cnt { flex-direction: column; }
	body.single article .entry-navigation a { flex: none; }
	body.single article .entry-navigation a + a { margin-top: 1rem; }

	.site > footer .footer-cnt > div {
		flex-basis: 100%;
	}

	.site > footer .footer-cnt > div + div::before {
		border-top: 1px solid #222;
		content: "\00a0";
		display: block;
		height: 0;
		margin: 0 auto;
		padding-bottom: 1rem;
		width: 75%;
	}
}

@media only screen and (max-width: 500px) {
	.entry-content > ul,
	.entry-content > ol {
		padding-left: 10%;
	}

	div.css-search div.em-search-main .form-group,
	div.css-search div.em-search-advanced .form-group {
		width: 100%;
	}
}

/* Forms */

form ul {
	margin: 0;
}

form > * + *,
form li + li {
	margin-top: 1.5em;
}

form li {
	list-style-type: none;
}

/* Contact Form 7 */

.wpcf7 .label,
.wpcf7 .wpcf7-not-valid-tip {
	line-height: 2em;
	padding: 0 0.5em;
}

/* WP User Manager */

*[class^=wpum-] label {
	display: block;
	margin-bottom: 5px;
}

/* BOOOOOOTSTRAP */

*[class*="col-"] {
	padding: 0 1rem;
	min-height: 1px;
}

*[class*="col-xs-"] {
	float: left;
}

.col-xs-12 { width: 100%; }
.col-xs-11 { width: 91.66666667%; }
.col-xs-10 { width: 83.33333333%; }
.col-xs-9 { width: 75%; }
.col-xs-8 { width: 66.66666667%; }
.col-xs-7 { width: 58.33333333%; }
.col-xs-6 { width: 50%; }
.col-xs-5 { width: 41.66666667%; }
.col-xs-4 { width: 33.33333333%; }
.col-xs-3 { width: 25%; }
.col-xs-2 { width: 16.66666667%; }
.col-xs-1 { width: 8.33333333%; }

.col-xs-pull-12 { right: 100%; }
.col-xs-pull-11 { right: 91.66666667%; }
.col-xs-pull-10 { right: 83.33333333%; }
.col-xs-pull-9 { right: 75%; }
.col-xs-pull-8 { right: 66.66666667%; }
.col-xs-pull-7 { right: 58.33333333%; }
.col-xs-pull-6 { right: 50%; }
.col-xs-pull-5 { right: 41.66666667%; }
.col-xs-pull-4 { right: 33.33333333%; }
.col-xs-pull-3 { right: 25%; }
.col-xs-pull-2 { right: 16.66666667%; }
.col-xs-pull-1 { right: 8.33333333%; }
.col-xs-pull-0 { right: auto; }

.col-xs-push-12 { left: 100%; }
.col-xs-push-11 { left: 91.66666667%; }
.col-xs-push-10 { left: 83.33333333%; }
.col-xs-push-9 { left: 75%; }
.col-xs-push-8 { left: 66.66666667%; }
.col-xs-push-7 { left: 58.33333333%; }
.col-xs-push-6 { left: 50%; }
.col-xs-push-5 { left: 41.66666667%; }
.col-xs-push-4 { left: 33.33333333%; }
.col-xs-push-3 { left: 25%; }
.col-xs-push-2 { left: 16.66666667%; }
.col-xs-push-1 { left: 8.33333333%; }
.col-xs-push-0 { left: auto; }

.col-xs-offset-12 { margin-left: 100%; }
.col-xs-offset-11 { margin-left: 91.66666667%; }
.col-xs-offset-10 { margin-left: 83.33333333%; }
.col-xs-offset-9 { margin-left: 75%; }
.col-xs-offset-8 { margin-left: 66.66666667%; }
.col-xs-offset-7 { margin-left: 58.33333333%; }
.col-xs-offset-6 { margin-left: 50%; }
.col-xs-offset-5 { margin-left: 41.66666667%; }
.col-xs-offset-4 { margin-left: 33.33333333%; }
.col-xs-offset-3 { margin-left: 25%; }
.col-xs-offset-2 { margin-left: 16.66666667%; }
.col-xs-offset-1 { margin-left: 8.33333333%; }
.col-xs-offset-0 { margin-left: 0; }

@media (min-width: 768px) {
	*[class*="col-sm-"] {
		float: left;
	}

	.col-sm-12 { width: 100%; }
	.col-sm-11 { width: 91.66666667%; }
	.col-sm-10 { width: 83.33333333%; }
	.col-sm-9 { width: 75%; }
	.col-sm-8 { width: 66.66666667%; }
	.col-sm-7 { width: 58.33333333%; }
	.col-sm-6 { width: 50%; }
	.col-sm-5 { width: 41.66666667%; }
	.col-sm-4 { width: 33.33333333%; }
	.col-sm-3 { width: 25%; }
	.col-sm-2 { width: 16.66666667%; }
	.col-sm-1 { width: 8.33333333%; }

	.col-sm-pull-12 { right: 100%; }
	.col-sm-pull-11 { right: 91.66666667%; }
	.col-sm-pull-10 { right: 83.33333333%; }
	.col-sm-pull-9 { right: 75%; }
	.col-sm-pull-8 { right: 66.66666667%; }
	.col-sm-pull-7 { right: 58.33333333%; }
	.col-sm-pull-6 { right: 50%; }
	.col-sm-pull-5 { right: 41.66666667%; }
	.col-sm-pull-4 { right: 33.33333333%; }
	.col-sm-pull-3 { right: 25%; }
	.col-sm-pull-2 { right: 16.66666667%; }
	.col-sm-pull-1 { right: 8.33333333%; }
	.col-sm-pull-0 { right: auto; }

	.col-sm-push-12 { left: 100%; }
	.col-sm-push-11 { left: 91.66666667%; }
	.col-sm-push-10 { left: 83.33333333%; }
	.col-sm-push-9 { left: 75%; }
	.col-sm-push-8 { left: 66.66666667%; }
	.col-sm-push-7 { left: 58.33333333%; }
	.col-sm-push-6 { left: 50%; }
	.col-sm-push-5 { left: 41.66666667%; }
	.col-sm-push-4 { left: 33.33333333%; }
	.col-sm-push-3 { left: 25%; }
	.col-sm-push-2 { left: 16.66666667%; }
	.col-sm-push-1 { left: 8.33333333%; }
	.col-sm-push-0 { left: auto; }

	.col-sm-offset-12 { margin-left: 100%; }
	.col-sm-offset-11 { margin-left: 91.66666667%; }
	.col-sm-offset-10 { margin-left: 83.33333333%; }
	.col-sm-offset-9 { margin-left: 75%; }
	.col-sm-offset-8 { margin-left: 66.66666667%; }
	.col-sm-offset-7 { margin-left: 58.33333333%; }
	.col-sm-offset-6 { margin-left: 50%; }
	.col-sm-offset-5 { margin-left: 41.66666667%; }
	.col-sm-offset-4 { margin-left: 33.33333333%; }
	.col-sm-offset-3 { margin-left: 25%; }
	.col-sm-offset-2 { margin-left: 16.66666667%; }
	.col-sm-offset-1 { margin-left: 8.33333333%; }
	.col-sm-offset-0 { margin-left: 0; }
}

@media (min-width: 992px) {
	*[class*="col-md-"] {
		float: left;
	}

	.col-md-12 { width: 100%; }
	.col-md-11 { width: 91.66666667%; }
	.col-md-10 { width: 83.33333333%; }
	.col-md-9 { width: 75%; }
	.col-md-8 { width: 66.66666667%; }
	.col-md-7 { width: 58.33333333%; }
	.col-md-6 { width: 50%; }
	.col-md-5 { width: 41.66666667%; }
	.col-md-4 { width: 33.33333333%; }
	.col-md-3 { width: 25%; }
	.col-md-2 { width: 16.66666667%; }
	.col-md-1 { width: 8.33333333%; }

	.col-md-pull-12 { right: 100%; }
	.col-md-pull-11 { right: 91.66666667%; }
	.col-md-pull-10 { right: 83.33333333%; }
	.col-md-pull-9 { right: 75%; }
	.col-md-pull-8 { right: 66.66666667%; }
	.col-md-pull-7 { right: 58.33333333%; }
	.col-md-pull-6 { right: 50%; }
	.col-md-pull-5 { right: 41.66666667%; }
	.col-md-pull-4 { right: 33.33333333%; }
	.col-md-pull-3 { right: 25%; }
	.col-md-pull-2 { right: 16.66666667%; }
	.col-md-pull-1 { right: 8.33333333%; }
	.col-md-pull-0 { right: auto; }

	.col-md-push-12 { left: 100%; }
	.col-md-push-11 { left: 91.66666667%; }
	.col-md-push-10 { left: 83.33333333%; }
	.col-md-push-9 { left: 75%; }
	.col-md-push-8 { left: 66.66666667%; }
	.col-md-push-7 { left: 58.33333333%; }
	.col-md-push-6 { left: 50%; }
	.col-md-push-5 { left: 41.66666667%; }
	.col-md-push-4 { left: 33.33333333%; }
	.col-md-push-3 { left: 25%; }
	.col-md-push-2 { left: 16.66666667%; }
	.col-md-push-1 { left: 8.33333333%; }
	.col-md-push-0 { left: auto; }

	.col-md-offset-12 { margin-left: 100%; }
	.col-md-offset-11 { margin-left: 91.66666667%; }
	.col-md-offset-10 { margin-left: 83.33333333%; }
	.col-md-offset-9 { margin-left: 75%; }
	.col-md-offset-8 { margin-left: 66.66666667%; }
	.col-md-offset-7 { margin-left: 58.33333333%; }
	.col-md-offset-6 { margin-left: 50%; }
	.col-md-offset-5 { margin-left: 41.66666667%; }
	.col-md-offset-4 { margin-left: 33.33333333%; }
	.col-md-offset-3 { margin-left: 25%; }
	.col-md-offset-2 { margin-left: 16.66666667%; }
	.col-md-offset-1 { margin-left: 8.33333333%; }
	.col-md-offset-0 { margin-left: 0; }
}

@media (min-width: 1200px) {
	*[class*="col-lg-"] {
		float: left;
	}

	.col-lg-12 { width: 100%; }
	.col-lg-11 { width: 91.66666667%; }
	.col-lg-10 { width: 83.33333333%; }
	.col-lg-9 { width: 75%; }
	.col-lg-8 { width: 66.66666667%; }
	.col-lg-7 { width: 58.33333333%; }
	.col-lg-6 { width: 50%; }
	.col-lg-5 { width: 41.66666667%; }
	.col-lg-4 { width: 33.33333333%; }
	.col-lg-3 { width: 25%; }
	.col-lg-2 { width: 16.66666667%; }
	.col-lg-1 { width: 8.33333333%; }

	.col-lg-pull-12 { right: 100%; }
	.col-lg-pull-11 { right: 91.66666667%; }
	.col-lg-pull-10 { right: 83.33333333%; }
	.col-lg-pull-9 { right: 75%; }
	.col-lg-pull-8 { right: 66.66666667%; }
	.col-lg-pull-7 { right: 58.33333333%; }
	.col-lg-pull-6 { right: 50%; }
	.col-lg-pull-5 { right: 41.66666667%; }
	.col-lg-pull-4 { right: 33.33333333%; }
	.col-lg-pull-3 { right: 25%; }
	.col-lg-pull-2 { right: 16.66666667%; }
	.col-lg-pull-1 { right: 8.33333333%; }
	.col-lg-pull-0 { right: auto; }

	.col-lg-push-12 { left: 100%; }
	.col-lg-push-11 { left: 91.66666667%; }
	.col-lg-push-10 { left: 83.33333333%; }
	.col-lg-push-9 { left: 75%; }
	.col-lg-push-8 { left: 66.66666667%; }
	.col-lg-push-7 { left: 58.33333333%; }
	.col-lg-push-6 { left: 50%; }
	.col-lg-push-5 { left: 41.66666667%; }
	.col-lg-push-4 { left: 33.33333333%; }
	.col-lg-push-3 { left: 25%; }
	.col-lg-push-2 { left: 16.66666667%; }
	.col-lg-push-1 { left: 8.33333333%; }
	.col-lg-push-0 { left: auto; }

	.col-lg-offset-12 { margin-left: 100%; }
	.col-lg-offset-11 { margin-left: 91.66666667%; }
	.col-lg-offset-10 { margin-left: 83.33333333%; }
	.col-lg-offset-9 { margin-left: 75%; }
	.col-lg-offset-8 { margin-left: 66.66666667%; }
	.col-lg-offset-7 { margin-left: 58.33333333%; }
	.col-lg-offset-6 { margin-left: 50%; }
	.col-lg-offset-5 { margin-left: 41.66666667%; }
	.col-lg-offset-4 { margin-left: 33.33333333%; }
	.col-lg-offset-3 { margin-left: 25%; }
	.col-lg-offset-2 { margin-left: 16.66666667%; }
	.col-lg-offset-1 { margin-left: 8.33333333%; }
	.col-lg-offset-0 { margin-left: 0; }
}