/*
 * general.css
 */
*
{
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
    box-sizing:border-box;
}

html.menuopen
{
    height: 100% !important;
    overflow: hidden !important;
}

body
{
    background:#fff;
    color:#1D1E22;
    font-family:'Montserrat', sans-serif;
    font-size:16px;
    line-height:24px;
}

a
{
    color:#1D1E22;
    text-decoration:none;
    transition:all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

a:hover
{
    text-decoration:underline;
}

img
{
    display:block;
    height:auto;
    max-width:100%;
}

h1
{
    color:#1D1E22;
    font-family:'Montserrat', sans-serif;
    font-size:64px;
    font-weight:700;
    line-height:90px;
    margin:0 0 30px;
    position:relative;
}

h2
{
    color:#1D1E22;
    font-family:'Montserrat', sans-serif;
    font-size:24px;
    font-weight:700;
    line-height:28px;
    margin:0 0 20px;
    position:relative;
}

h2:after
{
    border-bottom:2px solid #EA002F;
    bottom:-4px;
    content:'';
    display:block;
    position:relative;
    width:115px;
}

h3
{
    color:#1D1E22;
    font-family:'Montserrat', sans-serif;
    font-size:20px;
    font-weight:700;
    line-height:28px;
    margin:0 0 10px;
}

p
{
    margin:0 0 20px;
}

b, strong
{
    font-weight:bold;
}

i, em, small
{
    font-style:italic;
}

ol
{
    padding:0 0 0 16px;
    margin:0 0 20px;
}

ul
{
    padding:0 0 0 20px;
    margin:0 0 20px;
}

sub
{
    vertical-align : sub;
}

sup
{
    font-size:12px;
    vertical-align : super;
}

iframe,
video
{
    max-width:100%;
}

::-webkit-input-placeholder 
{
    color:#575756;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:16px;
    line-height:24px;
}

::-moz-placeholder
{
    color:#575756;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:16px;
    line-height:24px;
}

:-ms-input-placeholder 
{
    color:#575756;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:16px;
    line-height:24px;
}

:-moz-placeholder 
{
    color:#575756;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:16px;
    line-height:24px;
}

select,
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="password"],
input[type="number"],
textarea
{
    background:#fff;
    border:1px solid #d9d9d9;
    color:#1D1E22;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:16px;
    line-height:24px;
    padding:10px 15px;
}

input[type="submit"],
button[type="submit"],
.button
{
    background:#A30082;
    border:0px;
    border-radius:3px;
    color:#fff;
    cursor:pointer;
    display:inline-block;
    font-family:'Montserrat', Arial, sans-serif;
    font-size:14px;
    font-weight:500;
    line-height:16px;
    margin:0 auto;
    padding:10px 25px;
    text-decoration:none;
    transform:uppercase;
    transition:all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-appearance: none;
}

input[type="submit"]:hover,
button[type="submit"]:hover,
.button:hover
{
	opacity:0.7;
    text-decoration:none;
}

input[type="submit"].grey,
button[type="submit"].grey,
.button.grey
{
    background:#878787;
}

input[type="submit"].grey:hover,
button[type="submit"].grey:hover,
.button.grey:hover
{
    text-decoration:none;
}

textarea
{
	display:block;
    height:80px;
    resize:none;
    width:100%;
}

table
{
	margin:0 0 25px;
	width:100% !important;
}

table tr:nth-child(odd)
{
	background:#f5f5f5;
}

table tr td
{
	padding:5px 15px;
}

.small
{
	font-size:14px;
	line-height:20px;
	margin:5px 0 0;
}

span.small
{
	display:block;
	float:left;
	width:100%;
}

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

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

.text-justify
{
	text-align:justify;
}

.mwformular
{
	float:left;
	margin:0 0 20px;
	width:100%;
}

.mwformular .error
{
	color:#EA002F;
	display:block;
	float:left;
	font-size:14px;
	line-height:20px;
	margin:5px 0 0;
	width:100%;
}

.mwformular input[type="text"],
.mwformular input[type="email"],
.mwformular input[type="password"],
.mwformular input[type="number"],
.mwformular textarea,
.mwformular select
{
	width:100%;
}

.mwformular.submit
{
	text-align:center;
}

.mwformular .passwordvalidation,
.mwformular .newpasswordvalidation
{
	float:left;
	font-size:14px;
	margin:10px 0 0;
	width:100%;
}

.mwformular .passwordvalidation p,
.mwformular .newpasswordvalidation p
{
	margin-bottom:5px;
}

.mwformular .passwordvalidation p .eight,
.mwformular .newpasswordvalidation p .same
{
	color:#EA002F;
}

.mwformular .passwordvalidation p .eight.green,
.mwformular .newpasswordvalidation p .same.green
{
	color:#00B31E;
}

.mwformular .passwordvalidation .row
{
	color:#EA002F;
	display:block;
	float:left;
	margin:0 0 2px;
	width:100%;
}

.mwformular .passwordvalidation .row.green
{
	color:#00B31E;
}

.mwformular .passwordvalidation .row i
{
	font-size:16px;
	margin:0 4px 0 0;
}

.mwformular .passwordvalidation .row .fa-check,
.mwformular .passwordvalidation .row.green .fa-times
{
	display:none;
}

.mwformular .passwordvalidation .row.green .fa-check
{
	display:inline-block;
}

.message
{
	float:left;
	max-height:9999px;
	margin:0 0 30px;
	overflow:hidden;
	transition:all 0.6s ease-in-out;
	width:100%;
}

.message.success
{
	background:rgba(0, 179, 30, 0.1);
	border:1px solid #00B31E;
}

.message.notsuccess
{
	background:rgba(215, 15, 55, 0.1);
	border:1px solid #EA002F;
}

.message.hide
{
	max-height:0px;
	margin-bottom:0px;
	opacity:0;
	visibility:hidden;
}

.message span
{
	display:block;
	padding:10px 15px;
}

.message span a
{
	text-decoration:underline;
}

.container,
.bigcontainer
{
	margin:0 auto;
    width:calc(100% - 60px);
    max-width:1120px;
}

.bigcontainer
{
	max-width:1540px;
}

.fullwidthcontainer
{
	float:left;
	width:100%;
}

#exposemask
{
	background:#000;
	background:rgba(0,0,0,0.6);
	bottom:0;
	left:0;
	opacity:0;
	position:fixed;
	right:0;
	top:0;
	transition: all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	visibility:hidden;
	z-index:1000;
}

#exposemask img
{
	background:#fff;
	max-height:calc(100% - 250px);
	margin:150px auto 0;
	padding:5px;
	max-width:90%;
	width:auto;
}

#exposemask #close,
#closegallery
{
	background:url('../Images/close-icon.png');
	cursor:pointer;
	display:block;
	height:20px;
	position:absolute;
	right:40px;
	top:40px;
	width:20px;
	z-index:5;
}

#exposemask #close:hover,
#closegallery:hover
{
	opacity:0.7;
}

#exposemask figure img
{
	margin:0 auto;
}

#website
{
	transition:all 0.7s cubic-bezier(0.19, 1, 0.22, 1);
}

.mfp-image-holder .mfp-close, 
.mfp-iframe-holder .mfp-close
{
	font-family:'Noto Sans', sans-serif;
	opacity:1;
}

/*
 * jquery-confirm
 */

.jconfirm-content form
{
	margin:0 auto;
	width:100%;
	max-width:400px;
}

.jconfirm-content form .mwformular
{
	float:left;
	margin:0 0 20px;
	text-align:left;
	width:100%;
}

.jconfirm-content form .mwformular:last-child
{
	margin-bottom:0;
}

.jconfirm-content form .mwformular input[type="text"],
.jconfirm-content form .mwformular input[type="email"],
.jconfirm-content form .mwformular input[type="tel"],
.jconfirm-content form .mwformular textarea
{
	width:100%;
}

.jconfirm-content form .mwformular label
{
	display:block;
}

.jconfirm-content form .mwformular.feusers .entry
{
	float:left;
	font-size:14px;
	line-height:20px;
	margin:0 0 5px;
	width:100%;
}

.jconfirm-content form .mwformular.feusers .entry .name
{
	display:block;
	float:left;
	margin:0 15px 0 0;
	width:calc(100% - 30px);
}

.jconfirm-content form .mwformular.feusers .entry .removeentry
{
	color:#fff;
	cursor:pointer;
	margin:1px 0 0;
	transition:all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
}

.jconfirm-content form .mwformular.feusers .entry .removeentry:hover
{
	opacity:0.7;
}

.jconfirm-content form .mwformular.feusers #additionalfeuser select
{
	float:left;
	font-size:14px;
	line-height:20px;
	padding:6px 9px;
	width:calc(100% - 98px);
}

.jconfirm-content form .mwformular.feusers #additionalfeuser #addfeuser
{
	cursor:pointer;
	float:left;
	font-size:14px;
	line-height:20px;
	padding:7px 9px;
	transition:all 0.3s cubic-bezier(0.19, 1, 0.22, 1);
	width:98px;
}

.jconfirm-content form .mwformular.feusers #additionalfeuser #addfeuser:hover
{
	opacity:0.7;
}

.text-justify
{
	text-align:justify;
}

.jconfirm-content form .mwformular.calender #availabilitycalenderdropdown
{
	background:#fff;
	color:#575756;
	float:left;
	width:100%;
}

.jconfirm-content form .mwformular.calender #resetavailabilitycalenderdropdown
{
	display:none;
	float:right;
	font-size:14px;
	font-style:italic;
	margin:3px 0 0;
	text-align:right;
}

.jconfirm-content form .mwformular.calender #resetavailabilitycalenderdropdown:hover
{
	color:#EA002F;
}

.jconfirm-content form .mwformular.specialor
{
	margin:20px 0 40px;
}

.jconfirm-content form .mwformular.specialor .or
{
	display:block;
	font-weight:700;
	text-align:center;
}

.jconfirm-buttons button:first-child
{
	margin:0 15px 0 0;
}

/*
 * UI-Datepicker
 */
.ui-datepicker
{
	border:1px solid #d9d9d9;
	border-bottom:0px;
	border-right:0px;
	position:relative;
	width:100%;
}

.ui-datepicker .ui-datepicker-header
{
	border-bottom:1px solid #d9d9d9;
	border-right:1px solid #d9d9d9;
	float:left;
	padding:7px 10px;
	position:relative;
	text-align:center;
	width:100%;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-title
{
	font-size:14px;
	font-weight:700;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next
{
	cursor:pointer;
	height:20px;
	left:5px;
	position:absolute;
	width:20px;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-next
{
	left:auto;
	right:5px;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-prev:before,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next:before
{
	content:'\f053';
	font-family:"Font Awesome 5 Free";
	font-weight:900;
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-next:before
{
	content:'\f054';
}

.ui-datepicker .ui-datepicker-header .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-header .ui-datepicker-next span
{
	display:none;
}

.ui-datepicker .ui-datepicker-header .ui-state-disabled
{
	display:none;
}

.ui-datepicker .ui-datepicker-calendar
{
	margin-bottom:0;
	width:100%;
}

.ui-datepicker .ui-datepicker-calendar tr
{
	background:none;
}

.ui-datepicker .ui-datepicker-calendar tr:nth-child(odd)
{
	background:none;
}

.ui-datepicker .ui-datepicker-calendar tr th,
.ui-datepicker .ui-datepicker-calendar tr td
{
	border:0px;
	border-bottom:1px solid #d9d9d9;
	border-right:1px solid #d9d9d9;
	padding:0;
	text-align:center;
}

.ui-datepicker .ui-datepicker-calendar tr th span
{
	background:#000;
	color:#fff;
	display:block;
	font-weight:700;
	padding:7px;
}

.ui-datepicker .ui-datepicker-calendar tr td a,
.ui-datepicker .ui-datepicker-calendar tr td span
{
	color:#575756;
	display:block;
	padding:7px;
}

.ui-datepicker .ui-datepicker-calendar tr td span
{
	background:#575756;
	color:#fff;
}

.ui-datepicker .ui-datepicker-calendar .ui-state-highlight a,
.ui-datepicker .ui-datepicker-calendar tr td a:hover
{
	background:#EA002F;
	color:#fff;
	text-decoration:none;
}

/* general */

@media (max-width:768px)
{
	h1
	{
	    font-size:35px;
	    line-height:45px;
	    margin:0 0 25px;
	}
	
	p 
	{
		margin-bottom:20px;
	}
	
	.container,
	.bigcontainer
	{
		width:calc(100% - 30px);
	}
	
	/*
	 * general
	 */
	#exposemask img
	{
		max-height:calc(100% - 120px);
		margin-top:60px;
	}
	  
	#exposemask #close,
	#closegallery
	{
		right:20px;
		top:20px;
	}
}
