


/*####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######



##     ## ########    ###    ########  ######## ########
##     ## ##         ## ##   ##     ## ##       ##     ##
##     ## ##        ##   ##  ##     ## ##       ##     ##
######### ######   ##     ## ##     ## ######   ########
##     ## ##       ######### ##     ## ##       ##   ##
##     ## ##       ##     ## ##     ## ##       ##    ##
##     ## ######## ##     ## ########  ######## ##     ##



####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######*/



#cruise-header {  }
#cruise-header .cruise-meta { flex-direction: row; }
	.header-slide {padding: 0; position: relative;}
	.header-slide .fave { position: absolute; top: 0; right: 0; color: var(--white); font-size: 22px; line-height: 22px; cursor: pointer; z-index: 2; padding: 20px; background-color: rgb(255, 255, 255, .3); }
	.header-slide .fave:hover i:before { font-weight: 900; }
	.cruise-slider { width:100%;height:100%; min-height: 260px; max-height: 700px; border-radius:var(--radius); }
	.cruise-slider .swiper-slide { min-height: 260px; }
	.cruise-slider a { display: block; width: 100%; height: 100%; }
	.cruise-slider a img { position: absolute; width: 100%; height: 100%; object-fit: cover;}
		.cruise-slider .swiper-controls { right:20px;bottom:50px; }
			.cruise-slider .swiper-controls .swipe-prev,
			.cruise-slider .swiper-controls .swipe-next { width:40px;height:40px;font-size:16px; }
			.cruise-slider .swiper-controls .swipe-prev { margin-right:10px; }

	.cruise-prices,
	.cruise-meta {  }
	.cruise-meta { border-bottom:2px solid #ececec; }
		.cruise-meta h1 { font-size:32px;line-height:40px;margin:0 0 20px; }
		.cruise-meta ul {  }
			.cruise-meta li { margin:0 0 3px; }
				.cruise-meta li i { color:var(--primary); }

	.cruise-prices { margin:0 0 20px;color:var(--text-lighter);font-size:14px; }
		.cruise-prices h3 small { color:var(--text-lighter);font-weight:400;font-family:Poppins;font-size:14px; }

#page-content .cruise-meta .cruise_alert {
	padding: 0 25px;
	align-items: center;
	display: none;
	text-align: center;
	font: normal normal 600 16px/22px Noto Sans;
	letter-spacing: 0px;
	color: #F1EFE9;
	background: #A31621;
	min-height: 40px;
	line-height: 40px;
	margin-bottom: 30px;
}

#page-content .cruise-meta .cruise_alert.cruise_alert_desktop {
	display: inline-block;
	width: 100%;
}



/*####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######



##     ##    ###    ########
###   ###   ## ##   ##     ##
#### ####  ##   ##  ##     ##
## ### ## ##     ## ########
##     ## ######### ##
##     ## ##     ## ##
##     ## ##     ## ##



####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######*/



#cruise-map { width:100%;height:500px;z-index:1;border-radius:var(--radius); }
#cruise-map .map-marker { font-size:24px;color:var(--primary);position:relative; }

#cruise-map .map-marker:before { content:attr(title);position:absolute;top:-10px;font-size:14px;text-align:center;right:-15px;background-color:#fff;padding:5px;border-radius:50%;width:20px;height:20px;line-height:1;font-weight:700;display:flex;justify-content:center;align-items:center; }

#cruise-map .marker-cluster > div { font-size:14px;text-align:center;background-color:#fff;border:2px solid var(--primary);color:var(--primary);padding:5px;border-radius:50%;width:25px;height:25px;line-height:1;font-weight:700;display:flex;justify-content:center;align-items:center; }

#cruise-map .leaflet-popup-content { font-size:16px; }



/*####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######



 ######     ###    ##     ## ########     ###    ####  ######   ##    ##  ######
##    ##   ## ##   ###   ### ##     ##   ## ##    ##  ##    ##  ###   ## ##    ##
##        ##   ##  #### #### ##     ##  ##   ##   ##  ##        ####  ## ##
##       ##     ## ## ### ## ########  ##     ##  ##  ##   #### ## ## ##  ######
##       ######### ##     ## ##        #########  ##  ##    ##  ##  ####       ##
##    ## ##     ## ##     ## ##        ##     ##  ##  ##    ##  ##   ### ##    ##
 ######  ##     ## ##     ## ##        ##     ## ####  ######   ##    ##  ######



####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######*/



#cruise-campaigns ul { margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr; }
#cruise-campaigns ul li:before { content:"\f00c";color:var(--primary);font-family:"Font Awesome 6 Pro";font-weight:900;margin:0 10px 0 0;font-size:18px; }
#cruise-campaigns ul li { font-family:"Noto Sans";font-weight:600; }

#cruise-campaigns .green-button { font-family:"Noto Sans";font-weight:600; }

@media all and (max-width: 992px) {
	#cruise-campaigns ul { grid-template-columns:1fr; }
}



/*####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######



#### ######## #### ##    ## ######## ########     ###    ########  ##    ##
 ##     ##     ##  ###   ## ##       ##     ##   ## ##   ##     ##  ##  ##
 ##     ##     ##  ####  ## ##       ##     ##  ##   ##  ##     ##   ####
 ##     ##     ##  ## ## ## ######   ########  ##     ## ########     ##
 ##     ##     ##  ##  #### ##       ##   ##   ######### ##   ##      ##
 ##     ##     ##  ##   ### ##       ##    ##  ##     ## ##    ##     ##
####    ##    #### ##    ## ######## ##     ## ##     ## ##     ##    ##



####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######*/



#cruise-itinerary {  }
#itinerary-table { background:#fff; }
	#itinerary-table .itinerary__desc { line-height: 1.6; }
	#itinerary-table .itinerary__desc strong:first-child { line-height: 30px; }
	#itinerary-table .itinerary-desc { color:var(--primary); }
	#itinerary-table .itinerary-desc:hover { text-decoration: underline; }

	@media screen and (max-width: 768px) {
		#itinerary-table {
			height: 520px;
			overflow-x: auto;
		}
	}



/*####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######



 ######  ##     ## #### ########
##    ## ##     ##  ##  ##     ##
##       ##     ##  ##  ##     ##
 ######  #########  ##  ########
      ## ##     ##  ##  ##
##    ## ##     ##  ##  ##
 ######  ##     ## #### ##



####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######*/



.ship-slider { width:100%;height:400px;border-radius:var(--radius); }
	.ship-slider .swiper-controls { right:20px;bottom:20px; }
		.ship-slider .swiper-controls .swipe-prev,
		.ship-slider .swiper-controls .swipe-next { width:40px;height:40px;font-size:16px; }
		.ship-slider .swiper-controls .swipe-prev { margin-right:10px; }

#ship-facilities {  }
	#ship-facilities ul {  }
		#ship-facilities li {  }
			#ship-facilities button { background:#fff;border:1px solid var(--grey);border-top:0; }
			#ship-facilities button.active { border-right:0;color:var(--primary); }
			#ship-facilities button:hover { color:var(--primary); }

	#pan-staterooms ul.staterooms-list-descriptions,
	#ship-facilities ul.staterooms-list-descriptions, .staterooms-list-info { display: flex; flex-direction: column; gap: 16px; max-height: 800px; overflow: auto; }
	#pan-staterooms ul.staterooms-list li:before {
		display: none;
	}
	.single-ships #pan-staterooms ul.staterooms-list-descriptions { overflow: unset; }
		.custom-facilities ul.staterooms-list-descriptions li,
		#pan-staterooms ul.staterooms-list-descriptions li,
		#ship-facilities ul.staterooms-list-descriptions li { gap: 16px; }
		.custom-facilities ul.staterooms-list-descriptions li,
		#pan-staterooms ul.staterooms-list-descriptions li { flex-direction: column; }
			.custom-facilities ul.staterooms-list-descriptions li img,
			#pan-staterooms ul.staterooms-list-descriptions li img, #ship-facilities ul.staterooms-list-descriptions li img { width: 300px; object-fit: cover; margin: 0; }
			#pan-staterooms ul.staterooms-list-descriptions li .right, #ship-facilities ul.staterooms-list-descriptions li .right { padding: 10px 0; }

	#ship-facilities .tab-content { background:#fff; }

	@media(max-width: 992px) {
		.staterooms-list-info { display: flex; flex-direction: column; gap: 16px; max-height: 800px; overflow: auto; }
			.staterooms-list-info li { flex-direction: column; gap: 15px; }
				.staterooms-list-info li img { width: 300px; object-fit: cover; margin: 0 0 auto; }

	}



/*####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######



 ######  ########    ###    ######## ######## ########   #######   #######  ##     ##  ######
##    ##    ##      ## ##      ##    ##       ##     ## ##     ## ##     ## ###   ### ##    ##
##          ##     ##   ##     ##    ##       ##     ## ##     ## ##     ## #### #### ##
 ######     ##    ##     ##    ##    ######   ########  ##     ## ##     ## ## ### ##  ######
      ##    ##    #########    ##    ##       ##   ##   ##     ## ##     ## ##     ##       ##
##    ##    ##    ##     ##    ##    ##       ##    ##  ##     ## ##     ## ##     ## ##    ##
 ######     ##    ##     ##    ##    ######## ##     ##  #######   #######  ##     ##  ######



####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### ####### #######*/



#cruise-staterooms {  }
#cruise-staterooms .staterooms-list .item { max-width: 25%; }
#cruise-staterooms .staterooms-item-wrapper { background-color: var(--off-white); padding-bottom:10px; }

#cruise-staterooms img { width:100%;height:auto;border-radius:var(--radius); }
#cruise-staterooms .image { width:100%;height:270px;background-size:cover;background-position:center center;background-color:rgba(0, 0, 0, 0.5);border-radius:var(--radius); }

#cruise-staterooms .staterooms-desc {  }
	#cruise-staterooms .staterooms-desc .toggle:hover { text-decoration: underline; }
	.itinerary__desc--content .more,
	#cruise-staterooms .staterooms-desc .more { display:none; }
	#cruise-staterooms .staterooms-list.mobile-slick-tease .slick-track { display: flex; align-items: stretch;}
		#cruise-staterooms .staterooms-list.mobile-slick-tease .slick-slide { height: auto;flex:1; }
		#cruise-staterooms .staterooms-list .content__wrapper--stateroom .search-price { margin-top:auto; }

.single-specials #cruise-staterooms .nav-item {
	flex: 1;
}

@media (min-width: 1200px) and (max-width: 1500px) {
	#cruise-staterooms .image {
		height: 190px;
	}
}


.similar-cruises {
	display: grid;
	/* grid-template-columns: repeat(4, 1fr); */
	gap: 16px;
}

.similar-cruises .slick-list,
.similar-cruises .slick-track {
	height: 100%;
}

.similar-cruises .slick-track {
	display: flex;
	margin: 0;
}

.similar-cruises .item {
	min-height: 200px;
	margin: 0 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: auto;
}

.similar-cruises .item a {
	width: 100%;
	padding: 15px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: var(--primary);
}

.similar-cruises .item a:hover {
	background-color: var(--text);
}

.similar-cruises .item.selected {
	background-color: var(--text);
}

.similar-cruises span:not(.small) {
	font-size: 28px;
	font-weight: 500;
	color: #F1EFE9;
}

.similar-cruises span.info {
	font-size: 18px;
}

#cruise-staterooms .staterooms-list .item {
	padding: 0 5px;
}

@media (max-width: 1400px) {
	/* #cruise-staterooms .staterooms-list .item {
		margin: 0;
		padding: 0;
	} */

	.similar-cruises span:not(.small) {
		font-size: 21px;
	}
}

@media (max-width: 992px) {
	#cruise-staterooms .staterooms-desc { display: none; }
	#cruise-staterooms .staterooms-list .item {
		width: 100%;
		margin: 0 10px;
		padding: 0;
		max-width: 100%;
	}

	#page-content .cruise-meta .cruise_alert.cruise_alert_desktop {
		display: none;
	}
}


.itinerary-new-style {
	display: flex;
	gap: 20px;
}

.itinerary-new-style > div {
	flex: 1;
}

.itinerary-new-style #itinerary-table {
	max-height: 500px;
	overflow-y: auto;
	overflow-x: hidden;
}

.itinerary__info i {
	transition: transform .3s ease-in-out;
}

.itinerary__info.open i {
	transform: rotate(180deg);
}

/* .itinerary-new-style #itinerary-table .row {
	cursor: pointer;
} */