
/* ------------------------------------------------------------------------- */

@font-face {
	font-family: 'Pacifico';
	src: url('../fonts/pacifico-webfont.woff2') format('woff2'),
		 url('../fonts/pacifico-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Source Sans Pro';
	src: url('../fonts/sourcesanspro-bold-webfont.woff2') format('woff2'),
		 url('../fonts/sourcesanspro-bold-webfont.woff') format('woff');
	font-weight: bold;
	font-style: normal;
}

@font-face {
	font-family: 'Source Sans Pro';
	src: url('../fonts/sourcesanspro-it-webfont.woff2') format('woff2'),
		 url('../fonts/sourcesanspro-it-webfont.woff') format('woff');
	font-weight: normal;
	font-style: italic;
}

@font-face {
	font-family: 'Source Sans Pro';
	src: url('../fonts/sourcesanspro-regular-webfont.woff2') format('woff2'),
		 url('../fonts/sourcesanspro-regular-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Source Sans Pro Semibold';
	src: url('../fonts/sourcesanspro-semibold-webfont.woff2') format('woff2'),
		 url('../fonts/sourcesanspro-semibold-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'Source Sans Pro Light';
	src: url('../fonts/sourcesanspro-light-webfont.woff2') format('woff2'),
		 url('../fonts/sourcesanspro-light-webfont.woff') format('woff');
	font-weight: normal;
	font-style: normal;
}

/* ------------------------------------------------------------------------- */

html {
	position: relative; 
	min-height: 100%;
}

body {
	font-family: Arial, Helvetica, sans-serif;
	font-size: 17px;
	color: #303030;
	background: #f2f2f3;
}

.container {
	width: 1210px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}

/* ------------------------------------------------------------------------- */

#header {
	background-image: url('../../media/header.jpg');
	background-image: var(--header-image);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	background-color: #f2f2f3;
	text-align: center;
	height: 240px;
	min-height: 240px;
}

#header .outer {
	display: table;
	min-height: 240px;
	height: 240px;
	width: 100%;
}

#header .inner {
	display: table-cell;	
	vertical-align: middle;
	width: 100%;
}

/* ------------------------------------------------------------------------- */

#header .site-title .main-title a,
#footer .site-title .main-title a {
	font-family: Pacifico, Arial, Helvetica, sans-serif;
	color: #fff;
	/* text-shadow: 1px 1px 2px rgba(0,0,0,0.25); */
	text-shadow: 2px 2px 7px rgba(0,0,0,0.75);
	font-size: 52px;
	display: inline-block;
}

#header .site-title .main-title a:hover,
#footer .site-title .main-title a:hover {
	color: #f2f2f3;
	text-decoration: none;
}

#header .site-title .sub-title,
#footer .site-title .sub-title {
	font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
	color: #fff;
	font-size: 17px;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.55);
	font-weight: bold;
}

#footer .site-title .main-title a {
	font-size: 29px;
	line-height: 29px;
	margin-bottom: 10px;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.55);
}

#header .site-title .sub-title {
	padding: 0 20px;
	line-height: 18px;
}

#footer .site-title .sub-title {
	font-size: 16px;
	font-weight: normal;
}

/* ------------------------------------------------------------------------- */

#main {
	overflow: hidden;
	background: #fff;
	padding: 25px 25px 35px 25px;
}

#content {
	width: 73%;
	float: left;
}

#sidebar {
	width: 27%;
	float: left;
	padding: 0 0 20px 25px;
	color: #303030;
}

/* ------------------------------------------------------------------------- */

#mainmenu,
#mainmenu ul,
#mainmenu ul li,
#mainmenu ul li a {
	height: 38px;
}

#mainmenu,
#mainmenu ul,
#mainmenu ul li {
	min-height: 38px;
}

#mainmenu ul li a {
	line-height: 38px;
}

/* ------------------------------------------------------------------------- */

#mainmenu {
	background: #000001;
	background: var(--main-color-1);
	overflow: hidden;
}

#mainmenu .container {
	display: table;
}

#mainmenu ul {
	list-style-type: none;
	display: table-row;
}

#mainmenu ul li {
	display: table-cell;
	text-align: center;
	white-space: nowrap;
	overflow: hidden;
}

#mainmenu ul li a {
	font-family: 'Source Sans Pro Semibold', Arial, Helvetica, sans-serif;
	margin: 0;
	padding: 0 20px;
	font-size: 15px;
	font-weight: normal;
	color: #fff;
	display: block;
	text-transform: uppercase;
	transition: 0.2s;
}

#mainmenu ul li:last-child a {
	margin-right: 0;
}

#mainmenu ul li.selected a,
#mainmenu ul li a:hover {
	background: #858585;
	background: var(--main-color-2);
}

#mainmenu ul li a i {
	margin-right: 3px;
}

/* ------------------------------------------------------------------------- */

#submenu ul {
	list-style-type: none;
}

#submenu ul li a {
	font-family: 'Source Sans Pro Semibold', Arial, Helvetica, sans-serif;
	display: inline-block;
	font-weight: normal;
	font-size: 16px;
	color: var(--main-color-1);
	text-decoration: none;
	transition: 0.2s;
	margin-bottom: 8px;
	line-height: 20px;
}

#submenu ul li a:hover,
#submenu ul li.selected a,
#sidebar #submenu h2 a:hover {
	color: var(--main-color-2);
	text-decoration: none;
}

#sidebar #submenu a {
	font-weight: normal;
}

#sidebar #submenu a:hover {
	text-decoration: none;
}

#sidebar #submenu h2 a {
	font-weight: bold;
}

#submenu ul li.selected ul a {
	color: var(--main-color-1);
}

#submenu ul ul li {
	margin-left: 20px;
}

#submenu ul ul li a:hover,
#submenu ul ul li.selected a {
	color: var(--main-color-2);
}

/* ------------------------------------------------------------------------- */

#content .icon-list .row {
	margin-left: -10px;
	margin-right: -10px;
	display: flex;
}

#content .icon-list .col {
	padding-left: 10px;
	padding-right: 10px;
	margin-bottom: 20px;
}

#content .icon-list .icon-list-item {
	width: 100%;
	float: left;
	border: 1px solid #ccc;
    border-radius: 0px;
	margin-right: 10px;
	text-align: center;
	color: #555;
    font-size: 13px;
    font-weight: bold;
    line-height: 16px;
    text-shadow: 1px 1px 2px rgba(255, 255, 255, 1);
	background: #f6f6f6;
	padding: 25px 20px;
	overflow: hidden;
	height: 100%;
}

#content .icon-list .icon-list-item h2,
#content .icon-list .icon-list-item p {
	overflow: hidden;
    text-overflow: ellipsis;
	font-size: 18px;
	margin: 0;
	line-height: 22px;
	font-weight: bold;
	margin: 0 0 11px 0;
	color: var(--main-color-1);
}

#content .icon-list .icon-list-item:hover i,
#content .icon-list .icon-list-item:hover h2,
#content .icon-list .icon-list-item:hover p {
	color: var(--main-color-2);
}

#content .icon-list .icon-list-item i {
	color: var(--main-color-1);
	font-size: 48px;
	margin-top: 10px;
	margin-bottom: 10px;
}

/* ------------------------------------------------------------------------- */

#responsive-menu-bar {
	display: none;	
	text-align: right;
	width: 100%;
	overflow: hidden;
	background: #000001;
	background: var(--main-color-1);
	color: #fff;
}

#responsive-menu-button span.text {
	font-size: 22px;
	line-height: 27px;
	text-transform: uppercase;
	vertical-align: text-bottom;
	cursor: pointer;
	color: #fff;
}

#responsive-menu-button .hamburger {
	padding-left: 8px;
	padding-top: 10px;
	padding-bottom: 10px;
}

#responsive-menu-button .hamburger:hover {
    opacity: 1;
}

#responsive-menu-button .hamburger .hamburger-inner,
#responsive-menu-button .hamburger .hamburger-inner::after,
#responsive-menu-button .hamburger .hamburger-inner::before,
#responsive-menu-button .hamburger.is-active .hamburger-inner,
#responsive-menu-button .hamburger.is-active .hamburger-inner::after,
#responsive-menu-button .hamburger.is-active .hamburger-inner::before {
	background-color: #fff;
}

/* ------------------------------------------------------------------------- */

#responsive-menu {
	position: absolute;
	left: 0;
	right: 0;
	background: #858585;
	background: var(--main-color-1);
	display: none;
	z-index: 100;
	border-top: 1px solid #fff;
}

#responsive-menu ul {
	list-style-type: none;
}

#responsive-menu ul li {
	position: relative;
	border-bottom: 1px solid #fff;
}

#responsive-menu ul li:last-child {
	border-bottom: 0;
}

#responsive-menu ul li a {
	position: relative;
	display: block;
	font-size: 16px;
	line-height: 18px;
	padding-top: 14px;
	padding-bottom: 14px;
	padding-left: 20px;
	padding-right: 20px;
	font-weight: bold;
	color: #fff;
	text-transform: none;
	text-overflow: ellipsis;
	overflow: hidden;
	z-index: 101;
}

#responsive-menu ul li a i {
	margin-right: 2px;
}

#responsive-menu ul li.has-sub > a {
	padding-right: 70px; /* 20px right padding + 50px button width  */
}

#responsive-menu ul li .button { 
	position: absolute;
	right: 0;
	top: 0;
	width: 50px;
	text-align: center;
	cursor: pointer;
	display: inline-block;
	z-index: 102;
	padding: 0;
	background: transparent;
}

#responsive-menu ul li > .button:after{
	font-family: 'FontAwesome';
	font-size: 16px;
	line-height: 18px;
	padding-top: 14px;
	padding-bottom: 14px;
	display: inline-block;
    content: "\f067";
	color: #fff;
}

#responsive-menu ul li.open > .button:after {
    content: "\f068";
}

#responsive-menu ul li a:hover,
#responsive-menu ul li.selected > a {
	color: #fff;
	background: #000001;
	background: var(--main-color-2);
}

#responsive-menu ul ul {
	display: none;
}

#responsive-menu ul ul li {
	border-bottom: 0;
}

#responsive-menu ul ul li a {
	font-weight: normal;
	padding-left: 49px;
	text-transform: none;
}

#responsive-menu ul ul ul {
	border-top: 0;
}

#responsive-menu ul ul ul li a {
	text-transform: none;
	padding-left: 60px;
}

/* ------------------------------------------------------------------------- */

#sidebar .box {
	background: #f2f2f3;
	padding: 20px 25px;
	margin-bottom: 15px;
	overflow: hidden;
}

#sidebar .box h2,
#sidebar .box h2 a,
#content h1.recent-blog-posts {
	font-size: 19px;
	font-weight: bold;
	margin: 0 0 12px 0;
	color: var(--main-color-1);
	line-height: 22px;
}

#sidebar .box p {
	font-size: 15px;
	margin-bottom: 10px;
	line-height: 19px;
}

#sidebar .box p:last-child {
	margin-bottom: 0;
}

#sidebar .box div.image.center {
	text-align: center;
	margin-bottom: 15px;
}

#sidebar .box a {
	color: var(--main-color-1);
	text-decoration: none;
	font-weight: bold;
}

#sidebar .box a:hover {
	text-decoration: underline;
}

/* ------------------------------------------------------------------------- */

#sidebar .sidebar-image {
	width: 100%;
	margin-bottom: 15px;
}

#sidebar .sidebar-image.center {
	text-align: center;
}

#sidebar .round-sidebar-image {
	width: 240px;
	height: 240px;
	margin-left: auto;
	margin-right: auto;
	border-radius: 50%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	margin-bottom: 15px;
}

/* ------------------------------------------------------------------------- */

.button {
	padding: 10px 16px;
	text-decoration: none;
	font-weight: normal;
	display: inline-block;
	font-size: 17px;
	cursor: pointer;
	border: 0;
	color: #fff;
	background: #000001;
	background: var(--main-color-1);
	line-height: 22px;
	transition: 0.2s;
}

.button:hover {
	background: #858585;
	background: var(--main-color-2);
}

.button i {
	margin-right: 4px;
}

#content a.button,
#sidebar a.button {
	color: #fff;
}

/* ------------------------------------------------------------------------- */

#sidebar .social-links,
#footer .social-links {
	overflow: hidden;
	display: table;
	width: 100%;
	padding: 3px 0 1px 0;
}

#sidebar .social-links ul,
#footer .social-links ul {
	display: table-row;
}

#sidebar .social-links ul li,
#footer .social-links ul li {
	display: table-cell;
	text-align: center;
}

#sidebar .social-links ul li.middle-icon {
	padding: 0 10px;
}

#sidebar .social-links a,
#footer .social-links a {
	display: inline-block;
}

#sidebar .social-links .icon,
#footer .social-links .icon {
	position: relative;
	text-align: center;
	width: 0px;
	height: 0px;
	padding: 19px;
	border-top-right-radius: 20px;
	border-top-left-radius: 20px;
	border-bottom-right-radius: 20px;
	border-bottom-left-radius: 20px; 
	-moz-border-radius: 20px 20px 20px 20px;
	-webkit-border-radius: 20px 20px 20px 20px;
	-khtml-border-radius: 20px 20px 20px 20px; 
	border: 1px solid #000001;
	border: 1px solid var(--main-color-1);
}

#sidebar .social-links .icon i,
#footer .social-links .icon i {
	font-size: 22px;
	position: absolute;
	left: 7px;
	top: 8px;
}

#sidebar .social-links .icon.social,
#footer .social-links .icon.social {
	float: left;
	cursor: pointer;
	background: transparent;
	color: #000001;
	color: var(--main-color-1);
}

#sidebar .social-links .icon.social i,
#footer .social-links .icon.social i {
	color: #000001;
	color: var(--main-color-1);
}

#sidebar .social-links a:hover .icon.social i,
#footer .social-links a:hover .icon.social i {
	color: #858585;
	color: var(--main-color-2);
}

#sidebar .social-links a:hover .icon,
#footer .social-links a:hover .icon {
	border-color: #858585;
	border-color: var(--main-color-2);
}

#sidebar .social-links .icon.social.fb i,
#footer .social-links .icon.social.fb i {
	left: 12px;
	top: 8px;
}

#sidebar .social-links .icon.social.tw i,
#footer .social-links .icon.social.tw i {
	left: 10px;
}

#sidebar .social-links .icon.social.email i,
#footer .social-links .icon.social.email i {
	left: 8px;
	top: 7px;
}

/* ------------------------------------------------------------------------- */

#content p.small-font,
#sidebar p.small-font {
	font-size: 13px;
	line-height: 16px;
}

#content ul.small-font,
#sidebar ul.small-font {
	font-size: 14px;
	line-height: 18px;
}

/* ------------------------------------------------------------------------- */

#content .main-blog-teaser {
	position: relative;
	margin-bottom: 25px;
}

#content .main-blog-teaser img {
	width: 100%;
}

#content .main-blog-teaser .inner {
	position: absolute;	
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	text-align: center;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#content .main-blog-teaser .inner .blog-post-title {
	font-size: 30px;
	line-height: 32px;
	color: #fff;
	font-weight: bold;
	text-shadow: 2px 2px rgba(0, 0, 0, 0.75);
	margin-bottom: 15px;
	padding: 0 20px;
}

#content .main-blog-teaser .inner .button {
	padding-left: 30px;
	padding-right: 30px;
	font-size: 18px;
	font-weight: bold;
}

/* ------------------------------------------------------------------------- */

#content #blog-post-list .blog-post-list-item {
	margin-bottom: 20px;
}

#content #blog-post-list .blog-post-list-item .blog-post-image {
	float: left;
	width: 280px;
	margin-right: 20px;
}

#content #blog-post-list .blog-post-list-item .blog-post-image img {
	transition: 0.2s;
}

#content #blog-post-list .blog-post-list-item .blog-post-image img:hover {
	opacity: 0.8;
}

#content #blog-post-list .blog-post-list-item .blog-post-description {
	float: left;
	width: 520px;
}

#content #blog-post-list .blog-post-list-item .blog-post-description h2 {
	font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
	font-size: 21px;
	line-height: 25px;
}

#content #blog-post-list .blog-post-list-item .blog-post-description a {
	text-decoration: none;
	font-weight: normal;
}

/* ------------------------------------------------------------------------- */

#content .google-maps {
	position: relative;
    padding-bottom: 90%;
    height: 0;
    overflow: hidden;
	margin-bottom: 20px;
}

#content .google-maps iframe {
	border: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ------------------------------------------------------------------------- */

#content .video {
	margin-bottom: 20.42px;
}

#content .video.custom-video video {
	width: 100%;
	outline: none;
}

#content .video.youtube-video {
	position: relative;
	padding-bottom: 56.25%;
	padding-top: 25px; 
	height: 0; 
	overflow: hidden;
}
 
#content .video.youtube-video iframe,
#content .video.youtube-video object,
#content .video.youtube-video embed {
	border: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/* ------------------------------------------------------------------------- */

#content a {
	color: #000001;
	color: var(--main-color-1);
	text-decoration: underline;
}

#content a:hover {
	text-decoration: none;
}

#content h1 {
	font-family: 'Source Sans Pro', Arial, Helvetica, sans-serif;
	font-size: 30px;
	line-height: 32px;
	font-weight: bold;
	margin: 0 0 16px 0;
	color: #000001;
	color: var(--main-color-1);
}

#content h2 {
	font-size: 23px;
	line-height: 28px;
	font-weight: bold;
	margin: 0 0 16px 0;
	color: #000001;
	color: var(--main-color-1);
}

#content h3 {
	font-size: 20px;
	line-height: 24px;
	font-weight: bold;
	margin: 0 0 16px 0;
	color: #000001;
	color: var(--main-color-1);
}

#content h4 {
	font-size: 17px;
	line-height: 21px;
	font-weight: bold;
	margin: 0 0 16px 0;
	color: #000001;
	color: var(--main-color-1);
}

#content p,
#content ul,
#content ol,
#content blockquote {
	margin-bottom: 20.42px;
	line-height: 24px;
}

#content ul,
#content ol {
	list-style-position: outside;
	margin-left: 20px;
}

#content ul {
	list-style-type: disc;
}

#content ul ul,
#content ol ol {
	margin-top: 7px;
	margin-bottom: 0;
}

#content ul li,
#content ol li {
	margin-bottom: 7px;
}

#content ul li p,
#content ol li p {
	margin: 0;
}

#content ul li:last-child,
#content ol li:last-child {
	margin-bottom: 0;
}

/* ------------------------------------------------------------------------- */

#content .table-container {
	width: 100%;
	overflow-x: auto;
}

#content table 	{
	border: 1px solid #cbcbcb;
	margin: 0 0 20.42px 0;
	border-collapse: collapse;
	border-spacing: 0;
    empty-cells: show;
	width: 100%;
}

#content table thead {
    color: #000;
    text-align: left;
    vertical-align: bottom;
}

#content table th,
#content table thead td {
	font-weight: bold;
	background-color: #e0e0e0;
	background-color: rgba(224, 224, 224, 0.4); 
}

#content table td, 
#content table th {
	padding: 12px;
	text-align: left;
	vertical-align: top;
	border-bottom: 1px solid #cbcbcb;
}

#content table td p {
	margin: 0;
}

/* ------------------------------------------------------------------------- */

#content hr {
	border: 0;
	height: 0;
	border-top: #d3d3d3 1px solid;
	margin-top: 20.42px;
	margin-bottom: 20.42px;
}

/* ------------------------------------------------------------------------- */

#content blockquote {
	background: #f9f9f9;
	border-left: 10px solid #ccc;
	margin: 0 20px 20.42px 20px;
	padding: 10px 15px;
}

#content blockquote p {
	margin: 0;
}

/* ------------------------------------------------------------------------- */

#content a[href^="http://"]:after,
#content a[href^="https://"]:after,
#sidebar a[href^="http://"]:after,
#sidebar a[href^="https://"]:after {
	font-family: "FontAwesome";
	font-size: 0.95em;
	font-weight: normal;
    content: "\f08e";
	padding-left: 5px;
	padding-right: 2px;
	text-decoration: none;
	display: inline-block;
}

#content a[href^="http://"]:hover:after,
#content a[href^="https://"]:hover:after,
#sidebar a[href^="http://"]:hover:after,
#sidebar a[href^="https://"]:hover:after {
	text-decoration: none;
}

#content a[href $=".pdf"]:before,
#content a[href $=".zip"]:before,
#content a[href $=".doc"]:before,
#content a[href $=".docx"]:before,
#sidebar a[href $=".pdf"]:before,
#sidebar a[href $=".zip"]:before,
#sidebar a[href $=".doc"]:before,
#sidebar a[href $=".docx"]:before {
	font-family: 'FontAwesome';
	font-size: 1.1em;
	font-weight: normal;
	text-decoration: none;
	margin-right: 5px;
}

#content a[href $=".pdf"]:before,
#sidebar a[href $=".pdf"]:before {
	content: "\f1c1";
}

#content a[href $=".zip"]:before,
#sidebar a[href $=".zip"]:before {
	content: "\f1c6";
}

#content a[href $=".doc"]:before,
#content a[href $=".docx"]:before,
#sidebar a[href $=".doc"]:before,
#sidebar a[href $=".docx"]:before {
	content: "\f1c2";
}

#content a.hide-external-link-icon:after,
#sidebar a.hide-external-link-icon:after {
	display: none;
}

/* ------------------------------------------------------------------------- */

#content a.lightbox,
#content a.lightbox-gallery {
	position: relative;
	display: inline-block;
	text-decoration: none;
}

#content a.lightbox:before ,
#content a.lightbox-gallery:before  {
	font-family: 'FontAwesome';
	content: "\f002";
	color: #fff;
	font-size: 24px;
	text-shadow: 1px 1px rgba(0, 0, 0, 0.6);
	position: absolute; 
	right: 12px;
	bottom: 12px;
	display: none;
}

.no-touch #content a:hover.lightbox:before,
.no-touch #content a:hover.lightbox-gallery:before {
	display: block;
}

/* ------------------------------------------------------------------------- */

#content .image,
#content .image a {
	max-width: 100%;
	background: 0;
	padding: 0;
}

#content .image.left {
	float: left;
}

#content .image.right {
	float: right;
}

#content .image.center {
	text-align: center;
}

#content .image.float {
	width: 40%;
}

#content .image.float.left  {
	margin: 3px 15px 20px 0;
}

#content .image.float.right {
	margin: 3px 0 20px 15px;
}

#content .image.separate {
	margin: 0 0 20.42px 0;
}

#content .image.separate img,
#content .image.separate a {
	width: 100%;
}

#content .gallery {
	margin-bottom: 6px; /* 20.42px - .gallery a margin-bottom */ 
}

#content .gallery a {
	float: left;
	margin: 0 0 16px 0;
	width: 100%;
}

#content .gallery .row {
	margin: 0 -8px;
}

#content .gallery .col {
	padding: 0 8px;
}

/* ------------------------------------------------------------------------- */

#footer {
	min-height: 250px;
	background: var(--main-color-2);
	padding-top: 35px;
	color: #fff;
	font-size: 16px;
	text-align: left;
}

#footer .container {
	padding-left: 20px;
	padding-right: 20px;
}

#footer .mobile {
	display: none;
}

#footer  a {
	color: #fff;
	text-decoration: none;
	font-size: 15px;
	line-height: 19px;
}

#footer a:hover {
	text-decoration: underline;
}

#footer p {
	margin-bottom: 10px;
}

#footer .row {
	margin-left: -16px;
	margin-right: -16px;
}

#footer .col {
	padding-left: 16px;
	padding-right: 16px;
}

/* ------------------------------------------------------------------------- */

#footer .link-list ul {
	list-style-type: none;
	position: relative;
	margin-left: 0;
	padding-left: 1em;
}

#footer .link-list ul li::before {
    content: "\00BB";
	position: absolute;
	left: 0;
}

#footer .link-list ul li a {
	color: #fff;
	text-decoration: none;
	font-size: 15px;
	line-height: 19px;
	display: inline-block;
	margin-bottom: 4px;
}

#footer .link-list ul li a:hover {
	text-decoration: underline;
}

#footer .link-list  h2 {
	font-size: 16px;
	font-weight: bold;
	margin: 0 0 9px 0;
	text-transform: uppercase;
}

/* ------------------------------------------------------------------------- */

#footer #footer-bottom {
	text-align: center;
	margin-top: 30px;
	padding-bottom: 10px;
}

#footer #footer-bottom ul {
	list-style-type: none;
	display: inline-block;
	margin-bottom: 25px;
	text-align: center;
}

#footer #footer-bottom ul li {
	float: left;
	margin-left: 12px;
}

#footer #footer-bottom ul li:after {
	content: "|";
	color: #fff;
	font-size: 16px;
	font-weight: bold;
	margin-left: 12px;
}

#footer #footer-bottom ul li:last-child:after {
	content: "";
	margin-left: 0;
}

#footer #footer-bottom ul li a {
	font-size: 14px;
	color: #fff;
	font-weight: normal;
	text-decoration: underline;
	line-height: 19px;
}

#footer #footer-bottom ul li a:hover {
	text-decoration: none;
}

/* ------------------------------------------------------------------------- */

#footer .social-links {
	width: 200px;
}

#footer .social-links {
	margin-top: 15px;
	margin-bottom: 15px;
}

#footer .social-links ul li {
	text-align: left;
}

#footer .social-links .icon.social,
#footer .social-links .icon.social i,
#footer .social-links a:hover .icon.social i,
#footer .social-links a:hover .icon {
	color: #fff;
}

#footer .social-links .icon.social i {
	left: 12px;
	top: 8px;
	margin-top: 1px;
}

#footer .social-links .icon,
#footer .social-links a:hover .icon {
	border-color: #fff;
}

/* ------------------------------------------------------------------------- */

.clearer {
	clear: both;
}

.spacer {
	height: 20px;
	display: block;
	clear: both;
}

.hide { 
	display: none;
}

/* ---------------------------------------------------- */

#content .offer-list-widget .offer-list-container.hidden {
	display: none;
}

/* ---------------------------------------------------- */

#content .offer-list-widget .search-box * {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

#content .offer-list-widget .search-box {
	background-color: #cbcbcb;
	background-color: var(--offer-list-widget-search-box-bg-color);
	padding: 15px;
	border: 1px solid #ddd;
	margin-bottom: 17px;
}

#content .offer-list-widget .search-box h2 {
	color: #000;
	color: var(--offer-list-widget-search-box-headline-fg-color);
	font-size: 19px;
	font-weight: bold;
	margin: 0 0 3px 0;
	padding-bottom: 10px;
	border: 0;
	line-height: 21px;
}

#content .offer-list-widget .search-box input,
#content .offer-list-widget .search-box select {
	width: 100%;
	height: 32px;
	background-color: #fff;
	margin-bottom: 15px;
	font-size: 14px;
	font-family: Arial, sans-serif;
	color: #000;
}

#content .offer-list-widget .search-box select.empty {
	color: #747474;
}

#content .offer-list-widget .search-box input {
	border: 0;
	padding: 0 10px;
}

#content .offer-list-widget .search-box select {
	border: 0 !important;
	/* needed */
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	/* SVG background image */
	background-image: url("data:image/svg+xml;charset=UTF-8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20width%3D%2212%22%20height%3D%2212%22%20viewBox%3D%220%200%2012%2012%22%3E%3Ctitle%3Edown-arrow%3C%2Ftitle%3E%3Cg%20fill%3D%22%23000000%22%3E%3Cpath%20d%3D%22M10.293%2C3.293%2C6%2C7.586%2C1.707%2C3.293A1%2C1%2C0%2C0%2C0%2C.293%2C4.707l5%2C5a1%2C1%2C0%2C0%2C0%2C1.414%2C0l5-5a1%2C1%2C0%2C1%2C0-1.414-1.414Z%22%20fill%3D%22%23000000%22%3E%3C%2Fpath%3E%3C%2Fg%3E%3C%2Fsvg%3E");
	background-size: 11px;
	background-position: right 10px center;
	background-repeat: no-repeat;
	padding: 0 10px;
}

#content .offer-list-widget .search-box select::-ms-expand {
	display: none;
}

#content .offer-list-widget .search-box .search-button-box {
	text-align: right;
}

#content .offer-list-widget .search-box .daterange-filter,
#content .offer-list-widget .search-box .search-query-filter {
	position: relative;
}

#content .offer-list-widget .search-box .daterange-filter .clear,
#content .offer-list-widget .search-box .search-query-filter .clear {
	position: absolute;
	top: 0;
	right: 0;
	color: #000;
	text-align: center;
	cursor: pointer;
	line-height: 32px;
	width: 32px;
	height: 32px;
	background: #fff;
}

#content .offer-list-widget .search-box .daterange-filter .clear:after,
#content .offer-list-widget .search-box .search-query-filter .clear:after {
	content: "\00d7";	
	font-weight: normal;
	font-size: 20px;
}

/* ---------------------------------------------------- */

#content .offer-list-widget .button-box {
	text-align: center;
}

#content .offer-list-widget .button {
	font-family: Arial, sans-serif;
	padding: 12px 18px;
	text-decoration: none;
	font-weight: bold;
	display: inline-block;
	font-size: 16px;
	line-height: 16px;
	cursor: pointer;
	border: 0;
	color: #fff;
	color: var(--offer-list-widget-button-fg-color);
	background-color: #8c8c8c;
	background-color: var(--offer-list-widget-button-bg-color);
	border-radius: 4px;
}

/* hover style in @media (hover: hover) */
#content .offer-list-widget .button:active {
	background-color: #8c8c8c;
	background-color: var(--offer-list-widget-button-bg-color-hover);
}

#content .offer-list-widget .button i {
	margin-right: 2px;
}

#content .offer-list-widget .button.all-offers-button {
	margin: 5px 0 23px 0;
	padding: 15px 20px;
	font-size: 17px;
	line-height: 17px;
}

/* ---------------------------------------------------- */

#content .offer-list-widget .offer-list {
	padding-bottom: 10px;
}

#content .offer-list-widget .offer-list .offer {
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;

	border: 1px solid #ccc;
	position: relative;
	width: 100%;
	padding: 18px;
	height: 100%;
	overflow: hidden;
	margin-bottom: 15px;
	display: flex;
}

#content .offer-list-widget .offer-list .offer .partner-hint {
	text-align: right;
}

#content .offer-list-widget .offer-list .offer .offer-image a {
	display: block;
}

#content .offer-list-widget .offer-list .offer .offer-image {
	margin-bottom: 5px;
	width: 100%;
	height: 205px;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

#content .offer-list-widget .offer-list .offer .offer-title h3 {
	color: #4f4f4f;
	color: var(--offer-list-widget-offer-headline-fg-color);
	font-size: 20px;
	margin-bottom: 20px;
	line-height: 20px;
}

#content .offer-list-widget .offer-list .offer .left {
	float: left;
	flex: 1;
	margin-right: 30px;
}

#content .offer-list-widget .offer-list .offer .right {
	flex: 2;
	font-size: 14px;
}

#content .offer-list-widget .offer-list .offer ul,
#content .offer-list-widget .offer-list .offer p {
    margin-bottom: 20px;
    line-height: 18px;
}

#content .offer-list-widget .offer-list .offer ul li {
    margin-bottom: 7px;
}

#content .offer-list-widget .offer-list .offer .offer-price-box {
	margin-bottom: 23px;
}

#content .offer-list-widget .offer-list .offer .offer-price {
	color: #4f4f4f;
    color: var(--offer-list-widget-offer-price-fg-color);
    font-weight: bold;
	font-size: 18px;
	margin-bottom: 7px;
}

#content .offer-list-widget .offer-list .offer .offer-price span {
	font-size: 14px;
	color: #000;
}

#content .offer-list-widget .offer-list .offer .offer-price span.per-week {
	font-size: 14px;
	font-weight: normal;
	color: #303030;
}

#content .offer-list-widget .offer-list .offer .offer-image {
	text-align: center;
}

/* ---------------------------------------------------- */

#content .offer-list-widget .progress {
	text-align: center;
}

#content .offer-list-widget .progress .lds-ring {
	display: inline-block;
	position: relative;
	width: 80px;
	height: 80px; 
	padding: 10px 0;
	margin: 10px 10px 40px 10px;
}

#content .offer-list-widget .progress .lds-ring div {
	box-sizing: border-box;
	display: block;
	position: absolute;
	width: 64px;
	height: 64px;
	margin: 8px;
	border: 8px solid #8c8c8c;
	border-color: #8c8c8c transparent transparent transparent;
	border-color: var(--offer-list-widget-button-bg-color) transparent transparent transparent;
	border-radius: 50%;
	animation: lds-ring 1.2s cubic-bezier(0.5, 0, 0.5, 1) infinite;
}

#content .offer-list-widget .progress .lds-ring div:nth-child(1) {
	animation-delay: -0.45s;
}

#content .offer-list-widget .progress .lds-ring div:nth-child(2) {
	animation-delay: -0.3s;
}

#content .offer-list-widget .progress .lds-ring div:nth-child(3) {
	animation-delay: -0.15s;
}

#content .offer-list-widget .progress .lds-ring.hidden {
	display: none;
}

/* ------------------------------------------------------------------------- */

.persons-grid {
	overflow: hidden;
}

.persons-row {
	margin-left: -8px;
	margin-right: -8px;
	overflow: hidden;
}

.persons-col {
	float: left;
	padding-left: 8px;
	padding-right: 8px;
	width: 50%;
}

/* ---------------------------------------------------- */

.daterangepicker td.in-range {
	background-color: #eee;
}

.daterangepicker td.active,
.daterangepicker td.active:hover {
	background-color: #8c8c8c;
	background-color: var(--offer-list-widget-button-bg-color);
	border-radius: 4px;
}

.daterangepicker .drp-buttons .btn {
	border: 0;
	font-size: 14px;
	padding: 8px 12px;
	cursor: pointer;
	border-radius: 4px;
}

.daterangepicker .drp-buttons .btn.applyBtn {
	background-color: #8c8c8c;
	background-color: var(--offer-list-widget-button-bg-color);
	color: #fff;
}

/* hover style in @media (hover: hover) */
.daterangepicker .drp-buttons .btn.applyBtn:active {
	background-color: #8c8c8c;
	background-color: var(--offer-list-widget-button-bg-color-hover);	
}

/* ---------------------------------------------------- */

.autocomplete-suggestions { 
	font-family: Arial, sans-serif;
	-webkit-box-shadow: none; 
	-moz-box-shadow: none; 
	box-shadow: none; 
	font-size: 14px;
	line-height: 14px;
}

.autocomplete-suggestion {
	padding-top: 5px;
	padding-bottom: 5px;
}

/* ------------------------------------------------------------------------- */

@keyframes lds-ring {
	0% {
		transform: rotate(0deg);
	}
	100% {
		transform: rotate(360deg);
	}
}

/* ------------------------------------------------------------------------- */

@media (hover: hover) {
	#content a.button:hover,
	#sidebar .button:hover {
		background: var(--main-color-2);
	}

	#content a:hover.lightbox:before,
	#content a:hover.lightbox-gallery:before {
		display: block;
	}

	#content .offer-list-widget .button:hover {
		background-color: #8c8c8c;
		background-color: var(--offer-list-widget-button-bg-color-hover);
	}

	.daterangepicker .drp-buttons .btn.applyBtn:hover {
		background-color: #8c8c8c;
		background-color: var(--offer-list-widget-button-bg-color-hover);	
	}
}

/* ------------------------------------------------------------------------- */

@media screen and (max-width: 1210px) { /* container width + padding left + padding right */
	.container {
		width: 100%;
	}

	#main {
		padding: 15px 15px;
	}

	#sidebar {
		padding-left: 15px;
	}

	#content #blog-post-list .blog-post-list-item {
		display: table;
	}

	#content #blog-post-list .blog-post-list-item .blog-post-image {
		display: table-cell;
		float: none;
		padding-right: 20px;
	}

	#content #blog-post-list .blog-post-list-item .blog-post-description {
		display: table-cell;
		width: auto;
		float: none;
		vertical-align: top;
	}
}

@media screen and (max-width: 1060px) {
	#content,
	#sidebar {
		float: none;
		width: 100%;
		padding: 0;
	}

	#mainmenu {
		display: none;
	}

	#responsive-menu-bar {
		display: block;
	}

	#footer .row {
		margin-left: 0;
		margin-right: 0;
	}

	#footer .col {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
		margin-bottom: 20px;
	}

	#footer .mobile {
		display: block;
	}

	#footer .desktop {
		display: none;
	}

	#footer .container {
		text-align: center;
	}

	#footer .social-links {
		margin-left: auto;
		margin-right: auto;
	}

	#footer .social-links ul li {
		text-align: center;
	}

	#footer .link-list ul {
		padding: 0;
	}

	#footer .link-list ul li::before {
		content: "";
	}

	#footer .link-list ul li a {
		margin-bottom: 7px;
	}

	#footer #footer-bottom {
		margin-top: 20px;
	}
}

@media screen and (max-width: 760px) {
	.row {
		margin-left: 0 !important;
		margin-right: 0 !important;		
	}

	.col {
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	#sidebar .box {
		text-align: center;
	}

	#content .image, 
	#content .image a,
	#content .image img,
	#content .image.float {
		width: 100%;
	}

	#content .gallery .col,
	#content .gallery .col img {
		width: 100%;
	}

	#content .icon-list .row {
		margin-left: 0 !important;
		margin-right: 0 !important;		
		display: block; 
	}

	#content .icon-list .col {
		float: none;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-bottom: 20px;
	}

	#content .icon-list .icon-list-item {
		margin-bottom: 15px;
	}

	#content #blog-post-list .blog-post-list-item {
		display: block;
		text-align: center;
	}

	#content #blog-post-list .blog-post-list-item .blog-post-image {
		display: block;
		padding: 0;
		margin: 0 0 10px 0;
		width: 100%;
	}

	#content #blog-post-list .blog-post-list-item .blog-post-description {
		display: block;
	}

	#content .main-blog-teaser {
		height: 300px;
		background-repeat: no-repeat;
		background-size: cover;
		background-position: center;
	}

	#content .main-blog-teaser img {
		display: none;
	}

	/* ------------------------------------------------------------------------- */

	#content .offer-list-widget .button.offer-details-button {
		margin-bottom: 6px;
		width: 100%;
		text-align: center;
	}

	#content .offer-list-widget .offer-list .offer {
		display: block;
		padding: 0;
		border: 0;
	}

	#content .offer-list-widget .offer-list .offer p {
		margin-bottom: 10px;
	}

	#content .offer-list-widget .offer-list .offer .left {
		float: none;
		margin-right: 0;
	}
	#content .offer-list-widget .offer-list .offer .right {
		margin-right: 0;
	}
	
	#content .offer-list-widget .offer-list .offer .offer-image {
		margin-bottom: 15px;
	}

	#content .offer-list-widget .offer-list .offer .partner-hint {
		text-align: center;
	}

	#content .offer-list-widget .search-box h2 {
		font-size: 18px;
		line-height: 22px;
	}

	#content .offer-list-widget .search-box .grid .row {
		margin-left: 0;
		margin-right: 0;
	}

	#content .offer-list-widget .search-box .grid .col {
		width: 100%;
		padding-left: 0;
		padding-right: 0;
	}

	.daterangepicker .drp-buttons {
		padding-bottom: 0;
	}

	.daterangepicker .drp-buttons .btn {
		margin-bottom: 10px;
	}
}

@media screen and (max-width: 600px) {
	#header,
	#header .outer {
		min-height: 160px;
		height: 160px;
	}

	#header .site-title .main-title a {
		font-size: 36px;
		line-height: 43px;
		padding: 0 40px;
	}

	#header .site-title .sub-title {
		display: none;
	}

	#footer #footer-bottom ul li {
		float: none;
		margin: 0 0 10px 0;
	}

	#footer #footer-bottom ul li::after {
		display: none;
	}
}

@media screen and (max-width: 520px) {
	#header,
	#header .outer {
		min-height: 125px;
		height: 125px;
	}
}

@media screen and (max-width: 450px) {
	#content h1 {
		font-size: 28px;
		line-height: 29px;
	}

	#content h2 {
		font-size: 22px;
		line-height: 27px;
	}

	#content h3 {
		font-size: 18px;
		line-height: 22px;
	}

	#content h4 {
		font-size: 15px;
		line-height: 19px;
	}
}

/* ------------------------------------------------------------------------- */

@media print {
	* {
		background: transparent !important;
		color: #000 !important;
		border-color: #000 !important;
		text-shadow: none !important;
		box-shadow: none !important;
	}

	html,
	body {
		font-size: 12pt;
		font-family: Arial, "Times New Roman", Times, serif;
		width: 100%;
		min-width: 100%;
	}

	#header,
	#header .inner,
	#header .outer {
		height: auto;
		min-height: auto;
	}

	.container,
	#content,
	#sidebar {
		width: auto;
		margin: 0;
		padding: 0;
		float: none;
	}

	#mainmenu,
	#footer,
	#sidebar,
	#content h1.recent-blog-posts,
	#content .main-blog-teaser,
	.offer-list-widget,
	.button,
	.widget {
		display: none;
	}

	#header .site-title .main-title a {
		font-size: 42px;
	}

	#content #blog-post-list .blog-post-list-item .blog-post-image {
		margin-bottom: 10px;
	}

	#content #blog-post-list .blog-post-list-item .blog-post-description {
		width: 100%;
	}	
}

/* ------------------------------------------------------------------------- */

