/***********************************************************************************
*	Design by Moxxie Design
*	All rights reserved (c) 2020
***********************************************************************************/
/***********************************************************************************
*	Fonts
***********************************************************************************/
@font-face {
	font-family: 'Lato'; 
	
	src:url('../assets/fonts/lato.eot'),
		  url('../assets/fonts/lato.woff') format('woff'), 
		  url('../assets/fonts/lato.ttf') format('truetype'), 
		  url('../assets/fonts/lato.otf') format('opentype'), 
		  url('../assets/fonts/lato.svg#lato') format('svg');
	font-weight: bold;
	font-style: normal;
	font-display: swap;
}
  
@font-face {
	font-family: 'Lato';
	
	src:url('../assets/fonts/latolight.eot'),
		  url('../assets/fonts/latolight.woff') format('woff'), 
		  url('../assets/fonts/latolight.ttf') format('truetype'), 
		  url('../assets/fonts/latolight.otf') format('opentype'), 
		  url('../assets/fonts/latolight.svg#latolight') format('svg');
	font-weight: normal;
	font-style: normal;
	font-display: swap;
}

@font-face {
  font-family: 'FAwesome';
  
  font-weight: 200;
  font-style: normal;
  src:url('../assets/fonts/font-awesome.eot'),
		url('../assets/fonts/font-awesome.woff') format('woff'), 
		url('../assets/fonts/font-awesome.ttf') format('truetype'), 
		url('../assets/fonts/font-awesome.otf') format('opentype'), 
		url('../assets/fonts/font-awesome.svg#font-awesome') format('svg');
}

@font-face {
  font-family: 'FAwesome-brands';
  
  font-weight: 200;
  font-style: normal;
  src:url('../assets/fonts/font-awesome-brands.eot'),
		url('../assets/fonts/font-awesome-brands.woff') format('woff'), 
		url('../assets/fonts/font-awesome-brands.ttf') format('truetype'), 
		url('../assets/fonts/font-awesome-brands.otf') format('opentype'), 
		url('../assets/fonts/font-awesome-brands.svg#font-awesome-brands') format('svg');
}

/***********************************************************************************
*	General
***********************************************************************************/
* {
	font-family: "Lato", Verdana, sans-serif;
	scroll-behavior: smooth;
}

a {
	color: rgba(237, 28, 36, 1);
	font-family: "Lato";
}

p {
	color: rgba(70, 60, 60, 1);
	font-family: "Lato";

	font-size: 1.05em;
}

p:only-child {
	margin-bottom: 0px;
}

p.tagline {
	text-align: center;
}

h1 {
	font-variant: small-caps;
	color: rgba(60, 60, 60, 1);
}

h2 {
	margin: 40px 0px 20px 0px;

	font-family: "Lato";
	color: rgba(237, 28, 36, 1);

	font-size: 2em;
	line-height: 0.9em;
	text-transform: uppercase;
	text-align: center;

	border: none;
}

h2 a {
	font-size: 0.5em;
	color: rgba(175, 35, 35, 1);
}

h2.center {
	text-align: center;
}

h3 {
	font-size: 1.4em;
	line-height: 1em;
	
	margin: 40px 0px 10px 0px;
	
	font-family: "Lato";
	font-variant: small-caps;
	text-align: left;
	
	color: rgba(237, 28, 36, 1);
}

blockquote {
	display: block;
	padding: 0px 20px;
	margin-bottom: 20px;
	
	text-align: center;
	
	box-sizing: border-box;
	color: rgba(237, 28, 36, 1);
}

blockquote p {
	font-size: 1.2em;
	font-style: italic;
	
	color: rgba(237, 28, 36, 1);
	text-align: justify !important;
}

blockquote cite {
	text-align: justify !important;
}

img.rounded,
figure.rounded img {
	border-radius: 100%;
}

.title-404,
.notification-404 {
	display: block;

	text-align: center;
	margin: auto;
}

/***********************************************************************************
*	Wrappers
***********************************************************************************/
#wrapper {
	width: 100%;
	height: 100%;

	box-sizing: border-box;
	
	display: flex;
	flex-direction: column;
}

#wrapper.home {
	padding-top: 100vh;
}

#header-wrapper {
	width: 100%;

	position: fixed;
	top: 0px; 
	left: 0px;
	right: 0px;

	z-index: 9999999999;
	transition: all 0.2s ease-in-out;
}

#content-wrapper {
	width: 100%;
	padding-top: 41px;
	
	flex: 1 0 auto;
	box-sizing: border-box;
}

#content-wrapper.front {
	padding-top: 0px;
}

#footer-wrapper {
  flex-shrink: 0;
}

/***********************************************************************************
*	Logo
***********************************************************************************/
#logo-container {	
	width: 100VW;
	background-color: rgba(255, 255, 255, 1);

	margin: auto;
	display: block;
	
	box-sizing: border-box;
	
	z-index: 10;
	text-align: left;

	border-style: solid;
	border-width: 0px 0px 1px 0px;
	border-color: rgba(237, 28, 36, 1);
}

#wrapper.home #logo-container {
	border: none;
}

#wrapper.home.scrolling #logo-container {
	border-style: solid;
	border-width: 0px 0px 1px 0px;
	border-color: rgba(237, 28, 36, 1);
}

#logo-container .scrolling-title {
	display: block;
	font-size: 0px;
	line-height: 10px;

	position: absolute;
	top: 17px; left: 40px;

	color: rgba(150, 150, 150, 1);
	text-transform: uppercase;

	opacity: 0;
	pointer-events: none;
	transition: 0.1s all ease-out;
}

#wrapper.scrolling .scrolling-title {
	opacity: 1;
	transition: 0.4s all ease-out;
}

#logo-container .inner {
	width: 100%;
	height: 100%;

	max-width: 960px;
	margin: auto;

	padding: 10px;
	box-sizing: border-box;
	text-align: left;
}

#logo-container .logo {
	width: auto;
	height: 20px;
	margin: 0px auto;

	display: block;

	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;

	transition: 0.2s all ease-out;
}

#wrapper.scrolling .logo {
	width: auto;
	height: 20px;

	margin: 0px auto;
}

.quick-contact-home {
	display: none;
}

#wrapper.scrolling .quick-contact-home {
	opacity: 0;
}

.languages {
	position: absolute;
	top: 10px; left: 10px;

	display: flex;
	flex-direction: row;
	gap: 10px;
}

.languages a {
	display: block;
	text-transform: uppercase;

	background-size: 70%;
	transition: 0.2s all ease-out;
}

.languages li.current-lang a {
	color: rgba(0, 0, 0, 0.5);
	pointer-events: none;
}

.social-contacts a:hover,
.social-contacts a:focus {
	background-color: rgba(237, 28, 36, 1);
}

.social-contacts a.social-facebook {
	background-image: url('../assets/images/social_facebook.png');
}

.social-contacts a.social-phone {
	background-image: url('../assets/images/social_phone.png');
}

.social-contacts a.social-whatsapp {
	background-image: url('../assets/images/social_whatsapp.png');
}

.social-contacts a.social-whatsapp.desktop {
	display: none;
}

.social-contacts a.social-contact {
	background-image: url('../assets/images/social_contact.png');
}

/***********************************************************************************
*	Navigation
***********************************************************************************/
body.menu-open {
	overflow: hidden !important;
}

body.menu-open #announcements,
body.menu-open #header-wrapper #logo-container,
body.menu-open #hero-front,
body.menu-open #content-wrapper,
body.menu-open #footer-wrapper {
	opacity: 0.4 !important;
	pointer-events: none !important;
}

#navigation {
	width: 125px;
	height: 60px;
	
	position: fixed;
	top: 0px;
	right: 0px;
	
	z-index: 1000;
	display: block;

	z-index: 11;
	overflow: auto;
}

#navigation.is-active {
	width: 100%;
	position: fixed;
	bottom: 0px;

	padding-top: 70px;
	height: auto;

	background-color: rgba(60, 60, 60, 1);
	overflow: auto;
}

#navigation .hamburger {
	width: 40px;
	height: 40px;
	
	position: absolute;
	top: 0px; right: 0px;
	
	z-index: 20;
	cursor: pointer;
	
	background-color: rgba(0, 0, 0, 1);
}

.hamburger--slider:not(.is-active) .hamburger-inner {
	top: 4px;
}

.hamburger--slider:not(.is-active) .hamburger-inner::before {
	top: 8px;
}

.hamburger--slider:not(.is-active) .hamburger-inner::after {
	top: 16px;
}

#navigation .hamburger .menu-label {	
	position: absolute;
	top: 0px; right: 100%;
	
	margin: 0px;
	padding: 8px 12px 8px 12px;
	font-size: 17px;
	line-height: 24px;
	
	z-index: 20;
	cursor: pointer;
	
	text-transform: uppercase;
	color: rgba(255, 255, 255, 1);
	background-color: rgba(60, 60, 60, 1);
}

#navigation .hamburger-inner,
#navigation .hamburger-inner:before,
#navigation .hamburger-inner:after {
	background-color: rgba(255, 255, 255, 1);
}

#navigation .menu {
	width: 100%;
	max-width: 100%;
	
	z-index: 1000;
	
	display: none;
	color: rgba(60, 60, 60, 1);
	background-color: rgba(255, 255, 255, 1);
}

#navigation .menu li {
	border-style: solid;
	border-width: 1px 0px 0px 0px;

	background-color: rgba(60, 60, 60, 1);
	border-color: rgba(0, 0, 0, 1);
}

#navigation .menu > li {
	border-width: 1px 0px 0px 1px;
}

#navigation .menu > li:last-of-type {
	border-width: 1px 0px 0px 1px;
}

#navigation .menu li:hover > a,
#navigation .menu li:focus > a {
	color: rgba(255, 255, 255, 1);
	background-color: rgba(0, 0, 0, 1);
}

#navigation .menu a {
	width: 100%;
	padding: 30px 20px;
	display: block;
	
	font-size: 1.2em;
	font-variant: small-caps;
	color: rgba(255, 255, 255, 1);
	
	transition: all 0.2s linear;
	box-sizing: border-box;
}

#navigation .menu a:hover,
#navigation .menu a:focus {
	text-decoration: none;
	color: rgba(255, 255, 255, 1);
	
	transition: all 0.2s linear;
}

#navigation .menu ul.sub-menu a {
	padding: 10px 10px 10px 40px;
}

#navigation .menu-logo {
	display: block;
	
	width: 100px;
	max-width: 100%;
	
	position: absolute;
	bottom: 20px; right: 20px;
	
	display: none;
}

#navigation .menu-logo img {
	width: 100%;
}

#navigation .sub-menu li:last-of-type {
	border-width: 1px 0px 0px 0px;
}

/***********************************************************************************
*	Front Page
***********************************************************************************/
.hero {
	width: 100%;

	position: absolute;
	top: 0; bottom: 0;
	left: 0; right: 0;
	
	opacity: 0.5;
}

.hero .inner {
	position: absolute;
	top: 141px; bottom: 0px;
	left: 0px; right: 0px;

	background-size: cover;
	background-attachment: fixed;
	background-position: top center;
	background-color: rgba(0, 0, 0, 0.3);
  	background-repeat: no-repeat;
}

#wrapper #hero-front {
	opacity: 1;
	display: block;

	padding: 40px 20px;
	box-sizing: border-box;

	overflow: hidden;
}

.hero-content-container {
	width: calc(100% - 40px);
	margin: 20px;
	padding: 20px;

	background-color: rgba(237, 28, 36, 1);
	border-radius: 10px;

	box-sizing: border-box;
}

.hero-content-container h2 {
	margin: 0px 0px 10px 0px;

	font-size: 1.2em;
	font-family: "Lato";
	text-align: left;

	color: rgba(255, 255, 255, 1);
}

.hero-content-container p {
	margin: 0px 0px 10px 0px;
	color: rgba(255, 255, 255, 1);
}

.hero-content-container a {
	display: inline;
	float: right;

	padding: 8px 12px;
	border-radius: 20px;

	color: rgba(237, 28, 36, 1);
	background-color: rgba(255, 255, 255, 1);

	transition: 0.2s all ease-out;
}

.hero-content-container a:hover,
.hero-content-container a:focus {
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.5);
	color: rgba(255, 255, 255, 1);
}

.hero .front-arrow {
    width: 100px;
    height: 100px;
	
    position: absolute;
    left: 50%; bottom: 0px;
    margin-left: -50px;
	
    background-size: cover;
    background-repeat: no-repeat;
    background-image: url('../assets/images/bounce_arrow.gif');
	
	cursor: pointer;
}

/***********************************************************************************
*	Hero sub
***********************************************************************************/
.hero-sub {
	width: 100%;
	padding: 20px 20px;
	margin-bottom: 0px;

	box-sizing: border-box;

	background-color:rgba(237, 28, 36, 1);
}

.hero-sub:empty {
	display: none !important;
}

.hero-sub p {
	width: 100%;
	max-width: 960px;
	margin: 0px auto;

	font-weight: bold;
	text-align: center;

	color: rgba(255, 255, 255, 1);
}

.hero-sub i {
	margin-right: 10px;
	font-size: 1em;
}

/***********************************************************************************
*	Front content
***********************************************************************************/
#front-container {
	width: 100%;
	box-sizing: border-box;
}

#front-container .front-section {
	width: 100%;
	padding: 20px;
	margin-top: 0px;
	
	box-sizing: border-box;
}

#front-container .front-section:first-of-type {
	margin-top: 0px;
}
#front-container .front-section > .inner {
	width: 100%;
	max-width: 960px;
	margin: 0px auto;

	padding: 20px;
	box-sizing: border-box;
}

#front-container .front-section h2 {
	margin-top: 0px;
	margin-bottom: 30px;
}

#front-container .front-section h2::after {
	width: 100px;
	margin-left: -50px;

	content: " ";
	
	position: absolute;
	bottom: -10px; left: 50%;

	border-style: solid;
	border-color: rgba(237, 28, 36, 1);
	border-width: 0px 0px 1px 0px;
}

#front-container .front-section > p {
	margin: 0px auto 20px auto;
	text-align: center;
}

/***********************************************************************************
*	News
***********************************************************************************/
.news-item {
	width: 100%;
	box-sizing: border-box;
}

.news-item .news-inner-container {
	width: 100%;
	padding: 10px;

	display: flex;
	flex-direction: column;

	gap: 40px;
	box-sizing: border-box;
}

.news-item .news-images,
.news-item .news-content {
	width: 100%;
}

.news-item .news-images a {
	width: 100%;
	padding-top: 100%;

	display: none;

	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;

	background-color: rgba(240, 240, 240, 1);

	box-sizing: border-box;
}

.news-item .news-images a:first-of-type {
	display: block;
}

.news-item .news-content h3 {
	margin-top: 0px;
	margin-bottom: 30px;

	color: rgba(60, 60, 60, 1);
}

.news-item .news-content h3::after {
	width: 20%;
	height: 1px;

	content: ' ';
	display: block;
	position: relative;

	bottom: -20px;

	background-color: rgba(237, 28, 36, 1);
}

.news-item .news-content span {
	display: block;
	top: -35px;

	font-size: 0.6em;
	color: rgba(120, 120, 120, 1);
}

#news-slider .slick-arrow.slick-prev,
#news-slider .slick-arrow.slick-next {
	width: 40px;
	height: 80px;
}

#news-slider .slick-arrow.slick-prev {
	left: -45px;
	background-color: rgba(237, 28, 36, 1);
}

#news-slider .slick-arrow.slick-next {
	right: -45px;
	background-color: rgba(237, 28, 36, 1);
}

#news-slider .slick-arrow.slick-next::before,
#news-slider .slick-arrow.slick-prev::before {
	color: rgba(255, 255, 255, 1);
}

/***********************************************************************************
*	Content
***********************************************************************************/
#page {
	padding: 20px 20px 20px 20px;
	
	display: flex;
	flex-wrap: wrap;

	gap: 20px;
	row-gap: 20px;

	align-items: center;
	justify-content: center;
}

#page.error-404 {
	display: block;
}

#page .page-inner {
	width: 100%;
}
	
#content-backdrop {
	width: 100%;
	
	position: fixed;
	top: 0px; bottom: 0px;
	
	background-color: rgba(255, 255, 255, 1);
}

#page .mox-children {
	width: 100%;
	padding: 0px;
	
	display: flex;
	flex-wrap: wrap;
	
	list-style-type: none;
	
	align-items: center;
	justify-content: left;
}

#page .mox-children li {
	position: relative;
	top: 0px;

	margin: 5px;
	flex-basis: calc(50% - 10px);
	
	box-sizing: border-box;
	list-style-type: none;

	background-color: rgba(60, 60, 60, 1);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center center;
}

#page .mox-children li:hover,
#page .mox-children li:focus {
	top: -5px;
	transition: all 0.2s ease-out;
}

#page .mox-children li::before {
	width: 100%;
	padding-top: 100%;
	display: block;
	
	content: "";
	pointer-events: none;
}

#page .mox-children li a {
	text-align: center;
	padding: 70% 20px 0px 20px;
	
	position: absolute;
	top: 0px; bottom: 0px;
	left: 0px; right: 0px;
	
	background-size: 50%;
	background-repeat: no-repeat;
	background-position: center center;
	
	font-size: 1.2em;
	line-height: 1em;
	font-family: "Lato";
	color: rgba(255, 255, 255, 1);
	transition: all 0.2s linear;
}

#page .mox-children li a span {
	padding: 10px 20px;
	color: rgba(60, 60, 60, 1);
	background-color:rgba(237, 28, 36, 1);

	position: absolute;
	bottom: 20px;
	left: 0px;
	right: 0px;

	box-sizing: border-box;
}

#page .mox-children li a.no-logo {
	background-image: url('../assets/images/logo_white.svg');
}

#page .mox-children li a:hover,
#page .mox-children li a:focus {
	text-decoration: none;	
	background-position: center 48%;	
	transition: all 0.2s linear;
}

#page.single-content {
	padding: 20px 20px 90px 20px;
	flex-direction: column;
	flex-wrap: nowrap;

	gap: 20px;
	row-gap: 20px;

	justify-content: center;
	align-items: center;
	text-align: center;
}

#page h2 {
	clear: both;
	float: none;
}

#page figure {
	width: 100%;
	margin: 10px 0px;
}

#page img.float-left,
#page figure.float-left {
	width: 30%;
	
	float: left;
	margin: 0px 10px 10px 0px;
}

#page img.float-right,
#page figure.float-right {
	width: 30%;
	
	float: right;
	margin: 0px 0px 10px 10px;
}

#page img.float-center,
#page figure.float-center {
	width: 10%;
	
	margin: 50px auto 10px auto;
	
	float: none;
	clear: both;
}

#page img.float-center:first-child,
#page figure.float-center:first-child {
	margin: 0px auto 10px auto;
}

#page figure img {
	width: 100%;
}

#page .wp-block-image.hexagon img {
	height: 100%;
}

.button-container {
	width: 100%;
	padding: 15px;
	box-sizing: border-box;
	
	text-align: center;
}

#content .page-title {
	width: 100%;

	padding: 0px 20px;
	margin-bottom: 40px;

	box-sizing: border-box;

	text-align: center;
	color: rgba(237, 28, 36, 1);

	word-break: break-word;
}

#content .page-title::after {
	width: 100px;
	margin-left: -50px;

	content: " ";
	
	position: absolute;
	bottom: -10px; left: 50%;

	border-style: solid;
	border-color: rgba(237, 28, 36, 1);
	border-width: 0px 0px 1px 0px;
}

#content .page-title span {
	display: block;
	color: rgba(60, 60, 60, 1);

	font-size: 0.5em;
}

.button {
	width: 100%;
	margin: auto auto;
	display: inline-block;
	
	text-align: center;
	font-family: "Lato";
	text-decoration: none;
	color: rgba(255, 255, 255, 1);
	box-sizing: border-box;
	
	padding: 15px 15px 10px 15px;
	background-color: rgba(237, 28, 36, 1);
	border-radius: 50px;
	
	transition: all 0.2s linear;
	text-transform: uppercase;
	font-weight: bold;
}

.button:hover,
.button:focus {
	text-decoration: none;
	background-color: rgba(60, 60, 60, 1);
	
	transition: all 0.2s linear;
}

#page .wp-block-media-text figure {
	margin: 0px;
}

.wp-block-media-text img {
	display: block;
}

#page .wp-block-media-text > div {
	padding: 5px;
	
	position: absolute;
	top: 5px; right: 5px;
}

#page .wp-block-media-text > div a {	
	margin: 0px;
}

#page ul,
.front-section ul {
	padding-left: 20px;
	margin-bottom: 20px;
}

#page ul li,
.front-section ul li {
	color: rgba(70, 60, 60, 1);
	font-family: "Lato";
	
	list-style-type: disc;
}

.fancybox-navigation {
	width: 100%;
	height: 100px;
	
	position: absolute;
	top: 50%; margin-top: -50px;
}

.hide-title {
	display: none;
}

#page .page-content {
	width: 100%;
	text-align: left;
}

/***********************************************************************************
*	Partners
***********************************************************************************/
#partner-container {
	width: 100%;
	max-width: 960px;
	margin: 60px auto 0px auto;

	display: flex;
	flex-direction: row;
	flex-wrap: wrap;

	gap: 20px;
}

#partner-container .partner {
	width: calc(50% - 20px);
	box-sizing: border-box;
}

#partner-container .partner .partner-image {
	width: 100%;
	padding-top: 100%;

	box-sizing: border-box;

	background-size: contain;
	background-repeat: no-repeat;
	background-position: center center;
}

#partner-container .partner h3 {
	width: 100%;
	margin: 0px;

	font-size: 0.5em;

	padding: 10px 20px;
	background-color: rgba(237, 28, 36, 1);
	color: rgba(255, 255, 255, 1);

	text-align: center;
	box-sizing: border-box;
}

#partner-container .partner .partner-link::before {
	margin-left: 5px;

	font-family: 'FAwesome';
	content: '\f360';
	color: rgba(255, 255, 255, 1);

	transition: all 0.2s ease-in-out;
}


#partner-container .partner .partner-link:hover::before {
	opacity: 0.9;
}

/***********************************************************************************
*	Contact
***********************************************************************************/
.contact-sidebar {
	width: 100%;
}

.contact-content {
	width: 100%;
}

#quick-contact {
	width: 100%;
	max-width: 960px;

	margin: 0px auto 20px auto;

	display: flex;
	flex-direction: column;

	color: rgba(255, 255, 255, 1);
}

#quick-contact a {
	width: 100%;
	margin-bottom: 5px;
	padding: 5px 5px 5px 55px;
	
	display: block;
	box-sizing: border-box;
	
	font-variant: small-caps;
	color: rgba(255, 255, 255, 1);
	background-color: rgba(237, 28, 36, 1);
	
	background-size: auto 50%;
	background-repeat: no-repeat;
	background-position: 10px center;
	background-image: url('../assets/images/mail_white.png');
	
	transition: all 0.2s linear;
}

#quick-contact a:hover,
#quick-contact a:focus {
	text-decoration: none;
	
	color: rgba(255, 255, 255, 1);
	background-color: rgba(60, 60, 60, 1);
}

#quick-contact a:first-of-type {
	margin-right: 20px;
	background-image: url('../assets/images/phone_white.png');
}

#quick-contact a:first-of-type:hover,
#quick-contact a:first-of-type:focus {
	margin-right: 20px;
}

.contact-sidebar iframe {
	margin-bottom: 20px;
}

.wpcf7,
.wpcf7 form {
	width: 100%;
}

.wpcf7 br {
	display: none;
}

.contact-section {
	width: 100%;
}

span.wpcf7-form-control-wrap {
	width: 100%;
	display: block;
}

span.wpcf7-form-control-wrap span {
	position: absolute;
	top: -2px; right: 4px;
	
	opacity: 0.6;
	font-size: 0.7em;
	pointer-events: none;

	color: rgba(237, 28, 36, 1);

	pointer-events: none;
}

.wpcf7-not-valid {
	color: rgba(60, 60, 60, 1) !important;
	background-color: rgba(255, 148, 148, 1) !important;
}

select,
input[type="text"],
input[type="email"],
input[type="number"],
input[type="tel"],
textarea {
	width: 100%;
	padding: 10px 20px;
	margin-bottom: 10px;
	
	font-size: 1.2em;
	font-family: "Lato";
	color: rgba(237, 28, 36, 1);
	
	box-sizing: border-box;
	
	border: none;
	background-color: rgba(240, 240, 240, 1);
	border-radius: 10px;

	outline: none !important;

	transition: 0.2s all ease-out;
}

option:hover,
option:focus {
	background-color: rgba(0, 61, 106, 1) !important;
}

textarea {
	height: 260px;
	min-height: 260px;
	resize: vertical;
}

input[type="submit"] {
	display: inline;
	margin-top: 15px;
	padding: 10px 20px;
	
	cursor: pointer;
	font-family: "Lato";
	color: rgba(255, 255, 255, 1);
	
	transition: all 0.2s linear;
}

input[type="submit"]:hover,
input[type="submit"]:focus {
	color: rgba(60, 60, 60, 1);
	background-color: rgba(255, 255, 255, 1);
	
	text-decoration: none;
}

.contact-section .your-firstname, 
.contact-section .your-surname {
	width: 49%;
	float: left;
}

.contact-section .your-firstname {
	margin-right: 2%;
}

.your-companyname {
	clear: both;
	float: none;
}

.grecaptcha-badge { 
    visibility: hidden;
}

div.wpcf7-response-output {
	width: 100%;
	margin: 0px !important;
	padding: 8px;
	
	position: absolute;
	top: auto !important;
	bottom: -40px; left: 0px;
	
	border: none !important;
	color: rgba(215, 0, 10, 1);
	background-color: rgba(255, 148, 148, 1) !important;
	
	text-align: center;
	box-sizing: border-box;

	z-index: 9;
}

.page-contact h2,
.page-privacybeleid h2 {
	text-align: center;
}

.page-privacybeleid h2 {
	margin-top: 50px;
}

/***********************************************************************************
*	Sitemap
***********************************************************************************/
.wsp-posts-list,
.wsp-posts-title,
.wsp-pages-title {
	display: none;
}

.wsp-container ul ul {
	margin-left: 0px;
}

/***********************************************************************************
*	Footer
***********************************************************************************/
#footer-wrapper {
	width: 100%;
	margin-top: 40px;
	background-color: rgba(60, 60, 60, 1);
}

#footer {
	width: 100%;
	padding: 20px;

	box-sizing: border-box;
	
	color: rgba(255, 255, 255, 1);
	background-color: rgba(60, 60, 60, 1);
	
	display: flex;
	flex-wrap: wrap;
	gap: 30px;
	row-gap: 10px;
}

#footer a {
	color: rgba(255, 255, 255, 1);
}

#footer .footer-section {
	width: 100%;

	margin-bottom: 0px;
	padding: 0px;
	
	display: block;
	box-sizing: border-box;
}

#footer .footer-section:last-of-type {
	margin-bottom: 0px;
}

#footer .footer-section h4 {
	margin-bottom: 20px;
	
	font-size: 1.2em;
	font-weight: bold;
	
	color: rgba(255, 255, 255, 1);
}

#footer .section-left li {
	padding-left: 1.5em;
}

#footer .section-left li.address,
#footer .section-left li.mobile,
#footer .section-left li.tax {
	margin-bottom: 20px;
	font-family: "Lato";
}

#footer .section-left li::before {
	width: 1em;
	height: 1em;
	
	content: "";
	
	position: absolute;
	top: 2px; left: 0px;
	
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

#footer .section-left li.address::before {
	background-image: url('../assets/images/maps_white.png');
}

#footer .section-left li.mail::before {
	background-image: url('../assets/images/mail_white.png');
}

#footer .section-left li.phone::before {
	background-image: url('../assets/images/phone_white.png');
}

#footer .section-left li.tax::before {
	background-image: url('../assets/images/tax_white.png');
}

#footer .socials ul li {
	margin-right: 10px;
	display: inline-block;
}

#footer .socials ul li a {
	font-size: 2em;
	opacity: 1;

	color: rgba(255, 255, 255, 1);
}

#footer .socials ul li a:hover,
#footer .socials ul li a:focus {
	opacity: 0.8;
	text-decoration: none;
}

#footer .socials ul li a::before {
	font-family: 'FAwesome';
}

#footer .socials ul li a.facebook::before,
#footer .socials ul li a.instagram::before,
#footer .socials ul li a.youtube::before {
	font-family: 'FAwesome-brands';
}

/***********************************************************************************
*	Vehicles overview
***********************************************************************************/
#front-container .front-section.vehicles {
	width: 100%;
	padding: 60px 0px 0px 0px;

	margin-bottom: 40px;
}

#front-container .front-section.vehicles::before {
	width: 100%;
	height: 60px;

	position: absolute;
	left: 0px; top: 50%;

	content: ' ';

	background-color: rgba(237, 28, 36, 1);
}

#page #vehicle-content {
	width: 100%;
	max-width: 960px;
	margin: 0px auto;
}

#page #vehicle-container,
#front-container .front-section.vehicles #vehicle-container {
	width: 100%;
	max-width: 960px;
	margin: 0px auto;

	display: flex;
	flex-direction: column;
	gap: 20px;
}

#page .vehicle,
#front-container .front-section.vehicles .vehicle {
	padding: 0px 0px 70px 0px;
	box-sizing: border-box;

	display: block;
	border-radius: 10px;
	overflow: hidden;

	border-style: solid;
	border-width: 16px 16px 16px 16px;
	border-color: rgba(252, 252, 252, 1);
	background-color: rgba(252, 252, 252, 1);

	text-align: center;
	transition: all 0.2s ease-in-out;

	box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 2px 1px;
}

#page .vehicle:hover,
#front-container .front-section.vehicles .vehicle:hover {
	text-decoration: none;
	color: rgba(255, 255, 255, 1);

	border-color: rgba(237, 28, 36, 1);
	background-color: rgba(237, 28, 36, 1);
}

#page .vehicle .vehicle-image,
#front-container .front-section.vehicles .vehicle .vehicle-image {
	width: 100%;
	padding-top: 50%;

	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

#page .vehicle .vehicle-title,
#front-container .front-section.vehicles .vehicle .vehicle-title {
	width: 100%;
	margin: 0px;
	padding: 20px 20px 0px 20px;

	font-size: 1em;
	text-align: center;

	color: rgba(237, 28, 36, 1);

	box-sizing: border-box;
	transition: all 0.2s ease-in-out;
}

#page .vehicle:hover .vehicle-title,
#front-container .front-section.vehicles .vehicle:hover .vehicle-title {
	color: rgba(255, 255, 255, 1);
}

#page .vehicle .vehicle-category,
#front-container .front-section.vehicles .vehicle .vehicle-category {
	display: block;
	color: rgba(180, 180, 180, 1);
	transition: all 0.2s ease-in-out;
}

#page .vehicle:hover .vehicle-category,
#front-container .front-section.vehicles .vehicle:hover .vehicle-category {
	color: rgba(255, 255, 255, 1);
}

#page .vehicle .vehicle-description,
#front-container .front-section.vehicles .vehicle .vehicle-description {
	margin-top: 20px;
	padding: 0px;

	font-size: 0.8em;
	text-align: justify;
	transition: all 0.2s ease-in-out;
}

#page .vehicle:hover .vehicle-description,
#front-container .front-section.vehicles .vehicle:hover .vehicle-description {
	color: rgba(255, 255, 255, 1);
}

#page .vehicle .vehicle-perks,
#front-container .front-section.vehicles .vehicle .vehicle-perks {
	width: 100%;

	padding: 0px;
	margin: 20px 0px 0px 0px;

	display: flex;
	flex-direction: row;
	gap: 10px;

	position: absolute;
	bottom: 0px; left: 0px;
}

#page .vehicle .vehicle-perks li,
#front-container .front-section.vehicles .vehicle .vehicle-perks li {
	width: 33%;
	padding: 10px 4px;
	list-style-type: none;

	font-size: 0.8em;
	line-height: 1.2em;

	color: rgba(237, 28, 36, 1);
}

#page .vehicle:hover .vehicle-perks li,
#front-container .front-section.vehicles .vehicle:hover .vehicle-perks li {
	color: rgba(255, 255, 255, 1);
}

#page .vehicle .vehicle-perks li::before,
#front-container .front-section.vehicles .vehicle .vehicle-perks li::before {
	width: 1px;
	position: absolute;
	top: 0px; bottom: 0px;
	right: -5px;

	content: ' ';

	background-color: rgba(237, 28, 36, 1);
}

#page .vehicle:hover .vehicle-perks li::before,
#front-container .front-section.vehicles .vehicle:hover .vehicle-perks li::before {
	background-color: rgba(255, 255, 255, 1);
}

#page .vehicle .vehicle-perks li:last-of-type::before,
#front-container .front-section.vehicles .vehicle .vehicle-perks li:last-of-type::before {
	display: none;
}

#page .vehicle .vehicle-perks li span,
#front-container .front-section.vehicles .vehicle .vehicle-perks li span {
	display: block;
	width: 100%;

	font-size: 0.8em;

	color: rgba(60, 60, 60, 1);
	transition: all 0.2s ease-in-out;
}

#page .vehicle:hover .vehicle-perks li span,
#front-container .front-section.vehicles .vehicle:hover .vehicle-perks li span {
	color: rgba(255, 255, 255, 1);
}

.vehicles-view-all {
	display: block;
	margin-top: 40px;

	text-align: center;
}

/***********************************************************************************
*	Vehicles single
***********************************************************************************/
.single-vehicle-content {
	display: flex;
	flex-direction: column;

	gap: 20px;
}

.single-vehicle-images,
.single-vehicle-information {
	width: 100%;
}

#page .single-vehicle-images {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;

	gap: 10px;

	order: 2;
}

#page .single-vehicle-images a {
	width: 20%;
	padding-top: 20%;

	display: block;

	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;

	cursor: pointer;
	transition: all 0.2s ease-in-out;
}

#page .single-vehicle-images a:hover,
#page .single-vehicle-images a:focus {
	opacity: 0.8;
}

#page .single-vehicle-images a:first-of-type {
	width: 100%;
	padding-top: 100%;
}

#page .single-vehicle-information {
	order: 1;
}

#page .single-vehicle-information .page-title {
	padding: 0px;
	margin-top: 0px;

	text-align: left;
}

#page .single-vehicle-information .page-title::after {
	width: 30%;
	margin-left: 0px;
	left: 0px;
}

.single-vehicle-information .mechanic {
	width: 100%;

	top: -30px;
	text-align: left;
	display: block;

	font-size: 0.8em;
	color: rgba(180, 180, 180, 1);
}

#page .single-vehicle-information .vehicle-specifications {
	width: 100%;
	text-align: left;

	padding: 0px;
}

#page .single-vehicle-information .vehicle-specifications li {
	width: 100%;
	padding: 4px 0px;
	list-style-type: none;

	border-style: solid;
	border-width: 0px 0px 1px 0px;
	border-color: rgba(220, 220, 220, 1);
}

#page .single-vehicle-information .vehicle-specifications li:last-of-type {
	border: none;
}

.single-vehicle-information .vehicle-specifications li span {
	float: right;
}

/***********************************************************************************
*	Testimonials
***********************************************************************************/
.testimonials-slider {
	padding: 40px 0px;
	box-sizing: border-box;

	border-radius: 10px;
}

.testimonials-item .inner {
	margin: 0px 10px;
	padding: 20px;

	align-items: flex-start;

	box-sizing: border-box;
	border-radius: 10px;
	
	background-color: rgba(237, 28, 36, 1);
	color: rgba(255, 255, 255, 1);
}

.testimonials-item .testimonials-title {
	color: rgba(255, 255, 255, 1);
	margin-top: 0px;
}

.testimonials-item p {	
	color: rgba(255, 255, 255, 1);
}

.testimonial-author {
	display: block;
	text-align: right;

	margin: 20px 0px;
	
	color: rgba(255, 255, 255, 1);
}

.front-section .slick-dots {
	left: 0px;
	padding-left: 0px;
}

.front-section .slick-dots li {
	background-color: rgba(237, 28, 36, 1);
}

.slick-arrow.slick-disabled {
	cursor: default;
	opacity: 0.2;
}

.slick-slide
{
    height: inherit !important;
}

.slick-arrow.slick-prev {
	left: -35px;
}

.slick-arrow.slick-next {
	right: -35px;
}

.slick-arrow.slick-next::before,
.slick-arrow.slick-prev::before {
	color: rgba(237, 28, 36, 1);
}
  
/***********************************************************************************
*	In Between dimensions
***********************************************************************************/
@media screen and (min-width: 560px) {
	/***********************************************************************************
	*	Vehicles single
	***********************************************************************************/
	#page .single-vehicle-content {
		flex-direction: row;
	}

	#page .single-vehicle-images {
		width: 30%;
		order: 1;
	}

	#page .single-vehicle-information {
		width: 70%;
		order: 2;
	}

	/***********************************************************************************
	*	News
	***********************************************************************************/
	.news-item .news-inner-container {
		flex-direction: row;
	}

	.news-item .news-images {
		width: 30%;
		order: 1;
	}

	.news-item .news-content {
		width: 70%;
		order: 2;
	}

	/***********************************************************************************
	*	Partners
	***********************************************************************************/
	#partner-container .partner {
		width: calc(33% - 20px);
	}

	#partner-container .partner h3 {
		font-size: 0.6em;
	}

	/***********************************************************************************
	*	Footer
	***********************************************************************************/	
	#footer {
		display: flex;
		gap: 20px;
	}

	#footer .footer-section {
		width: calc(50% - 10px);
	}
}

@media screen and (min-width: 740px) {		
	/***********************************************************************************
	*	Front Banner
	***********************************************************************************/
	#front-container #banner ul {
		display: flex;
		flex-direction: row;
		flex-wrap: no-wrap;
		
		margin-bottom: 0px;
	}
	
	#front-container #banner .banner-item {
		width: 100%;
		margin-bottom: 0px;
	}

	/***********************************************************************************
	*	Partners
	***********************************************************************************/
	#partner-container .partner {
		width: calc(25% - 20px);
	}

	#partner-container .partner h3 {
		font-size: 0.75em;
	}

	/***********************************************************************************
	*	Footer
	***********************************************************************************/
	#footer {
		flex-wrap: nowrap;
	}

	#footer .footer-section {
		width: 25%;
	}
}