
#search-form {
	clear: both;
	margin-top: 40px;
}

.sky-form {
	padding: 10px 25px 0 25px;
	margin: -15px -15px 15px -15px;
	background: #F0F0F0;
}

.sky-form fieldset {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 0;
}

.sky-form fieldset label.label {
	padding-right: 5px;
}

.search-block .search-postcode .input,
.search-postcode label.input input {
	width: 280px;
}

@media(max-width:768px) {

	.search-block .search-postcode .input,
	.search-postcode label.input input,
	.search-date input {
		width: 100%;
	}
}

.search-date,
.search-date-input,
.search-postcode {
	position: relative;
}

.search-date .input.search-date-input::after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 24px;
	height: 24px;
	background: url("data:image/svg+xml,%3C%3Fxml version=%221.0%22 encoding=%22utf-8%22%3F%3E%3C%21-- Uploaded to: SVG Repo, www.svgrepo.com, Generator: SVG Repo Mixer Tools --%3E %3Csvg width=%22800px%22 height=%22800px%22 viewBox=%220 0 24 24%22 fill=%22none%22 xmlns=%22http://www.w3.org/2000/svg%22%3E %3Cpath d=%22M3 9H21M7 3V5M17 3V5M6 13H8M6 17H8M11 13H13M11 17H13M16 13H18M16 17H18M6.2 21H17.8C18.9201 21 19.4802 21 19.908 20.782C20.2843 20.5903 20.5903 20.2843 20.782 19.908C21 19.4802 21 18.9201 21 17.8V8.2C21 7.07989 21 6.51984 20.782 6.09202C20.5903 5.71569 20.2843 5.40973 19.908 5.21799C19.4802 5 18.9201 5 17.8 5H6.2C5.0799 5 4.51984 5 4.09202 5.21799C3.71569 5.40973 3.40973 5.71569 3.21799 6.09202C3 6.51984 3 7.07989 3 8.2V17.8C3 18.9201 3 19.4802 3.21799 19.908C3.40973 20.2843 3.71569 20.5903 4.09202 20.782C4.51984 21 5.07989 21 6.2 21Z%22 stroke=%22%23000000%22 stroke-width=%222%22 stroke-linecap=%22round%22 stroke-linejoin=%22round%22/%3E %3C/svg%3E") no-repeat 0 50%;
	background-size: 24px;
	opacity: 0.3;
	top: 0px;
	right: 6px;
}

.search-nights-input {
	width: 180px;
	display: inline-block;
}

.search-postcode::after {
	content: "";
	display: inline-block;
	position: absolute;
	width: 22px;
	height: 22px;
	background: url("data:image/svg+xml,%3C%3Fxml version=%221.0%22 encoding=%22UTF-8%22 standalone=%22no%22%3F%3E %3Csvg width=%22800px%22 height=%22800px%22 viewBox=%22-4 0 32 32%22 version=%221.1%22 xmlns=%22http://www.w3.org/2000/svg%22 xmlns:xlink=%22http://www.w3.org/1999/xlink%22 xmlns:sketch=%22http://www.bohemiancoding.com/sketch/ns%22%3E %3Ctitle%3Elocation%3C/title%3E %3Cdefs%3E %3C/defs%3E %3Cg id=%22Page-1%22 stroke=%22none%22 stroke-width=%221%22 fill=%22none%22 fill-rule=%22evenodd%22 sketch:type=%22MSPage%22%3E %3Cg id=%22Icon-Set%22 sketch:type=%22MSLayerGroup%22 transform=%22translate%28-104.000000, -411.000000%29%22 fill=%22%23000000%22%3E %3Cpath d=%22M116,426 C114.343,426 113,424.657 113,423 C113,421.343 114.343,420 116,420 C117.657,420 119,421.343 119,423 C119,424.657 117.657,426 116,426 L116,426 Z M116,418 C113.239,418 111,420.238 111,423 C111,425.762 113.239,428 116,428 C118.761,428 121,425.762 121,423 C121,420.238 118.761,418 116,418 L116,418 Z M116,440 C114.337,440.009 106,427.181 106,423 C106,417.478 110.477,413 116,413 C121.523,413 126,417.478 126,423 C126,427.125 117.637,440.009 116,440 L116,440 Z M116,411 C109.373,411 104,416.373 104,423 C104,428.018 114.005,443.011 116,443 C117.964,443.011 128,427.95 128,423 C128,416.373 122.627,411 116,411 L116,411 Z%22 id=%22location%22 sketch:type=%22MSShapeGroup%22%3E %3C/path%3E %3C/g%3E %3C/g%3E %3C/svg%3E") no-repeat 0 50%;
	background-size: 22px;
	opacity: 0.3;
	top: 6px;
	right: 6px;
}


p.button_container {
	padding-top: 15px;
}

ul.display_mode li a:hover,
ul.display_mode li.on a {
	text-decoration: none;
	background-color: #F0F0F0;
}

#gallery_wrapper {
	margin: -15px;
	padding: 15px 0;
	background: #F6F6F6;
}

@keyframes scroll-gradient {
	0% {
		background-position: 0% 50%;
	}

	100% {
		background-position: 100% 50%;
	}
}

.card-container .row,
#gallery_wrapper .row {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 100%;
}

.col-4:hover {
	box-shadow: 0 4px 8px 0 rgba(0, 0, 0, 0.2);
}

.col-4:hover .primary-btn {
	background: orange;
	border-color: transparent;
}

.secondary-btn.orange_button::after {
	background-image: none;
	content: "\276F";
	padding-left: 12px;
	display: inline-block;
	font-size: 1rem;
	margin-left: 0;
	padding-right: 12px;
	line-height: 12px;
}

.secondary-btn.orange_button:hover::after {
	background-image: none;
}

.col-4.empty,
.col-4.empty:hover {
	box-shadow: none;
	border: 0;
	background: transparent;
	cursor: default;
}

.card-image img {
	width: 100%;
	height: auto;
	overflow: hidden;
	max-height: 240px;
	object-fit: cover;
}

.card-image h2.block-title {
	margin: 10px;
	top: 0;
	left: 0;
	padding: 8px 10px;
	background: white;
	color: black;
	position: absolute;
	display: inline-block;
	z-index: 1;
	font-size: 1rem;
	font-weight: 700;
	max-width: 250px;
}

div.col-4:hover .carousel-slide,
div.col-4:hover h2.block-title {
	transition: background-color 0.2s;
}

div.col-4:hover .carousel-slide {
	background-color: rgba(0, 0, 0, 0.6);
}

div.col-4:hover h2.block-title {
	background-color: white;
	text-shadow: none;
}


@media (max-width: 768px) {

	.card-container .row,
	#gallery_wrapper .row {
		display: block;
		text-align: left;
	}
}

.price_container.solo-desc {
	margin-top: 40px;
	font-size: 0.9rem;
	background: #d9ecfb;
	color: #2a5d9f;
	width: 100px;
	height: 100px;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	border: 2px solid white;
	box-shadow: 0px 1px 5px 0px rgba(0, 0, 0, 0.1);
	position: absolute;
	right: 10px;
	top: 10px;
	letter-spacing: -1px;
	z-index: 1;
}

.instant_availability {
	color: #222 !important;
	font-weight: normal;
	font-size: 0.8rem;
}

.browse-navigation {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin: -15px;
	background: #FFF;
	margin-bottom: 15px;
	padding: 5px 20px 5px 20px;
}

.browse-navigation-footer {
	padding-bottom: 0;
	margin-bottom: 0;
	margin-top: 0;
}

.browse-navigation p.sort_options a,
.browse-navigation p.sort_options a:hover {
	text-decoration: none;
}

.browse-navigation p.sort_options a:hover span.a_text {
	text-decoration: underline;
}

.page_nav .prev_next {
	background: #FC9;
}

.results_container {
	position: absolute;
	background: white;
	border-radius: 4px;
	box-shadow: 0 0 3px rgba(0, 0, 0, 0.3);
	margin-top: -1px;
	z-index: 99999;
	margin-left: 86px;
	text-align: left;
}

#filter-container {
	display: flex;
	flex-wrap: nowrap;
	margin: 20px 0 0 0;
	gap: 20px;
	align-items: flex-start
}

#price-label {
	margin-right: 15px;
}

#filter-price-explanation {
	margin-top: 30px;
	margin-left: 2.5rem;
	text-align: center;
	color: #999;
	font-size: 12px;
}

.filter-tab {
	display: flex;
	align-items: center;
	background: #CCC;
	border-radius: 3px;
	padding: 4px 6px;
	text-transform: uppercase;
	font-size: 0.8rem;
	line-height: 0.8rem;
	text-decoration: none !important;
	color: #444;
}

.filter-tab::after {
	content: "";
	display: block;
	width: 0.8rem;
	height: 0.8rem;
	border: 1px solid white;
	margin-left: 8px;
}

.filter-tab:hover::after {
	border-color: #AAA;
	content: "\2714";
	color: #FFF;
}

.filter-tab.selected:hover::after {
	content: "\2717";
	background: black;
}

.filter-tab.fixed:hover::after {
	content: "\2714";
}

.noUi-marker-horizontal.noUi-marker-sub {
	height: 5px;
}

.noUi-marker-horizontal.noUi-marker-large {
	height: 10px;
}

#price-slider .noUi-value-large {
	font-size: 0.8rem;
}

.search-duo,
.nights-clear {
	display: inline-block;
}

.fpv-search-output,
.refine-search-toggle {
	display: none;
}


@media (max-width:768px) {

	.results_container {
		margin-left: 0;
	}

	.search-duo {
		display: block;
	}

	.sky-form {
		padding: 0;
		margin: 0;
	}

	.sky-form fieldset,
	.search-input,
	.sky-form fieldset label.label {
		display: block;
	}

	#filter-price-inner,
	#filter-container {
		display: block;
	}

	#filter-container {
		display: none;
	}

	#price-label,
	#filter-tabs {
		margin: 10px 0;
	}

	.sky-form label.filter-tab {
		padding: 8px 8px;
	}

	div.browse-navigation {
		margin: 20px 0;
		padding: 0;
		display: block;
	}

	ul.display_mode li {
		margin: 0;
	}

	#gallery_wrapper {
		margin: 0 -15px;
		padding-top: 0;
	}

	.card-image h2.block-title {
		margin-top: 27px;
	}


	div#search-form {
		position: -webkit-sticky;
		position: sticky;
		top: 53px;
		left: 0;
		right: 0;
		z-index: 1002;
		background-color: white;
		margin: 0 -15px;
		max-height: 90vh;
	}

	.mobile_block_button {
		padding: 0.75rem !important;
	}

	.nights-clear {
		display: flex;
		gap: 10px;
		align-items: center
	}

	.fpv-search-output {
		background-color: #F0F0F0;
		padding: 10px;
		display: flex;
	}

	.fpv-search-output-button {
		width: 30%;
	}

	.search-output-label-container>span {
		display: inline-block;
	}

	.fpv-search-wrapper {
		display: none;
	}

}

.identify_package_title::before,
.identify_package_title::after {
	content: '';
	position: absolute;
	top: 50%;
	width: 50px;
	height: 1px;
	background-color: #D9D9D9;
}

.identify_package_title::before {
	right: 95%;
	padding-left: 10px;
}

.card-details-inner {
	text-align: center;
	position: relative;
}

.card-desc.card-desc-first h3 {
	font-size: 1.2rem;
	min-height: 60px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.card-container {
	position: relative;
}

.blank_search_results h1, .blank_search_results div.on_page_copy {
	display: none;
}
.blank_search_results #search-form {
	margin-top:0;
}

.col-4 {
	display: flex;
    align-items: stretch; 
}
.col-4 .card-container {
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}
.col-4 .card-container .card-details {	
    display: flex;
    flex-direction: column;
    flex: 1;
    margin-bottom: 0 !important;
}
.col-4 .card-container .card-details-inner {
	
    display: flex;
    flex: 1;
    justify-content: flex-start;
    flex-direction: column;
}
.col-4 .card-container .card-desc-last {	 
    display: flex;
    flex: 1;
    flex-direction: column;
}

.col-4 span.instant_availability {
	color:#396 !important;
}

@media (max-width:768px) {
	div#mainColumn:not(.home_page) p.button_container a.btn {
		padding: 14px 12px !important;
	}

}

@media (max-width:768px) {
	p.button_container:has(.book_button) {
		flex-direction: column;
	}
}
@media (max-width:992px) and (min-width: 769px) and (max-width: 992px) {
	.identify_package_title_friend {
		margin-top: initial;
	}
}
@media (max-width:992px) {
	.search-btn {
		margin-top: initial;
	}
	#filter-container {
		flex-direction: initial;
		background: initial !important;
		padding: initial;
		border-bottom: initial;
	}
	div.browse-navigation {
		flex-wrap: initial;
	}
}
@media (max-width: 768px) {
	.map_column_container .card {
		margin-bottom: 14px !important;
	}
	#gallery_wrapper .card {
		margin-bottom: 14px !important;
	}
}
.hotel_details_container {
	overflow: initial;
}
div.card_footer_elements_container {
	display: initial;
	gap: initial;
	flex-direction: initial;
	align-items: initial;
	justify-content: initial;
}
p.package_count {
	letter-spacing: initial;
}
.filter-tab {
	border: initial;
	justify-content: initial;
}
.filter-tab::after {
	justify-content: initial;
	align-items: initial;
	border-color: rgb(255, 255, 255) !important;
}
#price-slider .noUi-value {
	margin-top: initial;
}
.card .price_container_container .offer-price {
	text-align: unset !important;
	min-height: initial;
}
.card-desc .instant_availability {
	margin: initial;
	display: initial;
}
.identify_package_title::before {
	bottom: initial;
	left: initial;
	margin-left: initial;
	vertical-align: initial;
}
.identify_package_title::after {
	bottom: initial;
	right: initial;
	margin-right: initial;
	vertical-align: initial;
}
@media (min-width: 1201px) {
	a#toggle_filter-container {
		color: rgb(129, 1, 1);
	}
	.col-4 {
		flex-direction: initial;
	}
}
@media (min-width: 993px) and (max-width: 1200px) {
	a#toggle_filter-container {
		color: rgb(129, 1, 1);
	}
	.col-4 {
		flex-direction: initial;
	}
}
@media (min-width: 769px) and (max-width: 992px) {
	a#toggle_filter-container {
		color: rgb(129, 1, 1);
	}
	.col-4 {
		flex-direction: initial;
	}
}
@media (max-width:1200px) and (min-width: 993px) and (max-width: 1200px) {
	p.button_container {
		flex-direction: initial;
	}
}
@media (max-width:1200px) and (min-width: 769px) and (max-width: 992px) {
	p.button_container {
		flex-direction: initial;
	}
}
@media (max-width:1200px) {
	.carousel-radio-wrapper label {
		padding: 15px 3px 15px 8px !important;
	}
}

@media (max-width: 992px) {
	p.page_nav {
		flex-basis: auto !important;
	}
	.browse-navigation p.page_nav {
		flex-basis: 0px !important;
	}
}
@media (max-width: 768px) {
	.card-container .carousel-radio-wrapper {
		bottom: 6px !important;
	}
}
