/*
==========================================================================
visioncruise.co.uk | iprogress.co.uk 2020
==========================================================================
*/

/*
==========================================================================
	FONTS
==========================================================================
*/

body.single-cruises .anchor-scroll {
	padding-top: 180px;
	margin-top: -180px;
}

/* Hiding airport dropdown only for Oceania */
div[data-cruiseline="118412"] #book-now #book-now-html .package-drops .airport-selection,
div[data-cruiseline="118412"] #grade-selector-top .filter-dropdowns .airport-selection {
	display: none;
}

/*
==========================================================================
GLOBAL
==========================================================================
*/

#wpadminbar {
	opacity: 0;
	transition: opacity 0.2s;
	transition-delay: 1s;
}

#wpadminbar:hover {
	opacity: 1;
	transition-delay: 0s;
}

html,
body {}

.hidden {
	display: none !important;
	visibility: hidden;
}

.visuallyhidden {
	border: 0;
	clip: rect(0, 0, 0, 0);
	height: 0px;
	margin: -1px;
	overflow: hidden;
	padding: 0;
	position: absolute;
	width: 0px;
}

.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
	clip: auto;
	height: auto;
	margin: 0;
	overflow: visible;
	position: static;
	width: auto;
}

.flex {
	display: flex;
}

.flex-inline {
	display: inline-flex;
}

.flex-wrap {
	flex-wrap: wrap;
}

.flex-align-start {
	align-items: flex-start;
}

.flex-align-end {
	align-items: flex-end;
}

.flex-align-center {
	align-items: center;
}

.flex-align-stretch {
	align-items: stretch;
}

.flex-justify-start {
	justify-content: flex-start;
}

.flex-justify-end {
	justify-content: flex-end;
}

.flex-justify-between {
	justify-content: space-between;
}

.flex-justify-around {
	justify-content: space-around;
}

.flex-justify-center {
	justify-content: center;
}

.flex-direction-column {
	flex-direction: column;
}

.flex-direction-column-reverse {
	flex-direction: column-reverse;
}

.flex-direction-row {
	flex-direction: row;
}

.flex-direction-row-reverse {
	flex-direction: row-reverse;
}

.flex-grow {
	flex: 1;
}

.flex-auto {
	flex: 1 0 auto;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.align-left {
	float: left;
	margin: 0 20px 20px 0;
}

.align-right {
	float: right;
	margin: 0 0 20px 20px;
}

.yellow-button {
	border-radius: 0;
	margin: 20px 0 0;
	padding: 5px;
	color: #fff;
	border: 2px solid #fb9100;
	background: #fb9100;
	width: 120px;
	text-align: center;
	display: block;
	transition: all 0.3s ease-in;
}

.yellow-button:hover {
	color: #fff;
	border: 2px solid #fb9100;
	background: #fb9100;
	transition: all 0.3s ease-in-out;
}

.fas.fa-star {
	color: #fb9100;
}

input:focus,
textarea:focus {
	outline: none;
}

select {
	color: #101010;
}

/* Margin / Padding */
.m-0 {
	margin: 0 !important;
}

.m-1 {
	margin: 5px !important;
}

.m-2 {
	margin: 10px !important;
}

.m-3 {
	margin: 15px !important;
}

.m-4 {
	margin: 20px !important;
}

.mt-0 {
	margin-top: 0 !important;
}

.mt-1 {
	margin-top: 5px !important;
}

.mt-2 {
	margin-top: 10px !important;
}

.mt-3 {
	margin-top: 15px !important;
}

.mt-4 {
	margin-top: 20px !important;
}

.mr-0 {
	margin-right: 0 !important;
}

.mr-1 {
	margin-right: 5px !important;
}

.mr-2 {
	margin-right: 10px !important;
}

.mr-3 {
	margin-right: 15px !important;
}

.mr-4 {
	margin-right: 20px !important;
}

.mb-0 {
	margin-bottom: 0 !important;
}

.mb-1 {
	margin-bottom: 5px !important;
}

.mb-2 {
	margin-bottom: 10px !important;
}

.mb-3 {
	margin-bottom: 15px !important;
}

.mb-4 {
	margin-bottom: 20px !important;
}

.ml-0 {
	margin-left: 0 !important;
}

.ml-1 {
	margin-left: 5px !important;
}

.ml-2 {
	margin-left: 10px !important;
}

.ml-3 {
	margin-left: 15px !important;
}

.ml-4 {
	margin-left: 20px !important;
}

.p-0 {
	padding: 0 !important;
}

.p-1 {
	padding: 5px !important;
}

.p-2 {
	padding: 10px !important;
}

.p-3 {
	padding: 15px !important;
}

.p-4 {
	padding: 20px !important;
}

.pt-0 {
	padding-top: 0 !important;
}

.pt-1 {
	padding-top: 5px !important;
}

.pt-2 {
	padding-top: 10px !important;
}

.pt-3 {
	padding-top: 15px !important;
}

.pt-4 {
	padding-top: 20px !important;
}

.pr-0 {
	padding-right: 0 !important;
}

.pr-1 {
	padding-right: 5px !important;
}

.pr-2 {
	padding-right: 10px !important;
}

.pr-3 {
	padding-right: 15px !important;
}

.pr-4 {
	padding-right: 20px !important;
}

.pb-0 {
	padding-bottom: 0 !important;
}

.pb-1 {
	padding-bottom: 5px !important;
}

.pb-2 {
	padding-bottom: 10px !important;
}

.pb-3 {
	padding-bottom: 15px !important;
}

.pb-4 {
	padding-bottom: 20px !important;
}

.pl-0 {
	padding-left: 0 !important;
}

.pl-1 {
	padding-left: 5px !important;
}

.pl-2 {
	padding-left: 10px !important;
}

.pl-3 {
	padding-left: 15px !important;
}

.pl-4 {
	padding-left: 20px !important;
}

/*
==========================================================================
HEADER
==========================================================================
*/

@-webkit-keyframes book-pulse {
	0% {
		transform: scale(1.1);
	}

	50% {
		transform: scale(1);
	}

	100% {
		transform: scale(1.1);
	}
}

/*
==========================================================================
HEADER
==========================================================================
*/

.padder {
	height: 141px;
}

.flags img {
	height: 15px;
}

.has-alert header {
	padding-top: 0;
}

.has-alert .padder {
	height: 166px;
}

#alert-bar {
	padding: 5px 0;
	color: #fff;
	height: 35px;
}

/*
==========================================================================
NAVIGATION
==========================================================================
*/

.red-link a {
	background: #cd1b27;
}

nav li {
	padding: 0;
}

nav a {
	display: block;
}

nav .sub-menu {
	display: none;
	position: absolute;
	background: #fff;
	transition-delay: 0.3s;
}

nav ul>li:not(.mega-nav):hover>.sub-menu {
	display: block;
	background: #214f7f;
	transition-delay: 0s;
}

nav ul>li:not(.mega-nav) .sub-menu li {
	display: block;
	position: relative;
}

nav ul>li:not(.mega-nav) .sub-menu li a {
	padding: 5px 20px;
}

nav ul>li:not(.mega-nav) .sub-menu li a:hover {}

nav ul>li:not(.mega-nav):hover {
	background: #cd1b27;
}

nav ul>.menu-item-has-children>a:after {
	content: "\f107";
	font-family: "Font Awesome 5 Free";
	margin: 0 0 0 5px;
}

nav .sub-menu .sub-menu {
	left: 100%;
	top: 0;
	width: 250px;
}

nav ul .sub-menu .menu-item-has-children>a:after {
	content: "\f105";
}

nav .menu-item-has-children>a:after {
	transition-delay: 0.3s;
}

nav .menu-item-has-children:hover>a:after {
	transition-delay: 0s;
}

nav .mega-nav {}

nav .mega-nav:hover>.sub-menu {
	display: flex !important;
	box-shadow: 0 5px 5px 0 rgba(0, 0, 0, 0.5);
	position: absolute;
}

nav .mega-nav .sub-menu {
	background: #fff;
	left: 0;
	width: 100%;
	align-items: flex-start;
	justify-content: space-around;
	padding: 20px;
}

nav .mega-nav .sub-menu a {
	color: #133c5c;
	display: block;
	padding: 0;
	font-weight: 400;
}

nav .mega-nav .sub-menu a:hover,
nav .mega-nav .sub-menu .current-menu-item a {
	color: #133c5c;
	background: #fff;
}

nav .mega-nav>.sub-menu>li {
	left: unset;
	top: unset;
	/*width:100%;*/
	padding: 0;
}

nav .mega-nav .sub-menu li .sub-menu {
	top: unset;
	position: relative;
	display: block;
	padding: 10px 0;
}

nav .mega-nav .sub-menu li .sub-menu li {
	left: unset;
	top: unset;
	float: unset;
	width: unset;
	display: block;
	padding: 0;
}

nav .mega-nav>.sub-menu>li>a:first-child {
	font-size: 16px;
	color: #133c5c;
	font-weight: 600;
}

nav .mega-nav>.sub-menu>li>a:first-child:after {
	content: "";
}

nav .mega-nav>.sub-menu>li>a:first-child:hover {
	color: #133c5c;
	background: none;
}

nav .mega-nav>.sub-menu>li>a {}

nav li>a.no-arrow:after {
	content: "";
	display: none;
}

nav .mega-nav .sub-menu .menu-item-has-children>a:after {
	content: "";
}

/*
==========================================================================
PAYMENT
==========================================================================
*/

.payment-form {
	margin: 20px 0;
	width: 50%;
}

.payment-form-row {
	display: flex;
	align-items: center;
	margin: 10px 0 0;
}

.payment-row-card-type .select-placeholder {
	width: 100%;
}

.payment-form-row select[name="payment[cardtype]"] {
	width: 100%;
}

.payment-form-row select[name="payment[expirymonth]"] {
	width: 120px;
}

.payment-form-row select[name="payment[expiryyear]"] {
	width: 120px;
}

.payment-form-row input[name="payment[nameoncard]"] {
	width: 100%;
}

.payment-form-row input[name="payment[cardno]"] {
	width: 100%;
}

.payment-form-row input[name="payment[issueno]"] {
	width: 120px;
}

.payment-form-row input[name="payment[cvv]"] {
	width: 120px;
}

.payment-form-issueno {
	display: none;
}

/*
==========================================================================
THEME FIXES
==========================================================================
*/
header {
	z-index: 9999;
}

.hero-slide {
	position: relative;
	background: center center / cover no-repeat;
}

.hero-slide img,
.hero-slide picture {
	position: absolute;
	object-fit: cover;
	object-position: center;
	top: 0;
	left: 0;
	width: 100%;
    height: 100%;
}

.hero-slide img.hero-image,
.cruise-item img.image-desktop {
	display: block !important;
}

.hero-slide img.hero-image-mobile,
.cruise-item img.image-mobile {
	display: none !important;
}

.offer-slider .cs-item .overlay {
	display: flex;
	align-items: center;
	justify-content: center;
}

.offer-slider .cs-item img {
	transition: transform 0.35s;
}

.offer-slider .cs-item .cs-inner {
	top: unset;
	top: auto;
	position: relative;
}

.badge .inners a[href^="tel"] {
	font-size: 14px;
	color: #fff !important;
	position: relative;
	top: -8px;
}

.crs-item img {
	display: inline-block;
}

body.searching {
	background: center center / cover no-repeat;
}

.cycle-text {
	margin: 0 0 20px;
}

.cycle-text li {
	display: none;
}

.wait-box p {
	margin: 0;
}

.table-grid {
	grid-template-columns: 1.5fr 2fr 1fr 1fr 1fr;
}

.panel-slider img {
	width: 100%;
	max-width: 100%;
	height: auto;
}

.panel-box {
	margin-top: 0;
}

.cruise-info-tabs {
	display: grid;
	grid-template-columns: 1fr 3fr;
	display: -ms-grid;
	-ms-grid-columns: 1fr 3fr;
}

.cruise-info-tabs .ptabs {
	-ms-grid-column: 1;
}

.cruise-info-tabs .panel-container {
	-ms-grid-column: 2;
	border-top: 0;
}

.cruise-info-tabs li {
	float: none;
	width: 100%;
	text-align: right;
}

.cb4 {
	border-radius: 0 !important;
}

.cruise-info-tabs .ppanel {
	padding: 10px;
}

.cruise-info-tabs .ptabs li {
	margin: 0;
}

.cruise-info-tabs .ptabs a {
	background: #1e4d7d;
	margin: 0;
}

.cruise-info-tabs .ptabs .active {
	background: #eee;
	color: #666;
}

.cruise-info-tabs .panel-container {
	background: #eee;
	color: #666;
	margin: 0;
}

.ship-info-tabs li {
	width: auto;
}

.ship-info-tabs li a {
	padding: 8px 20px;
}

.slider-container {
	position: relative;
	height: 390px;
}

.image-slider-bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: center center / cover no-repeat;
}

.vc-type {
	position: relative;
}

/*.vc-type.type-package { background:var(--secondary); }*/
.itin-desc-show {
	cursor: pointer;
}

.itin-desc {
	padding: 10px;
}

.ca_tabs.panel-container h3 {
	margin: 0 0 20px;
}

.ca_tabs.panel-container p {
	margin: 0 0 20px;
}

.ca_tabs.panel-container .panel-slider-content {
	float: left;
	width: 40%;
	max-width: 40%;
	margin: 0 20px 20px 0;
}

#cruise-meta-stats {
	margin: 0 0 40px;
}

#cruise-meta-stats p {
	margin: 0 20px;
}

#cruise-meta-stats span {
	display: block;
}

#cruise-meta-stats span.icon {
	font-size: 18px;
}

#cruise-meta-stats span.content {
	padding: 0;
	font-weight: 400;
	font-size: 16px;
}

.fleet-background {
	height: 150px;
	width: 90%;
	background-position: center;
	background-size: cover;
}

.pagination span,
.blue-button,
.light-blue-button,
.daterangepicker td.start-date.end-date,
.daterangepicker td.available:hover,
.daterangepicker td.start-date,
.daterangepicker td.end-date,
.drp-buttons button {
	border-radius: 0 !important;
}

.single-cruise-lines .line-slider .slick-prev {
	left: -50px;
}

.single-cruise-lines .line-slider .slick-next {
	right: -50px;
}

.green-button {
	cursor: pointer;
}

.summary-images {
	margin: 20px 0;
}

.sihead {
	background: #1e4d7d;
}

.sicont i {
	color: #1e4d7d;
}

.error-required {
	border: 1px solid #f00 !important;
}

.cruiseappy-basket-errors {
	margin: 20px 0;
}

select[name="farecode1"],
select[name="airport1"] {
	width: 100%;
	margin: 5px 0 15px;
	padding: 5px;
}

.pg-right {}

.light-blue-section h2,
.light-blue-section .four-item h4,
.nl h1,
footer h5 {
	font-family: "droid_serifitalic";
}

.footer-grid {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}

.cb1,
#progress li:first-of-type,
#progress li:last-of-type,
.alert,
.cabin-color,
.table-wrapper .checkboxes label {
	border-radius: 0;
	border-top-left-radius: 0;
	border-top-right-radius: 0;
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.alt-head {
	border: 0;
}

.alt-table.full-link-row {
	background: #eee;
	border: 0;
	border-bottom: 1px solid #fff;
}

.generic.inner.sum-bg h2 {
	margin-top: 20px;
}

/*#progress li:first-of-type { padding:0; }*/
#progress li:first-of-type a {
	display: block;
	color: #fff;
	padding: 9px 30px 8px 40px;
}

#progress li:first-of-type a:hover {
	color: var(--secondary);
}

#buorg {
	background: #fff !important;
	border-bottom: 1px solid #214f7f !important;
}

#buorgul {
	background: #3fa535 !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

#buorgig {
	background: #ccc !important;
	border: 0 !important;
	border-radius: 0 !important;
	box-shadow: none !important;
}

/* clientDen blue grid */
.blue-item i {
	font-size: 40px;
	margin: 0 0 5px 0;
	color: #fff;
}

.blue-item p {
	margin: 0;
	font: 18px "Droid Serif", Helvetica, Arial, sans-serif;
	font-style: italic;
	color: #fff;
}

.blue-item p:before {
	display: none;
}

#hero-blue-grid .blue-grid {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 20px;
	grid-row-gap: 20px;
	justify-items: stretch;
	align-items: inital;
	margin: 0;
	text-align: center;
}

.blue-hero-bar {
	background: #1e4d7d;
	padding: 20px 0;
}

/*Cta builder blocks */

.cta-slide,
.cta-two-block,
.cta-three-block {
	height: 300px;
	margin-bottom: 30px;
}

.cta-two-block,
.cta-three-block {
	display: grid;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
	justify-items: stretch;
}

.cta-two-block {
	grid-template-columns: 1fr 1fr;
}

.cta-three-block {
	grid-template-columns: 1fr 1fr 1fr;
}

.cta-single,
.cta-slide {
	position: relative;
}

.cta-single .cta-single-image,
.cta-slide .cta-slider-image {
	height: 100%;
	background-size: cover;
}

.cta-single .cta-single-content,
.cta-slide .cta-slide-content {
	color: #fff;
	font: 20px "Droid Serif", Helvetica, Arial, sans-serif;
	font-style: italic;
	padding: 10px;
	width: 100%;
	bottom: 0px;
	position: absolute;
	background: rgba(31, 78, 121, 0.7);
	display: flex;
	justify-content: space-between;
}

.cta-single .cta-single-content p,
.cta-slide .cta-slide-content p {
	margin-bottom: 0;
}

.cta-single .cta-single-content a,
.cta-slide .cta-slide-content a {
	position: absolute;
	bottom: 0;
	right: 0;
	padding: 10px 15px 9px 15px;
	background: #1e4d7d;
	z-index: 1;
	color: #fff;
}

.cta-single .cta-single-content a:hover,
.cta-slide .cta-slide-content a:hover {
	background: #eb8f3f;
}

.cta-slider .slick-slide {
	margin: 0 15px;
}

.cta-slider .slick-list {
	margin: 0 -15px;
}

.cta-fblocks {
	display: flex;
	gap: 30px;
	flex-flow: row wrap;
}

.cta-fblocks .first-row {
	width: 100%;
	display: grid;
	grid-template-columns: 2fr 1fr;
	/* Two columns */
	gap: 30px;
	/* Space between the images */
}

.cta-fblocks .first-row .cta-fblock.featured {
	grid-column: 1;
}

.cta-fblocks .second-row {
	width: 100%;
	display: grid;
	gap: 30px;
	grid-template-columns: repeat(3, 1fr);
}

.cta-fblocks .cta-fblock {
	width: 100%;
	height: 200px;
	position: relative;
	box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1);
}

.cta-fblocks .first-row .column {
	grid-column: 2;
	display: grid;
	grid-template-columns: 1fr;
	row-gap: 30px;
}

.cta-fblocks .cta-fblock.featured {
	width: 100%;
	height: 435px;
}

.cta-fblocks .cta-fblock a {
	color: var(--white);
	width: 100%;
	height: 100%;
	display: block;
	position: relative;
	overflow: hidden;
}

.cta-fblocks .cta-fblock a:hover .cta-single-image {
	transform: scale(1.1);
}

.cta-fblocks .cta-fblock a:hover span.button {
	background-color: var(--white);
	color: #214f7f;
}

.cta-fblocks .cta-fblock .cta-single-image {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	background-size: cover;
	background-position: center center;
	transform: scale(1);
	transition: all .6s ease-in-out;
}

.cta-fblocks .cta-fblock .cta-single-image:after {
	display: inline-block;
	position: absolute;
	width: 100%;
	height: 100%;
	content: '';
	background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.4) 100%),
		linear-gradient(0deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2));
	pointer-events: none;
}

.cta-fblocks .cta-fblock .cta-single-content {
	position: absolute;
	bottom: 0;
	left: 0;
	display: flex;
	flex-flow: column;
	align-items: flex-start;
	padding: 30px;
}

.cta-fblocks .cta-fblock .cta-single-content h3 {
	color: var(--white);
	text-transform: uppercase;
	font-size: 32px;
	line-height: 32px;
	font-weight: 700;
	margin-bottom: 0;
}

.cta-fblocks .cta-fblock .cta-single-content p {
	margin: 20px 0;
}

.cta-fblocks .cta-fblock .cta-single-content span.button {
	border: 2px solid var(--white);
	height: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
	min-width: 165px;
	font-weight: 900;
	background: transparent;
	transition: all .4s ease-in-out;
}

.cruises-slider-wrapper {
	margin-bottom: 50px;
}

.cruises-slider-wrapper .header {
	padding: 30px 0;
}

.cruises-slider-wrapper .header h2 {
	font-size: 30px;
	line-height: 37px;
	margin-bottom: 0;
}

.cruises-slider-wrapper .header p {
	font-size: 14px;
	line-height: 25px;
	margin-bottom: 0;
	color: var(--text);
}

.cruises-slider-wrapper .pagination,
.cruises-slider-wrapper .pagination .select-container {
	width: 100%;
	display: flex;
	justify-content: flex-end;
}

.cruises-slider-wrapper .cruises-slider.slick-initialized {
	display: flex;
}

.cruises-slider-wrapper .cruises-slider .slick-slide {
	margin: 0 .5px;
}

.cruises-slider-wrapper .cruises-slider .cruise-item {
	position: relative;
	height: 400px;
}

.cruises-slider-wrapper .cruises-slider .cruise-item a,
.cruises-slider-wrapper .cruises-slider .cruise-item a .image,
.cruises-slider-wrapper .cruises-slider .cruise-item a img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	position: relative;
	min-height: 400px;
}

.cruises-slider-wrapper .cruises-slider .cruise-item .cruise-item-top {
	position: absolute;
	z-index: 2;
	width: 100%;
	text-align: center;
	top: 0;
	left: 0;
	background: rgba(2, 77, 123, .8);
	color: var(--white);
	border-radius: 0 0 25px 25px;
	display: flex;
	flex-direction: column;
}

.cruises-slider-wrapper .cruises-slider .cruise-item .cruise-item-tag {
	z-index: 3;
	width: 100%;
	text-align: center;
	top: 0;
	left: 0;
	background: rgb(247, 143, 32, .8);
	padding: 5px 10px;
	font-size: 14px;
	font-weight: 700;
	border-radius: 0 0 25px 25px;
}

.cruises-slider-wrapper .cruises-slider .cruise-item .cruise-item-title {
	color: var(--white);
	margin: 0;
	padding: 10px;
	font-weight: bold;
}

.cruises-slider-wrapper .cruises-slider .cruise-item a .image {
	overflow: hidden;
}

.cruises-slider-wrapper .cruises-slider .cruise-item a img {
	transform: scale(1);
	transition: all 1s ease-in-out;
}

.cruises-slider-wrapper .cruises-slider .cruise-item a:hover img {
	transform: scale(1.05);
}

.cruises-slider-wrapper .cruises-slider .content {
	z-index: 2;
	position: absolute;
	width: 100%;
	border-radius: 25px 25px 0 0;
	text-align: center;
	bottom: 0;
	left: 0;
	padding: 10px;
	background-color: rgba(161, 15, 20, .8);
	z-index: 3;
}

.cruises-slider-wrapper .cruises-slider .content h5 {
	color: var(--white);
	font-weight: 700;
	font-size: 32px;
	line-height: 32px;
	text-transform: uppercase;
}

.cruises-slider-wrapper .cruises-slider .content p {
	color: var(--white);
	margin-bottom: 0;
	font-weight: 700;
}

.cruises-slider-wrapper .cruises-slider .content p.price {
	font-size: 24px;
}

.cruises-slider-wrapper .slick-next,
.cruises-slider-wrapper .slick-prev {
	top: 45%;
	width: 52px;
	height: 52px;
	border-radius: 100%;
	border: 2px solid var(--white);
}

.cruises-slider-wrapper .slick-next::before,
.cruises-slider-wrapper .slick-prev::before {
	background: none;
	color: var(--white);
	width: auto;
	height: auto;
	content: '\f053';
	font-size: 12px;
}

.cruises-slider-wrapper .slick-next::before {
	content: '\f054';
}

.cruises-slider-wrapper .slick-next:hover,
.cruises-slider-wrapper .slick-prev:hover {
	background-color: var(--primary);
	opacity: 1;
}

.cruises-slider-wrapper .hbutton {
	min-width: 185px;
	font-size: 16px;
}

@media all and (max-width: 992px) {
	.cta-fblocks {
		flex-direction: column;
	}

	.cta-fblocks .cta-fblock,
	.cta-fblocks .cta-fblock.featured {
		width: 100%;
	}

	.cta-fblocks .first-row .cta-fblock {
		grid-column: inherit;
	}

	.cta-fblocks .second-row,
	.cta-fblocks .first-row {
		grid-template-columns: 1fr;
	}
}

/*
==========================================================================
DEFAULT CONTENT
==========================================================================
*/

.builder-content-bg-white {
	background: #fff;
}

.builder-content-bg-blue {
	background: #1e4d7d;
	color: #fff;
	padding: 10px 0;
}

.builder-content-bg-blue h2 {
	color: #fff;
}

.builder-content-bg-blue i {
	margin-bottom: 10px;
}

.accordion-item {
	margin: 0 auto 10px;
}

.accordion-item h3 {
	cursor: pointer;
	background: var(--primary);
	color: #fff;
	font-size: 16px;
	margin: 0 !important;
	padding: 10px;
	position: relative;
	margin: 0;
	transition: background 0.1s;
}

.accordion-item h3.open,
.accordion-item h3:hover {
	background: #103a5a;
}

.accordion-item .accordion-content {
	display: none;
	padding: 10px;
}

.feature-block {
	height: 377px;
}

.feature-block .image {
	height: 100%;
	background-size: cover;
	background-position: center center;
}

.feature-block article {
	width: 377px;
	height: 377px;
	background: rgba(0, 0, 0, 0.4);
	padding: 20px;
	position: relative;
}

.feature-block article .site-content {
	color: #fff;
	font-size: 18px;
	font-weight: 700;
}

.feature-block article .site-content a {
	color: #fff;
}

.feature-block article .site-content a.read-more {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 60px;
	height: 60px;
	background: rgba(0, 0, 0, 0.4);
	transition: all 0.1s;
}

.feature-block article .site-content a.read-more:hover,
.feature-block:hover .read-more {
	background: rgba(0, 0, 0, 0.6);
	color: #fff;
	opacity: 1;
}

.feature-block article .site-content h1 {
	font-size: 46px;
	line-height: 50px;
	text-transform: uppercase;
	color: #fff;
}

.feature-block article .site-content h2 {
	font-size: 42px;
	line-height: 46px;
	text-transform: uppercase;
	color: #fff;
}

.feature-block article .site-content h3 {
	font-size: 36px;
	line-height: 40px;
	text-transform: uppercase;
	color: #fff;
}

.feature-block article .site-content h4 {
	font-size: 30px;
	line-height: 34px;
	text-transform: uppercase;
	color: #fff;
}

.expandable-control {
	cursor: pointer;
}

.expandable-content {
	padding: 10px;
	opacity: 0;
	transition: opacity 0.4s;
}

.expandable-content.open {
	opacity: 1;
}

.hero-slide {}

.slider-inner {
	display: flex;
	align-items: center;
	height: 100%;
	max-width: 1200px;
	margin: 0 auto;
}

.slider-inner-content {
	background: #fff;
	padding: 20px;
	width: 40%;
}

.slider-link {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 999;
}

/* Content Columns */
.content-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin: 20px 0;
}

.content-col {
	flex: 1;
	padding: 10px;
	margin: 0 10px;
}

.content-col:first-child {
	margin-left: 0;
}

.content-col:last-child {
	margin-right: 0;
}

/*
==========================================================================
PACKAGE
==========================================================================
*/

select.sumo {
	width: 100%;
	height: 34px;
	padding: 5px;
	border: 0;
}

.select-placeholder {
	position: relative;
	border: 1px solid #ddd;
}

.select-placeholder .placeholder {
	position: absolute;
	z-index: 0;
	top: 4px;
	left: 6px;
	opacity: 0.7;
}

.select-placeholder select {
	position: relative;
	z-index: 1;
	background: transparent;
}

.select-placeholder select.has-val {
	background: #fff;
}

label.dob {
	min-width: 100px;
}

.small.select-placeholder {
	margin-right: 10px;
}

.small.select-placeholder select {
	padding: 5px 10px;
}

.no-margin-bottom,
.no-margin-bottom input,
.no-margin-bottom select {
	margin-bottom: 0;
}

.page-hero {
	height: auto;
	margin: 0 auto;
	padding: 40px 0;
	position: relative;
	z-index: 1;
	background-size: cover;
	background-position: center bottom;
	z-index: 2;
	display: flex;
	justify-content: center;
	align-items: center;
}

.page-hero-inner {
	background: rgba(0, 0, 0, 0.8);
	padding: 30px;
	margin: 0 auto;
	height: auto;
	display: block;
	width: 100%;
	max-width: 1140px;
	color: #fff;
	position: relative;
}

.pack-grid {
	width: 100%;
	display: grid;
	grid-template-columns: 3fr 1.5fr;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
	justify-items: stretch;
	align-items: inital;
	margin: 0;
	display: -ms-grid;
	-ms-grid-columns: 3fr 30px 1.5fr;
}

.pg-item {
	-ms-grid-column: 1;
}

.pg-item:nth-child(2) {
	-ms-grid-column: 3;
}

.pg-item h1 {
	margin: 0 0 0px 0;
	font-weight: 600;
	color: #fff;
}

/*
.pg-item span {
margin: 0 10px 0 0;
}*/

.pg-grid {
	width: 100%;
	display: grid;
	grid-template-columns: 3fr 2fr 1fr 1fr;
	grid-column-gap: 0px;
	grid-row-gap: 0px;
	justify-items: stretch;
	align-items: inital;
	margin: 20px 0 0 0;
	display: -ms-grid;
	-ms-grid-columns: 3fr 2fr 1fr 1fr;
}

.pgg-item {
	-ms-grid-column: 1;
}

.pgg-item:nth-child(2) {
	-ms-grid-column: 2;
}

.pgg-item:nth-child(3) {
	-ms-grid-column: 3;
}

.pgg-item:nth-child(4) {
	-ms-grid-column: 4;
}

.pgg-item:nth-child(5) {
	-ms-grid-column: 5;
}

.co-grid {
	grid-template-columns: 3fr 1fr 1fr;
}

.pg-grid p {
	margin: 0;
}

.pg-grid p a {
	color: #fff;
}

.pgg-item {
	margin-bottom: 30px;
}

.pgg-item a {
	color: #fff;
}

.pg-button {
	background: #2d3b54;
	color: #fff;
	width: 35px;
	height: 35px;
	padding: 5px;
	display: inline-block;
	margin: 5px 0;
	text-align: center;
	transition: all 0.3s ease-in;
}

.pg-button:hover {
	background: #064d81;
	color: #fff;
	transition: all 0.3s ease-in-out;
}

.spacer {
	display: block;
	margin: 10px 0;
	height: 20px;
}

.pg-buttons .blue-button {
	margin: 0;
	padding: 6px 10px;
}

button.blue-button {
	border: 0;
	cursor: pointer;
}

.pg-buttons .pg-logo {
	margin: 0;
	float: right;
	width: 45%;
	max-width: 120px;
}

.pg-logo {
	text-align: right;
}

.pg-logo img {}

.pack-grid .blue-button i {
	margin: 0 0 0 10px;
}

.pg-prices {
	margin: 0 0 20px;
}

.pg-prices p {
	margin: 0;
}

.bigprice {
	font-size: 40px;
	font-weight: 600;
	margin: -10px 0 0 0 !important;
	line-height: 40px;
}

.bigprice small {
	font-size: 18px;
}

#floating-book {
	position: fixed;
	display: flex;
	align-items: center;
	z-index: 1;
	top: 50%;
	right: 20px;
	background: #008b44;
	padding: 10px 20px;
	color: #fff;
	cursor: pointer;
	transition: background 0.3s;
	display: none;
}

#floating-book:hover {
	background: #f09e3b;
}

#floating-book span {
	font-weight: bold;
	margin-left: 3px;
}

#floating-book i {
	font-size: 18px;
	margin-left: 6px;
}

/*.hide-book, #floating-book.hide-book { display:none; }*/

/*#start .siwidget { position:sticky;top:170px; }*/

#booking-error {
	padding: 20px 15px;
}

#booking-error ul {
	list-style: disc;
	margin: 0 40px;
}

#booking-error li {
	list-style: disc;
}

#cruise-contents {
	position: sticky;
	top: 139px;
	width: 100%;
	background: #214f7f;
	z-index: 8;
	text-align: center;
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
}

#cruise-contents .container {
	display: flex;
	justify-content: space-between;
	margin-top: 0;
	margin-bottom: 0;
}

#cruise-contents a {
	color: #fff;
	display: block;
	flex: 1;
	width: 100%;
	font-weight: 700;
	font-size: 14px;
	text-transform: uppercase;
	padding: 15px 0;
	text-align: center;
}

#cruise-contents a.active,
#cruise-contents a:hover {
	background: #fff;
	color: #214f7f;
}

#package-bar {
	position: fixed;
	z-index: 5;
	bottom: 0;
	left: 0;
	width: 100%;
	background: #214f7f;
	color: #fff;
	display: none;
	border-top: 1px solid #fff;
}

#package-bar ul {
	width: 100%;
	display: flex;
	justify-content: center;
}

#package-bar li {
	flex: 1 0 auto;
	padding: 10px 0;
	font-size: 14px;
	line-height: 20px;
}

#package-bar span {
	font-size: 10px;
}

#package-bar strong {}

#package-bar .book {
	width: 250px;
	padding: 0 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	background: #008b44;
	font-size: 18px;
	transition: background 0.3s;
}

#package-bar .book span {
	font-size: 18px;
	line-height: 16px;
	display: block;
	margin-right: 20px;
}

#package-bar .book small {
	font-size: 10px;
}

#package-bar .book i {
	margin-left: 5px;
}

#package-bar .book:hover {
	background: var(--secondary);
}

.contents-cta {
	position: relative;
	background: #214f7f;
	color: #fff;
	display: block;
	flex: 1;
	width: 100%;
	font-weight: 700;
	font-size: 16px;
	text-transform: uppercase;
	padding: 15px;
	text-align: center;
}

.contents-cta p {
	margin: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	line-height: 22px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.contents-cta span {
	display: none;
	font-size: 10px;
}

.sticky .contents-cta {
	background: var(--secondary);
}

.sticky .contents-cta p {
	height: auto;
	padding: 5px 0;
	background: var(--secondary);
	flex-direction: column;
}

.sticky .contents-cta span {
	display: block;
}

#cruise-map {
	height: 400px;
	position: relative;
	z-index: 5;
}

.map-marker {
	font-size: 28px;
	color: #cd1b27;
}

#package-summary {
	margin: 30px 0;
	font-size: 18px;
}

#package-summary p {
	margin: 5px 0;
}

#package-summary p i {
	margin-right: 10px;
}

#package-summary a {
	color: #fff;
}

#package-summary a:hover {
	color: var(--secondary);
}

#package-summary .outbound-flight-meta,
#package-summary .inbound-flight-meta,
#package-summary .hotel-meta {
	display: none;
}

.call-now-cta {
	text-transform: uppercase;
	font-size: 22px;
}

.call-now-cta i {
	color: var(--secondary);
	margin-right: 10px;
}

.call-now-cta a {
	color: #fff;
}

.call-now-cta a:hover {
	color: var(--secondary);
}

.checkboxes ul {
	list-style-type: none;
	margin: 0 0 10px 0;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 2px;
	display: -ms-grid;
	-ms-grid-columns: 1fr 2px 1fr 2px 1fr 2px 1fr;
}

.checkboxes li {
	display: inline-block;
	vertical-align: middle;
	margin: 0;
	-ms-grid-column: 1;
}

.checkboxes li:nth-child(2) {
	-ms-grid-column: 3;
}

.checkboxes li:nth-child(3) {
	-ms-grid-column: 5;
}

.checkboxes li:nth-child(4) {
	-ms-grid-column: 7;
}

.checkboxes li label {
	padding: 10px 0;
}

/*.checkboxes input[type="radio"][id^="cb"] {
display: none;
}*/

.checkboxes span {
	margin: 0 !important;
}

.checkboxes label {
	border: 0;
	background: #666;
	color: #fff;
	padding: 10px 13px;
	font-size: 13px;
	height: 75px;
	width: 100%;
	text-align: center;
	display: block;
	position: relative;
	margin: 0;
	cursor: pointer;
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.checkboxes label::before {
	background-color: #2d3b54;
	color: white;
	content: " ";
	display: block;
	border: 0;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-align: center;
	line-height: 28px;
	transition-duration: 0.4s;
	transform: scale(0);
}

.scheck {
	display: none;
}

.sidebar-grid {
	width: 100%;
	display: grid;
	grid-template-columns: 1.2fr 2fr;
	grid-column-gap: 20px;
	grid-row-gap: 20px;
	justify-items: stretch;
	align-items: inital;
	margin: 0 auto 30px auto;
}

.selected-cabin {
	min-height: 190px;
}

.selected-cabin img {
	max-height: 180px;
	width: auto;
}

.cabin-row {
	cursor: pointer;
}

.cabin-color {
	display: inline-block;
	padding: 2px 5px;
	font-size: 12px;
}

.cabin-filter-search {
	display: grid;
	grid-template-columns: 0.5fr 1fr 1fr 1fr;
	grid-column-gap: 20px;
	align-items: center;
}

.cabin-filter-search h5 {
	margin-bottom: 0;
}

.cabin-filter-search .nice-select {
	margin-bottom: 0 !important;
}

.cabin-filter-search .nice-select .option.disabled {
	opacity: 1;
	background: #1e4d7d;
	color: #fff;
	font-weight: bold;
}

.cabin-filter-search .nice-select:hover .option.disabled {
	opacity: 1;
	background: #1e4d7d;
	color: #fff;
	font-weight: bold;
}

.cabin-filter-search .nice-select .list:hover .option.disabled:not(:hover) {
	opacity: 1;
	background: #1e4d7d !important;
	color: #fff;
	font-weight: bold;
}

.cabin-filter-search input {
	background: #eee;
	border: 0;
	color: #454545;
	padding: 10px;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
}

.pricing-filter-search {
	display: grid;
	grid-template-columns: 0.5fr 1fr 1fr 1fr;
	grid-column-gap: 20px;
	align-items: center;
}

.pricing-filter-search h5 {
	margin-bottom: 0;
}

.pricing-filter-search .nice-select {
	margin-bottom: 0 !important;
}

.pricing-filter-search .nice-select .option.disabled {
	opacity: 1;
	background: #1e4d7d;
	color: #fff;
	font-weight: bold;
}

.pricing-filter-search .nice-select:hover .option.disabled {
	opacity: 1;
	background: #1e4d7d;
	color: #fff;
	font-weight: bold;
}

.pricing-filter-search .nice-select .list:hover .option.disabled:not(:hover) {
	opacity: 1;
	background: #1e4d7d !important;
	color: #fff;
	font-weight: bold;
}

.pricing-filter-search input {
	background: #eee;
	border: 0;
	color: #454545;
	padding: 10px;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
}

.cabin-filters {
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}

.cabin-filters label {
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	padding: 0 5px;
}

.cabin-filters .cabin-filter-container {
	margin: 0 5px;
	display: flex;
	align-items: center;
	background: #214f7f;
	padding: 2px;
}

.cabin-filters .cabin-filter-container:first-child {
	margin-left: 0;
}

.cabin-filters .cabin-filter-container:last-child {
	margin-right: 0;
}

.cabin-filters input {
	min-width: 75px;
	max-width: 100px;
	background: #fff;
	border: 0;
	color: #454545;
	padding: 10px;
	font: 14px/14px "Oxygen", Helvetica, Arial, sans-serif;
}

select[name="farecode1"] {
	min-width: 100px;
	width: 100%;
	background: #fff;
	border: 0;
	color: #454545;
	margin: 5px 0;
	padding: 10px;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
}

.cabin-filters select,
select[name="airport1"] {
	min-width: 100px;
	width: 100%;
	background: #fff;
	border: 0;
	color: #454545;
	padding: 10px;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
}

.cabin-filters .separator {
	margin: 0 15px;
	width: 2px;
	height: 90px;
	padding: 0;
	background: #ccc;
}

.cabin-filters .cabin-filter-container.no-select {
	margin: 0;
	padding: 0;
	display: block;
	font-size: 18px;
	background: #fff;
}

.cabin-filters .cabin-filter-container.cabin-filter-cabin {
	display: none;
}

.cabin-filter-reset {
	color: #214f7f;
	opacity: 0;
	cursor: pointer;
	padding: 10px 5px;
	visibility: hidden;
	transition: all 0.2s;
}

.cabin-filter-reset.on {
	opacity: 1;
	visibility: visible;
}

#cabins-table {
	position: relative;
	overflow: hidden;
}

#cabins-table .table-wrapper {
	height: 100%;
	padding-bottom: 50px;
}

#cabins-rooms-control {
	position: relative;
	height: 100%;
	overflow: hidden;
}

.cabins-rooms-container {
	display: flex;
	height: 100%;
	align-items: flex-start;
}

.cabin-select {
	display: inline-block;
	position: absolute;
	width: 100%;
	left: 0;
	transition: all 0.5s;
}

.cabin-select.show-rooms {
	left: -100%;
}

#back-to-cabins {
	display: none;
	margin: 20px 0 0 0;
}

#back-to-cabins ul {
	font-size: 14px;
	display: flex;
	width: 300px;
	margin: 0 15px 0 0;
	flex-flow: column;
	align-items: center;
}

#back-to-cabins ul li {
	min-width: 140px;
}

#back-to-cabins ul .dot {
	width: 10px;
	height: 10px;
	display: inline-block;
	border-radius: 50%;
	background-color: var(--secondary);
	margin: 0 10px 0 0;
}

#back-to-cabins ul .dot.additional {
	background-color: var(--primary);
}

#back-to-cabins .orange-button {
	background: var(--secondary);
	color: #fff;
	padding: 10px 20px;
	font-size: 14px;
	font-weight: 600;
	text-align: center;
	margin: 0;
	transition: all 0.3s ease-in-out;
	display: flex;
	align-items: center;
}


.rooms-select {
	display: inline-block;
	position: absolute;
	width: 100%;
	left: 100%;
	transition: all 0.5s;
}

.rooms-select.show-rooms {
	left: 0;
}

.rooms-select h2 span {
	cursor: pointer;
	color: #fff;
	font-size: 14px;
	font-weight: 400;
	padding: 2px 5px;
}

.pg-item .selected-fare-description {
	padding: 0 0 10px;
}

.pg-item .selected-fare-description strong {
	color: var(--secondary);
}

.cabin-filters .selected-fare-description {
	padding: 10px 0 0;
}

.cabin-filters .selected-fare-description strong {
	color: #214f7f;
}

.cabin-searching {
	margin: 20px 0;
}

.fly-cruise-loading {
	background: var(--secondary);
	padding: 10px 0;
	color: #fff;
}

.sbg-col h2 {
	font-size: 18px;
	font-weight: 600;
	color: #1e4d7d;
	margin-bottom: 20px;
}

h2.cabin-select-h {
	font-size: 18px;
	font-weight: 600;
	color: #1e4d7d;
	margin-bottom: 20px;
}

.sbg-col .nice-select {
	width: 100%;
	margin: 0 0 15px 0;
	position: relative;
	z-index: 9;
}

.sbg-col .widget-txt {
	width: 100%;
	margin: 0 0 15px 0;
	z-index: 0;
}

.table-wrapper {
	width: 100%;
	display: block;
	height: 400px;
	overflow-x: hidden;
	margin: 0 0 30px 0;
}

.ship-table {
	background-color: #efefef;
	border: 0;
	width: 100%;
	display: grid;
	grid-template-columns: 3fr 1fr 1fr 1.5fr 1.6fr;
	grid-column-gap: 0;
	grid-row-gap: 0px;
}

.single-ship-table {
	grid-template-columns: 3fr 1fr 1fr;
}

.cabins-table {
	background-color: #efefef;
	border: 0;
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr 2fr 1fr;
	grid-column-gap: 20px;
	grid-row-gap: 0px;
}

.cabins-table .light-blue-button,
.ship-table .light-blue-button {
	padding: 0 15px;
}

.cabin-search-results {
	margin: 20px 0;
}

.sthead {
	background: #2d3b54;
	padding: 5px 0;
	color: #fff;
}

.ship-table:nth-of-type(even) {
	background-color: #fff;
}

.cabins-table:nth-of-type(even) {
	background-color: #fff;
}

.scol {
	padding: 10px;
}

.sthead .scol {
	padding: 5px 10px;
}

.scol :checked+label {
	background: none;
	color: #656565;
}

.scol :checked+label p {
	display: none;
}

.table-wrapper .checkboxes label,
.cabin-select-enquiry {
	border: 0;
	background: #1e4d7d;
	color: #fff;
	padding: 3px 10px;
	font-size: 13px;
	height: 20px;
	width: 75px;
	height: auto;
	width: auto;
	text-align: center;
	display: inline-block;
	position: relative;
	margin: 0;
}

.cabin-select .table-wrapper .activecheck.guarantee label {
	background: none;
	color: #656565;
	padding: 5px 20px;
	font-size: 13px;
	height: 25px;
	width: 75px;
	text-align: center;
}

.rooms-select .table-wrapper .activecheck label {
	background: #008b44;
}

.cb-buttons li:hover,
.cb-buttons li.active label {
	background: #214f7f;
}

.cb-buttons li.active .sprice {
	display: none;
}

.cb-buttons li.active .scheck {
	display: block;
	text-align: center;
	font-size: 12px;
}

.cb-buttons li.active .scheck i {
	display: block;
}

.cabins-table.cabin-row .cabin-buttons {
	cursor: pointer;
}

.cabins-table.cabin-row .cabin-buttons p {
	margin: 0;
	cursor: pointer;
}

.cabins-table.cabin-row.noactivecheck .cabin-buttons .scheck {
	display: none;
}

.cabins-table.cabin-row.activecheck .cabin-buttons p {
	display: none;
}

.cabins-table.cabin-row.activecheck .cabin-buttons .scheck {
	display: block;
}

.cabin-select .table-wrapper .activecheck label {
	background: #cd1b27;
}

.cabin-select .table-wrapper .activecheck label p {
	display: none;
}

.cabin-select .table-wrapper .activecheck label {
	transform: scale(1);
	/* animation: book-pulse 3s infinite; */
}

.cabin-select .table-wrapper .activecheck label .scheck {
	display: block;
}

.rooms-select .table-wrapper .activecheck label p {
	display: none;
}

.rooms-select .table-wrapper .activecheck label .scheck {
	display: block;
}

.activecheck {
	border: 2px solid #cd1b27 !important;
	background: #fff;
}

.mobcoltitle {
	display: none;
}

.three-col-grid {
	width: 100%;
	display: grid;
	grid-template-columns: 1.5fr 3fr 1.5fr;
	grid-column-gap: 50px;
	grid-row-gap: 50px;
	margin: 30px auto;
	min-height: 400px;
	display: -ms-grid;
	-ms-grid-columns: 1.5fr 3fr 1.5fr;
}

.three-col-grid>div {
	-ms-grid-column: 1;
}

.three-col-grid>div:nth-child(2) {
	-ms-grid-column: 2;
}

.three-col-grid>div:nth-child(3) {
	-ms-grid-column: 3;
}

.deckplan {
	height: 500px;
	overflow: auto;
	position: relative;
}

.deckplan img {
	position: relative;
	z-index: 1;
}

.deckplan svg {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
}

.deckplan svg rect {
	stroke: #f00;
	stroke-width: 3px;
	fill-opacity: 0;
	stroke-opacity: 1;
	transition: opacity 1.5s;
	animation: cabin-highlighter 1.5s infinite;
}

@-webkit-keyframes cabin-highlighter {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

.dragscroll {
	cursor: move;
	cursor: grab;
	cursor: -moz-grab;
	cursor: -webkit-grab;
}

.dragscroll.dragging {
	cursor: grabbing;
	cursor: -moz-grabbing;
	cursor: -webkit-grabbing;
}

.three-col-grid h5 {
	font-size: 18px;
	font-weight: 600;
	color: #1e4d7d;
}

.tcg-col .blue-button {
	display: block;
	width: 100%;
	text-align: center;
	padding: 5px 10px;
	margin: 0 0 5px 0;
}

.tcg-col .blue-button.active {
	background: #2d3b54;
}

.tcg-col li {
	margin: 0 0 5px 0;
	font-weight: 600;
}

.tcg-col li i {
	margin: 0 5px 0 0;
}

.parent-container {
	height: 350px;
	max-height: 350px;
	margin-bottom: 30px;
}

.larger-table {
	background-color: #fff;
	width: 100%;
	display: grid;
	/*grid-template-columns: 3fr 1.5fr 1.5fr 1.5fr 0.5fr 1fr 1fr 1fr;*/
	grid-template-columns: auto 150px 100px 150px 50px 150px 50px 150px;
	grid-column-gap: 10px;
	grid-row-gap: 10px;
	border: 2px solid #cfedf0;
	cursor: pointer;
}

.lt-col {
	padding: 10px;
}

.lthead {
	background: #2d3b54;
	padding: 5px 0;
	color: #fff;
}

.lts {
	display: inline-block;
	vertical-align: top;
}

.lts img {
	width: 100px;
}

.lt-col p {
	margin: 0;
}

.red {
	font-size: 20px;
	color: #cd1b27;
	font-weight: 600;
}

.package-slider {
	display: none;
}

.hotel-wrapper {
	height: 500px;
	overflow: auto;
}

.small-wrapper {
	height: 250px;
	overflow: auto;
}

.hotel-grid {
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 30px;
	grid-row-gap: 30px;
}

.hotel-item {
	/*width:23%;*/
	border: 2px solid #cfedf0;
	/*margin:0 0 30px 0;*/
	cursor: pointer;
}

.hotel-item:nth-child(4n) {
	margin-right: 0;
}

.hotel-item img {
	margin: 0;
	display: block;
	width: 100%;
	height: auto;
	position: relative;
}

.hotel-image {
	width: 100%;
	/*height:180px;*/
	background-size: cover;
	background-position: center center;
	flex: 1 0 auto;
}

.hotel-item-inner {
	background: #fff;
	padding: 10px;
	height: 100%;
}

.hotel-item p {
	margin: 0;
}

.hotel-item h5 {
	font-size: 16px;
	font-weight: 600;
	margin: 0;
	min-height: 40px;
}

.hotel-item .pg-button {
	margin: 0;
}

#hotel-info {
	display: none;
	background: rgba(0, 0, 0, 0.75);
	align-items: center;
	justify-content: center;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 100000;
}

#hotel-info.open {
	display: flex;
}

#hotel-info-inner {
	background: #fff;
	padding: 20px;
	width: 95%;
	max-width: 40%;
	min-height: 350px;
	max-height: 70%;
	display: grid;
	grid-template-columns: 210px auto;
	grid-column-gap: 30px;
	overflow: auto;
}

#hotel-info-close {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 28px;
	line-height: 28px;
	color: #fff;
	cursor: pointer;
	transition: color 0.3s;
}

#hotel-info-inner .col-hotel {
	width: 210px;
}

#hotel-info-inner .col-info {
	padding: 0 0 20px;
}

#hotel-info-inner h3 {
	font-size: 16px;
	color: #1e4d7d;
	font-weight: 600;
}

#hotel-info-inner .stars {
	color: #1e4d7d;
}

#hotel-info-inner ul {
	display: flex;
	flex-wrap: wrap;
}

#hotel-info-inner li {
	width: 50%;
}

#flight-info {
	display: none;
	background: rgba(0, 0, 0, 0.75);
	align-items: center;
	justify-content: center;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 100000;
}

#flight-info.open {
	display: flex;
}

#flight-info-inner {
	background: #fff;
	padding: 20px;
	width: 95%;
	max-width: 40%;
	min-height: 350px;
	max-height: 70%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	grid-column-gap: 30px;
	overflow: auto;
}

#flight-info-close {
	position: absolute;
	top: 20px;
	right: 20px;
	font-size: 28px;
	line-height: 28px;
	color: #fff;
	cursor: pointer;
	transition: color 0.3s;
}

#flight-info-inner .col-flight {}

#flight-info-inner .col-flight p.flight-arrow {
	background: url(../images/arrow.svg) center right no-repeat;
}

#flight-info-inner .col-info {
	padding: 0 0 20px;
}

#flight-info-inner h3 {
	font-size: 16px;
	color: #1e4d7d;
	font-weight: 600;
}

#flight-info-inner .stars {
	color: #1e4d7d;
}

#flight-info-inner ul {
	display: flex;
	flex-wrap: wrap;
}

#flight-info-inner li {
	width: 50%;
}

#loading-info {
	display: none;
	background: rgba(0, 0, 0, 0.75);
	align-items: center;
	justify-content: center;
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	bottom: 0;
	right: 0;
	z-index: 100000;
}

#loading-info.open {
	display: flex;
}

#loading-info-inner {
	background: #fff;
	padding: 20px;
	width: 95%;
	max-width: 40%;
	min-height: 250px;
	max-height: 70%;
	overflow: auto;
	text-align: center;
}

/*
==========================================================================
CRUISE LINES
==========================================================================
*/

.cruise-lines-grid {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
	margin: 20px 0;
}

.cruise-lines-grid .cruise-line {
	width: 32%;
}

.cruise-line-ship {
	width: 100%;
	height: 250px;
	border: 1px solid #ccc;
	display: flex;
	align-items: center;
	justify-content: center;
}

.cruise-line-desc {
	padding: 10px;
}

.cruise-line-desc img {
	max-width: 80px;
	height: auto;
	vertical-align: bottom;
}

/*

/* Header */

.mobile-grid {
	display: none;
}

/*
==========================================================================
FOOTER
==========================================================================
*/

.statement-icons img {
	max-height: 40px;
	width: auto;
}

input.nl-input {
	padding: 0 10px;
}

/*
==========================================================================
CRUISE ENQUIRY
==========================================================================
*/

.cruise-enquiry-popup {
	cursor: pointer;
}

.book-now a {
	color: #fff;
}

#cruise-enquiry-popup {
	display: none;
	width: 40%;
}

#cruise-enquiry-popup h3 {
	font-size: 18px;
	line-height: 24px;
	font-weight: 900;
}

#cruise-enquiry-popup .image {
	display: block;
}

#cruise-enquiry-popup .details {
	position: relative;
	overflow: hidden;
	margin: 0 0 20px;
}

#cruise-enquiry-popup .details p {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	width: 100%;
	color: #fff;
	text-align: left;
	margin: 0;
	padding: 10px;
	font-size: 16px;
	line-height: 26px;
	background: rgba(0, 0, 0, 0.4);
}

#cruise-enquiry-popup .details p strong {
	font-weight: 900;
}

#cruise-enquiry-popup .details img {
	max-width: 100%;
	width: 100%;
	display: block;
}

#cruise-enquiry-popup .details .favourite {
	cursor: pointer;
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	background: rgba(0, 0, 0, 0.4);
	color: #fff;
	width: 50px;
	height: 50px;
	transition: background 0.2s;
}

#cruise-enquiry-popup .frm_forms {}

#cruise-enquiry-popup .frm_screen_reader,
#cruise-enquiry-popup .cruise-enquiry-popup-details,
#cruise-enquiry-popup .frm_error_style,
#cruise-enquiry-popup .frm_verify {
	display: none;
}

#cruise-enquiry-popup .frm_html_container {
	margin: 15px 0;
	font-size: 16px;
}

#cruise-enquiry-popup input[type="text"],
#cruise-enquiry-popup input[type="email"],
#cruise-enquiry-popup input[type="tel"],
#cruise-enquiry-popup input[type="number"],
#cruise-enquiry-popup textarea,
#cruise-enquiry-popup select {
	background: #ddd;
	width: 100%;
	border: 0;
	padding: 8px;
	color: #454545;
	font-weight: 600;
	font: 13px "Oxygen", Helvetica, Arial, sans-serif;
}

#cruise-enquiry-popup .frm_submit {
	text-align: center;
	/* margin-top: 20px; */
}

input:-webkit-autofill {
	-webkit-box-shadow: inherit !important;
}

#cruise-enquiry-popup .frm_error {
	color: #f00;
	font-size: 12px;
	font-weight: 900;
	position: relative;
}

#cruise-enquiry-popup .frm_message {
	font-size: 18px;
	line-height: 24px;
	font-weight: 900;
	text-align: center;
	border-bottom: 2px solid #d7d7d7;
}

#quotes-popup h3 {
	font-size: 18px;
	line-height: 24px;
	font-weight: 900;
}

#quotes-popup input[type="text"],
#quotes-popup input[type="email"],
#quotes-popup input[type="tel"],
#quotes-popup input[type="number"],
#quotes-popup textarea,
#quotes-popup select {
	background: #ddd;
	width: 100%;
	border: 0;
	padding: 8px;
	color: #454545;
	font-weight: 600;
	font: 13px "Oxygen", Helvetica, Arial, sans-serif;
}

#quotes-popup input:focus {
	box-shadow: none;
}

#quotes-popup #field_email_label {
	display: none;
}

#quotes-popup .frm_submit {
	text-align: right;
}

#quotes-popup .frm_button_submit {
	text-align: center;
	margin-top: 20px;
	display: inline-block;
	background: #1e4d7d;
	padding: 10px 30px;
	border: 2px solid #1e4d7d;
	border-radius: 5px;
	transition: all 0.3s ease-in;
	border-radius: 0 !important;
}

#quotes-popup .frm_error {
	color: #f00;
	font-size: 12px;
	font-weight: 900;
	position: relative;
}

#quotes-popup .frm_message {
	font-size: 18px;
	line-height: 24px;
	font-weight: 900;
	text-align: center;
	border-bottom: 2px solid #d7d7d7;
}

/*
==========================================================================
SITE SEARCH
==========================================================================
*/

#search {
	display: flex;
	visibility: hidden;
	opacity: 0;
	transition: all 0.25s;
	position: fixed;
	z-index: 150;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.9);
	justify-content: center;
	align-items: center;
}

#search form {
	position: relative;
	top: 50px;
}

#search input {
	padding: 20px;
	border: 0px;
	width: 500px;
	color: var(--text);
	text-transform: uppercase;
}

#search button {
	background: transparent;
	border: 0px;
	padding: 0px 20px;
	font-size: 30px;
	color: #fff;
	transition: color 0.25s;
}

/*
==========================================================================
MOBILE NAVIGATION
==========================================================================
*/
#mobile-navigation-control {
	cursor: pointer;
}

#mobile-navigation {
	position: fixed;
	z-index: 100001;
	top: 0;
	height: 100%;
	min-width: 260px;
	left: -100%;
	width: 75%;
	background: #133c5c;
	overflow-y: auto;
	padding: 0 0 20px;
	transition: left 0.4s;
}

#mobile-navigation .close {
	position: absolute;
	z-index: 1;
	top: 0;
	right: 0;
	padding: 25px;
	color: #fff;
}

#mobile-navigation.mobile-nav-open {
	left: 0;
}

#mobile-navigation ul {
	padding: 15px;
	margin: 0;
	list-style: none;
}

#mobile-navigation li {
	position: relative;
}

#mobile-navigation ul.sub-menu {
	padding: 0 15px;
	display: none;
}

#mobile-navigation a {
	display: block;
	padding: 10px;
	color: #fff;
	/*border-bottom:2px solid transparent;*/
}

#mobile-navigation a:hover,
#mobile-navigation .current-menu-item>a {
	/*border-color:#fff;*/
}

#mobile-navigation .sub-menu-control {
	position: absolute;
	right: 10px;
	top: 10px;
	color: #fff;
	padding: 20px;
	margin: -20px;
}

#mobile-background {
	position: fixed;
	z-index: 100000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s;
}

#mobile-background.mobile-nav-open,
#mobile-background.open {
	opacity: 1;
	visibility: visible;
}

#mobile-background i {
	position: absolute;
	top: 20px;
	right: 10px;
	color: #fff;
	font-size: 18px;
}

/*
==========================================================================
OVERLAYS
==========================================================================
*/

.overlay-container {
	background: rgba(19, 60, 92, 0.5);
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 100000;
	opacity: 0;
	visibility: hidden;
	transition: all 0.4s;
}

.popup-overlay {
	flex: 1;
	background: #fff;
	max-width: 50%;
	max-height: 75%;
	overflow-y: auto;
	padding: 50px;
	position: relative;
	top: 100px;
	opacity: 0;
	transition: all 0.4s;
}

.popup-overlay .fa-times-circle {
	position: absolute;
	top: 25px;
	right: 25px;
	color: #133c5c;
	cursor: pointer;
}

.popup-overlay .fa-times-circle:hover {
	color: #666;
}

.popup-overlay #blog-content {
	padding: 0;
}

.popup-overlay #blog-content article {
	width: 100%;
}

.overlay-container.open {
	opacity: 1;
	visibility: visible;
}

.overlay-container.open .popup-overlay {
	opacity: 1;
	top: 0;
}

.overlay-container .frm_forms {}

.overlay-container .frm_forms label,
.overlay-container .frm_forms .frm_screen_reader,
.overlay-container .frm_forms .frm_hidden,
.overlay-container .frm_forms .frm_verify {
	display: none;
}

.overlay-container .frm_forms .frm_form_field {
	margin: 0 0 10px;
	position: relative;
}

.overlay-container .frm_forms input,
.overlay-container .frm_forms textarea {
	border: 1px solid #ccc;
	width: 100%;
	padding: 5px;
}

.overlay-container .frm_forms .frm_has_error input,
.overlay-container .frm_forms .frm_has_error textarea,
.overlay-container .frm_forms .frm_blank_field input,
.overlay-container .frm_forms .frm_blank_field textarea {
	border-color: #f00;
}

.overlay-container .frm_forms .frm_error {
	font-size: 12px;
	color: #f00;
}

.overlay-container .frm_forms .frm_button_submit {
	border: 0;
}

/*
==========================================================================
OVERLAYS
==========================================================================
*/
.generic.inner .frm_forms {
	width: 50%;
}

.generic.inner .frm_forms label {
	display: block;
}

.generic.inner .frm_forms .frm_screen_reader,
.generic.inner .frm_forms .frm_hidden,
.generic.inner .frm_forms .frm_verify {
	display: none;
}

.generic.inner .frm_forms .frm_form_field {
	margin: 0 0 10px;
	position: relative;
}

.generic.inner .frm_forms input,
.generic.inner .frm_forms select,
.generic.inner .frm_forms textarea {
	background: #fff;
	border: 1px solid #ccc;
	width: 100%;
	padding: 10px;
}

.generic.inner .frm_forms .frm_has_error input,
.generic.inner .frm_forms .frm_has_error textarea,
.generic.inner .frm_forms .frm_blank_field input,
.generic.inner .frm_forms .frm_blank_field select,
.generic.inner .frm_forms .frm_blank_field textarea {
	border-color: #f00;
	padding: 10px;
}

.generic.inner .frm_forms .frm_error {
	font-size: 12px;
	color: #f00;
}

.generic.inner .frm_forms .frm_button_submit {
	border: 0;
}

/*
==========================================================================
FAVOURITES
==========================================================================
*/

.favourite[data-id] {
	position: absolute;
	top: 0;
	right: 0;
	padding: 15px 20px;
	color: #fff;
	cursor: pointer;
	background: rgba(0, 0, 0, 0.5);
	transition: background 0.3s;
}

.favourite[data-id]:hover {
	background: rgba(0, 0, 0, 0.8);
}

.favourites-list {
	margin: 30px 0 0;
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-column-gap: 30px;
}

.favourites-list .hot-slide {}

.cruise-lines-slider .favourite[data-id] {
	position: relative;
	top: unset;
	right: unset;
	padding: unset;
	background: unset;
}

.cruise-lines-slider .favourite[data-id]:hover {
	background: none !important;
	color: #133c5c;
}

.favourite.auto-delete {
	opacity: 0;
	visibility: hidden;
}

/*
==========================================================================
SEARCH BAR
==========================================================================
*/

#selectize_input {
	opacity: 0;
}

.selectize-input,
.selectize-input.focus {
	padding: 0;
	border: 0;
	border-radius: 0;
	box-shadow: none;
}

.selectize-control {
	display: flex;
	align-items: center;
}

#search-form {
	position: relative;
	z-index: 9;
	padding: 0;
	width: 100%;
}

#search-form .inner {
	padding: 0;
}

.page-tabbed #search-form {
	position: relative;
	background: transparent;
}

.search-form-btm {
	background: #fff;
	display: flex;
	justify-content: space-between;
}

.search-form-selectize {
	flex: 1;
	position: relative;
	display: flex;
	align-items: center;
}

.search-form-selectize .selectize-control {
	position: absolute;
	top: 0;
	width: 100%;
	min-height: 100%;
}

.search-form-selectize .selectize-control .selectize-input,
.search-form-selectize .selectize-control .selectize-input.focus {
	padding: 0;
	border: 0;
	box-shadow: none;
}

.search-form-selectize .selectize-control input {
	padding: 0 10px !important;
}

.search-form-selectize .selectize-dropdown {
	width: 400px !important;
	border: 0;
	padding-top: 10px;
}

.search-form-selectize .selectize-dropdown .option {
	padding: 7px 10px;
	cursor: pointer;
}

.search-form-selectize .selectize-dropdown .active {
	background: transparent;
}

.search-form-meta {
	display: flex;
	align-items: center;
	border-left: 1px solid #e4e4e4;
}

.search-form-meta .meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 10px;
	position: relative;
	width: 220px;
	height: 42px;
	border-right: 1px solid #e4e4e4;
}

.search-form-meta .meta .nice-select {
	width: 100%;
	border: 0;
	position: relative;
	z-index: 1;
	height: 42px;
	padding: 2px 0 2px 5px;
	background: transparent;
}

.search-form-meta .meta .nice-select:active,
.search-form-meta .meta .nice-select.open,
.search-form-meta .meta .nice-select:focus {
	border-color: #e4e4e4;
}

.search-form-meta .meta i {
	color: #3289c5;
	position: absolute;
	right: 10px;
	z-index: 0;
}

.search-form-meta .meta-date {
	flex: 1 0 auto;
	min-width: 200px;
}

.search-form-meta .meta-date input {
	border: 0;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
	color: #454545;
	width: 100%;
}

.search-form-meta .nice-select {
	font: 14px/36px "Oxygen", Helvetica, Arial, sans-serif;
	color: #454545;
}

.search-form-meta .nice-select span {
	color: #444;
}

.search-form-meta .meta-adults {
	width: 90px;
}

.search-form-meta .meta-children {
	width: 110px;
}

.search-form-meta .meta-duration {
	width: 150px;
}

.search-form-meta .meta-traveltype {
	width: 150px;
}

.search-form-meta select {
	border: 0;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
	color: #454545;
	background: transparent;
}

.search-form-submit {}

.search-form-submit button {
	background: var(--secondary);
	height: 100%;
	border: 0;
	font: 13px "Oxygen", Helvetica, Arial, sans-serif;
	color: #fff;
	padding: 13px;
	cursor: pointer;
	font-weight: 500;
	width: 140px;
	transition: all 0.3s;
}

.search-form-submit button:hover {
	background: #dd8000;
	color: #fff;
}

.search-form-children {
	display: none;
	align-items: center;
	justify-content: flex-end;
	padding: 10px 0 0 0;
}

.search-form-children p {
	margin: 0 10px 0 0;
	color: #fff;
}

.meta-children-age {
	display: none;
	align-items: center;
	margin-left: 10px;
	background: #fff;
}

.meta-children-age .nice-select {
	width: 120px;
	border: 0;
}

.meta-children-age .fas {
	position: relative;
	right: 10px;
}

.selectize-control.plugin-remove_button [data-value] {
	padding-right: 10px !important;
}

.selectize-control.plugin-remove_button [data-value] .remove,
.selectize-control.plugin-remove_button .remove {
	display: none;
	align-items: flex-start;
	justify-content: center;
	border-left: 0;
}

.selectize-control.plugin-remove_button [data-value] .remove:hover,
.selectize-control.plugin-remove_button .remove:hover {
	background: #cd1b27;
}

.selectize-control.multi .selectize-input .item {
	border: 0 !important;
	text-shadow: none !important;
	padding: 5px 10px;
	color: #fff !important;
}

.selectize-control.multi .selectize-input .item.active {
	border: 0 !important;
	text-shadow: none !important;
	padding: 5px 10px;
	color: #fff !important;
}

.selectize-control.multi .selectize-input .item-cruiseline,
.selectize-control.multi .selectize-input .item-cruiseline.active {
	background: var(--secondary);
}

.selectize-control.multi .selectize-input .item-ship,
.selectize-control.multi .selectize-input .item-ship.active {
	background: #7c216a;
}

.selectize-control.multi .selectize-input .item-destination,
.selectize-control.multi .selectize-input .item-destination.active {
	background: #008b44;
}

.selectize-control.multi .selectize-input .item-port,
.selectize-control.multi .selectize-input .item-port.active {
	background: #77262d;
}

.selectize-control.multi .selectize-input .item-traveltype,
.selectize-control.multi .selectize-input .item-traveltype.active {
	background: #298fd7;
}

.selectize-control.multi .selectize-dropdown .option .type {
	color: #fff;
	padding: 5px;
	text-transform: capitalize;
}

#quicksearch .selectize-control.multi .selectize-dropdown .option .type i {
	font-size: 12px;
}

.selectize-control.multi .selectize-dropdown .option-cruiseline .type,
.selectize-control.multi .selectize-dropdown .option-cruiseline.active .type {
	background: var(--secondary);
}

.selectize-control.multi .selectize-dropdown .option-ship .type,
.selectize-control.multi .selectize-dropdown .option-ship.active .type {
	background: #7c216a;
}

.selectize-control.multi .selectize-dropdown .option-destination .type,
.selectize-control.multi .selectize-dropdown .option-destination.active .type {
	background: #008b44;
}

.selectize-control.multi .selectize-dropdown .option-port .type,
.selectize-control.multi .selectize-dropdown .option-port.active .type {
	background: #77262d;
}

.selectize-control.multi .selectize-dropdown .option-traveltype .type,
.selectize-control.multi .selectize-dropdown .option-traveltype.active .type {
	background: #298fd7;
}

.selectize-control.multi .selectize-input .item .fa-times {
	display: none;
}

.selectize-control.multi .selectize-input .item:hover {
	background: #cd1b27 !important;
}

.selectize-control.multi .selectize-input .item:hover .fas {
	display: none;
}

.selectize-control.multi .selectize-input .item:hover .fa-times {
	display: inline-block;
}

.date-select input {
	border: 0;
	font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif;
	color: #454545;
	padding-left: 10px;
}

.date-select i {
	color: #3289c5;
}

.daterangepicker td.active,
.daterangepicker td.active:hover,
.daterangepicker td.end-date {
	background-color: #133c5c !important;
}

.daterangepicker td.in-range {
	background-color: #999;
	color: #fff;
}

.daterangepicker td.available:hover {
	background-color: #133c5c;
	color: #fff;
}

.litepicker-header {
	position: absolute;
	text-align: center;
	width: 100%;
	padding: 10px 0;
}

.litepicker .container__months {
	padding-top: 30px;
}

.litepicker .container__main:before {
	content: "Please select departure date and end date";
	position: absolute;
	top: 10px;
	width: 100%;
	text-align: center;
}

.drp-selected:before {
	content: "Depart between ";
}

.drp-buttons button {
	background: var(--secondary);
	border: 0;
	font: 13px "Oxygen", Helvetica, Arial, sans-serif;
	color: #fff;
	padding: 5px 13px !important;
	cursor: pointer;
	font-weight: 500 !important;
	transition: all 0.3s ease-in;
}

.drp-buttons button:hover {
	background: #dd8000;
	color: #fff;
	transition: all 0.3s ease-in-out;
}

/*
==========================================================================
SEARCH RESULTS
==========================================================================
*/

.main-search h3 {
	text-transform: uppercase;
	font-size: 12px;
}

#search-form .additional-options {
	margin: 0 10px 5px 0;
}

.search-form-btm,
.search-form-submit button,
.checkmark {
	border-radius: 0;
}

.checkmark {
	width: 10px;
	height: 10px;
	top: 7px;
}

.checkGroup {
	padding: 0 15px;
}

.checkGroup .checkmark::after {
	left: 2px;
	top: 0;
	width: 2px;
	height: 5px;
}

.meta-children-age,
.meta-adults-age,
.meta-children-age .nice-select,
.meta-adults-age .nice-select {
	height: 25px;
	border-radius: 0;
	padding: 2px 0 2px 10px;
}

.meta-children-age .nice-select,
.meta-adults-age .nice-select {
	width: 100px;
}

#search-form .meta-children-age .nice-select span,
#search-form .meta-adults-age .nice-select span {
	position: relative;
	top: -9px;
}

#search_sorting>.pagination>div>h4.total_cruises {
	display: none;
}

#search_sorting {
	margin-bottom: 20px;
}

#search_sorting .select-container {
	margin: 0 0 5px;
}

#search_sorting .select-container i {
	display: none;
}

#search_sorting .pagination-right {
	text-align: right;
}

#search_sorting .pagination-right span {
	margin: 0 0 0 5px;
}

#search_sorting h4 {
	margin: 0 15px 5px 0;
	font-size: 20px;
}

#search_sorting select {
	border: 1px solid #ccc;
	padding: 5px;
	width: 250px;
	border-radius: 0;
}

#search_sorting select option[value="best_value ASC"],
#search_sorting select option[value="most_popular DESC"] {
	display: none !important;
}

#search_action_bar {
	display: none;
	background: #f0f0f0;
	padding: 10px 10px 5px;
	margin: 0 0 15px;
	font-size: 14px;
}

#search_action_bar h3 {
	color: #2d3b54;
	margin: 0 0 10px;
}

#search_action_bar h3 small {
	color: #666;
}

#search_action_bar h3.total_cruises {
	display: none;
}

#search_actions {
	margin: 0;
	padding: 0;
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}

#search_actions li {
	list-style: none;
	background: #2d3b54;
	color: #fff;
	padding: 5px 10px;
	margin: 0 5px 5px 0;
	border-radius: 0;
	cursor: pointer;
	text-transform: capitalize;
}

#search_actions li i {
	font-size: 12px;
}

#search_actions li i.fa-times {
	display: none;
}

#search_actions li:hover {
	background: #cd1b27 !important;
}

#search_actions li:hover i {
	display: none;
}

#search_actions li:hover i.fa-times {
	display: inline-block;
}

#search_actions li.action-date,
#search_actions li.action-flexibility {
	background: var(--secondary);
}

#search_actions li.action-cruiseline {
	background: #004d81;
}

#search_actions li.action-ship {
	background: #7c216a;
}

#search_actions li.action-destination {
	background: #008b44;
}

#search_actions li.action-departport,
#search_actions li.action-visitport {
	background: #77262d;
}

#search_actions li.action-duration {
	background: #bd8659;
}

#search_actions li.action-traveltype {
	background: #298fd7;
}

#search_actions li.action-reset {
	background: #17afd5;
}

#search_actions li.action-reset:hover {
	background: #2d3b54 !important;
}

#search_actions li.action-reset:hover i {
	display: inline-block;
}

#search_container .sidebar {}

#search_container .sidebar .filter {
	border: 1px solid #eee;
	background: #eee;
	padding: 10px;
	margin: 10px 0;
}

#search_container .sidebar .filter input {
	border: 0;
	width: 100%;
	background: transparent;
	font-size: 14px;
}

#search_container .sidebar .filter i {
	color: #ccc;
}

#search_container .sidebar .search_option {
	border: 1px solid #ccc;
	padding: 5px;
	position: relative;
	overflow: hidden;
}

#search_container .sidebar .search_option input {
	width: 100%;
	background: transparent;
	border: 0;
	font: 14px/16px "Oxygen", Helvetica, Arial, sans-serif;
}

#search_container .sidebar .search_option select {
	flex: 1 0 auto;
	width: 130%;
	background: transparent;
	border: 0;
	font-size: 14px;
}

#search_container .sidebar .search_option i {
	position: absolute;
	right: 5px;
	opacity: 0.4;
	z-index: -1;
}

#search_container .sidebar ul {
	list-style: none;
	margin: 0;
	padding: 0;
}

#search_container .sidebar li {
	list-style: none;
	border-bottom: 1px solid #ccc;
	padding: 10px 0;
	position: relative;
	font-size: 14px;
	line-height: 18px;
}

#search_container .sidebar li:last-child {
	border: 0;
}

#search_container .sidebar ul#regional_list li:last-child {
	border-bottom: 1px solid #ccc;
}

/*#search_container .sidebar li:nth-of-type(5) ~ li { display:none; }*/
#search_container .sidebar li:not(.option):nth-of-type(n + 6) {
	display: none;
}

/*#search_container .sidebar li.hide.show { display:block; }*/
#search_container .sidebar li input {
	display: none;
}

#search_container .sidebar li label {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0 0 0 20px;
	position: relative;
	z-index: 1;
	cursor: pointer;
}

#search_container .sidebar li .total {
	font-size: 14px;
}

#search_container .sidebar li[data-total="0"] {
	display: none;
}

#search_container .sidebar li[data-checked="1"] {}

#search_container .sidebar li[data-checked="0"]::before {
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	font-weight: 400;
	position: absolute;
	left: 0;
	z-index: 0;
	color: #aaa;
}

#search_container .sidebar li[data-checked="1"]:not([data-sort="0"]) {
	display: none !important;
}

#search_container .sidebar li[data-checked="1"]::before {
	content: "\f14a";
	font-family: "Font Awesome 5 Free";
	font-weight: 600;
	position: absolute;
	left: 0;
	z-index: 0;
	color: #3289c5;
}

#search_container .sidebar .list_more {
	text-align: center;
	adding: 2px 0;
	font-size: 13px;
	color: #3289c5;
	cursor: pointer;
	transition: color 0.2s;
}

#search_container .sidebar .list_more:hover {
	color: #2d3b54;
}

#search_container .sidebar .list_more i {
	font-size: 10px;
}

#search_container .sidebar .select-container {
	background: #eee;
	width: 60%;
	margin: 0 0 0 10px;
}

#search_container .sidebar .select-container-adults {
	margin-bottom: 10px;
}

#search_container .sidebar .select-container .nice-select {
	width: 100%;
	font: 14px/16px "Oxygen", Helvetica, Arial, sans-serif;
	padding: 10px 0 10px 15px;
	background: transparent;
	border: 0;
}

#search_container .sidebar .select-container-adults .nice-select:after {
	content: "\f183";
	font-family: "Font Awesome 5 Free";
	color: #ccc;
	position: absolute;
	top: 10px;
	right: 10px;
	font-weight: 600;
}

#search_container .sidebar .select-container-children .nice-select:after {
	content: "\f1ae";
	font-family: "Font Awesome 5 Free";
	color: #ccc;
	position: absolute;
	top: 10px;
	right: 7px;
	font-weight: 600;
}

#search_container .sidebar .select-container-children {
	margin-bottom: 10px;
}

#search_container .sidebar .select-container-children-age {
	margin-bottom: 10px;
}

.li-col {
	padding: 0 5px;
}

#search_container .show_more {
	cursor: pointer;
}

#search_container .show_less {
	cursor: pointer;
	display: none;
}

#search_container .more {
	display: none;
}

#search_container .list-item .ii-itinerary .show_more {
	display: none;
}

#search_container .list-item .ii-itinerary .show_less {
	display: none;
}

#search_container .list-item .ii-itinerary .more {
	display: inline-block;
}

.list-item .li-col .top-col {
	display: flex;
	flex-wrap: wrap;
}

.list-item .li-col .top-col .brand {
	width: auto;
	display: block;
}

.list-item .li-col .top-col .brand span {
	margin: 0;
}

.prices-col {
	margin: 0 0 25px;
}

.ui-state-default,
.ui-widget-content .ui-state-default {
	cursor: grabber;
}

.ui-state-focus,
.ui-widget-content .ui-state-focus {
	background: #f6f6f6;
}

.ui-state-active,
.ui-widget-content .ui-state-active {
	background: #3289c5;
	border-color: #3289c5;
}

.cruises-slider-wrapper .loading,
.search-results .loading {
	min-height: 500px;
	text-align: center;
	font-size: 18px;
	color: #133c5c;
}

.cruises-slider-wrapper .loading {
	grid-column: 1 / 4;
}

.sgrid-item {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	-ms-grid-column: 1;
}

.sgrid-item:nth-child(2) {
	-ms-grid-column: 3;
}

.filter-widget {
	margin: 0 0 30px;
}

.filter-widget .slider-label {
	text-align: center;
}

.li-col.li-img {
	padding: 0;
}

.search-grid .li-img {
	background: center center / cover no-repeat;
	height: 150px;
	position: relative;
	margin-bottom: 10px;
	width: 100%;
}

.search-results .li-img {
	position: relative;
}

.li-img .favourite {
	position: absolute;
	z-index: 1;
	cursor: pointer;
	top: 0;
	right: 5px;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 50px;
	height: 50px;
	color: #fff;
	background: rgba(0, 0, 0, 0.4);
	transition: all 0.3s;
}

.li-img .favourite:hover {
	background: rgba(0, 0, 0, 0.8);
}

.search-grid .li-img .favourite {
	right: 0;
}

.grid-item-slide {
	width: 80%;
	margin-top: 10px;
}

.grid-item-slide .slick-prev {
	left: -40px;
	overflow: visible;
}

.grid-item-slide .slick-prev:before,
.grid-item-slide .slick-next:before {
	overflow: visible;
	padding-top: 10px;
}

.grid-item-slide .slick-next {
	right: -40px;
	overflow: visible;
}

.sgrid-item .gis-inner {
	line-height: 32px;
	padding: 10px 0;
	min-height: 97px;
}

.sgrid-item .gis-inner-cfp {
	padding: 20px 0;
	font-size: 18px;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* .list-item .gis-inner-cfp { padding:16px 0; } */
.list-item .gis-inner-cfp .rprice {
	font-size: 14px;
}

.toggler {
	margin-bottom: 10px;
}

.mobsorter {
	background: #3289c5;
}

.pg-big-buttons.gbuttons {
	margin-top: 30px;
	grid-template-columns: 1fr;
}

.pg-big-buttons.gbuttons .quotes-popup {
	display: none;
}

.pg-big-buttons.gbuttons .light-blue-button,
.pg-big-buttons.gbuttons .blue-button {
	height: 49px;
	cursor: pointer;
}

.pg-big-buttons.gbuttons .blue-button {
	margin-bottom: 10px;
}

.pg-big-buttons.gbuttons .light-blue-button {
	background: var(--primary);
	border-color: var(--primary);
}

.pg-big-buttons.gbuttons .light-blue-button:hover {
	background: #012f4b;
	border-color: #012f4b;
}

.pg-big-buttons.gbuttons .orange-button {
	background: var(--secondary);
	border-color: var(--secondary);
}

.pg-big-buttons.gbuttons .orange-button.book-now {
	padding: 0;
}

.pg-big-buttons.gbuttons .orange-button a {
	width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

.pg-big-buttons.gbuttons .orange-button:hover {
	background: var(--secondary-darker);
	border-color: var(--secondary-darker);
}

.atol-protected-list {
	margin-top: 15px;
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: flex-start;
}

.atol-protected-grid {
	display: flex;
	flex-direction: row;
	align-items: center;
	justify-content: center;
}

.atol-right {
	font-weight: 700;
}

.atol-left {
	padding-right: 15px !important;
}

.mobile-close {
	display: none;
	position: fixed;
	z-index: 2;
	font-size: 16px;
	font-weight: 700;
	bottom: 0;
	left: -100%;
	width: 100%;
	background: #008b44;
	color: #fff;
	padding: 15px;
	border: 0;
	cursor: pointer;
	transition: left 0.3s;
}

#fab-filters {
	display: none;
	position: static;
	align-items: center;
	justify-content: center;
	background: #008b44;
	color: #fff;
	width: 100%;
	height: 45px;
	z-index: 1;
	margin-top: 30px;
}

#enquire-fab {
	position: static !important;
	margin-bottom: 30px;
}

/*
==========================================================================
GALLERY FIXES
==========================================================================
*/

div.gallery {
	display: grid;
	grid-column-gap: 2px;
	grid-row-gap: 2px;
	margin-bottom: 15px;
}

div.gallery br {
	display: none;
}

dl.gallery-item img {
	width: 100%;
	height: auto;
	display: block;
}

.gallery-columns-1 {
	grid-template-columns: 1fr;
}

.gallery-columns-2 {
	grid-template-columns: 1fr 1fr;
}

.gallery-columns-3 {
	grid-template-columns: 1fr 1fr 1fr;
}

.gallery-columns-4 {
	grid-template-columns: 1fr 1fr 1fr 1fr;
}

.gallery-columns-5 {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
}

.gallery-columns-6 {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

.gallery-columns-7 {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.gallery-columns-8 {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.gallery-columns-9 {
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
}

.gallery-icon {
	position: relative;
}

.gallery-item {
	position: relative;
}

.gallery-item .magnify-icon {
	display: none;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background-color: rgba(0, 0, 0, 0.7);
}

.magnify-icon i {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	color: white;
}

.wp-caption {
	max-width: 100%;
	position: relative;
	margin-bottom: 30px;
}

.wp-image-50 {
	margin-top: 30px;
	margin-bottom: 30px;
}

p.wp-caption-text,
.ss-slide p.caption,
.wp-caption-text {
	position: absolute;
	bottom: 0px;
	background-color: rgba(25, 45, 75, 0.5);
	padding: 10px;
	color: #fff;
	margin-bottom: 0;
}

.gallery-item:hover .magnify-icon {
	display: block;
}

.input-container.calendar-container:after,
.selectize-duration:after,
.rooms-container:after {
	font-family: "Font Awesome 5 Free";
	color: #3289c5;
	font-weight: 700;
}

.input-container.calendar-container {
	position: relative;
}

.input-container.calendar-container:after {
	content: "\f017";
	position: absolute;
	right: 10px;
	top: 12px;
}

.selectize-control.selectize-duration:after {
	content: "\f5b0";
	padding-right: 10px;
}

.rooms-container:after {
	content: "\f183";
	position: absolute;
	right: 15px;
}

#tripappy-search .input-container.calendar-container input {
	width: calc(100% - 20px);
}

.tripappy-search-btm .SumoSelect {
	width: calc(100% - 30px);
}

#tripappy-search .rooms-container label {
	display: inline-block;
	width: calc(100%-110px);
}

.select-container:after {
	position: relative;
	top: -8px;
	right: -5px;
}

#tripappy-search #search-form {
	display: block;
}

/*
==========================================================================
IE 11
==========================================================================
*/
_:-ms-fullscreen,
:root #tripappy-search .input-container.calendar-container input {
	height: 30px;
}

_:-ms-fullscreen,
:root .SumoSelect>.CaptionCont,
_:-ms-fullscreen,
:root .SumoSelect.open>.CaptionCont,
_:-ms-fullscreen,
:root .SumoSelect:hover>.CaptionCont,
_:-ms-fullscreen,
:root .SumoSelect:focus>.CaptionCont,
_:-ms-fullscreen,
:root .SumoSelect:active>.CaptionCont {
	background: none;
}

/* search grid fix */
_:-ms-fullscreen,
:root .search-grid {
	display: -ms-grid;
	-ms-grid-columns: 1fr 30px 1fr 30px 1fr;
	-ms-grid-rows: 1fr 30px 1fr 30px 1fr;
}

:nth-child(2).sgrid-item {
	-ms-grid-column: 3;
}

:nth-child(3).sgrid-item {
	-ms-grid-column: 5;
}

:nth-child(4).sgrid-item {
	-ms-grid-column: 1;
	-ms-grid-row: 3;
}

:nth-child(5).sgrid-item {
	-ms-grid-column: 3;
	-ms-grid-row: 3;
}

:nth-child(6).sgrid-item {
	-ms-grid-column: 5;
	-ms-grid-row: 3;
}

:nth-child(7).sgrid-item {
	-ms-grid-column: 1;
	-ms-grid-row: 5;
}

:nth-child(8).sgrid-item {
	-ms-grid-column: 3;
	-ms-grid-row: 5;
}

:nth-child(9).sgrid-item {
	-ms-grid-column: 5;
	-ms-grid-row: 5;
}

_:-ms-fullscreen,
:root .holiday-grid {
	display: -ms-grid;
	-ms-grid-columns: 2fr 1fr;
}

_:-ms-fullscreen,
:root .holiday-grid-col {
	-ms-grid-column: 1;
}

_:-ms-fullscreen,
:root .holiday-grid-col:nth-child(2) {
	-ms-grid-column: 2;
}

_:-ms-fullscreen,
:root .big-buttons {
	display: -ms-grid;
	-ms-grid-columns: 1fr 5px 1fr 5px 1fr 5px 1fr 5px 1fr 5px 1fr 5px 1fr;
	-ms-grid-rows: 1fr;
}

_:-ms-fullscreen,
:root .big-buttons a {
	display: block;
}

.big-buttons a:nth-child(2) {
	-ms-grid-column: 3;
	-ms-grid-row: 1;
}

.big-buttons a:nth-child(3) {
	-ms-grid-column: 5;
}

.big-buttons a:nth-child(4) {
	-ms-grid-column: 7;
}

.big-buttons a:nth-child(5) {
	-ms-grid-column: 9;
}

.big-buttons a:nth-child(6) {
	-ms-grid-column: 11;
}

.big-buttons a:nth-child(7) {
	-ms-grid-column: 13;
}

.container.site-content .frm_fields_container {
	max-width: 550px;
	margin: auto;
}

.container.site-content .frm_fields_container br {
	display: none;
}

.container.site-content .frm_submit .frm_button_submit {
	width: auto;
	padding: 10px 20px;
}

#tripappy-search .search-tabs li.hextras-link {
	padding: 0;
}

#tripappy-search .search-tabs li.hextras-link a {
	display: block;
	padding: 8px 20px;
	color: #fff;
}

#tripappy-search .search-tabs li.hextras-link a:hover {
	color: #1e4d7e;
}

.blog-items .items {
	flex-wrap: wrap;
	margin-bottom: 40px;
}

/*
==========================================================================
RESPONSIVE
==========================================================================
*/

@media screen and (max-width: 1050px) {
	/* quick-search */

	#tripappy-search .tripappy-search-btm {
		flex-wrap: wrap;
		justify-content: flex-start;
	}

	#tripappy-search .tripappy-search-btm>div {
		width: calc(100% / 3);
	}

	#tripappy-search .tripappy-search-btm .button-container {
		width: 100%;
		padding: 1px 0;
	}

	#tripappy-search .tripappy-search-btm .big-search {
		width: 100%;
	}

	#tripappy-search .tripappy-search-btm .selectize-container,
	#tripappy-search .tripappy-search-btm .select-container,
	#tripappy-search .tripappy-search-btm .input-container {
		margin-right: 0;
	}

	#search-form {
		position: relative;
		background: #214f7f;
		margin: 0 0 -1px;
	}

	.search-form-btm {
		flex-wrap: wrap;
	}

	.search-form-selectize {
		width: 100%;
		min-height: 40px;
		flex: auto;
		border-bottom: 2px solid #214f7f;
	}

	.search-form-selectize .selectize-control {
		position: relative;
	}

	.search-form-meta {
		flex-direction: column;
		width: 100%;
		border: 0;
	}

	.search-form-meta .meta {
		width: 100%;
		padding: 0 15px 0 10px;
		border-bottom: 2px solid #214f7f;
	}

	.search-form-meta .meta i {
		right: 15px;
	}

	.search-form-meta .meta-date {}

	.search-form-meta .meta-date input {
		height: 100%;
		width: 100%;
	}

	.search-form-meta .meta .nice-select {
		padding: 2px 0 2px 0;
		margin: 0;
		border: 0;
		z-index: auto;
	}

	.search-form-meta .meta input {
		padding-left: 0;
	}

	.search-form-submit {
		width: 100%;
	}

	.search-form-submit button {
		width: 100%;
	}

	#cruise-enquiry-popup {
		width: 90%;
	}

	#cruise-contents {
		top: 151px;
	}

	#cruise-contents a span {
		display: none;
	}

	body.single-cruises .anchor-scroll {
		padding-top: 110px;
		margin-top: -110px;
	}

	.cabin-filters label {
		width: 50%;
	}

	.cabin-filters input {
		width: 100%;
	}
}

@media screen and (max-width: 700px) {

	.cabin-filters,
	.cabin-filters>div>div.flex {
		flex-direction: column;
	}

	.cabin-filters>div {
		width: 100%;
	}

	.cabin-filters .cabin-filter-container {
		width: 100%;
		max-width: 100%;
		margin: 0 0 10px;
	}

	.cabin-filters .separator {
		display: none;
	}

	.cabin-filters input {
		max-width: 100%;
	}

	.cabin-filters select,
	select[name="airport1"] {
		max-width: unset;
	}

	.sidebar-grid,
	.pack-grid {
		grid-template-columns: 1fr;
	}

	#cabins-rooms-control {
		height: 400px;
	}

	#main-content img,
	.site-content img,
	#block-content img {
		width: 100%;
		height: auto;
	}

	.cruise-lines-grid .cruise-line {
		width: 100%;
	}

	.cta-two-block,
	.cta-three-block {
		grid-template-columns: 1fr;
		height: auto;
	}

	.cta-two-block .cta-single,
	.cta-three-block .cta-single {
		height: 300px;
	}

	/* quick search form */
	.search-bar.hide-element {
		display: none;
	}

	.search-bar.closed {
		height: 0;
		overflow: hidden;
		margin-top: 0;
	}

	#tripappy-search .tripappy-search-btm>div {
		width: calc(100%);
		margin-bottom: 2px;
	}

	.search-bar-home .tabbed {
		position: static;
	}

	#tripappy-search .tripappy-search-btm {
		flex-wrap: nowrap;
		flex-direction: column;
	}

	#tripappy-search form {
		background: #1e4d7d;
	}

	#hero-blue-grid .blue-grid {
		grid-template-columns: 1fr 1fr;
	}

	.phonemob {
		display: block;
		position: relative;
		right: 0;
		left: 0;
		top: 0;
		margin: auto;
		text-align: center;
		font-size: 16px;
	}

	.logo {
		width: 240px;
		left: 0;
		right: 0;
		position: static;
		margin: auto;
		float: none;
	}

	.mobile-grid {
		display: block;
		background: #1e4d7d;
		width: 100%;
		display: grid;
		grid-template-columns: 2fr 1fr 2fr;
		grid-column-gap: 0px;
		grid-row-gap: 0px;
		justify-items: stretch;
		align-items: inital;
		text-align: center;
		padding: 0;
	}

	.nav-button,
	.search-button {
		position: static;
		padding: 10px;
		color: #fff;
		display: block;
	}

	.nav-button i {
		color: #fff;
	}

	.sales {
		display: block;
		padding: 10px;
		background: #cd1b27;
		color: #fff;
	}

	.nav-button:hover,
	.search-button:hover,
	.sales:hover {
		color: #fff;
		background-color: #eb8f3f;
	}

	header>.inner {
		padding: 0;
	}

	.cta-slider .slick-next,
	.single-cruise-lines .line-slider .slick-next {
		right: 10px;
	}

	.cta-slider .slick-prev,
	.single-cruise-lines .line-slider .slick-prev {
		left: 10px;
	}

	.cta-slider .slick-next,
	.cta-slider .slick-prev {
		background-color: rgba(31, 78, 121, 0.7);
		padding: 5px;
	}

	.slick-next:before,
	.slick-prev:before {
		width: 25px;
		height: auto;
	}

	#tripappy-search form .tripappy-search-btm {
		height: unset;
	}

	#tripappy-search .tripappy-search-btm>div {
		height: 42px;
		margin-bottom: 2px;
	}

	#tripappy-search .input-container input {
		padding: 0 10px;
		X
	}

	#tripappy-search .rooms-container .rooms-input {
		width: 100%;
		z-index: 999;
	}

	#tripappy-search .selectize-container .selectize-control,
	#tripappy-search .selectize-container .selectize-input,
	#tripappy-search .selectize-container .selectize-input input {
		padding: 0 5px;
	}

	.rooms-container label {
		padding: 0 10px;
		line-height: 42px;
		width: calc(100% - 22px);
		display: inline-block;
	}

	#cruise-meta,
	#cruise-meta-stats {
		flex-wrap: wrap;
	}

	.ship-info-tabs li {
		width: 50%;
	}

	.ship-info-tabs .ptabs a {
		margin-right: 0;
	}

	.ca_tab_content {
		flex-direction: column;
	}

	.ca_tabs.panel-container .panel-slider-content {
		width: 100%;
	}

	.generic.inner .frm_forms {
		width: 100%;
	}

	.search-page .side-left,
	.search-page .side-right {
		width: 100%;
		float: none;
	}

	.side-right .big-buttons {
		grid-template-columns: 1fr 1fr 1fr;
	}

	.side-right .sort-title {
		float: left;
		width: 100%;
	}

	.side-right .price-title {
		width: 100%;
		float: left;
		margin-bottom: 10px;
	}

	.side-right .holiday-grid {
		grid-template-columns: 1fr;
	}

	#pagination span {
		line-height: 50px;
	}

	#tripappy-search,
	.SumoSelect>.CaptionCont,
	.SumoSelect.open>.CaptionCont,
	.SumoSelect:hover>.CaptionCont,
	.SumoSelect:focus>.CaptionCont,
	.SumoSelect:active>.CaptionCont,
	.selectize-control.single .selectize-input .item,
	#tripappy-search .selectize-container .selectize-control,
	#tripappy-search .selectize-container .selectize-input,
	#tripappy-search .selectize-container .selectize-input input,
	.departs,
	.departs[disabled] {
		font: 14px/1.8 "Oxygen", Helvetica, Arial, sans-serif !important;
	}

	.input-container.calendar-container:after,
	.selectize-duration:after,
	.select-container:after,
	.rooms-container:after {
		font-family: "Font Awesome 5 Free";
		color: #3289c5;
		font-weight: 700;
	}

	.input-container.calendar-container:after {
		content: "\f017";
	}

	.selectize-duration:after {
		content: "\f5b0";
		padding-right: 4px;
	}

	.rooms-container:after {
		content: "\f183";
	}

	/*.select-container:after {
  content:"\f073";
}*/
	#tripappy-search .tripappy-search-btm .input-container.calendar-container input {
		width: calc(100% - 28px);
		padding: 0;
	}

	.select-container .SumoSelect {
		width: 90%;
	}

	.select-container .SumoSelect p {
		padding: 10px;
	}

	.mobsorter {
		display: block !important;
	}

	.mobsorter .toggler,
	.toggle-filters {
		padding: 5px 10px;
		background: 0 0;
		display: inline-block;
		margin: 10px 10px 0 0;
		color: #fff;
		cursor: pointer;
	}

	.mobsorter .toggler.actived,
	.mobsorter .toggler:hover,
	.toggle-filters:hover,
	.toggle-filters.actived {
		padding: 5px 10px;
		border-top-right-radius: 5px;
		border-top-left-radius: 5px;
		background: #fff;
		color: #2f3d56;
		display: inline-block;
		margin: 10px 10px 0 0;
	}

	/*#tripappy-search .search-tabs.flex li {
padding:8px 0;
}*/
	#tripappy-search>.inner {
		padding: 0;
	}

	select,
	textarea,
	input {
		font-size: 16px !important;
	}

	#tripappy-search .search-tabs {
		justify-content: center;
		flex-wrap: wrap;
		margin-top: 15px;
	}

	.top-col .brand img.cruiseline {
		max-width: 160px;
		width: auto;
		height: auto;
		margin-bottom: 10px;
	}
}

/* Media query to stop the form zooming in when selecting a field on iphone.
Iphone zooms in if the font-size is smaller than 16px */
@supports (-webkit-overflow-scrolling: touch) {}

@media screen and (max-width: 520px) {
	.content-row {
		flex-direction: column;
		margin: 0;
	}

	.content-col {
		width: 100%;
		margin: 0 0 20px;
		padding: 0;
	}

	.full-white {
		margin: auto 0;
	}

	.slider-inner {
		justify-content: center !important;
	}

	.slider-inner-content {
		width: 90%;
		max-height: 250px;
		overflow: auto;
	}

	#search_sorting,
	#search_sorting .filters {
		flex-direction: column;
		flex: 1;
		align-items: unset;
	}

	#search_sorting .filter-title {
		margin-bottom: 15px;
	}

	#search_sorting select[name="sort"] {
		width: 100%;
		margin: 5px 0 0;
	}

	.full-white {
		padding: 0;
	}

	.pack-grid,
	.sidebar-grid,
	.cabin-filter-search,
	.pricing-filter-search {
		grid-template-columns: 1fr;
	}

	.cabin-filter-search h5,
	.cabin-filter-search select {
		margin-bottom: 5px;
	}

	#cruise-enquiry-popup {
		width: auto;
	}

	.pagination-right {
		/* display: none; */
	}

	#search_sorting .pagination {
		flex-direction: column;
	}

	.call-now-cta {
		font-size: 19px;
	}

	#cabins-rooms-control {
		grid-row: 1;
	}

	.cabin-select>h2 {
		display: none;
	}

	.sidebar-grid {
		margin-bottom: 0;
		padding: 0;
	}

	.footer-grid {
		grid-template-columns: 1fr;
	}

	.cabins-rooms-container {
		font-size: 10px;
	}

	.cabin-filters {
		margin-top: 10px;
	}

	.ship-table {
		padding: 0;
	}

	.ship-table .scol {
		padding: 5px;
	}

	.ship-table .red {
		font-size: 10px;
	}

	.table-wrapper .checkboxes label {
		padding: 3px;
		font-size: 10px;
	}

	.alert {
		font-size: 10px;
	}

	.contents-cta {
		display: none;
	}

	.althead {
		padding: 0;
		font-size: 10px;
	}

	.lt-col {
		padding: 5px;
		font-size: 10px;
	}

	.alt-table {
		grid-template-columns: 1.8fr 2fr 1fr 0.5fr 1.2fr;
	}
}

/* FEEFO */
.feefowidget-merchant-header__award-badge img,
.feefowidget-carousel-summary__award-badge img {
	max-width: 80px;
}

.feefowidget-carousel-summary__footer img {
	max-width: 220px;
}

/* ZENDESK CHAT */
iframe#launcher {
	bottom: 60px !important;
}

/* CRUISEAPPY */

#main-content .generic.inner {
	padding: 15px;
}

#search_container .sidebar .select-container {
	background: #eee;
	width: 60%;
	margin: 0 0 0 10px;
	padding: 0;
	position: relative;
}

#search_container .sidebar .select-container i {
	position: absolute;
	right: 10px;
	color: #ccc;
}

#search_container .sidebar .select-container-adults {
	margin-bottom: 10px;
}

#search_container .sidebar .select-container .nice-select {
	width: 100%;
	height: unset;
	padding: 10px 0 10px 15px;
	background: transparent;
	border: 0;
}

#search_container .sidebar .select-container-adults .nice-select:after,
#search_container .sidebar .select-container-children .nice-select:after {
	display: none;
}

#search_container .sidebar .select-container .nice-select .list {
	background: #fff;
	border-radius: 0;
}

#search_container .sidebar .select-container .nice-select .list .option {
	margin: 0;
	padding: 10px;
	min-height: unset;
	height: auto;
}

#search_container .sidebar .select-container .nice-select .list .option:before {
	content: "";
	display: none;
}

#search_container .sidebar .select-container-children {
	margin-bottom: 10px;
}

#search_container .sidebar .select-container-children-age {
	margin-bottom: 10px;
}

#book-now {}

.single-specials .page-hero-inner #book-now {
	display: none !important;
}

#book-now .price-includes {
	margin-left: 20px;
	font-size: 12px;
	line-height: 18px;
}

#lead-in-prices {
	display: flex;
	align-items: flex-start;
	width: 100%;
	margin: 20px 0;
}

#lead-in-prices div {
	width: 100%;
	background: #1e4d7d;
	color: #fff;
	font-size: 13px;
	height: 75px;
	text-align: center;
	margin: 0 1px;
}

#lead-in-prices div:first-child {
	margin-left: 0;
	border-top-left-radius: 0;
	border-bottom-left-radius: 0;
}

#lead-in-prices div:last-child {
	/* margin-right: 0; */
	border-top-right-radius: 0;
	border-bottom-right-radius: 0;
}

#lead-in-prices label {
	height: 100%;
	cursor: pointer;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

#lead-in-prices label input {
	display: none;
}

#lead-in-prices label p,
#lead-in-prices label span {
	margin: 0;
}

#lead-in-prices label .sprice span:first-child {
	display: block;
}

#lead-in-prices label .sprice span:last-child {
	display: none;
}

#lead-in-prices label i {
	color: #1e4d7d;
}

#lead-in-prices .active {
	background: #fff;
	color: #1e4d7d;
}

#lead-in-prices .active label .sprice span:first-child {
	display: none;
}

#lead-in-prices .active label .sprice span:last-child {
	display: block;
}

#lead-in-prices .active label i {
	color: var(--secondary);
}

.farecode-description strong {
	color: var(--secondary);
}

#grade-selector-top {
	margin: 30px 0;
}

#grade-selector-top>h5 {
	margin: 30px 0 10px;
}

#cabin-filters {
	border-right: 2px solid #ccc;
	margin: 0 30px 0 0;
	padding: 0 30px 0 0;
}

.filter-dropdowns .farecode-description {
	margin: 20px 0 0;
}

.cabin-filter-container {
	background: #214f7f;
	color: #fff;
	display: inline-flex;
	align-items: stretch;
	margin: 0 10px 0 0;
}

.cabin-filter-container label {
	color: #fff;
	font-size: 14px;
	margin: 10px;
}

.cabin-filter-container select {
	margin: 2px 2px 2px 0;
	min-width: 150px;
	color: #214f7f;
}

.cabin-filter-container select#filter_position,
.cabin-filter-container select#secondary-farecode,
.cabin-filter-container select#secondary-airport,
.cabin-filter-container select#filter_deck {
	pointer-events: none;
}

#mobile-filters-header {
	display: none;
}

/* Single Cruise */
.package-drops .nice-select {
	margin: 0 0 10px;
}

.package-drops .nice-select .list {
	max-width: unset;
	width: 100% !important;
}

/* Ship */

#ship-cabins-selector {}

#ship-cabins-selector .deckplan-container {
	flex: 1 0 auto;
	width: 300px;
	height: 450px;
	overflow: auto;
	margin: 0 15px 0 0;
	padding: 0 13px 0 0;
}

#ship-cabins-selector .table-container {
	flex: 1 1 auto;
	width: 100%;
}

#ship-cabins-selector .table-container {
	position: relative;
	display: block;
	width: 100%;
	max-height: 450px;
	overflow-y: auto;
}

#ship-cabins-selector table {
	margin: 0;
	width: 100%;
}

#ship-cabins-selector table th,
#ship-cabins-selector table td {
	padding: 15px;
	vertical-align: middle;
}

#ship-cabins-selector table th {
	background: #2d3b54;
	color: #fff;
	text-align: left;
}

#ship-cabins-selector table th.text-center {
	text-align: center;
}

#ship-cabins-selector table td {
	padding: 15px;
	position: relative;
	z-index: 1;
}

#ship-cabins-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
}

#ship-cabins-selector tbody tr {
	cursor: pointer;
}

#ship-cabins-selector tbody tr:nth-child(2n) {
	background: #efefef;
}

#ship-cabins-selector .grade-active {
	display: table-row;
	position: relative;
}

#ship-cabins-selector .grade-active:after {
	content: "";
	border: 2px solid #cd1b27;
	position: absolute;
	z-index: 0;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	top: 0;
	left: 0;
}

#ship-cabins-selector .tagspan {
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 5px 0 0;
	padding: 5px 10px;
	color: #fff;
	border-radius: 6px;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 700;
	transition: opacity 0.2s;
}

/* Cruise Cabins */
.mob-title,
.mob-label {
	display: none;
}

#cabin-selector>p {
	text-align: center;
}

#cruise-cabins-selector {}

#cruise-cabins-selector .deckplan-container {
	flex: 1 0 auto;
	width: 300px;
	height: 500px;
	overflow: auto;
	margin: 0 15px 0 0;
	padding: 0 13px 0 0;
	text-align: center;
}

#cruise-cabins-selector .table-container {
	flex: 1 1 auto;
	width: 100%;
	position: relative;
	display: block;
	width: 100%;
	max-height: 500px;
	overflow-y: auto;
	padding: 0 4px;
}

/*#cruise-cabins-selector .table-container:after { display:none;content:"";background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);position:absolute;top:0;right:0;width:50px;height:100%;z-index:1; }*/
#cruise-cabins-selector table {
	margin: 0;
	width: 100%;
	border-collapse: unset;
}

#cruise-cabins-selector table th,
#cruise-cabins-selector table td {
	padding: 15px;
	vertical-align: middle;
}

#cruise-cabins-selector table th {
	background: #2d3b54;
	color: #fff;
	text-align: left;
}

#cruise-cabins-selector table th.text-center {
	text-align: center;
}

#cruise-cabins-selector table td {
	padding: 15px;
	position: relative;
	z-index: 1;
	background-clip: padding-box;
}

#cruise-cabins-selector table td.price,
#cruise-cabins-selector table td .table-price {
	color: var(--primary);
	font-weight: bold;
	font-size: 18px;
}

#cruise-cabins-selector table td.is-package {
	font-weight: 700;
}

#cruise-cabins-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #2d3b54;
}

#cruise-cabins-selector tbody tr.desktop-cabin-select {
	cursor: pointer;
	background: #FFF;
}

#cruise-cabins-selector tbody tr.desktop-cabin-select:nth-child(2n) {
	background: #efefef;
}

#cruise-cabins-selector .grade-active {
	display: table-row;
	position: relative;
}

/*#cruise-cabins-selector .grade-active:after { content:"";border:2px solid #cd1b27;position:absolute;z-index:0;width:calc(100% - 4px);height:calc(100% - 4px);top:0;left:0; }*/
/* #cruise-cabins-selector .grade-active td:first-child { border-left: 2px solid #f6716b; } */

#cruise-cabins-selector td {
	border-top: 2px solid transparent;
	border-bottom: 0;
}

/* #cruise-cabins-selector .grade-active td { border-top: 2px solid #f6716b; border-bottom: 2px solid #f6716b; }

				#cruise-cabins-selector .grade-active td:last-child { border-right: 2px solid #f6716b; } */
#cruise-cabins-selector .grade-active:after {
	z-index: 0;
	content: "";
	border: 2px solid var(--secondary);
	border-radius: 0;
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
}

#cruise-cabins-selector .tagspan .only-mobile {
	display: none;
}

#cruise-cabins-selector .tagspan {
	opacity: 0.8;
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 5px 0 0;
	padding: 5px 10px;
	color: #fff;
	border-radius: 6px;
	white-space: nowrap;
	font-size: 12px;
	font-weight: 700;
	transition: opacity 0.2s;
}

#cruise-cabins-selector .tagspan.active {
	opacity: 1;
}

#cruise-cabins-selector .grade-inactive .tagspan,
#cruise-cabins-selector .grade-active .tagspan:hover,
#cruise-cabins-selector .grade-active .tagspan.active {
	opacity: 1;
}

#cruise-cabins-selector .grade-active .tagspan {
	opacity: 0.5;
}

#cruise-cabins-selector .step {
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 10px 0;
	/* border-radius: 3px; */
	/* text-transform: uppercase; */
	font-weight: 700;
	font-size: 14px;
	line-height: 14px;
	width: 140px;
	height: 35px;
	cursor: pointer;
}

#cruise-cabins-selector .step-1 {
	text-align: center;
	background: #1e4d7d;
}

#cruise-cabins-selector .step-2 {
	display: none;
	background: var(--secondary);
}

#cruise-cabins-selector .step-loading {
	display: none;
	background: var(--secondary);
}

#cruise-cabins-selector .grade-active .step-1 {
	display: none;
}

#cruise-cabins-selector .grade-active .step-2 {
	display: inline-block;
	transform: scale(1);
	/* animation: book-pulse 3s infinite; */
}

#cruise-cabins-selector .grade-loading .step-1,
#cruise-cabins-selector .grade-loading .step-2 {
	display: none;
}

#cruise-cabins-selector .grade-loading .step-loading {
	display: inline-block;
}

#cruise-cabins-selector .price-includes {
	display: block;
	font-size: 12px;
	font-weight: 400;
}

#cruise-cabins-selector .cabin-active {
	display: table-row;
	position: relative;
}

#cruise-cabins-selector .cabin-active:after {
	content: "";
	border: 2px solid var(--secondary);
	position: absolute;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	top: 0;
	left: 0;
}

#cruise-cabins-selector .cabin-active .step-1 {
	display: none;
}

#cruise-cabins-selector .cabin-active .step-2 {
	display: inline-block;
	transform: scale(1);
	/* animation: book-pulse 3s infinite; */
}

#cruise-cabins-selector .cabin-loading .step-1,
#cruise-cabins-selector .cabin-loading .step-2 {
	display: none;
}

#cruise-cabins-selector .cabin-loading .step-loading {
	display: inline-block;
}

#cruise-cabins-selector .occupancy-icons i {
	margin: 0 -5px;
}

#cruise-cabins-selector .fa-child {
	transform: scale(0.8);
}

#cruise-cabins-selector .dtmg-decks {
	display: flex;
	flex-wrap: wrap;
	gap: 0.5rem;
}

.cabin-info {
	display: flex;
	align-items: flex-start;
	margin-bottom: 20px;
}

.cabin-image {
	height: 100%;
	max-height: 250px;
	margin-right: 20px;
}

.cabin-image img {
	width: 100%;
	height: auto;
	max-width: 300px;
}

.cabin-description {}

.deckplan-container {
	position: relative;
}

/* .deckplan-container img { position:absolute;top:0;left:0; } */
.deckplan-container img {
	display: block;
	margin: 0 auto;
}

.deckplan-container .svg {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
}

.deckplan-container .svg .rect {
	cursor: pointer;
	position: absolute;
	z-index: 3;
	opacity: 1;
	transition: opacity 1.5s;
	animation: cabin-highlighter 1.5s infinite;
	border-radius: 100%;
	width: 10px !important;
	height: 10px;
	background-color: var(--secondary);
}

.deckplan-container .svg .rect.additional {
	border-color: var(--primary);
}

#back-to-cabins {
	display: none;
	margin: 20px 0 0 0;
}

#back-to-cabins span {
	cursor: pointer;
}

/* Flights */
.package-drops .airport-filter-item p {
	margin: 0 0 5px;
}

#flights-filters {
	margin: 0 0 20px;
}

#flights-filters .airport-filter-item {
	display: flex;
	align-items: center;
	margin-left: 30px;
}

#flights-filters .airport-filter-item p {
	margin: 0;
}

#flights-filters .airport-filter-item label {
	cursor: pointer;
}

#flights-filters .airport-filter-item .nice-select {
	width: 200px;
	margin: 0 0 0 20px;
	border: 1px solid #ccc;
	padding: 5px 15px;
	height: unset;
	line-height: unset;
}

section#flights .inner {
	padding: 0;
}

#package-flights {
	position: relative;
	z-index: 1;
}

#flights-populator {
	max-height: 450px;
	overflow-y: auto;
}

#flights-populator:after {
	display: none;
	content: "";
	background: linear-gradient(90deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 1) 100%);
	position: absolute;
	top: 0;
	right: 0;
	width: 50px;
	height: 100%;
	z-index: 1;
}

#flights-selector {
	width: 100%;
	margin: 0;
	padding: 0 4px;
	border-collapse: unset;
}

#flights-selector th,
#flights-selector td {
	padding: 10px;
}

#flights-selector th {
	background: #2d3b54;
	color: #fff;
	text-align: left;
}

#flights-selector th.text-center {
	text-align: center;
}

#flights-selector td {
	vertical-align: middle;
	padding: 10px;
	position: relative;
	z-index: 1;
	background: transparent;
}

#flights-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
}

#flights-selector tbody {
	background: var(--lightblue);
}

#flights-selector tbody td {
	vertical-align: middle;
	padding: 10px;
	background-clip: padding-box;
}

#flights-selector tbody td p {
	margin: 0 0 10px;
}

#flights-selector tbody td span .fas {
	margin-right: 10px;
	font-size: 18px;
	color: #214f7f;
}

#flights-selector tbody tr {
	cursor: pointer;
	z-index: 1;
	position: relative;
}

#flights-selector tbody tr:nth-child(2n) {
	background: #efefef;
}

#flights-selector .flight-active {
	display: table-row;
	position: relative;
}

/*#flights-selector .flight-active:after { z-index:0;content:"";border:2px solid #cd1b27;position:absolute;width:calc(100% - 4px);height:calc(100% - 4px);top:0;left:0; }*/
#flights-selector .flight-active td:first-child {
	border-left: 2px solid #f6716b;
}

#flights-selector td {
	border-top: 2px solid transparent;
	border-bottom: 0;
}

#flights-selector .flight-active td {
	border-top: 2px solid #f6716b;
	border-bottom: 2px solid #f6716b;
}

#flights-selector .flight-active td:last-child {
	border-right: 2px solid #f6716b;
}

#flights-selector .step {
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 10px;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	line-height: 14px;
	width: 120px;
	height: 35px;
}

#flights-selector .step-1 {
	text-align: center;
	background: #214f7f;
}

#flights-selector .step-2 {
	display: none;
	background: #cd1b27;
}

#flights-selector .flight-active .step-1 {
	display: none;
}

#flights-selector .flight-active .step-2 {
	display: inline-block;
}

#flights-selector .mob-title {
	width: 50%;
	background: #2d3b54;
	color: #fff;
	margin-right: 10px;
}

.flight-info {
	position: relative;
	z-index: 1;
	cursor: pointer;
	background: var(--midblue);
	color: #fff;
	display: inline-flex;
	border-radius: 3px;
	width: 35px;
	height: 35px;
	align-items: center;
	justify-content: center;
}

/* Hotels */
#hotels-populator .table-container {
	flex: 1 1 auto;
	display: block;
	width: 100%;
	max-height: 450px;
	overflow-y: auto;
}

/*#hotels-populator .table-container:after { display:none;content:"";background:linear-gradient(90deg, rgba(255,255,255,0) 0%, rgba(255,255,255,1) 100%);position:absolute;top:0;right:0;width:50px;height:100%;z-index:1; }*/
#hotels-selector {
	width: 100%;
	margin: 0;
	border-collapse: unset;
}

#hotels-selector th,
#hotels-selector td {
	padding: 15px;
}

#hotels-selector th {
	background: #2d3b54;
	color: #fff;
	text-align: left;
}

#hotels-selector th.text-center {
	text-align: center;
}

#hotels-selector td {
	vertical-align: middle;
	padding: 15px;
	position: relative;
	z-index: 1;
	background: transparent;
	background-clip: padding-box;
}

#hotels-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
}

#hotels-selector tbody {
	background: var(--lightblue);
}

#hotels-selector img {
	width: 50px;
	height: 50px;
	border-radius: 50%;
}

#hotels-selector tbody tr {
	cursor: pointer;
	z-index: 1;
	position: relative;
}

#hotels-selector tbody tr:nth-child(2n) {
	background: #efefef;
}

#hotels-selector .hotel-active {
	display: table-row;
	position: relative;
}

/*#hotels-selector .hotel-active:after { z-index:0;content:"";border:2px solid #cd1b27;position:absolute;width:calc(100% - 4px);height:calc(100% - 4px);top:0;left:0; }*/
#hotels-selector .hotel-active td:first-child {
	border-left: 2px solid #f6716b;
}

#hotels-selector td {
	border-top: 2px solid transparent;
	border-bottom: 0;
}

#hotels-selector .hotel-active td {
	border-top: 2px solid #f6716b;
	border-bottom: 2px solid #f6716b;
}

#hotels-selector .hotel-active td:last-child {
	border-right: 2px solid #f6716b;
}

#hotels-selector tbody tr td:first-child {
	width: 80px;
}

#hotels-selector .step {
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 10px;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	line-height: 14px;
	width: 120px;
	height: 35px;
}

#hotels-selector .step-1 {
	text-align: center;
	background: #214f7f;
}

#hotels-selector .step-2 {
	display: none;
	background: #cd1b27;
}

#hotels-selector .step-loading {
	display: none;
	background: #cd1b27;
}

#hotels-selector .hotel-active .step-1 {
	display: none;
}

#hotels-selector .hotel-active .step-2 {
	display: inline-block;
}

#hotels-selector .hotel-loading .step-1,
#hotels-selector .hotel-loading .step-2 {
	display: none;
}

#hotels-selector .hotel-loading .step-loading {
	display: inline-block;
}

#hotels-selector .far.fa-star {
	display: none;
}

#back-to-hotels {
	display: none;
	margin: 30px 0 0;
	cursor: pointer;
}

#rooms-selector {
	width: 100%;
	margin: 0;
	border-collapse: unset;
}

#rooms-selector th,
#rooms-selector td {
	padding: 15px;
}

#rooms-selector th {
	background: #2d3b54;
	color: #fff;
	text-align: left;
}

#rooms-selector th.text-center {
	text-align: center;
}

#rooms-selector td {
	vertical-align: middle;
	padding: 15px;
	position: relative;
	z-index: 1;
	background: transparent;
}

#rooms-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
}

#rooms-selector tbody {
	background: var(--lightblue);
}

#rooms-selector img {
	width: 50px;
	height: 50px;
	border-radius: 50%;
}

#rooms-selector tbody tr {
	cursor: pointer;
	z-index: 1;
	position: relative;
}

#rooms-selector .room-active {
	display: table-row;
	position: relative;
}

/*#rooms-selector .room-active:after { z-index:0;content:"";border:2px solid #cd1b27;position:absolute;width:calc(100% - 4px);height:calc(100% - 4px);top:0;left:0; }*/
#rooms-selector .room-active td:first-child {
	border-left: 2px solid #f6716b;
}

#rooms-selector td {
	border-top: 2px solid transparent;
	border-bottom: 0;
}

#rooms-selector .room-active td {
	border-top: 2px solid #f6716b;
	border-bottom: 2px solid #f6716b;
}

#rooms-selector .room-active td:last-child {
	border-right: 2px solid #f6716b;
}

#rooms-selector .step {
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 10px;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	line-height: 14px;
	width: 120px;
	height: 35px;
}

#rooms-selector .step-1 {
	text-align: center;
	background: #214f7f;
}

#rooms-selector .step-2 {
	display: none;
	background: #cd1b27;
}

#rooms-selector .step-loading {
	display: none;
	background: #cd1b27;
}

#rooms-selector .room-active .step-1 {
	display: none;
}

#rooms-selector .room-active .step-2 {
	display: inline-block;
}

#rooms-selector .room-loading .step-1,
#rooms-selector .room-loading .step-2 {
	display: none;
}

#rooms-selector .room-loading .step-loading {
	display: inline-block;
}

.hotel-item {
	position: relative;
}

.hotel-active:after {
	z-index: 0;
	content: "";
	border: 2px solid #cd1b27;
	position: absolute;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	top: 0;
	left: 0;
}

.hotel-item .meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.hotel-info {
	position: relative;
	z-index: 1;
	cursor: pointer;
	background: var(--midblue);
	color: #fff;
	display: inline-flex;
	border-radius: 3px;
	width: 35px;
	height: 35px;
	align-items: center;
	justify-content: center;
}

/* Transfers */
section#transfers {}

section#transfers .inner {
	padding-left: 0;
	padding-right: 0;
}

#transfers-populator .table-container {
	position: relative;
	display: block;
	width: 100%;
	max-height: 450px;
	overflow-y: auto;
	padding: 0 4px;
}

#transfers-selector {
	margin: 0;
	width: 100%;
}

#transfers-selector th,
#transfers-selector td {
	padding: 15px;
}

#transfers-selector th {
	color: #fff;
	text-align: left;
}

#transfers-selector th.text-center {
	text-align: center;
}

#transfers-selector td {
	padding: 15px;
	position: relative;
	z-index: 1;
}

#transfers-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
	background: #2d3b54;
}

#transfers-selector tbody tr {
	cursor: pointer;
}

#transfers-selector tbody tr:nth-child(2n) {
	background: #efefef;
}

#transfers-selector .transfer-active {
	display: table-row;
	position: relative;
}

/*#transfers-selector .transfer-active:after { content:"";border:2px solid #f6716b;position:absolute;z-index:0;width:calc(100% - 4px);height:calc(100% - 4px);top:0;left:0; }*/
#transfers-selector .transfer-active td:first-child {
	border-left: 2px solid #f6716b;
}

#transfers-selector td {
	border-top: 2px solid transparent;
	border-bottom: 0;
}

#transfers-selector .transfer-active td {
	border-top: 2px solid #f6716b;
	border-bottom: 2px solid #f6716b;
}

#transfers-selector .transfer-active td:last-child {
	border-right: 2px solid #f6716b;
}

.error-message {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 10000;
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	opacity: 0;
	visibility: hidden;
	transition: all 0.3s;
}

.error-message.open {
	opacity: 1;
	visibility: visible;
}

.error-message .content {
	background: #fff;
	width: 400px;
	text-align: center;
	margin: 0 auto;
}

.error-message h3 {
	position: relative;
	color: #1e4d7d;
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 20px;
	display: flex;
	align-items: center;
	justify-content: center;
}

.error-message h3 i {
	position: absolute;
	right: 20px;
	cursor: pointer;
}

.error-message .error-body {
	margin: 0;
	padding: 0;
}

#discount-form {
	margin: 0 0 30px;
}

#discount-form button {
	height: unset !important;
}

#discount-form button {
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 10px;
	border: 0;
	text-transform: capitalize;
	font-size: 14px;
	line-height: 14px;
	width: 120px;
	height: 35px;
	color: #fff !important;
	cursor: pointer;
	transition: background 0.2s;
}

#discount-form button {
	background: #1e4d7d;
}

#booking-main .input-row.col-2-1 {
	grid-template-columns: 2fr 1fr 1fr;
}

/* Booking Form */
#booking-process {
	margin: 30px 0;
}

#booking-process .inner {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#booking-process .inner #booking-main {
	padding: 0 15px 0 0;
}

#booking-main a {
	color: #1e4d7d;
}

#booking-main a:hover {
	color: #214f7f;
}

#booking-main {
	width: 69%;
}

#booking-main hr {
	margin: 15px 0 50px;
}

#booking-main h1 {
	font-size: 28px;
	font-weight: 700;
	color: #1e4d7d;
	margin: 0 0 30px;
}

#booking-main h1 strong {
	color: #1e4d7d;
}

#booking-main h2 {
	font-size: 28px;
	font-weight: 700;
	color: #1e4d7d;
	margin: 0 0 15px;
}

#booking-main h3 {
	font-size: 18px;
	font-weight: 700;
	color: #1e4d7d;
	margin: 10px 0 0;
}

#booking-main h3 small {
	color: #49515c;
	font-weight: 400;
	font-size: 14px;
	margin-left: 10px;
}

#booking-main .errors {
	display: none;
	border: 1px solid #cd1b27;
	color: #cd1b27;
	margin: 0 0 20px;
	background-color: rgba(227, 59, 39, 0.25);
	padding: 10px;
	border-radius: 4px;
}

#booking-main .errors i {
	color: #cd1b27;
}

#booking-main .passenger-details {
	margin: 0;
}

#booking-main .input-row {
	display: grid;
	grid-column-gap: 10px;
}

#booking-main .input-row.col-1-2-2 {
	grid-template-columns: 0.5fr 1.5fr 2fr;
}

#booking-main .input-row.col-2-2 {
	grid-template-columns: 2fr 2fr;
}

#booking-main .input-row.col-1 {
	grid-template-columns: 1fr;
}

#booking-main .input-row .input {
	margin: 15px 0;
}

#booking-main .input-row label {
	cursor: pointer;
	display: block;
	font-weight: 700;
	color: #1e4d7d;
	margin: 0 0 5px;
}

#booking-main .input-row input,
#booking-main .input-row select,
#booking-main .input-row textarea {
	background: #f0f0f0;
	border: 1px solid #f0f0f0;
	padding: 10px;
	border-radius: 4px;
	font-family: "Open Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue",
		Arial, "Noto Sans", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol",
		"Noto Color Emoji";
	font-size: 16px;
	color: #49515c;
	width: 100%;
	height: 40px;
}

#booking-main .input-row textarea {
	height: 200px;
}

#booking-main .input-row input.error,
#booking-main .input-row select.error {
	border-color: #cd1b27;
	background-color: rgba(227, 59, 39, 0.25);
}

#booking-main label.checkbox,
#booking-main label.radio {
	cursor: pointer;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	margin-top: 10px !important;
}

#booking-main label.checkbox.error,
#booking-main label.radio.error {
	border-left: 4px solid #cd1b27;
	padding-left: 10px;
}

#booking-main label.radio:before {
	content: "\f111";
	font-family: "Font Awesome 5 Free";
	margin-right: 10px;
	font-size: 18px;
	color: #979797;
	transition: color 0.2s;
}

#booking-main label.radio.checked:before {
	content: "\f058";
	font-weight: 700;
	color: #1e4d7d;
}

#booking-main label.checkbox:hover:before,
#booking-main label.radio:hover:before {
	color: #1e4d7d;
}

#booking-main label.checkbox:before {
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	margin-right: 10px;
	font-size: 18px;
	color: #979797;
	transition: color 0.2s;
}

#booking-main label.checkbox.checked:before {
	content: "\f14a";
	font-weight: 700;
	color: #1e4d7d;
}

.input.error:after,
.radio-group.error:after,
label.checkbox.error:after {
	content: attr(data-error-label);
	font-size: 14px;
	font-weight: bold;
	color: #cd1b27;
	padding-left: 10px;
}

#booking-main .booking-condition {
	margin: 0 0 40px;
}

#booking-main .booking-condition label strong {
	color: #1e4d7d;
}

.error-labels {
	display: none;
	margin: 30px 0 0;
	color: #cd1b27;
	font-style: italic;
}

.error-labels li {
	margin: 0 0 5px;
}

#booking-main .buttons {
	margin: 0;
}

#booking-main .buttons .button {
	min-width: 200px;
	display: inline-block;
	margin: 0;
	padding: 15px 30px;
	border: 0;
	text-align: center;
	transition: all 0.3s;
	cursor: pointer;
	font-size: 14px;
	line-height: 14px;
}

#booking-main .buttons .button.previous-button {
	background: #666;
	color: #fff;
}

#booking-main .buttons .button.next-button {
	background: var(--secondary);
	color: #fff;
}

#booking-main .buttons .button.next-button:hover {
	background-color: var(--secondary-darker);
}

#booking-main .buttons .button:first-child {
	margin-right: 20px;
}

#booking-main iframe {
	width: 100%;
	height: 1300px;
}

.complete-summary {
	margin: 0 0 1rem;
}

.complete-summary h4 {
	font-size: 16px;
	text-decoration: underline;
	font-weight: 700;
	margin: 0 0 1rem;
}

.complete-summary p {
	margin: 0;
}

#booking-side {
	width: 35%;
	/* background: #f0f0f0; */
	position: sticky;
	top: 160px;
}

#booking-side h3 {
	color: #1e4d7d;
	font-size: 20px;
	line-height: 24px;
	font-weight: 700;
	padding: 0;
	margin: 0 0 15px;
}

#booking-side > h4 {
	background: #1e4d7d;
	color: #fff;
	font-size: 20px;
	line-height: 24px;
	font-weight: 700;
	padding: 10px 20px;
	margin: 0;
}

#booking-side h5 {
	color: #1e4d7d;
	font-size: 28px;
	line-height: 28px;
	font-weight: 700;
	padding: 0;
	margin: 0 0 15px;
}

#booking-side .content {
	color: #333;
	margin-top: 0;
	padding: 20px;
	background: #f0f0f0;
}

#booking-side hr {
	height: 2px;
	border: 0;
	margin: 20px 0;
	padding: 0;
	background: #cfedf0;
}

#booking-side .content p {
	margin: 0 0 10px;
}

#booking-side p.extra {
	cursor: pointer;
	margin: 0;
}

#booking-side .extra label {
	cursor: pointer;
}

#booking-side .extra label input {
	display: none;
}

#booking-side .extra label:before {
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	font-size: 16px;
	font-weight: 400;
}

#booking-side .extra label.active:before {
	content: "\f14a";
	font-weight: 900;
	color: #ffa200;
}

.booking-condition label.radio input,
.booking-condition label.checkbox input {
	visibility: hidden;
	position: absolute;
}

.white-button {
	display: inline-block;
	height: 49px;
	margin: 0;
	padding: 10px 0;
	font-size: 14px;
	font-weight: bold;
	transition: all 0.3s ease-in;
	text-align: center;
	border-radius: 0px;
	border: 1px solid #1e4d7d;
	color: #1e4d7d;
	background: #fff;
	cursor: pointer;
}

#booking-main .white-button:hover {
	background-color: var(--midblue);
	color: #fff;
}

.pg-big-buttons.gbuttons .light-blue-button {
	margin-bottom: 10px;
}

/* Lightpicker fix under mobile */
div.lightpicker {
	z-index: 999999 !important;
}

/* Responsive */

@media all and (max-width: 1024px) {
	#booking-process .inner {
		flex-direction: column-reverse;
	}

	#booking-main {
		width: 100%;
	}

	#booking-side {
		position: relative;
		top: 0;
		width: 100%;
		margin: 0 0 30px;
	}

	#cruise-cabins-selector,
	#flights-selector,
	#hotels-selector {
		flex-direction: column-reverse;
	}

	#cruise-cabins-selector .deckplan-container {
		width: 100%;
		margin: 40px 0 0 0;
		padding: 0;
	}

	#hotels-selector tbody tr td:first-child {
		width: 100%;
	}
}

@media all and (max-width: 768px) {
	#search-form {
		padding-bottom: 35px;
	}

	.search-form-options {
		position: absolute;
		width: 100%;
		bottom: 50px;
		height: 30px;
	}

	.search-form-submit {
		position: relative;
		top: 28px;
	}

	.search-form-submit_cg {
		top: initial;
	}

	#booking-process .inner {}

	#booking-main {
		width: 100%;
	}

	#booking-main .input-row {
		display: block;
	}

	#booking-main .buttons {
		display: flex;
		flex-direction: column-reverse;
	}

	#booking-main .buttons .button {
		width: 100%;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	#booking-main .buttons .button:first-child {
		margin: 0;
	}

	#booking-main .buttons .button:last-child {
		margin: 0 0 20px;
	}

	#booking-main label.checkbox,
	#booking-main label.radio {
		flex-wrap: nowrap;
		align-items: flex-start;
		margin: 0 0 10px;
	}

	#booking-main iframe {
		height: 1400px;
	}

	#booking-side {}

	#grade-selector-top .flex {
		flex-direction: column;
	}

	#cabin-filters {
		border-right: 0;
		margin: 0 0 30px;
		padding: 0;
	}

	#cabin-filters .flex {
		flex-direction: column;
	}

	.cabin-filter-container label {
		width: 150px;
	}

	.cabin-filter-container select {
		width: 100%;
	}

	#package-bar .inner {
		padding: 0;
	}

	#package-bar ul {
		display: none;
	}

	#package-bar .book {
		width: 100%;
		padding: 15px 0;
	}

	#flights-selector tbody tr {
		padding: 20px;
	}

	#flights-selector tbody td p {
		display: flex;
		align-items: center;
	}

	#flights-selector .mob-title {
		display: block;
	}

	#flights-selector .step {
		width: 100%;
	}

	#cruise-cabins-selector .table-container:after,
	#flights-populator:after,
	#hotels-populator .table-container:after {
		display: block;
	}

	#cruise-cabins-selector .table-container.scrolled:after,
	#flights-populator.scrolled:after,
	#hotels-populator .table-container.scrolled:after {
		display: none;
	}

	#cruise-cabins-selector .mob-label {
		display: block;
		font-weight: 700;
		color: #202020;
	}

	/* #cruise-cabins-selector .dtmg-location { white-space: break-spaces; } */
	#cruise-cabins-selector #cabin-rows .price,
	#cruise-cabins-selector #cabins-table .price {
		font-size: 18px;
		font-weight: 700;
		color: var(--primary);
	}

	table th,
	table td {
		white-space: nowrap;
	}

	.pg-item h1 {
		font-size: 20px;
		line-height: 22px;
	}

	#package-summary p {
		font-size: 14px;
		line-height: 20px;
	}

	.hotel-info-container {
		display: block;
	}

	#flights-filters {
		flex-direction: column;
		margin: 0;
	}

	#flights-filters .airport-filter-item {
		margin-left: 0;
		margin-bottom: 10px;
	}

	/* Cabins Table */
	#grades-table thead,
	#cabins-table thead {
		display: none;
	}

	#cruise-cabins-selector tbody tr,
	#cruise-cabins-selector thead tr {
		display: grid !important;
		grid-template-columns: repeat(12, 1fr);
		margin-bottom: 10px;
	}

	#cruise-cabins-selector tbody tr:not(.grade-active) {
		border: 1px solid #e0e0e0;
		border-radius: 4px;
	}

	#cruise-cabins-selector tbody tr td {
		grid-column: 1 / 13;
		text-align: center;
		border-bottom: none;
		padding: 5px 0;
	}

	#cruise-cabins-selector .table-container::-webkit-scrollbar {
		width: 0.6rem;
		background-color: #e2eaf2;
	}

	#cruise-cabins-selector .table-container::-webkit-scrollbar-thumb {
		background-color: #214f7f;
	}

	#cruise-cabins-selector .dtmg-decks {
		justify-content: center;
	}
}

@media screen and (max-width: 750px) {
	.result-grid .sidebar {
		position: fixed;
		top: 0;
		left: -100%;
		width: 100%;
		height: 100%;
		background: #fff;
		z-index: 9999;
		padding: 20px 20px 60px;
		overflow: scroll;
		transition: left 0.3s;
	}

	.result-grid .sidebar.open,
	.result-grid .sidebar.sidebar-open {
		left: 0;
	}

	.result-grid .sidebar .mobile-close {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	.result-grid .sidebar.open .mobile-close,
	.result-grid .sidebar.sidebar-open .mobile-close {
		left: 0;
	}

	.zopim {
		z-index: 995 !important;
	}

	#back-to-cabins {
		margin: 20px auto;
		text-align: center;
	}

	#fab-filters {
		display: flex;
	}

	#filters .close-button {
		text-decoration: none;
		float: right;
		background: transparent;
		box-shadow: none;
		border: none;
		box-sizing: border-box;
		cursor: pointer;
		position: relative;
		width: 20px;
		height: 20px;
	}

	#filters .close-button:before,
	#filters .close-button:after {
		content: "";
		display: block;
		position: absolute;
		left: 50%;
		top: 50%;
		background-color: #141313;
		width: 100%;
		height: 2px;
		transition: height 0.2s ease-out;
		border-radius: 3px;
	}

	#filters .close-button:before {
		transform: translate(-50%, -50%) rotate(45deg);
	}

	#filters .close-button:after {
		transform: translate(-50%, -50%) rotate(-45deg);
	}

	#filters .close-button:hover:before,
	#filters .close-button:hover:after,
	#filters .close-button:focus:before,
	#filters .close-button:focus:after {
		height: 4px;
	}
}

@media screen and (max-width: 700px) {

	.cabin-info,
	#cabin-filters .flex {
		flex-direction: column;
	}

	.page-number {
		display: none;
	}

	/*#cruise-cabins-selector table th,
	#cruise-cabins-selector table td,
	#cruise-cabins-selector table td,
	#flights-selector thead td,
	#flights-selector tbody td,
	#hotels-selector thead td,
	#hotels-selector tbody td { padding:5px;text-align:center; }

	#cruise-cabins-selector table tr td:first-child { padding:20px 5px 5px; }
	#cruise-cabins-selector table tr td:last-child { padding:5px 5px 20px; }

	#grades-table tr,
	#cabins-table tr,
	#flights-selector tr,
	#hotels-selector tr,
	#flights-selector .flight-active,
	#hotels-selector .hotel-active,
	#cruise-cabins-selector .grade-active,
	#cruise-cabins-selector .cabin-active { display:flex;flex-direction:column; }

	#hotels-selector th,
	#flights-selector th { text-align:center; }

	#hotels-selector th:last-child,
	#flights-selector th:last-child { display:none; }*/

	
	#cruise-cabins-selector .tagspan .only-mobile {
		display: inline-block;
	}

	#cruise-cabins-selector .tagspan:last-of-type .only-mobile {
		display: none;
	}
}


.cruises-tiles {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.cruises-tiles .cruise-item {
	position: relative;
	box-shadow: #c4c4c4 0 0 10px 0px;
	display: flex;
	flex-direction: column;
	transition: all .2s ease-in-out;
}

.cruises-tiles .cruise-item>a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	bottom: 0;
	z-index: 2;
}

.cruises-tiles .cruise-item .image {
	height: 250px;
	overflow: hidden;
}

.cruises-tiles .cruise-item .image img {
	height: 100%;
	object-fit: cover;
	transform: scale(1);
	transition: transform 3s ease-in-out;
}

.cruises-tiles .cruise-item:hover {
	box-shadow: #c4c4c4 0 0 20px 0px;
}

.cruises-tiles .cruise-item:hover .image img {
	transform: scale(1.1);
}

.cruises-tiles .cruise-item .cruise-item-top {
	position: absolute;
	z-index: 2;
	width: 100%;
	text-align: center;
	top: 0;
	left: 0;
	background: rgba(2, 77, 123, .8);
	color: var(--white);
	border-radius: 0 0 25px 25px;
	display: flex;
	flex-direction: column;
}

.cruises-tiles .cruise-item .cruise-item-tag {
	z-index: 3;
	width: 100%;
	text-align: center;
	top: 0;
	left: 0;
	background: rgb(247, 143, 32, .8);
	padding: 5px 10px;
	font-size: 14px;
	font-weight: 700;
	border-radius: 0 0 25px 25px;
}

.cruises-tiles .cruise-item .content {
	padding: 10px 20px;
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 10px;
	flex: 1;
	color: #666;
	font-weight: 600;
}

.cruises-tiles .cruise-item .content p {
	margin-bottom: 0;
}

.cruises-tiles .cruise-item .content img {
	width: auto;
	height: 40px;
	margin: auto;
}

.cruises-tiles .cruise-item .content .cruise-item-title {
	color: #12324f;
	text-align: center;
	font-weight: 600;
	font-size: 24px;
	margin: 0;
}

.cruises-tiles .cruise-item .content .price .value {
	font-size: 22px;
	font-weight: 700;
	color: #ff9900;
}

.cruises-tiles .cruise-item .content .gbuttons {
	grid-template-columns: 1fr;
}

.cruise-tiles .cruise-item .content .cruise-info {
	color: #666;
}

.loader-mobile {
	display: none !important;
}

@media(max-width: 992px) {
	/* .hero-slide img.hero-image,
	.cruise-item img.image-desktop {
		display: none !important;
	}

	.hero-slide img.hero-image-mobile,
	.cruise-item img.image-mobile {
		display: block !important;
	} */

	.loader-mobile:not(.hide) {
		display: block !important;
		position: fixed;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		z-index: 9999;
	}

	.cruises-tiles {
		grid-template-columns: repeat(1, 1fr);
	}

	#block-content .cruises-tiles .cruise-item .content img {
		width: auto;
		height: 40px;
		margin: auto;
	}

	#block-content .cruises-tiles .cruise-item .image img {
		height: 100%;
	}

	.cruises-slider-wrapper .header {
		padding: 15px 0;
	}
}