/*
==========================================================================
visioncruise.co.uk | iprogress.co.uk 2020
==========================================================================
*/

/*
==========================================================================
	FONTS
==========================================================================
*/

	@font-face {
	    font-family: 'droid_serifbold_italic';
	    src: url('../fonts/DroidSerif-BoldItalic-webfont.eot');
	    src: url('../fonts/DroidSerif-BoldItalic-webfont.eot?#iefix') format('embedded-opentype'),
	         url('../fonts/DroidSerif-BoldItalic-webfont.woff') format('woff'),
	         url('../fonts/DroidSerif-BoldItalic-webfont.ttf') format('truetype'),
	         url('../fonts/DroidSerif-BoldItalic-webfont.svg#droid_serifbold_italic') format('svg');
	    font-weight: normal;
	    font-style: normal;
	}

	@font-face {
	    font-family: 'droid_serifbold';
	    src: url('../fonts/DroidSerif-Bold-webfont.eot');
	    src: url('../fonts/DroidSerif-Bold-webfont.eot?#iefix') format('embedded-opentype'),
	         url('../fonts/DroidSerif-Bold-webfont.woff') format('woff'),
	         url('../fonts/DroidSerif-Bold-webfont.ttf') format('truetype'),
	         url('../fonts/DroidSerif-Bold-webfont.svg#droid_serifbold') format('svg');
	    font-weight: normal;
	    font-style: normal;
	}

	@font-face {
	    font-family: 'droid_serifitalic';
	    src: url('../fonts/DroidSerif-Italic-webfont.eot');
	    src: url('../fonts/DroidSerif-Italic-webfont.eot?#iefix') format('embedded-opentype'),
	         url('../fonts/DroidSerif-Italic-webfont.woff') format('woff'),
	         url('../fonts/DroidSerif-Italic-webfont.ttf') format('truetype'),
	         url('../fonts/DroidSerif-Italic-webfont.svg#droid_serifitalic') format('svg');
	    font-weight: normal;
	    font-style: normal;
	}

	@font-face {
	    font-family: 'droid_serifregular';
	    src: url('../fonts/DroidSerif-Regular-webfont.eot');
	    src: url('../fonts/DroidSerif-Regular-webfont.eot?#iefix') format('embedded-opentype'),
	         url('../fonts/DroidSerif-Regular-webfont.woff') format('woff'),
	         url('../fonts/DroidSerif-Regular-webfont.ttf') format('truetype'),
	         url('../fonts/DroidSerif-Regular-webfont.svg#droid_serifregular') format('svg');
	    font-weight: normal;
	    font-style: normal;
	}

	.undertitle { font-family:'droid_serifitalic'; }
		.undertitle strong { font-weight:normal; }

	body.single-cruises .anchor-scroll { padding-top:180px;margin-top:-180px; }


/*
==========================================================================
	GLOBAL
==========================================================================
*/

	#wpadminbar { opacity:0;transition:opacity .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; }

/* 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;padding:10px 20px; }

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: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 { background:center center / cover no-repeat; }

	.offer-slider .cs-item .overlay { display:flex;align-items:center;justify-content:center; }
	.offer-slider .cs-item img { transition:transform .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:#f90; }*/
	.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; }

	.footer-item .social {
		display: flex;
		justify-content: space-between;
		align-items: center;
	}
	.footer-item .social a {
		font-size: 15px;
	}
	.footer-item h3 {
		color: #fff;
	}
	.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:#f90; }

#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;
}


/*
==========================================================================
	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:#024d7b;color:#fff;font-size:16px;margin:0 !important;padding:10px;position:relative;margin:0;transition:background .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 .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 .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%; }

		/* 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 .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 .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:#f90; }

	.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:#f90; }
		.sticky .contents-cta p { height:auto;padding:5px 0;background:#f90;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:#f90; }

	#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:#f90;margin-right:10px; }
	.call-now-cta a { color:#fff; }
		.call-now-cta a:hover { color:#f90; }

.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 .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 .5s; }
			.cabin-select.show-rooms { left:-100%; }

		.back-to-cabins { background:#cd1b27;color:#fff; }
		.rooms-select { display:inline-block;position:absolute;width:100%;left:100%;transition:all .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:#f90; }

.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:#f90;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 .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 .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; }
	#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%;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 .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; }
			#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; }

/*
==========================================================================
	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.90);justify-content:center;align-items:center; }
			#search form { position:relative;top:50px; }
			#search input { padding:20px;border:0px;width:500px;color:#000;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 .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 .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 .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 .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:#f90;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:#f90; }
			.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:#f90; }
			.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; }

	.drp-selected:before { content:"Depart between "; }

	.drp-buttons button {
		background: #f90;
		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 { 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 select option[value="best_value ASC"],
	#search_sorting select option[value="most_popular DESC"] { display: none !important; visibility: hidden; opacity: 0;}
	#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_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:#f90; }
			#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']::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 .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; }

	.search-results .loading { min-height:500px;text-align:center;font-size:18px;color:#133c5c; }
	.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 .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:18px; }

		.toggler { margin-bottom:10px; }
		.mobsorter { background:#3289c5; }

	.pg-big-buttons.gbuttons { margin-top:30px;grid-template-columns:1fr; }
	.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:#214f7f;border-color:#214f7f; }
	.pg-big-buttons.gbuttons .light-blue-button:hover { background:#214f7f;border-color:#214f7f; }

	.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 .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-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) {
		.padder { height:72px; }

		/* 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 {
			margin-top:42px;
		}
		.search-bar.closed { height:26px;overflow:hidden; }
		#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:25px;
}
#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;
}
#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; }

		#search_sorting .pagination { flex-direction: column; gap: 10px; }
		#search_sorting .pagination > div { width: 100%; }
		#search_sorting .pagination-right { width: 100%; }
		/* .pagination-right { display:none; } */

		.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; }
	}



/* 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; }"\f0d7"
		#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:6px;border-bottom-left-radius:6px; }
				#lead-in-prices div:last-child { margin-right:0;border-top-right-radius:6px;border-bottom-right-radius:6px; }
				#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:#f90; }

		.farecode-description strong { color:#f90; }

	#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; }

	#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:#000;border-radius:6px;white-space:nowrap;font-size:12px;font-weight:700;transition:opacity .2s; }

	/* Cruise Cabins */
		.mob-title { display:none; }
		#cabin-selector > p { text-align:center; }
		#cruise-cabins-selector {  }
			#cruise-cabins-selector .deckplan-container { flex:1 0 auto;width:300px;height:450px;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:450px;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.is-package { font-weight:700; }
				#cruise-cabins-selector thead tr { position:sticky;top:0;z-index:2;background:#2d3b54; }

				#cruise-cabins-selector tbody tr { cursor:pointer; }
					#cruise-cabins-selector tbody tr: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 .tagspan { opacity:.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 .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;border-radius:3px;text-transform:uppercase;font-weight:700;font-size:14px;line-height:14px;width:135px;height:35px; }
			#cruise-cabins-selector .step-1 { text-align:center;background:#1e4d7d; }
			#cruise-cabins-selector .step-2 { display:none;background:#cd1b27; }
			#cruise-cabins-selector .step-loading { display:none;background:#cd1b27; }

			#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 #cd1b27;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); }

		.cabin-info { display:flex;align-items:flex-start; }
			.cabin-image { height:250px;margin-right:20px; }
				.cabin-image img { width:100%;height:auto;max-height:250px; }
			.cabin-description {  }

		.deckplan-container { position:relative; }
			.deckplan-container img { position:absolute;top:0;left:0; }
			.deckplan-container .svg { position:absolute;z-index:2;width:100%;height:100%; }
				.deckplan-container .svg .rect { cursor:pointer;position:absolute;z-index:3;border:5px solid #cd1b27;opacity:1;transition:opacity 1.5s;animation:cabin-highlighter 1.5s infinite; }
				.deckplan-container .svg .rect.additional { border-color:#ffa200; }

		#back-to-cabins { display:none;margin:20px 0 0 315px; }
			#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;backgru }
					#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 .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; }


					/* Booking Form */
					#booking-process { margin:30px 0; }
			#booking-process .inner { display:flex;align-items:flex-start;justify-content:space-between; }
				#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%; }

							#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 }

							#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 .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 .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:#1e4d7d;color:#fff; }
						#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:29%;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; }
							#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 {
						cursor: pointer;
						    background: #fff;
						    padding: 12px 24px;
						    color: #1e4d7d;
						    border-radius: 6px;
						    border: 1px solid #1e4d7d;
						    text-transform: uppercase;
						    font-weight: 700;
						    font-size: 14px;
						    display: inline-block;
						    margin: 10px 0;
						    transition: all 0.3s ease-in;
						    text-align: center;
						    line-height: 14px;
					}
					#booking-main .white-button:hover {
						background-color: var(--midblue);
						color: #fff;
					}


/* 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) {
		#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; }
						#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; }

		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; }
	}

	@media screen and (max-width: 750px) {
		.result-grid .sidebar { position:fixed;top:0;left:-100%;width:100%;height:100%;background:#fff;z-index:9994;padding:20px 20px 60px;overflow:scroll;transition:left .3s; }
			.result-grid .sidebar.open { left:0; }
				.result-grid .sidebar .mobile-close { display:flex;justify-content:space-between;align-items:center; }
				.result-grid .sidebar.open .mobile-close { left:0; }
				.zopim {
					z-index: 995!important;
				}
				#back-to-cabins {
					margin: 20px auto;
					text-align: center;
				}


		#fab-filters { display:flex; }
	}

	@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; }*/
	}