
/**
 * Styles Flatpickr component
 */

.flatpickr-calendar {
	font-size: 14px;
}

.flatpickr-current-month {
	font-size: 16px;
}

/**
 * Styles Slider
 */
 
#ibeWrapper .slider {
  height: auto;
}
 
#ibeWrapper .slider__next {
  text-decoration: none;
}

/**
 * Styles button element
 */

a.ibe-btn,
button.ibe-btn {
	padding: 6px 20px;
	border-radius: 3px;
	font-family: 'Lato', Helvetica, Arial, sans-serif;
	font-weight: 300;
	font-size: 20px;
	line-height: 1.2;
}

a.ibe-btn-small,
button.ibe-btn-small {
	padding: 4px 20px;
	border-radius: 3px;
	font-family: 'Lato', Helvetica, Arial, sans-serif;
	font-weight: 300;
	font-size: 18px;
	line-height: 1.2;
}

a.ibe-btn,
button.ibe-btn {
	background: #0093db;
	color: #fff;
}

a.ibe-btn:hover,
a.ibe-btn:active,
a.ibe-btn:focus,
button.ibe-btn:hover,
button.ibe-btn:active,
button.ibe-btn:focus {
	background: #0070b7;
	color: #fff;
	text-decoration: none
}

a.ibe-btn:disabled,
a.ibe-btn.disabled,
button.ibe-btn:disabled,
button.ibe-btn.disabled {
	background: #666;
	color: #ccc;
}

a.ibe-btn-outline,
button.ibe-btn-outline {
	background: transparent;
	border-color: #0093db;
	border-radius: 3px;
	font-family: 'Lato', Helvetica, Arial, sans-serif;
	font-weight: 300;
	font-size: 20px;
	color: #0093db;
}

a.ibe-btn-outline:hover,
a.ibe-btn-outline:active,
a.ibe-btn-outline:focus,
button.ibe-btn-outline:hover,
button.ibe-btn-outline:active,
button.ibe-btn-outline:focus {
	background: transparent;
	border-color: #0070b7;
	color: #0070b7;
}

a.ibe-btn-outline:disabled,
a.ibe-btn-outline.disabled,
button.ibe-btn-outline:disabled,
button.ibe-btn-outline.disabled {
	background: transparent;
	border-color: #666;
	color: #666;
}

/**
* Styles Control group
*/

#ibeWrapper .ibe-control-group input[type="text"],
#ibeWrapper .ibe-control-group input[type="number"],
#ibeWrapper .ibe-control-group input[type="email"],
#ibeWrapper .ibe-control-group textarea,
#ibeWrapper .ibe-control-group select {
	display: inline-block;
	margin: 0;
	padding: 6px 8px;
	font-size: 16px;
	line-height: 28px;
	background-color: #ffffff;
	color: #555;
}

#ibeWrapper .ibe-control-group select {
	height: 40px;
}

#ibeWrapper .ibe-checkbox label a:link,
#ibeWrapper .ibe-checkbox label a:visited {
	color: #0093db;
	text-decoration: underline;
}

#ibeWrapper .ibe-checkbox label a:hover,
#ibeWrapper .ibe-checkbox label a:active {
	color: #222;
	text-decoration: underline;
}

/**
 * Styles RoomSearchForm component
 */

.room-search-form {
	background: #f3f4f3;
}

.room-search-form__container--header {
	background: #fff;
}

.room-search-form label {
	font-size: 14px;
}

#ibeWrapper .room-search-form input[type="text"],
#ibeWrapper .room-search-form select {
	padding: 6px 8px;
	height: 40px;
	font-size: 14px;
	line-height: 28px;
	background-color: #ffffff;
	color: #555;
}

#ibeWrapper .room-search-form input[type="text"]:focus,
#ibeWrapper .room-search-form input[type="text"].active,
#ibeWrapper .room-search-form select:focus {
	background: #ffffff;
	color: #333;
}

.room-search-form .room-search-form__title {
	margin: 0;
	padding: 8px 8px;
	font-size: 32px;
	line-height: 1.125;
	color: rgb(89,111,82);
}

.room-search-form__spinner {
	margin-right: 0.6em;
}

.room-search-form__button-group button:last-child {
	margin-right: 0;
}

.room-search-form__ctrl-group label {
	font-size: 16px;
	font-weight: normal;
	line-height: 1.5;
}

.room-search-form__ctrl-group label + div.room-search-form__radio {
	padding-top: 4px;
}

.room-search-form__ctrl-group .room-search-form__radio label {
	font-size: 16px;
	line-height: 1.75;
	font-weight: normal;
	margin-left: 0;
	text-indent: 0;
}

.room-search-form__ctrl-group .room-search-form__radio input + span {
	margin-left: 6px;
	font-size: 16px;
	line-height: 1.125;
}

.room-search-form__ctrl-group .room-search-form__radio label ul {
	margin: 0;
	padding-left: 40px;
	list-style: disc outside;
}

.room-search-form__ctrl-group .room-search-form__radio label li {
	line-height: 1.25;
}

.room-search-form__ctrl-group {
	padding: 5px 0;
}

/**
 * Styles RoomOfferCart component
 */

#ibeWrapper .room-offer-cart__title {
	color: #0070b7;
	font-family: Roboto, Arial, sans-serif;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.2;
	margin-bottom: 10px;
	text-align: left;
}

#ibeWrapper .room-offer-cart__actions .ibe-btn,
#ibeWrapper .room-offer-cart__actions .ibe-btn,
#ibeWrapper .room-offer-cart__actions .ibe-btn {
	background: #555;
	color: #fff;
}

#ibeWrapper .room-offer-cart__actions .ibe-btn:hover,
#ibeWrapper .room-offer-cart__actions .ibe-btn:active,
#ibeWrapper .room-offer-cart__actions .ibe-btn:focus {
	background: #333;
	color: #fff;
}

#ibeWrapper .room-offer-cart-position {
	line-height: 1.25;
}

/**
 * Styles RoomOfferList component
 */

#ibeWrapper .room-offer-list__title {
	color: #0070b7;
	font-family: Roboto, Arial, sans-serif;
	font-size: 20px;
	font-weight: normal;
	line-height: 1.2;
	margin-bottom: 10px;
	text-align: left;
}

/**
 * Styles RoomOfferIntro component
 */

.room-offer-intro__title {
	color: #444;
	font-size: 40px;
	font-weight: bold;
	line-height: 1.2;
	margin: 0 0 20px;
	text-align: left;
}

.room-offer-intro__body {
	font-size: 20px;
	line-height: 1.5;
}

.room-offer-intro__body p {
	margin: 0 0 20px;
}

.room-offer-intro__callout {
	font-size: 20px;
	line-height: 1.5;
	font-weight: normal;
}

.room-offer-intro__callout {
	margin-top: 32px;
}

/**
 * Styles RoomOfferSubheading component
 */

.room-offer-subheading__title {
  font-family: inherit;
  font-weight: bold;
  font-size: 28px;
  line-height: 1.25;
	margin-bottom: 16px !important;
}

/**
 * Styles RoomOfferItem component
 */

.room-offer-item {
	margin-bottom: 20px;
	box-shadow: 0px 0px 7px 1px rgba(128,128,128,0.333);
	padding-top: 8px;
	padding-bottom: 8px;
}

.room-offer-item__title {
	margin: 0;
	font-family: inherit;
	font-weight: bold;
	font-size: 24px;
	line-height: 1.25;
	color: #0070b7;
	text-align: left;
}

.room-offer-item__primary-data {
	margin: 0 0 10px;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
}

.room-offer-item__description p {
	margin: 0 0 20px;
	font-size: 18px;
	line-height: 1.333;
}

.room-offer-item ul.slider__list {
	padding: 0;
	margin: 0;
	list-style: none;
}

/**
 * Styles RoomOfferItemOffer component
 */

.room-offer-item-offer {
	background: #E4E5E8;
}

.room-offer-item-offer__price-label {
	font-size: 18px;
}

.room-offer-item-offer__price-value {
	font-size: 24px;
	font-weight: bold;
	color: #0070b7;
}

.room-offer-item-offer__policies-toggle {
	font-size: 18px;
}

/**
 * Styles RoomOfferPolicy component
 */

.room-offer-policy h4 {
	font-family: inherit;
	font-size: 18px;
	font-weight: bold;
	line-height: 1.333;
}

.room-offer-policy ul {
	margin: 0 0 0.75rem;
}

.room-offer-policy li {
	font-size: 16px;
	line-height: 1.333;
	margin: 0 0 4px;
}

.room-offer-policy li::before {
	content: '' !important;
	margin-right: 0 !important;
}

/**
 * Styles RoomAlternativeOffer component
 */

.room-alternative-offer-row {
	border-color: #fff;
	margin-top: 32px;
}

.room-alternative-offer-column {
	border-color: #fff;
	background: #f4f4f4;
}

.room-alternative-offer {
	font-size: 20px;
	line-height: 28px;
	border-radius: 4px;
	color: #555;
}

.room-alternative-offer__period {
	border-color: #fff;
}

/**
 * Styles RoomOfferSummary component
 */

.room-offer-summary {
	border-color: #c8c8c8;
}

.room-offer-summary__row {
	border-color: #c8c8c8;
}

.room-offer-summary__label,
.room-offer-summary__value,
.room-offer-summary__sum,
.room-offer-summary__position {
	padding: 4px 8px;
	font-size: 16px;
}

.room-offer-summary__position-description {
	padding-left: 16px;
	font-size: 16px;
	font-style: italic;
}

.room-offer-summary__row--subtotal .room-offer-summary__position,
.room-offer-summary__row--subtotal .room-offer-summary__sum,
.room-offer-summary__row--total .room-offer-summary__position,
.room-offer-summary__row--total .room-offer-summary__sum {
	font-weight: bold;
}

/**
 * Styles BookingPaymentConditions component
 */

.booking-payment-conditions {
	border-color: #c8c8c8;
	background: #E4E5E8;
}

#ibeWrapper .booking-payment-conditions__row {
	border-color: #c8c8c8;
}

#ibeWrapper .booking-payment-conditions__row:last-child {
	border-bottom: 0 none;
}

.booking-payment-conditions__title,
.booking-payment-conditions__sum,
.booking-payment-conditions__position {
	padding: 4px 8px;
	font-size: 16px;
}

.booking-payment-conditions__title {
	font-size: 18px;
	font-style: normal;
	font-weight: bold;
	color: #222;
}

.booking-payment-conditions__position-description {
	padding-left: 16px;
	font-size: 16px;
	font-style: italic;
}

/**
 * Styles BookingDataForm component
 */

.booking-data-edit-group {
	border-color: #c8c8c8;
}

#ibeWrapper .booking-data-edit-group label span,
#ibeWrapper .booking-data-edit-group label {
	font-size: 16px;
	font-weight: 400;
	line-height: 20px;
}

.booking-data-edit-group input,
.booking-data-edit-group textarea,
.booking-data-edit-group select {
	padding: 6px 8px;
	font-family: inherit;
	font-size: 16px;
	line-height: 20px;
	border-color: #ccc;
	background-color: #ffffff;
	color: #555;
}

.booking-data-edit-group select {
	line-height: 32px;
}

.booking-data-edit-group input:focus,
.booking-data-edit-group input.active,
.booking-data-edit-group textarea:focus,
.booking-data-edit-group textarea.active,
.booking-data-edit-group select:focus {
	background: #ffffff;
	color: #333;
}

.booking-data-edit-group input::placeholder {
	color: inherit;
	font-style: italic;
	opacity: 0.5;
}

.booking-data-edit-group textarea::-webkit-textarea-placeholder {
	color: inherit;
	font-style: italic;
	opacity: 0.5;
}

.booking-data-edit-group input:disabled::-webkit-input-placeholder {
	opacity: 0.0;
}

.booking-data-edit-group input:disabled:-ms-input-placeholder {
	opacity: 0.0;
}

.booking-data-edit-group input:disabled::placeholder {
	opacity: 0.0;
}

.booking-data-edit-group textarea:disabled::-webkit-textarea-placeholder {
	opacity: 0.0;
}

.booking-data-edit-group textarea:disabled:-ms-textarea-placeholder {
	opacity: 0.0;
}

.booking-data-edit-group textarea:disabled::placeholder {
	opacity: 0.0;
}

.booking-data-edit__row {
	margin-bottom: 4px;
}

.booking-data-edit-group input::-webkit-input-placeholder {
	color: inherit;
	font-style: italic;
	opacity: 0.5;
}

.booking-data-edit-group input:-ms-input-placeholder {
	color: inherit;
	font-style: italic;
	opacity: 0.5;
}

@media (min-width: 720px) {

	.booking-data-edit__row label {
		padding-right: 10px
	}
}

/**
 * Styles BookingPayment component
 */

.booking-payment-widget-wrapper {
	background: #f4f4f4;
	border-color: #c8c8c8;
}

.booking-payment-widget-wrapper .wpwl-form {
	font-size: 16px;
}

.booking-payment-widget-wrapper .wpwl-control-iframe {
	border-color: transparent;
	background: #fff;
}

/**
 * IBE Checkout
 */

 .ibe-checkout-heading {
	font-size: 20px;
	font-weight: bold;
	padding: 0 16px;
	margin: 8px 0;
}

.ibe-checkout-consents {
	margin-bottom: 10px;
}

