
/* -------------------------- Google Maps ----------------------------- */

div#map {
	max-width: 1100px;
	margin: 0 auto 5px auto;
	height: 500px;
	display: none;
	box-shadow: 0px 0px 18px 0px rgba(0, 0, 0, 0.23); 
}

div#map div.infowindow {
	font-weight: 500;
	width: 200px;
	padding: 10px;
}

div#map div.infowindow h2 {
	font-weight: 300;
	font-size: 20px;
	margin: 0 0 3px 0;
}

div#map div.infowindow a {
	font-weight: 500;
}


/* -------------------------- Overview ----------------------------- */

div#module_overview {
	margin: 0 0 10px 0;
}

div#module_overview div.overview_item {
	margin: 0 0 15px 0;
	padding: 0 0 15px 0;
	border: none;
	border-bottom: 1px solid #e5e5e5;
}

div#module_overview div.overview_item:last-child {
	margin: 0;
	padding: 0;
	border: none;
}

div#module_overview div.overview_item_with_picture  div.resource_container {
	margin: 3px 15px 0 0;
	padding: 0;
	float: left;
}

div#module_overview div.overview_item_with_picture div.resource_container div.picture {
	margin: 0 0 5px 0;
}

div#module_overview div.overview_item_with_picture div.resource_container div.picture img {
	width: 220px !important;
	height: 150px !important;
}

div#module_overview div.overview_item div.content {
	overflow: hidden;
	float: none;
	line-height: 26px;
	display: block;
	padding: 0 0 0 5px;
}

div#module_overview div.overview_item_with_picture  div.content p {
	margin: 0 0 9px 0;
}

div#module_overview div.overview_item  h2 a,
div#module_overview div.overview_item  h2 {
	font: 500 22px/ 26px 'Roboto', Verdana, Arial, sans-serif;
	margin: 0 0 5px 0;
	padding: 0;
	color: #444;
}

div#module_overview div.overview_item  h2 a:hover {
	color: #373b9e;
}

div#module_overview div.overview_item div.content h2 a {
	margin: 0;
}

div#module_overview div.overview_item  div.content div.introduction {
	font: 500 18px/ 22px 'Roboto', Verdana, Arial, sans-serif;
	margin: 0 0 3px 0;
	padding: 0;
	color: #555;
}

div#module_overview ul.overview {
	margin: 0;
	padding: 0;
	list-style: none;
}

div#module_overview ul.overview li {
	margin: 0 0 20px 0;
}

div#module_overview ul.overview li a {
	font: 500 22px/ 26px 'Roboto', Verdana, Arial, sans-serif;
	margin: -4px 0 0 0;
	padding: 0;
	color: #444;
	text-decoration: none;
}

.listing_entry .listing-content,
.overview_item .content {
	overflow: auto;
}


/* -------------------------- Listing ----------------------------- */

div.module-listing div.listing_entry {
	margin: 5px 0 0 0;
	padding: 15px 0 0 0;
	border-top: 1px solid #e5e5e5;
}

div.module-listing div.listing_index_0 {
	border: none;
	padding: 0;
}

div#content div.module-listing div.listing_entry div.resource_container {
	margin: 5px 20px 10px 0;
	padding: 0;
}

div#content div.module-listing div.listing_entry div.resource_container div.picture {
	margin: 0 0 10px 0;
}

div#content div.module-listing div.listing_entry div.resource_container div.picture img {
	width: 220px !important;
	height: 150px !important;
}

div.module-listing div.listing_entry h2 a,
div.module-listing div.listing_entry h2 {
	font: 500 22px/ 26px 'Roboto', Verdana, Arial, sans-serif;
	margin: 0 0 5px 0 !important;
	padding: 0;
	color: #444;
}

div.listing_detail_description_button {
	overflow: hidden;
}
div.listing_detail_description_button > div {
	display: inline;
}

div.module-listing div.listing_entry h2 a:hover {
	color: #373b9e;
}

div.module-listing div.listing_entry  h2 a {
	margin: 0;
}

div.module-listing div.listing_entry div.listing_content_container {
	overflow: hidden;
}

div.module-listing div.listing_entry div.listing_content_container p {
	margin: 0 0 9px 0;
}

div.module-listing div.listing_entry div.listing-content-text {
	margin: 0 0 15px 0;
	line-height: 26px;
}

div#content div.listing_entry_backlink a,
div.module-listing div.listing_entry a.listing-more-button {
	background: #666EC3 none;
	text-decoration: none;
	font-weight: 900;
	margin: -5px 0 15px 0;
	padding: 5px 12px;
	display: inline-block;
	color: #fff;
	-webkit-transition: all 0.2s ease-out;
	   -moz-transition: all 0.2s ease-out;
	     -o-transition: all 0.2s ease-out;
	        transition: all 0.2s ease-out;
}

div#content div.listing_entry_backlink a:hover,
div.module-listing div.listing_entry a.listing-more-button:hover {
	background: #373B9E none;
}

div#content div.listing_entry_backlink a {
	margin-top: 10px;
}

div#content div.listing_entry_detail_pictures div.resource_container {
	margin: 6px -10px 0 0;
	padding: 0;
}

div.listing_entry .listing-date {
	color: #8c8c8c;
	margin-bottom: 5px;
}


/* ------------- Pagination ------------- */

div.module-listing div.pagination {
	clear: both;
}

div#module_mailform div.pagination,
div.module-listing div.pagination {
	background: none;
	overflow: hidden;
	margin: 0 0 10px 0;
}

div#module_mailform div.pagination div.pagination-links a, 
div.module-listing div.pagination div.pagination-links a,
div#module_mailform div.pagination div.pagination-numbers a,
div.module-listing div.pagination  div.pagination-numbers a {
	background: #666EC3 none;
	color: #fff !important;
	border-color: #fff;
	padding: 6px 12px;
	font-weight: 700;
	font-size: 14px;
	text-decoration: none;
	border: 1px solid #fff;
	-webkit-transition: all 0.2s ease-out;
	   -moz-transition: all 0.2s ease-out;
	     -o-transition: all 0.2s ease-out;
	        transition: all 0.2s ease-out;
}

div#module_mailform div.pagination div.pagination-numbers a:hover,
div.module-listing div.pagination  div.pagination-numbers a:hover,
div#module_mailform div.pagination div.pagination-links a:hover, 
div.module-listing div.pagination div.pagination-links a:hover,
div#module_mailform div.pagination div.pagination-numbers a.current:hover,
div.module-listing div.pagination  div.pagination-numbers a.current:hover, 
div#module_mailform div.pagination div.pagination-numbers a.current,
div.module-listing div.pagination  div.pagination-numbers a.current{
	background: #373B9E none;
	color: #fff!important;	
	border-color: #fff;
}


div#module_mailform div.pagination div.pagination-links a.inactive,
div.module-listing div.pagination div.pagination-links a.inactive {
	display: none;
}


/* -------------------------- Mailform ----------------------------- */

div.login_form input,
div#module_mailform div.mailform_element input {
	width: 250px;
}

div#module_mailform div.mailform_element textarea {
	width: 400px;
	height: 150px;
}
div.login_form  label,
div#module_mailform label {
	width: 140px;
	float: left;
	padding: 6px 0;
}

div#module_mailform div.mailform_element p {
	margin: 0 0 15px 0;
}

div.login_form input,
div#module_mailform div.mailform_element textarea,
div#module_mailform div.mailform_element input {
	border: 1px solid #ddd;
	background: #f6f6f6;
	font-family: 'Roboto';
	font-weight: 300;
	font-size: 14px;
	outline: none;
	padding: 6px;
}

div.login_form input:hover,
div#module_mailform div.mailform_element textarea:hover,
div#module_mailform div.mailform_element input:hover {
	border-color: #D4D6EE;
	background: #F8F9FC none;
	color: #676ec3;
}

div.login_form input:focus,
div#module_mailform div.mailform_element textarea:focus,
div#module_mailform div.mailform_element input:focus {
	border-color: #bbbfe9;
	background: #edeef8 none;
	color: #676ec3;
}

input.action_button.button,
a.add_portlet_link.button,
div.login_form input.button,
div#module_mailform div#mailform_submit_button input {
	background: #666EC3 none;
	border: 1px solid #666EC3;
	text-decoration: none;
	font-weight: 700;
	font-size: 14px;
	padding: 7px 12px;
	display: inline-block;
	color: #fff;
	width: auto;
	outline: none;
	cursor: pointer;
	-webkit-appearance: none;
	-webkit-transition: all 0.2s ease-out;
	   -moz-transition: all 0.2s ease-out;
	     -o-transition: all 0.2s ease-out;
	        transition: all 0.2s ease-out;
}
input.action_button.button:hover,
a.add_portlet_link.button:hover,
div.login_form input.button:hover,
div#module_mailform div#mailform_submit_button input:hover {
	background: #373B9E none;
	border-color: #373B9E;
}

div#module_mailform table.table {
	table-layout: auto;
}

/* --- checkbox --- */

div#module_mailform .mailform_element.checkbox_field {
	position: relative;
}
div#module_mailform .mailform_element.checkbox_field p {
	width: calc(100% - 140px);
	float: right;
	position: relative;
}
div#module_mailform .mailform_element.checkbox_field input {
	width: 20px;
	height: 20px; 
	float: left;
	margin: 3px 10px 0 0;
	opacity: 0; 
	position: relative; 
	cursor: pointer;
	z-index: 10;
}
div#module_mailform .mailform_element.checkbox_field label {
	width: auto; 
	float: none; 
	overflow: hidden;
	cursor: pointer;
	display: block;
	padding: 0;
}
div#module_mailform .mailform_element.checkbox_field label:after,
div#module_mailform .mailform_element.checkbox_field label:before {
	content: '\f0c8';
	position: absolute; 
	top: 2px; 
	left: 2px; 
	width: 20px; 
	height: 20px; 
	font-size: 20px; 
	line-height: 20px;
	pointer-events: none;
	color: #aaa;
	font-family: 'Font Awesome\ 5 Pro';
	font-weight: 300;
	z-index: 2;
	-webkit-transition: all 0.3s ease-out;
	   -moz-transition: all 0.3s ease-out;
	     -o-transition: all 0.3s ease-out;
	        transition: all 0.3s ease-out;
}
div#module_mailform .mailform_element.checkbox_field label:after {
	content: '\f14a';
	font-family: 'Font Awesome\ 5 Pro';
	opacity: 0; 
	visibility: hidden;
	font-weight: 700;
	color: #373B9E;
	z-index: 4;
}
div#module_mailform .mailform_element.checkbox_field input:checked + label:before {
	color: #373B9E;
}
div#module_mailform .mailform_element.checkbox_field input:checked + label:after {
	opacity: 1; 
	visibility: visible;
}

