@font-face{font-family: 'Open Sans'; font-style: normal; font-weight: 400; src: local('Open Sans Regular'), local('OpenSans-Regular'), url('../fonts/open_sans/open_sans.woff2') format('woff2'), url('../fonts/open_sans/open_sans.woff') format('woff'); }
@font-face{font-family: 'Open Sans'; font-style: italic; font-weight: 400; src: local('Open Sans Italic'), local('OpenSans-Italic'), url('../fonts/open_sans/open_sans_italic.woff2') format('woff2'), url('../fonts/open_sans/open_sans_italic.woff') format('woff'); }
@font-face{font-family: 'Open Sans'; font-style: normal; font-weight: 700; src: local('Open Sans Bold'), local('OpenSans-Bold'), url('../fonts/open_sans/open_sans_700.woff2') format('woff2'), url('../fonts/open_sans/open_sans_700.woff') format('woff'); }
@font-face{font-family: 'Open Sans'; font-style: italic; font-weight: 700; src: local('Open Sans Bold Italic'), local('OpenSans-BoldItalic'), url('../fonts/open_sans/open_sans_700italic.woff2') format('woff2'), url('../fonts/open_sans/open_sans_700italic.woff') format('woff'); }

/* --- GENERAL ---*/

body{
	font-family: Arial, Helvetica, sans-serif;
	color: #34495E;
	font-size: 18px;
	line-height: 30px;
}

p{
	text-align: justify;
}

a{
	color: #F09252;
}

.hide {
	display: none !important;
}
.visually-hidden {
    display: none !important;
}

a:hover{
	color: #EB7B3D;
	text-decoration: none;
}

.btn{
	background-color: #35CBD3;
	color: #fff;
	border: 0px;
}

.btn:hover{
	background-color: #219197;
	color: #fff;
}

.btn-orange{
	background-color: #F09252;
}

.btn-orange:hover{
	background-color: #EB7B3D;
}

h1{
	color: #F09252;
}

h2,h3,h4,h5,h6{
	color: #35CBD3;
}

h1,h2,h3,h4,h5,h6{
	font-weight: bold;
	line-height: 1.4em;
}

body.orange h2,body.orange h3,
body.orange h4,body.orange h5,body.orange h6{
	color: #F09252;
}

h1{
	font-size: 38px;
	margin-bottom: 40px;
}

h2{
	font-size: 24px;
	margin: 50px 0 18px 0;
}

h3{
	font-size: 20px;
	margin: 40px 0 10px 0;
}

h4,h5,h6{
	font-size: 18px;
	margin: 30px 0 10px 0;
}

#content ul,
.module-content ul{
	list-style-type: none;
	padding: 0px;
}

#content ul li,
.module-content ul li{
	position: relative;
	padding-left: 16px;
}

#content ul li::before,
.module-content ul li::before{
	position: absolute;
	content: '';
	background-color: #35CBD3;
	width: 7px;
	height: 7px;
	left: 0;
	top: 12px;
	border-radius: 2px;
}

body.orange #content ul li::before,
body.orange .module-content ul li::before{
	background-color: #F09252;
}

#content ul ul,
.module-content ul ul{
	padding-left: 30px;
}

#content ol,
.module-content ol{
	padding-left: 0px;
	list-style-position: inside;
}

footer ul li,
.breadcrumb li{
	padding-left: 0px !important;
}

footer ul li::before,
.breadcrumb li::before{
	display: none !important;
}

table{
	margin-bottom: 20px;
}

table td, table th{
	padding: 10px 20px;
}

table th{
	background-color: #35CBD3;
	color: #fff;
}

body.orange table th{
	background-color: #F09252;
}

table tr{
	border-bottom: 2px solid #E2E2E2;
}

thead tr{
	border: 0px;
}

.copyright{
	color: #c4c4c4;
	font-size: 16px;
}

.align-center{
	align-items: center;
}

.bg-grey{
	background-color: #F9F9F9;
}

.p100{
	padding: 10px 0 40px 0;
}

.font-size-24{
	font-size: 24px;
}

.font-size-26{
	font-size: 26px;
}

.font-size-28{
	font-size: 28px;
}

.font-size-30{
	font-size: 30px;
}

.font-size-32{
	font-size: 32px;
}

.font-size-34{
	font-size: 34px;
}

.font-size-36{
	font-size: 38px;
}

.font-size-38{
	font-size: 38px;
}

iframe{
	border: 0px;
}

/* --- HEADER ---*/

header{
	padding: 30px 0 20px 0;
}

#logo img{
	max-width: 350px;
}

/* --- MAINMENU ---*/

#mainmenu-wrap .navbar{
	padding: 0px;
}

#mainmenu ul.nav{
	justify-content: space-between;
	width: 100%;
}

#mainmenu .lv-0 > li > a{
	color: #34495E;
	font-size: 20px;
	padding: 20px;
}

#mainmenu .lv-0 > li:first-of-type > a{
	padding-left: 0px;
}

#mainmenu .lv-0 > li:last-of-type > a{
	padding-right: 0px;
}

#mainmenu .lv-0 > li:hover > a{
	color: #35CBD3;
}

#mainmenu .lv-0 > li.active > a{
	color: #35CBD3;
	text-shadow: 1px 0px #35CBD3;
}

#mainmenu .deeper.parent {
	position: relative;
	white-space: nowrap;
}

#mainmenu .lv-1 > li.parent::after {
	content: "\e917";
	position: absolute;
	right: 8px;
	top: 13px;
	font-size: 16px;
	font-family: 'reDim Icon Pack' !important;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	color:#35CBD3;
	display: block;
}

#mainmenu .lv-0 > li.parent:hover > .lv-1,
#mainmenu .lv-1 > li.parent:hover > .lv-2{
	visibility: visible;
	opacity: 1;
}

#mainmenu .lv-1,
#mainmenu .lv-2{
	visibility: hidden;
	opacity: 0;
	position: absolute;
	z-index: 9999;
	background-color: #fff;
	padding: 0px;
	list-style-type: none;
	box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.1);
}

#mainmenu .lv-2 {
	left: 100%;
	top: 0;
}

#mainmenu .lv-1 > li > a,
#mainmenu .lv-2 > li > a{
	padding: 5px 25px 5px 18px;
	display: block;
	color: #34495E;
	min-width: 150px;
}

#mainmenu .lv-1 > li.active > a,
#mainmenu .lv-2 > li.active > a{
	background-color: #F9F9F9;
	font-weight: bold;
}

#mainmenu .lv-1 > li > a:hover,
#mainmenu .lv-2 > li > a:hover{
	background-color: #F9F9F9;
}


#mainmenu .mod-languages{
	margin-left: 60px;
}

div.mod-languages li{
	margin-left: 2px;
}

div.mod-languages ul.lang-inline{
	display: inline-flex;
}

div.mod-languages img{
	opacity: 0.4;
}

div.mod-languages .lang-active img{
	opacity: 1;
}

/* --- CONTENT & MODULES ---*/

#content{
	padding: 40px 0 60px 0;
}

body.home #content{
	padding: 50px 0;
}

body.home h1{
	font-weight: normal;
}

body.home h1,body.home h2,body.home h3,
body.home h4,body.home h5,body.home h6{
	color: #35CBD3;
}

.rightside{
	font-size: 14px;
	line-height: 20px;
}

/* --- BLOG ---*/

.blog .item{
	padding-bottom: 50px;
	margin-bottom: 50px;
	border-bottom: 2px solid #f9f9f9;
}

.blog .item h2{
	margin-top: 0px;
}

.blog .item h2 a{
	color: #35cbd3;
}

.blog .item .readmore{
	margin-bottom: 0px;
}

.blog .item .item-image img,
.blog .item .item-image a{
	width: 100%;
}

.blog .item .item-image{
	margin-bottom: 30px;
}

/* --- CONTACT ---*/

.contact h3{
	display: none;
}

.contact input, .contact textarea{
	border: 0px;
	background-color: #f9f9f9;
	padding: 6px 14px;
	border-radius: 6px;
	width: 80%;
}

.contact input[type="checkbox"]{
	width: auto;
}

.contact textarea{
	height: 150px;
}

.contact label{
	margin: 18px 0 6px 0;
}

.contact label.checkbox{
	margin: 0 0 20px 0;
}

#jform_consentbox{
	font-size: 14px;
}

.flex-controls {
	display: flex;
	justify-content: space-between;
	align-items: center;
	max-width: 450px;
}

.input-hash {
	width: 100%!important;
	max-width: 360px!important;
	padding: 2px 4px !Important;
}

/* --- SEARCH ---*/

#searchForm .element-invisible{
	display: none;
}

#searchForm input{
	border: 0px;
	background-color: #f9f9f9;
	padding: 6px 14px;
	border-radius: 6px;
	margin-right: 6px;
	margin-bottom: 10px;
}

.search-results .result-category{
	display: none;
}

.search-results .result-title{
	margin-top: 40px;
}

.highlight{
	background-color: #f9f9f9;
	font-weight: bold;
}

.badge{
	background-color: #219197;
}

.search .pagination{
	margin-top: 20px;
}

/* --- BREADCRUMBS ---*/

ul.breadcrumb{
	padding: 0;
	margin: 0;
	background-color: transparent;
	font-size: 14px;
}

ul.breadcrumb .divider{
	margin: 0 9px 0 7px;
	color: #E2E2E2;
}

ul.breadcrumb li:first-of-type{
	display: none;
}

/* --- PAGINATION ---*/

.pagination li::before{
	display: none !important;
}

.pagination li{
	padding-left: 0px !important;
}

.page-link{
	color: #35cbd3;
	border: 0px;
}

.page-link:hover,.page-link:active,.page-link:focus{
	outline: 0 !important;
	box-shadow: none !important;
}

.page-item.active .page-link{
	background-color: #35cbd3;
	border-color: #35cbd3;
	border-radius: 4px;
}

.page-item.active .page-link:hover{
	color: #fff;
}

.page-link:hover{
	background-color: #f9f9f9;
	color: #219197;
}

/* --- CookieHint ---*/

#redim-cookiehint-modal #cookiehintsubmit,
#redim-cookiehint-modal #cookiehintsubmitno{
	background: #002060 !important;
}

#redim-cookiehint-modal #cookiehintsubmit:hover,
#redim-cookiehint-modal #cookiehintsubmitno:hover{
	background: #219197 !important;
}

/* --- FOOTER ---*/

footer{
	background-color: #7F7F7F;
	padding: 30px 0;
	margin-top: 20px;
}

footer, footer a{
	font-size: 16px;
	color: #fff;
}

footer .nav li a{
	margin-right: 24px;	
}

footer .nav li:last-of-type a{
	margin-right: 0px;
}

footer .footer-right{
	text-align: right;
}

footer .search{
	display: inline-block;
}

footer .search input{
	color: #fff;
	border: 0px;
	background-color: transparent;
	width: 100px;
}

footer .search input.button{
	width: 24px;
}

.modal-dialog.booking .modal-header, .modal-dialog.booking .modal-title{
	background-color: #F09252;
	color: #ffffff;
}

.modal-dialog.booking .modal-footer .btn {
	width: 100%;
}

.agreecontainer {
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
	overflow: hidden;
	margin: 10px 0px 0px 0px;
}

.agreecontainer .block:nth-child(2) {
	font-size: 0.70em;
	line-height: 1.15em;
	text-align: justify;
	padding-top: 7px;
}

.modal-dialog label {
	margin: 0px 0px 0px 0px;
	padding: 0px 0px 0px 0px;
}

.modal-dialog .control-group {
	margin-bottom: 10px;
}

.modal-dialog .modal-title  {
	width: 100%;
	color: #35CBD3;
	font-weight: bold;
}

.agreecontainer label {
	vertical-align: middle;
	margin: 0px 0px 0px 0px;
	cursor: pointer;
	padding: 0px;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	width: auto;

}

.modal-dialog .email {
	position: absolute;
}

.modal-dialog .control-label label {
	font-size: 0.85em;
}

.modal-footer {
	justify-content: flex-start !Important;
}

.modal-dialog input.invalid {

	border: 1px solid #F09252 !important;
}


.agreecontainer input[type="checkbox"]:not(old) {
	width: 0px;
	height: 0px;
	margin: 0px !important;
	padding: 0  !important;
	font-size: 1em;
	opacity: 0;
	position: absolute;
	float:left;
}


.agreecontainer input[type="checkbox"]:not(old):checked + label.checkbox span.box::before {
	position: relative;
	color: #35CBD3;
	top: -10px;
	left: 2px;
	content: '✔';
	font-size: 28px;
	display: inline-block;
	transform: rotate(10deg);
}

.agreecontainer input[type="checkbox"] {
	width: auto !Important;
}

.agreecontainer label.checkbox span.title {
	position: relative;
	top: 2px;
	display: inline;

}

.agreecontainer input[type="checkbox"]:not(old) + label.checkbox span.box {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0px 10px 0px 0px;
	border: 1px solid #cccccc;
	background: #ffffff;
	vertical-align: middle;

}
/*
.agreecontainer input[type="checkbox"]:invalid:not(old)+ label.checkbox span.box {
	background-color: rgba(255,0,0,0.5);
}*/

.agreecontainer input[type="checkbox"]:not(old) + label span.box {
	display: inline-block;
	width: 20px;
	height: 20px;
	margin: 0px;
	border: 1px solid #cccccc;
	background: #ffffff;
	vertical-align: middle;
}


.agreecontainer input[type="checkbox"].invalid:not(old) + label span.box{
	border: 1px solid #F09252 !Important;
}



/* --- Responsive ---*/

@media (max-width: 1300px){
	
	.maxwidth{
		max-width: 90%;
	}
	
	#mainmenu .lv-0 > li > a{
		font-size: 18px;
		padding: 16px;
	}
	
}

#logo .logo-left {
	display: flex;
	align-items: center;
	justify-content: space-between;
}


@media (max-width: 991.98px){
	
	header{
		padding: 20px 0;
	}
	
	#logo .logo-left{
		text-align: center;
		margin: 10px 0;
	}
	
	#mainmenu-wrap{
		background-color: #f9f9f9;
	}
	
	#mainmenu-wrap .navbar{
		text-align: right;
		display: block;
		padding: 4px 0 0px 0;
	}
	
	.navbar .icon-bar{
		display: block;
		background-color: #35cbd3;
		height: 5px;
		width: 36px;
		margin: 5px 0;
		border-radius: 2px;
	}
	
	#mainmenu{
		text-align: center;
		padding-bottom: 20px;
	}
	
	#mainmenu ul.nav{
		display: block;
	}
	
	#mainmenu .lv-0 > li > a{
		padding: 6px 0;
		display: block;
		color: #34495E;
		border-top: 2px solid #fff;
	}

	#mainmenu .lv-0 > li:hover > a{
		color: #34495E;
	}
	
	#mainmenu .lv-0 > li:first-of-type > a{
		border: 0px;
	}
	
	#mainmenu .lv-0 > li.active:hover > a{
		color: #35CBD3;
	}
	
	#mainmenu .lv-1,
	#mainmenu .lv-2{
		position: static;
		visibility: visible;
		opacity: 1;
		background-color: transparent;
		box-shadow: none;
		padding: 6px 0 10px 0;
		display: none;
	}
	
	#mainmenu .lv-0 > li.parent::after,
	#mainmenu .lv-1 > li.parent::after {
		content: "\e917";
		position: absolute;
		right: 3px;
		top: 8px;
		font-size: 16px;
		font-family: 'reDim Icon Pack' !important;
		speak: none;
		font-style: normal;
		font-weight: normal;
		font-variant: normal;
		text-transform: none;
		line-height: 1;
		color:#35CBD3;
		display: block;
		transition: transform .25s ease;
	}
	
	#mainmenu .parent.alive::after {
		transform: rotate(90deg);
	}
	
	#mainmenu .lv-1 > li > a{
		padding: 5px 0px;
	}
	
	#mainmenu .mod-languages{
		margin-top: 10px;
		margin-left: 0px;
	}
	
}

@media (max-width: 767.98px){
	
	body{
		font-size: 15px;
		line-height: 24px;
	}
	
	p{
		text-align: left;
	}
	
	.btn{
		font-size: 15px;
	}
	
	.p100{
		padding: 20px 0;
	}
	
	#content,
	body.home #content{
		padding: 25px 0 40px 0;
	}
	
	h1{
		margin-bottom: 20px;
		font-size: 24px;
	}
	
	h2{
		font-size: 20px;
	}
	
	h3{
		font-size: 17px;
	}
	
	h4,h5,h6{
		font-size: 15px;
	}
	
	h2,h3,h4,h5,h6{
		margin-bottom: 10px;
	}
	
	body.home img.wow{
		max-width: 200px;
		margin-bottom: 20px;
	}
	
	#logo .logo-left {
		flex-wrap: wrap;
		justify-content: center;
	}
	
}

@media (max-width: 575.98px){
	
	iframe{
		width: 100%;
	}
	
	footer{
		padding: 20px 0;
	}
	
	footer .footer-right,
	footer .footer-left{
		text-align: center;
	}
	
	footer ul.nav{
		display: block;
	}
	
	footer ul.nav li{
		display: inline-block;
	}
	
	footer .nav li a,
	footer .search{
		font-size: 14px;
	}
	
	footer .search input.button{
		width: 18px;
	}
	
	footer .search input{
		width: 75px;
	}
	
	#logo .logo-left img {
		height: 46px;
	}
	
	#logo .logo-left > img:first-child {
		margin-bottom: 10px;
	}
	
}

.captchawrapper{
	display: none;
}

/* Joomla 5 */

label.finder {
    display: none;
}

.mod-finder__search {
    justify-content:  right;
}

.mod-finder__search button {
    border: none;
    outline: none;
    background: none;
    margin-left: 10px;
}

.mod-finder__search button img {
    width: 26px;
}

#search-form .input-group {
    display: flex;
    gap: 6px;
}

#search-form .me-2 {
    margin-right: 6px;
}

.mod-breadcrumbs {
    background: none;
    max-width: 1200px;
    margin: 0 auto;
}

.mod-breadcrumbs li {
    font-size: 14px;
    position: relative;
    margin-right: 10px;
}

.mod-breadcrumbs li:not(:last-child)::after {
    position: absolute;
    content: "";
    background: #E2E2E2;
    width: 1px;
    height: 14px;
    bottom: 7px;
    right: -5px;
}

.mod-breadcrumbs__divider {
    display: none;
}