/*
 * Room types archive page
 */

.booking-manager-room-list, .booking-manager-room-list li {
	list-style:none;
	margin:0;
	padding:0;
}

	.booking-manager-room-list, .room-information__link {
		display: -ms-flexbox;
	    display: -webkit-flex;
	    display: flex;
	    -ms-flex-pack: distribute;
	    justify-content: space-between;
	    -ms-flex-wrap:wrap;
	    flex-wrap:wrap;
	    -ms-flex-align: end;
	    align-items: flex-end;
	}

		.room-information__link {
			-ms-flex-direction:column;
			flex-direction:column;
			-ms-flex-align:baseline;
			align-items:baseline;
			text-decoration:none;
		}

			@media (max-width:500px) {
				.room-information__link {
					-ms-flex-align:center;
					align-items:center;
				}
			}

	.booking-manager-room-list li {
		margin:0 0 1.5em;
		width:100%;
	}

		@media (min-width:501px) {
			.booking-manager-room-list li {
				width:49%;
			}
		}

		@media (min-width:800px) {
			.booking-manager-room-list li {
				width:31%;
			}
		}

	.room-information__title {
		margin:.75em 0 0;
	}

	.room-information__button {
		display:inline-block;
		margin:.5em 0 0;
	}


/* Booking System */

.booking_manager_date_form table,
.booking_manager_date_form td,
.booking_manager_date_form th {
    border-collapse: collapse;
}

	.date_table_navigation, .date-table {
	    width: 100%;
	    table-layout: fixed;
	}

		.date-table {
			margin: 1.5em 0;
		}

			@media (min-width:1151px) {
				.date-table {/* Using 1rem font-size on this table, so have to take into account font size increases on contentbox */
					margin: 2.5em 0 2.5em -0.5em;
					width: calc(100% + (0.5em * 2));
					outline:1.5em solid #fff;
				}

				@media (min-width:1400px) {
					
					.date-table {
						/* Bump it up for font-size:115% on body */
						margin-left: -0.875em;
						width: calc(100% + (0.875em * 2));
					}
				}
			}

	.booking_manager_date_form .date-table {
	    font-size: 1rem;
	}

	.date-table td,
	.date-table th {
	    padding: 1em .3em .5em;
	    vertical-align: top;
	}

	.date-table th,
	.date-table td {
		color:#555;
		border:1px solid #ddd;
		border-color:#eee #e5e5e5 #ddd #e5e5e5;
		background:linear-gradient(to bottom, #fff 0, #f8f8f8 100%);
	    text-align: center;
	    cursor:pointer;
	}

		.date-table td:first-child {
			border-left:none;
		}

		.date-table td:last-child {
			border-right:none;
		}

	.date-table th.today,
	.date-table td.today {
	    color: #9c610b;
	}

		.date-table td.special {
		    background: #f5f5f5;
		    color: #000;
		    position: relative;
		}

			.special label {
				color:#000;
			}

		.date-table td.unavailable,
		.unavailable label {
			color: #999;
		    position: relative;
		}

		.date-table td.active {
		    background:#fffbeb;
			color: #5a1413;
			border:1px solid #fed51a;
		    position: relative;
		}

		@media only screen and (max-width:1150px) {

		.date-table {
			margin-left: -.5em;
			width: calc(100% + 1em);
		}

		    .date-table,
		    .date-table tr {
		        border: none;
		        display: block;
		        text-align: center;
		    }

		    .date-table th,
		    .date-table td {
		    	background:transparent;
		        display: inline-block;
		        vertical-align:top;
		        padding: .5em;
		        margin:.2em;
		        border: none;.
		        border-radius:2px;
		    }

		    .today .today {
		    	display:block;
		    	height:1.3em;
		    	overflow: hidden;
		    	-moz-transition:all 100ms linear;
			    -webkit-transition:all 100ms linear;
			    transition:all 100ms linear;
		    }

			    .today.active .today {
			    	height:0;
			    	opacity:0;
			    }

	}

.date_table_navigation, .date_table_navigation td, .date_table_navigation th {
	padding:0;
	border:none;
}

	.date_table_daterange {
		text-align:center;
	}

	.date_table_next {
		text-align:right;
	}

	.date_table_navigation strong {
	    display: block;
	}

	.date_table_navigation a {
	    display: inline-block;
	    font-size:.9em;
	    background:#eee;
	    color:#9c610b;
	}

	@media (max-width:850px) {

		.date_table_navigation, .date_table_navigation tbody, .date_table_navigation tr, .date_table_navigation td {
			text-align:center;
			display: block;
		}

			td.date_table_previous, td.date_table_next {
				display:inline-block;
			}

			td.date_table_daterange {
				padding:.5em 0;
				line-height:1;
			}

			.date_table_navigation .button {
				padding: .25em .7em;
			}

				@media (max-width:500px) {
					.date_table_navigation .button {
						margin:.25em 0;
					}
				}

	}

.unavailable label,
.unavailable .select-room input {
    cursor: default;
}

.date-table .allotment {
	color:#888;
}

	.active .allotment {
		color:#5a1413;
	}

.date-table .day {
	text-transform:uppercase;
	font-size: 1.3em;
}

.date-table .date {
    font-size: 1.1em;
    font-weight:bold;
}

.date-table .room-price {
	font-weight:bold;
}

.select-room {
    cursor: pointer;
    display: block;
    font-weight: 500;
}

.select-room input {
    cursor: pointer;
    display: block;
    margin: .5em auto;
}

.special span.special,
.unavailable span.unavailable {
    font-size: .8em;
    font-weight: bold;
    text-transform: uppercase;
    width: 100%;
    display: block;
}

.booking_manager_booking_form {

}


/*
 * Personal details booking stage
 */

/* Booking date summary */

@media (min-width:850px) {
	.selected-dates, .your-details {
		width:50%;
		float:left;
		margin:0 0 2em;
	}

		.selected-dates {
		    padding-right:1em;
		}

		.your-details {
		    padding-left:1em;
		}
}

.booking_manager_date_table {
	width:100%;
}

.date_row,
.rate_row {
    padding: .15em .4em;
}

	.rate_row {
	    text-align: left;
	}

	@media (min-width:501px) {
		.date_row {
			text-align: right;
		}
	}

	@media (max-width:500px) {
		.booking_manager_date_table tr {
            display:table-row;
        }

        .booking_manager_date_table td, .booking_manager_date_table th {
            display:table-cell;
        }

        .date_row {
        	padding-left:0;
        	font-size:.85em;
        }

        .rate_row {
        	padding-right:0;
        }

	}

.booking_manager_form_fields,
.booking_manager_form_fields li {
    list-style: none;
    margin: 0;
    padding: 0;
}

	.booking_manager_form_fields li {
	    margin: 0 0 .5em;
	    clear:both;
	}

	@media (min-width:850px) {

		li.your-details__field--name {
			float:left;
			clear:none;
			width:48%;
		}

			li.your-details__field--last-name {
				float:right;
			}

	}

.booking_manager_form_fields label {
    display: block;
    margin:0 0 .15em;
    font-weight: bold;
}

.booking_manager_form_fields input,
.booking_manager_form_fields textarea,
.booking_manager_form_fields select {
    display:block;
    width: 100%;
    padding: .2em .4em;
    border:1px solid #ccc;
    font-size:.8em;
}

.booking_manager_form_fields textarea {
    height: 5em;
}

.booking_manager_form_submit {
	clear:both;
}

.booking_thankyou,
.booking_manager_form_error {
    background: #fed51a;
    padding: 10px 15px;
    clear: both;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    border-radius: 5px;
    font-weight: bold;
    color: #fff;
}

	.booking_manager_form_error {
	    background: #f00;
	    margin-bottom: 1em;
	}

		.booking_manager_form_error h2 {
			margin-top:.25em;
		}

		.booking_manager_form_error p {
		    color: #fff;
		}

		.booking_manager_form_error ul {
		    margin: .5em 0 .5em 2em;
		}

.Rooms {
    width: 28%;
    height: auto;
    min-height: 205px;
    float: left;
    margin-right: 1em;
    margin-bottom: 1em;
    background-color: #CCC;
    padding: 1em;
    border-radius: 1em;
}


.room-information__image {
	min-height: 0;
}

.room-information--curlew-cabin .room-information__price {
	color: black;
}

/* Hide Stripe payment */
.stripe-cc__powered-by {
	display:none;
}