/* GROUP BOOKING */
#group_booking {
	background:#83bec4;
	padding-top: 2rem;
	padding-bottom: 3rem;
}

#group_booking .mail_success {
	font-weight: bold;
	color: #fff;
	font-size: 27px;
	text-align: center;
	display: none;
}

#group_booking div.row {
	padding-bottom:2rem;
}
#group_booking [class*="col"] {}
#group_booking button[type=submit] {
	cursor: pointer;
}
#group_benefits_wrap {
	background:#fff;
	padding:40px 0;
}
#group_benefits_wrap h3 {
	margin-bottom:25px;
	padding:0 40px;
}
#group_benefits_wrap h4 {}
#group_benefits_wrap ul {
	list-style:none;
	padding:0;
	margin:0;
}
#group_benefits_wrap ul li {
	padding-left:23px;
	line-height:27px;
	position:relative;
}
#group_benefits_wrap ul li + li {
	margin-top:5px;
}
#group_benefits_wrap ul li:before {
	content:"\f121";
	font-family:"Ionicons";
	font-size:18px;
	position:absolute;
	left:0; top:0;
	color:#058b8c;
	line-height:27px;
}
.group_hr {
	background-image: url(../img/group_hr.png);
	background-repeat:repeat-x;
	height:12px;
	width:246px;
	content:"";
	display:table;
	margin:50px auto;
}
#group_end {
	font-family: 'Evenfall-Oblique';
	text-align: center;
	margin: -20px 0 0;
	color: #83bec4;
	font-size: 55px;
}

#group_form .mail_message {
	margin:0px 0 20px !important;
	padding:20px !important;
}
#group_booking textarea {
	min-height:135px;
}
#reservation_box input,
#reservation_box textarea,
#group_booking textarea,
#group_booking input,
#reservation input,
.custom-form input,
.custom-form textarea {
	border-radius: 0;
	background: #eef8ed;
	border: 4px solid #fff;
	font-size: 1rem;
	padding: 0 1.2rem;
	font-weight: 500;
	line-height: 44px;
	min-height: 52px;
}
#reservation_box textarea {
	line-height: 25px;
	padding: 1rem 1.2rem;
}
#group_booking .form-group {
	margin: 0;
	padding-top: 25px;
}
#group_booking [placeholder]::-webkit-input-placeholder {
	color:#2d2d2d !important;
	opacity:1 !important;
}
#group_booking [placeholder]::-moz-placeholder {
	color:#2d2d2d !important;
	opacity:1 !important;
}
#reservation [placeholder]::-webkit-input-placeholder {
	color:#2d2d2d !important;
	opacity:1 !important;
}
#reservation [placeholder]::-moz-placeholder {
	color:#2d2d2d !important;
	opacity:1 !important;
}
#school_trip [placeholder]::-webkit-input-placeholder {
	color:#2d2d2d !important;
	opacity:1 !important;
}
#school_trip [placeholder]::-moz-placeholder {
	color:#2d2d2d !important;
	opacity:1 !important;
}

.input-group-wrap {
	position:relative;
}
.bootstrap-select > .dropdown-toggle:before,
.input-group-icon {
	position:absolute;
	right:0;
	top:0;
	line-height:52px;
	width:40px;
	font-size:30px;
}

#group_booking .bootstrap-select {
	width:100%;
}
.btn-group.open .dropdown-toggle {
	outline:none !important;
}
.bootstrap-select > .dropdown-toggle {
	border-radius:0;
	height:52px;
	border:4px solid #fff;
	background:#eef8ed;
	font-weight: 500;
	color: #2d2d2d !important;
	font-size: 1rem;
	box-shadow:none !important;
}
.bootstrap-select.btn-group .dropdown-toggle .bs-caret {
	display:none;
}
.bootstrap-select > .dropdown-toggle:before {
	content:"\f123";
	font-family:"Ionicons";
	top:-4px; right:-4px;
	text-align:left;
}
.bootstrap-select >  .dropdown-toggle:after {
	display: none;
}
.bootstrap-select.btn-group .dropdown-menu {
	margin: -4px 0 0;
	border-radius: 0;
	-webkit-box-shadow: 0 12px 12px rgba(0, 0, 0, .175);
	box-shadow: 0 12px 12px rgba(0, 0, 0, .175);
	border: 4px solid #fff;
	border-top: none;
	background:#eef8ed;
	padding:7px 0 15px;
	-webkit-box-shadow: none;
	box-shadow: none;
}
.bootstrap-select.btn-group.show .dropdown-menu.inner {
	display: block;
	overflow: hidden;
}
.bootstrap-select .dropdown-menu > li > a {
	background:none !important;
    font-size:.9rem;
    font-weight: 500;
    color:#333 !important;
    padding: 3px 20px;
}
.bootstrap-select .dropdown-menu > li > a.hidden {
	display: none;
}

.bootstrap-select.btn-group .dropdown-menu li a span.text {
	position:relative;
	padding-left:22px;
	line-height:25px;
	display:block;
}
.bootstrap-select.btn-group .dropdown-menu li:not([class*="selected"]) a span.text:before {
	position:absolute;
	top:5px;
	left:0;
	line-height:16px;
	color:#058b8c;
	width:16px; height:16px;
	border-radius:8px;
	border: 2px solid #058b8c;
	content:"";
/*
	-webkit-box-shadow:0 0 0 4px #eef8ed inset, 0 0 0 6px #058b8c inset;
	box-shadow:0 0 0 4px #eef8ed inset, 0 0 0 6px #058b8c inset;
*/
}
.bootstrap-select.btn-group .dropdown-menu li.selected a span.text:before {
	content:"\f121";
	position:absolute;
	top:3px;
	left:0;
	line-height:20px;
	font-family:"Ionicons";
	color:#058b8c;
	font-size:18px;
}
.bootstrap-select.btn-group.show-tick .dropdown-menu li.selected a span.check-mark {
	display:none;
}
.ui-datepicker {
	width:auto;
	z-index: 2 !important;
}
.ui-widget.ui-widget-content {
	border:none;
}
.ui-datepicker table {
	font-size: .9em;
	font-family: Montserrat, sans-serif;
}
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next {
	top:7px;
	background: none !important;
	border:none !important;
	border-radius:0;
	text-align:center;
	cursor:pointer;
	font-size: 1.1em;
}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span {
	display:none;
}
.ui-datepicker .ui-datepicker-prev:before {
	content:"\f2ca";
	display:block;
	font-family:"Ionicons";
}
.ui-datepicker .ui-datepicker-next:before {
	content:"\f30f";
	display:block;
	font-family:"Ionicons";
}
.ui-datepicker td.range a, .ui-datepicker td.range span {
/*
    background: #058b8c !important;
*/
    color: #fff !important;
/*
    border-color: #058b8c !important;
*/
}
/*
.ui-datepicker td.error {
	opacity: 1 !important;
}
*/
.ui-datepicker td.error span,
.ui-datepicker td.error a {
/*
    color: #ea0925 !important;
*/
    cursor: not-allowed !important;
}
.ui-datepicker.ui-widget-content a.ui-state-default {
	color: #43ae51;
}
#calendar_legend {
	line-height: 15px;
	font-size: 13px;
	padding: 10px 10px 5px;
	font-weight: 300;
	font-family: arial;
	color: #333;
}
#calendar_legend span {
	display: inline-block;
	width: 13px;
	height: 13px;
	margin-left: 15px;
	vertical-align: middle;
	margin-right: 5px;

}
#calendar_legend span:nth-of-type(1) {
	margin-left: 0;
	background-color: #43ae51;
}
#calendar_legend span:nth-of-type(2) {
	background-color: #f98f2d;
}
#calendar_legend span:nth-of-type(3) {
	background-color: #ea0925;
}

#calendar_legend div span {
	background-color: #83bec4 !important;
	color: #333;
	width: 25px; height: 25px;
	line-height: 25px;
	text-align: center;
}
#calendar_legend div:first-child span {
	border-top-left-radius: .5rem;
	border-bottom-left-radius: .5rem;
}
#calendar_legend div:last-child span {
	border-top-right-radius: .5rem;
	border-bottom-right-radius: .5rem;
}
.ui-datepicker td span,
.ui-datepicker td a {
	width: auto !important;
}
.ui-widget.ui-widget-content {
	border-radius: 0px;
	padding: 4px;
}
.ui-datepicker .ui-datepicker-header {
	padding:.5em;
	border:none;
	background: #83bec4;
	border-radius: 0;
}
.ui-datepicker th {
	padding: .7em .3em;
	text-transform:uppercase;
	font-weight: normal;
	border: 0;
	font-size: 0.9em;
}
.ui-datepicker td {
	padding:0;
}
.ui-state-default, .ui-widget-content .ui-state-default {
	border: none;
	background: #fff;
	color: #999;
	padding: 0;
	text-align: center;
	width:35px;
	line-height:35px;
	display:block;
}
.ui-state-highlight, .ui-widget-content .ui-state-highlight {
	background: #83bec4 !important;
	font-weight:bold;
	color:#fff;
}
.ui-state-hover, .ui-widget-content .ui-state-hover {
	background:#eee;
}

/*------------------------
    Checkbox and Radio
-------------------------*/
.input-helper:before,
.input-helper:after,
.checkbox label:before,
.radio label:before,
.radio-inline:before,
.checkbox-inline:before {
  -webkit-transition: all;
  -o-transition: all;
  transition: all;
  -webkit-transition-duration: 250ms;
  transition-duration: 250ms;
}
.checkbox,
.radio {
  padding-top: 0 !important;
}
.checkbox label,
.radio label {
  display: block;
  padding-left: 33px;
}
.checkbox input,
.radio input {
  top: 0;
  left: 0;
  margin-left: 0 !important;
  z-index: 1;
  cursor: pointer;
  opacity: 0;
  filter: alpha(opacity=0);
  margin-top: 0;
}
/*
.checkbox input:checked + .input-helper:before,
.radio input:checked + .input-helper:before {
  border-color: #009688;
}
*/
.checkbox .input-helper:before,
.radio .input-helper:before,
.checkbox .input-helper:after,
.radio .input-helper:after {
  position: absolute;
  content: "";
}
.checkbox .input-helper:before,
.radio .input-helper:before {
  left: 0;
  border: 2px solid #98c1d5;
  background-color:#fff;
}
.checkbox.disabled,
.radio.disabled {
  opacity: 0.6;
  filter: alpha(opacity=60);
}
.checkbox input {
  width: 34px;
  height: 34px;
}
/*
.checkbox input:checked + .input-helper:before {
  background-color: #009688;
}
*/
.checkbox input:checked + .input-helper:after {
  opacity: 1;
  filter: alpha(opacity=100);
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.checkbox .input-helper:before {
  top: 0;
  width: 34px;
  height: 34px;
  border-radius: 0;
  background:#eef8ed;
  border:3px solid #fff;
}
.checkbox .input-helper:after {
  opacity: 0;
  filter: alpha(opacity=0);
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
	content:"\f121";
	font-family:"Ionicons";
  position: absolute;
  font-size: 20px;
  line-height:34px;
  left: -2px;
  top: 0;
  color: #058b8c;
  font-weight: bold;
  width:34px; height:34px;
  text-align:center;
}
.radio input {
  width: 19px;
  height: 19px;
}
.radio input:checked + .input-helper:after {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  -o-transform: scale(1);
  transform: scale(1);
}
.radio .input-helper:before {
  top: -1px;
  width: 19px;
  height: 19px;
  border-radius: 50%;
}
.radio .input-helper:after {
  width: 9px;
  height: 9px;
  background: #009688;
  border-radius: 50%;
  top: 4px;
  left: 5px;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  -o-transform: scale(0);
  transform: scale(0);
}
.checkbox-inline,
.radio-inline {
  vertical-align: top;
  margin-top: 0;
  padding-left: 25px;
}
.checkbox-light .input-helper:before,
.radio-light .input-helper:before {
  border-color: #fff;
}
.checkbox-light input:checked + .input-helper:before {
  border-color: #fff;
  background-color: #fff;
}
.checkbox-light input:checked + .input-helper:after {
  color: #333;
}

.checkbox {
	margin:0;
	position: relative;
}
.checkbox input {
	position: absolute;
}
.checkbox label {
	padding-left: 45px;
	padding-top: 5px;
	padding-bottom: 5px;
	font-weight:500;
	cursor: pointer;
}

.form-text {
	position: absolute;
	bottom: 0;
	right: 50px;
	margin-bottom: .95rem;
	display : none;
	font-size: 1rem;
}
.form-control:valid + .form-text {
	display :block;
}

@media only screen and (max-width: 991px) {
	#group_benefits_wrap h3 {
		margin-bottom: 15px;
		padding: 0 15px;
	}
}
@media only screen and (max-width: 767px) {
/*
	.ui-datepicker {
		z-index: 3 !important;
		width: 100% !important;
		margin-left: -15px;
		max-width: 516px;
	}
*/
}
@media only screen and (max-width: 575px) {
	#group_benefits_wrap, #group_booking {
		margin: -15px;
	}
	#group_booking {
		padding-top: 1rem;
	}
	#group_booking div.row {
		padding-bottom: 1rem;
	}
/*
	.ui-datepicker {
		margin-left: 0;
		max-width: 575px;
		left: 0 !important;
	}
*/
}
@media only screen and (max-width: 400px) {

	#group_booking h3 {
		font-size: 1.5rem
	}
/*
	.ui-datepicker {
		padding: 0 !important;
	}
	.ui-datepicker-multi .ui-datepicker-group table {
		width: 100%;
		margin: 0;
	}
*/
}
