/* cruiseappy.com */

#wpadminbar {
	opacity: 0;
	transition: opacity .3s;
	transition-delay: 1s;
}

#wpadminbar:hover {
	opacity: 1;
	transition-delay: 0s;
}

/* Global */
.inner {
	padding: 0 24px;
}

.text-left {
	text-align: left;
}

.text-right {
	text-align: right;
}

.text-center {
	text-align: center;
}

.float-left {
	float: left;
	margin: 0 20px 20px 0;
}

.float-right {
	float: right;
	margin: 0 0 20px 20px;
}

.text-red {
	color: var(--red);
}

a {
	transition: all .3s;
}

a:hover {
	text-decoration: none;
}

.fade {
	opacity: 0;
	visibility: hidden;
	transition: all .3s;
}

.fade.show {
	opacity: 1;
	visibility: visible;
	transition: all .3s;
}

button {
	border: 0;
	cursor: pointer;
}

input:focus,
textarea:focus {
	outline: none;
}

.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;
}

.scroll-style::-webkit-scrollbar {
	width: 8px;
	height: 6px;
	background-color: #cccccc;
	border-radius: 12px;
}

.scroll-style::-webkit-scrollbar-track {
	border-radius: 20px;
	background-color: #cccccc;
}

.scroll-style::-webkit-scrollbar-thumb {
	border-radius: 20px;
	background-color: #666666;
}

.book-now-button {
	width: 100%;
	height: 100%;
	max-height: 40px;
	background-color: #0072ea;
	color: var(--white);
	border-radius: 10px;
}

.book-now-button:hover {
	background-color: #2787ed;
}

.tabs a {
	background-color: white;
	color: black;
	border-bottom: 1px solid #e2e2e2;
	border-right: 1px solid #e2e2e2;
}

.tabs .active {
	background-color: white;
	color: black;
	border-right: none;
}

.tabs a:hover {
	background-color: #e2e2e2;
	color: black;
}

.fa-map-marker-alt:before {
	color: black;
}

.fav {
	font-family: "Font Awesome 5 Pro";
	font-style: inherit;
	min-width: 10px;
}

i {
	min-width: 10px;
}

/* Margin / Padding */
.m-0 {
	margin: 0;
}

.m-1 {
	margin: 5px;
}

.m-2 {
	margin: 10px;
}

.m-3 {
	margin: 15px;
}

.m-4 {
	margin: 20px;
}

.mt-0 {
	margin-top: 0;
}

.mt-1 {
	margin-top: 5px;
}

.mt-2 {
	margin-top: 10px;
}

.mt-3 {
	margin-top: 15px;
}

.mt-4 {
	margin-top: 20px;
}

.mr-0 {
	margin-right: 0;
}

.mr-1 {
	margin-right: 5px;
}

.mr-2 {
	margin-right: 10px;
}

.mr-3 {
	margin-right: 15px;
}

.mr-4 {
	margin-right: 20px;
}

.mb-0 {
	margin-bottom: 0;
}

.mb-1 {
	margin-bottom: 5px;
}

.mb-2 {
	margin-bottom: 10px;
}

.mb-3 {
	margin-bottom: 15px;
}

.mb-4 {
	margin-bottom: 20px;
}

.ml-0 {
	margin-left: 0;
}

.ml-1 {
	margin-left: 5px;
}

.ml-2 {
	margin-left: 10px;
}

.ml-3 {
	margin-left: 15px;
}

.ml-4 {
	margin-left: 20px;
}

.p-0 {
	padding: 0;
}

.p-1 {
	padding: 5px;
}

.p-2 {
	padding: 10px;
}

.p-3 {
	padding: 15px;
}

.p-4 {
	padding: 20px;
}

.pt-0 {
	padding-top: 0;
}

.pt-1 {
	padding-top: 5px;
}

.pt-2 {
	padding-top: 10px;
}

.pt-3 {
	padding-top: 15px;
}

.pt-4 {
	padding-top: 20px;
}

.pr-0 {
	padding-right: 0;
}

.pr-1 {
	padding-right: 5px;
}

.pr-2 {
	padding-right: 10px;
}

.pr-3 {
	padding-right: 15px;
}

.pr-4 {
	padding-right: 20px;
}

.pb-0 {
	padding-bottom: 0;
}

.pb-1 {
	padding-bottom: 5px;
}

.pb-2 {
	padding-bottom: 10px;
}

.pb-3 {
	padding-bottom: 15px;
}

.pb-4 {
	padding-bottom: 20px;
}

.pl-0 {
	padding-left: 0;
}

.pl-1 {
	padding-left: 5px;
}

.pl-2 {
	padding-left: 10px;
}

.pl-3 {
	padding-left: 15px;
}

.pl-4 {
	padding-left: 20px;
}

/* Flex */
.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-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-grow: 1;
}

/* Misc */
.p-relative {
	position: relative;
}

.z-1 {
	z-index: 1;
}

.text-white {
	color: #fff;
}

/* Transitions */
@-webkit-keyframes cabin-highlighter {
	0% {
		opacity: 0;
	}

	50% {
		opacity: 1;
	}

	100% {
		opacity: 0;
	}
}

/* Main */
body {
	font-family: 'Roboto', Arial, Helvetica, sans-serif;
}

.home section.white-split-section {
	margin-bottom: 0;
}

#container {}

/* Header */
#header-container {
	position: sticky;
	top: 0;
	z-index: 100;
	padding: 20px 0 15px;
	background: var(--fc-red);
}

#header-container .menu {
	list-style-type: none;
	padding: 0;
}

#header-container .inner {
	gap: 40px;
}

#header-container .menu li {
	position: relative;
	padding: 5px 10px 5px 10px;
}

#header-container .menu li a {
	white-space: nowrap;
}

#header-container .menu li ul {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
}

#header-container .menu li:hover>ul {
	display: block;
}

#menu-navigation .current_page_item {
	border-radius: 12px;
}

header {
	box-shadow: none;
	padding: 0;
	background: var(--fc-red);
}

header p {
	margin: 0;
}

#header-logo {
	flex: 1 1 auto;
}

#header-logo img {
	max-width: 100%;
	height: auto;
}

#header-logo .logo-mobile {
	display: none;
}

#header-meta {
	flex: 1;
	font-weight: 700;
	font-size: 14px;
}

#header-meta a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	margin-right: 10px;
	font-size: 16px;
	font-weight: 400;
}

#header-meta span #header-meta span {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 26px;
	height: 26px;
	background: var(--white);
	border-radius: 50%;
	color: #fff;
	font-size: 12px;
	transition: background-color .3s;
}

.fas {
	color: white;
}

a {
	color: white;
}

a:hover {
	color: white;
}

#header-meta span.desktop {
	display: inline;
	width: unset;
	height: unset;
	background: unset;
	border-radius: 0;
	color: unset;
	font-size: unset;
}

#header-meta a:hover span.desktop {
	background: unset;
}

.header-item {
	margin-right: 10px;
}

.header-item img {
	max-width: 100px;
	height: auto;
	display: block;
}

#mobile-navigation-control {
	display: none;
	cursor: pointer;
	text-transform: uppercase;
}

#menu-header-menu-2 {
	display: flex;
	align-items: center;
}

#menu-header-menu-2>li {
	padding: 10px;
}

#menu-header-menu-2>li {
	cursor: pointer;
}

#menu-header-menu-2>li:hover {
	background-color: var(--fc-red-hover);
	border-radius: 12px;
}

#menu-header-menu-2>li .sub-menu {
	transition: all .3s;
	transition-delay: .3s;
}

#menu-header-menu-2>li:first-child>a:after {
	content: "\f107";
	font-family: "Font Awesome 5 Free";
	margin-left: 15px;
	font-weight: 600;
}

#menu-header-menu-2>li:first-child>ul {
	background-color: var(--white);
	border-radius: 12px;
	transition: all .3s;
	transition-delay: .3s;
	min-width: 250%;
	box-shadow: 0px 3px 6px #00000040;
}

#menu-header-menu-2>li:first-child>ul>li>a {
	color: var(--fc-dark-grey);
	font-weight: 500;
}

#menu-header-menu-2>li>ul>li>a:hover {
	color: var(--red);
}

.inner-header {
	display: flex;
}

/* Navigation */
nav {
	background: var(--fc-red);
}

nav ul {
	display: flex;
	align-items: center;
}

nav ul li {
	padding: 0;
}

nav ul li a {
	color: var(--white);
}

/* Main */
nav>.inner>ul {
	display: flex;
	align-items: center;
	justify-content: flex-start;
}

nav>.inner>ul>li {}

nav>.inner>ul>li>a {
	display: block;
	padding: 10px;
	color: var(--white);
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0.;
}

nav>.inner>ul>li>a::before {
	font-weight: 600;
}

nav>.inner>ul>li:hover>a {
	color: var(--lightblue);
}

#menu-navigation li a::before {
	content: "";
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	font-size: 15px;
}

#mobile-navigation .menu-item.menu-item-33524,
#menu-navigation .menu-item.menu-item-33524 {
	display: flex;
	align-items: center;
}

#mobile-navigation .menu-item.menu-item-33524::before,
#menu-navigation .menu-item.menu-item-33524::before {
	content: "\f072";
	height: 22px;
	font-size: 12px;
	font-weight: 600;
	position: relative;
	rotate: -45deg;
	z-index: 1;
	font-family: "FontAwesome";
	color: var(--white);
	top: -5px;
	left: 15px;
}

#mobile-navigation .menu-item.menu-item-33524::before {
	color: var(--fc-dark-grey);
	left: 0;
	top: -3;
	position: absolute;
}

#mobile-navigation .menu-item.menu-item-33524 a::before,
#menu-navigation .menu-item.menu-item-33524 a::before {
	content: "\f236";
	height: 0;
	margin-right: 5px;
	font-size: 12px;
}

#mobile-navigation .menu-item.menu-item-33524 a::before {
	left: 3px;
	position: relative;
}

#mobile-navigation .menu-item.menu-item-33522 a::before,
#menu-navigation .menu-item.menu-item-33522 a::before {
	content: "\f072";
	rotate: -45deg;
	position: relative;
	top: -2px;
}

#mobile-navigation .menu-item.menu-item-33522 a::before {
	left: 5px;
}

#mobile-navigation .menu-item.menu-item-33523 a::before,
#menu-navigation .menu-item.menu-item-33523 a::before {
	content: "\f5ca";
}

#mobile-navigation .menu-item.menu-item-33525 a::before,
#menu-navigation .menu-item.menu-item-33525 a::before {
	content: "\f236";
}

#mobile-navigation .menu-item.menu-item-33526 a::before,
#menu-navigation .menu-item.menu-item-33526 a::before {
	content: "\f1b9";
}

#mobile-navigation .menu-item.menu-item-33527 a::before,
#menu-navigation .menu-item.menu-item-33527 a::before {
	content: "\f21a";
}

#mobile-navigation .menu-item.menu-item-33528 a::before,
#menu-navigation .menu-item.menu-item-33528 a::before {
	content: "\f02b";
}

#mobile-navigation .menu-item.menu-item-33610 a::before,
#menu-navigation .menu-item.menu-item-33610 a::before {
	content: "\f21a";
}

#mobile-navigation .menu-item.menu-item-33529 a::before,
#menu-navigation .menu-item.menu-item-33529 a::before {
	content: none;
}

#mobile-navigation .menu-item.menu-item-has-children>a::after,
#menu-navigation .menu-item.menu-item-has-children>a::after {
	content: "\f107";
	font-family: "FontAwesome";
	margin: 0 0 0 5px;
}



#menu-navigation>li:hover {
	background-color: var(--fc-red-hover);
	border-radius: 12px;
}

/* Arrows */
nav>.inner>ul>li.menu-item-has-children>a:after {}

nav>.inner>ul>li.menu-item-has-children>.sub-menu>li.menu-item-has-children>a:after {
	content: "\f105";
	font-family: "Font Awesome 5 Free";
	position: absolute;
	right: 10px;
}

/* 1st Level Sub Menu */
nav>.inner>ul>li>.sub-menu {
	opacity: 0;
	display: none;
	position: absolute;
	min-width: 200px;
	background: var(--white);
	transition: all .3s;
	transition-delay: .3s;
	border-radius: 20px;
	min-width: 30% !important;
	box-shadow: 0px 3px 6px #00000040;
}

nav>.inner>ul>li.menu-item-has-children:hover>.sub-menu {
	opacity: 1;
	display: block;
	transition-delay: 0s;
	background-color: white
}

nav>.inner>ul>li>.sub-menu>li {
	position: relative;
}

nav>.inner>ul>li>.sub-menu>li>a {
	display: block;
	padding: 10px;
	color: black;
	font-weight: 500;
}

nav>.inner>ul>li>.sub-menu>li:hover>a {
	color: var(--red);
}

/* 2nd Level Sub Menu */
nav>.inner>ul>li>.sub-menu>li>.sub-menu {
	opacity: 0;
	visibility: hidden;
	position: absolute;
	left: 200px;
	top: 0;
	min-width: 200px;
	background: var(--blue);
	transition: all .3s;
	transition-delay: .3s;
}

nav>.inner>ul>li.menu-item-has-children:hover>.sub-menu>li.menu-item-has-children:hover>.sub-menu {
	opacity: 1;
	visibility: visible;
	transition-delay: 0s;
}

nav>.inner>ul>li>.sub-menu>li>.sub-menu>li>a {
	display: block;
	padding: 10px;
	color: #fff;
}

nav>.inner>ul>li>.sub-menu>li:hover>.sub-menu>li:hover>a {
	color: var(--lightblue);
}

/* Mobile Navigation */
#mobile-background nav {
	background: var(--white);
}

#mobile-background {
	padding: 0 10% 0 0;
	position: absolute;
	z-index: 100000;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100%;
	background: rgba(0, 0, 0, 0.75);
	opacity: 0;
	display: none;
	transition: all 0.3s;
}

#mobile-background nav {
	padding: 0 24px;
	background: var(--white);
	border-bottom: 1px solid var(--fc-light-grey);
}

#mobile-background .mobile-stores {
	padding: 0 24px;
	border-bottom: 1px solid var(--fc-light-grey);
}

#mobile-background .mobile-stores a {
	margin: 15px 0;
}

#mobile-background.mobile-nav-open {
	opacity: 1;
	display: block;
}

#mobile-navigation {
	position: relative;
	top: 0;
	height: 100%;
	min-width: 300px;
	left: 0;
	width: 100%;
	max-width: 550px;
	background: white;
	overflow-y: auto;
	transition: right .4s;
	text-transform: capitalize;
}

#mobile-navigation .close:has(i.fa-solid.fa-xmark) {
	padding: 20px 24px 0;
}

#mobile-navigation li {
	margin: 15px 0;
}

#mobile-navigation .meta {
	margin: 20px 20px 0 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

#mobile-navigation .meta img {
	height: 20px;
	width: auto;
}

#mobile-navigation .meta i {
	color: #fff;
	padding: 10px;
	margin: -10px;
	cursor: pointer;
}

#mobile-navigation.mobile-nav-open {
	left: 0;
}

#mobile-navigation ul {
	display: block;
	margin: 0;
	list-style: none;
	font: 15px 'Gotham', Helvetica, Arial, sans-serif;
}

#mobile-navigation li {
	display: block;
	position: relative;
}

#mobile-navigation .menu-item.menu-item-has-children a {
	display: flex;
	justify-content: space-between;
}

#mobile-navigation .menu-item a::before {
	content: "";
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	font-size: 15px;
}

#mobile-navigation .menu-item.menu-item-33522 a::before {
	content: "\f072";
	rotate: -45deg;
	font-family: 'FontAwesome';
}

#mobile-navigation ul .sub-menu {
	display: none;
	padding: 0 15px;
}

#mobile-navigation ul .sub-menu.active {
	display: block;
}

#mobile-navigation .current-menu-parent ul .sub-menu {
	display: block;
}

#mobile-navigation a {
	display: block;
	color: black;
	opacity: 1;
	font-weight: 700;
	transition: opacity var(--speed);
}

#mobile-navigation a:hover,
#mobile-navigation .current-menu-item>a,
#mobile-navigation .current-menu-parent>a {
	color: black;
}

#mobile-navigation .sub-menu-control {
	cursor: pointer;
	position: absolute;
	z-index: 1;
	top: 11px;
	right: 10px;
	color: #fff;
	padding: 10px;
	margin: -10px;
}

#mobile-navigation #menu-header-menu-3 {}

#mobile-navigation #menu-header-menu-3 a::before {
	content: none;
}

/* Navigation Short */
#nav-short {
	padding: 0 0 10px;
	display: none;
	background: var(--fc-red);
	position: sticky;
	top: 76px;
	z-index: 10;
}

#menu-navigation-short {}

#menu-navigation-short li {
	margin: 0 8px 0 0;
	padding: 10px;
	font-weight: 400;
	border-radius: 12px;
}

#menu-navigation-short li:hover {
	background-color: var(--fc-red-hover);
	border-radius: 12px;
}

#menu-navigation-short a {
	white-space: nowrap;
}

#menu-navigation-short li a::before {
	content: "";
	font-family: "Font Awesome 5 Free";
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 5px;
	font-size: 15px;
	font-weight: 600
}

#menu-navigation-short #menu-item-43692 a::before {
	content: "\f236";
}

#menu-navigation-short #menu-item-43699 a::before {
	content: "\f55e";
}

#menu-navigation-short #menu-item-43704 a::before {
	content: "\f21a";
}

#menu-navigation-short #menu-item-43710 a::before {
	content: "\f02b";
}

/* Header Search */
#header-search {
	padding: 20px;
	background: var(--blue);
}

/* Favourites */
[data-favourites-count] {
	position: relative;
}

[data-favourites-count]:after {
	content: attr(data-favourites-count);
	position: absolute;
	top: -5px;
	right: -5px;
	border-radius: 50%;
	width: 15px;
	height: 15px;
	background: var(--orange);
	color: #fff;
	font-size: 10px;
	font-weight: 700;
	display: flex;
	align-items: center;
	justify-content: center;
}

/* Content */
#content {
	height: 1000px;
}

article {}

aside {}

.main-column.no-sidebar,
.main-column {
	width: 100%;
	float: none;
}

/* Nice Select */
.nice-select {
	float: none;
}

.nice-select .list {
	width: 100%;
	background: #fff;
}

/* Content Columns */
.content-row {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	margin: 20px 0;
}

.content-row>br,
.content-row~br {
	display: none;
}

.content-col {
	flex: 1;
	padding: 10px;
	margin: 0 10px;
}

.content-row .content-col:first-child {
	margin-left: 0;
}

.content-row .content-col:last-child {
	margin-right: 0;
}

/* Content Builder */
.blue-section {
	margin: 0;
}

.padding-top-0 {
	padding-top: 0;
}

.padding-top-5 {
	padding-top: 5px;
}

.padding-top-10 {
	padding-top: 10px;
}

.padding-top-20 {
	padding-top: 20px;
}

.padding-bottom-0 {
	padding-bottom: 0;
}

.padding-bottom-5 {
	padding-bottom: 5px;
}

.padding-bottom-10 {
	padding-bottom: 10px;
}

.padding-bottom-20 {
	padding-bottom: 20px;
}

/* Full Width Slider */
.hero {}

.hero .slide {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	display: flex;
	align-items: center;
	justify-content: center;
}

.hero .slider-inner {
	margin: 0;
}

.hero-inner {
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

/* Newsletter */
.newsletter-block.blue-form {
	margin: 0 auto;
}

.newsletter-block .bf-grid {
	grid-column-gap: 0;
}

.newsletter-block .bf-grid .bf-item:first-child {
	display: flex;
	align-items: center;
	text-align: right;
}

.newsletter-block .frm_forms {}

.newsletter-block .frm_forms .frm_screen_reader,
.newsletter-block .frm_forms .frm_primary_label,
.newsletter-block .frm_forms .frm_verify {
	display: none;
}

.newsletter-block .frm_forms .frm_fields_container {
	display: flex;
	align-items: flex-start;
	justify-content: flex-end;
}

.newsletter-block .frm_forms .frm_form_field input {
	height: 50px;
	outline: 0;
	border: 0;
	padding: 0 10px;
	color: var(--text);
	font: normal normal 16px/16px 'Lato', Helvetica, Arial, sans-serif;
}

.newsletter-block .frm_forms .frm_form_field.first-item input {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.newsletter-block .frm_forms .frm_form_field.last-item {
	margin: 0 2px;
}

.newsletter-block .frm_forms .frm_form_field .frm_error {
	position: absolute;
	color: var(--orange);
	font-size: 12px;
	font-weight: 600;
}

.newsletter-block .frm_forms .frm_submit button {
	height: 50px;
	background: var(--orange);
	padding: 10px 30px;
	border: 0;
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	font-size: 15px;
	font-weight: 600;
	text-transform: uppercase;
	color: #fff;
	cursor: pointer;
	transition: background .3s;
}

.newsletter-block .frm_forms .frm_submit button:hover {
	background: var(--grey);
}

/* Icon Blocks */
.icon-blocks {}

.icon-block {
	flex: 1;
	text-align: center;
}

.icon-block i {
	font-size: 26px;
}

.icon-block p {
	margin: 5px 0 0;
}

.cruise-item {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 200px;
}

/* CTA Blocks */
.cta-blocks {
	display: flex;
	margin: 20px 0;
}

.cta-block {
	position: relative;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	width: 100%;
	height: 300px;
	margin: 0 10px;
	display: block;
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.1);
	cursor: pointer;
	-webkit-transition: opacity 0.35s;
	transition: opacity 0.35s;
}

.cta-block:hover {
	transition: all 0.3s ease-in-out;
	box-shadow: 0px 5px 5px 0px rgba(0, 0, 0, 0.3);
	-webkit-transition: opacity 0.35s;
	transition: opacity 0.35s;
}

.cta-block:hover:before {
	content: "";
	background: rgba(0, 0, 0, 0.5);
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
	right: 0;
	bottom: 0;
	position: absolute;
	-webkit-transition: opacity 0.35s;
	transition: opacity 0.35s;
}

.cta-block figure figcaption,
.cta-block figure figcaption>a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

.cta-block figcaption::before,
.cta-block figcaption::after {
	position: absolute;
	top: 10px;
	right: 10px;
	bottom: 10px;
	left: 10px;
	content: '';
	opacity: 0;
	-webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
	transition: opacity 0.35s, transform 0.35s;
}

.cta-block figcaption::before {
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
}

.cta-block figcaption::after {
	border-right: 1px solid #fff;
	border-left: 1px solid #fff;
	-webkit-transform: scale(1, 0);
	transform: scale(1, 0);
}

.cta-block:hover figcaption::before,
.cta-block:hover figcaption::after {
	opacity: 1;
	-webkit-transform: scale(1);
	transform: scale(1);
}

.cta-block .photo-title {
	padding: 0 20px;
}

.cta-block a {
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	font: 30px 'Lato', Helvetica, Arial, sans-serif;
	right: 0;
	text-align: center;
	color: var(--white);
}

.cta-block p {
	margin: 10px 0;
	font-size: 16px;
	font-family: 'Lato', Helvetica, Arial, sans-serif;
}

/* Cruise Slider */
.hot-slider .slick-track {
	display: flex !important;
}

.hot-slider .slick-slide {
	height: inherit !important;
}

.hot-slider .slick-list {
	padding-bottom: 10px;
}

.hot-slider .slick-prev {
	left: -15px;
}

.hot-slider .slick-next {
	right: -15px;
}

.slick-dotted.slick-slider {
	overflow: hidden;
}

/* Inline Content */
.accordion {
	margin: 0 0 30px;
}

.accordion-item {
	margin: 0 auto 10px;
}

.accordion-item h3 {
	cursor: pointer;
	background: var(--blue);
	color: #fff;
	font-size: 16px;
	margin: 0 !important;
	padding: 15px;
	position: relative;
	margin: 0;
	transition: background-color .1s;
}

.accordion-item h3.open,
.accordion-item h3:hover {
	background: var(--orange);
}

.accordion-item .accordion-content {
	background: var(--lightblue);
	display: none;
	padding: 10px;
}

.accordion-item .accordion-content p:last-child {
	margin-bottom: 0;
}

.feature-block {
	height: 377px;
	margin: 0 0 30px;
}

.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;
}

.wp-caption {
	width: 100% !important;
	position: relative;
	margin: 0 0 30px;
}

.wp-caption img {
	display: block;
	max-width: 100% !important;
	height: auto;
}

.wp-caption-text {
	font-size: 14px;
	position: absolute;
	bottom: 0;
	left: 0;
	margin: 0;
	padding: 5px 15px;
	background: rgba(0, 0, 0, 0.5);
	color: #fff;
}

.gallery {
	margin: 0 0 30px;
	text-align: center;
	width: 100%;
}

.gallery .gallery-item {
	margin: 0;
	overflow: hidden;
	position: relative;
}

.gallery.columns-1 .gallery-item {
	width: 100%;
	margin: 0;
}

.gallery.columns-2 .gallery-item {
	width: 50%;
	margin: 0;
}

.gallery.columns-3 .gallery-item {
	width: 33%;
	margin: 0;
}

.gallery.columns-4 .gallery-item {
	width: 25%;
	margin: 0;
}

.gallery.columns-5 .gallery-item {
	width: 20%;
	margin: 0;
}

.gallery.columns-6 .gallery-item {
	width: 16%;
	margin: 0;
}

.gallery.columns-7 .gallery-item {
	width: 14%;
	margin: 0;
}

.gallery.columns-8 .gallery-item {
	width: 12%;
	margin: 0;
}

.gallery.columns-9 .gallery-item {
	width: 11%;
	margin: 0;
}

.gallery .gallery-item a {
	position: relative;
	display: block;
	margin: 5px;
}

.gallery .gallery-item img {
	width: 100%;
	max-width: 100%;
	height: auto;
	display: block;
	transition: opacity .1s;
}

.gallery .gallery-item br {
	display: none;
}

.gallery .gallery-item .zoom {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .5);
	color: #fff;
	opacity: 0;
	transition: opacity .1s;
}

.gallery .gallery-item .zoom i {
	transform: scale(2);
	transition: transform .1s;
}

.gallery .gallery-item:hover .zoom {
	opacity: 1;
}

.gallery .gallery-item:hover .zoom i {
	transform: scale(1);
}

/* Sidebar */
.sidebar-links {}

.sidebar-links li {
	margin: 10px 0;
}

.sidebar-links li ul {
	margin: 10px 0;
}

/* Buttons */

/* Share Bar */
#goTop {
	transition: all .3s;
}

#goTop:hover {
	color: var(--orange);
}

/* Footer */
footer {
	background: #f5f5f5;
}

footer a {
	color: var(--fc-dark-grey);
	margin: 0;
}

footer h5 {
	text-transform: unset;
	color: black;
}

footer li {
	color: black;
}

.parent ul a {
	color: black;
}

.foot-logo {
	margin: unset;
	text-align: left;
}

.mobile-hr {
	display: none;
}

footer>.inner>hr {
	margin: -0.4em 0;
}

.text-right {
	text-align: right;
}

.img-foot-h {
	height: 50px;
	margin: 0 0 10px 0;
}

.img-foot-h-b {
	height: 235px;
}

.footer-menu {
	border-bottom: 1px solid #e4e4e4;
	margin: 30px 0 30px;
	color: var(--fc-dark-grey);
}

.footer-top-menu {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
}

.footer-top-menu .footer-menu-item h3 {
	font: normal normal 500 16px/20px 'Roboto';
	color: var(--fc-dark-grey);
	margin: 0 0 5px 0;
}

.footer-bottom-menu {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin: -80px 0 0 0;
}

.footer-bottom-menu .footer-menu-4 {}

.footer-bottom-menu .footer-menu-4 ul {
	display: flex;
	justify-content: flex-start;
	align-items: self-end;
	gap: 24px;
	margin: 0 0 10px 0;
}

.footer-bottom-menu .footer-menu-4 i {
	font-size: 24px;
}

.footer-bottom-menu .footer-menu-5 {
	display: flex;
	grid-column-start: 3;
	grid-column-end: 5;
	justify-content: flex-end;
	align-items: self-end;
	gap: 24px;
}

/* Copyright */
.colophon {
	border: none;
}

.colophon a {
	display: inline;
	font-size: unset;
}

.footer-copyright {
	display: flex;
	justify-content: space-between;
	gap: 30px;
}

footer .copyright-text {
	color: var(--fc-dark-grey);
}

footer .copyright-text p {
	font-size: 14px;
}

.footer-copyright #menu-copyright-menu {
	display: flex;
	gap: 12px;
}

.footer-copyright #menu-copyright-menu li>a {
	white-space: nowrap;
	font: normal normal normal 16px/16px 'Roboto';
}

footer .social-media a {
	display: inline-block;
	margin: 0 10px 0 0;
	font-size: 20px;
	line-height: 20px;
	color: var(--blue);
	background: var(--white);
	padding: 10px 15px;
	border-radius: 6px;
	transition: all 0.3s;
}

footer .social-media a:hover {
	color: var(--blue);
	background: var(--lightblue);
	transition: all 0.3s;
}

footer .newsletter-block.blue-form {
	margin: 40px auto;
}

/* 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;
}

/* 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;
}

#ship-cabins-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 1;
}

#ship-cabins-selector tbody tr {
	cursor: pointer;
}

#ship-cabins-selector .grade-active {
	display: table-row;
	position: relative;
}

#ship-cabins-selector .grade-active:after {
	content: "";
	border: 2px solid var(--orange);
	position: absolute;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	top: 0;
	left: 0;
}

/* Cruise */
/*body.single-cruises .anchor-scroll { padding-top:200px;margin-top:-200px; }*/
.secondary-nav {
	z-index: 5;
	position: sticky;
	top: 119px;
	width: 100%;
	background: var(--midblue);
	border-bottom: 2px solid var(--white);
	padding: 0;
	margin: 0;
}

.secondary-nav ul {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.secondary-nav li {
	width: 100%;
	text-align: center;
	text-transform: uppercase;
	font-weight: 600;
}

.secondary-nav a {
	display: block;
	padding: 15px;
	color: #fff;
}

.secondary-nav a:hover {
	background: var(--orange);
}

.secondary-nav i {
	display: none;
}

.progress-nav ul {
	margin: 50px 0 25px;
	display: flex;
	align-items: center;
}

.progress-nav li {
	flex: 1;
	background: url(../images/progress.png) center right / contain no-repeat var(--blue);
	color: var(--white);
	padding: 10px 15px;
	font-size: 13px;
	font-weight: 600;
	position: relative;
}

.progress-nav li:first-child {
	border-top-left-radius: 5px;
	border-bottom-left-radius: 5px;
}

.progress-nav li:last-child {
	border-top-right-radius: 5px;
	border-bottom-right-radius: 5px;
	background: var(--blue);
}

.progress-nav li.prev {
	background: url(../images/progress-prev.png) center right / contain no-repeat var(--blue);
}

.progress-nav li.active {
	background: url(../images/progressw.png) center right / contain no-repeat var(--lightblue);
	color: var(--blue);
}

.progress-nav li.active:last-child {
	background: var(--lightblue);
}

.cruiseline-thumbnail {
	max-width: 150px;
	max-height: 50px;
	height: auto;
}

.itinerary-top-list {
	margin: 20px 0;
}

.itinerary-top-list strong {
	color: var(--text);
}

.cruise-extras {
	color: var(--text);
	font-size: 15px;
}

.cruise-alert {
	background: var(--lightblue);
	color: var(--text);
	font-size: 15px;
	padding: 10px;
}

.cruise-extras i,
.cruise-alert i,
.cruise-extras strong,
.cruise-alert strong {
	color: var(--blue);
}

.cruise-meta {
	border-top: 1px solid var(--lightblue);
	border-bottom: 1px solid var(--lightblue);
	margin: 10px 0 20px;
	padding: 10px 0;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 18px;
	color: var(--text);
}

.cruise-meta .title {
	color: var(--blue);
	font-size: 15px;
}

.cruise-meta .package-img {
	margin-right: 20px;
}

.cruise-meta .name {
	flex: 1 0 auto;
}

.cruise-meta .depart {
	min-width: 200px;
}

.hotel-meta {
	border-bottom: 1px solid var(--lightblue);
	margin: 0 0 20px;
	padding: 0 0 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 18px;
	color: var(--text);
}

.hotel-meta .title {
	color: var(--blue);
	font-size: 15px;
}

.hotel-meta .package-img {
	margin-right: 20px;
}

.hotel-meta .name {
	flex: 1 0 auto;
}

.hotel-meta .checkin {
	min-width: 200px;
}

.hotel-meta .details,
.hotel-meta .edit {
	min-width: 100px;
}

.hotel-meta .details span,
.hotel-meta .edit span {
	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;
	font-size: 12px;
}

.flight-meta {
	margin: 0 0 20px;
	padding: 0 0 20px;
	display: flex;
	align-items: center;
	justify-content: space-between;
	font-size: 18px;
	color: var(--text);
}

.flight-meta .title {
	color: var(--blue);
	font-size: 15px;
}

.flight-meta .name {
	flex: 1 0 auto;
}

.flight-meta .departs {
	min-width: 200px;
}

.flight-meta .details,
.flight-meta .edit {
	min-width: 100px;
}

.flight-meta .details span,
.flight-meta .edit span {
	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;
	font-size: 12px;
}

.outbound-flight-meta {
	margin-bottom: 0;
}

.inbound-flight-meta {
	border-bottom: 1px solid var(--lightblue);
}

.itinerary-table {
	overflow: auto;
}

.itinerary-table .summary {
	display: none;
	padding: 10px;
	background: var(--lightblue);
	margin: 5px 0 15px;
}

.toggle-summary {
	cursor: pointer;
	padding: 10px;
	margin: -10px;
}

#book-now {
	color: var(--text);
}

/* #lead-in-prices { display:flex;align-items:flex-start;width:100%;margin:37px 0; } */
#lead-in-prices {
	width: 100%;
	margin: 37px 0;
}

#lead-in-prices .slick-track {
	display: flex;
}

#lead-in-prices .slick-slide {
	display: flex;
	flex-direction: column;
	text-align: center;
	margin: 0 12px;
	border-radius: 12px;
	border: 1px solid var(--fc-light-grey);
	padding: 0 0 23px 0;
	text-align: left;
	height: auto;
}

#lead-in-prices div.slick-slide:not(.active):hover {
	box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.16);
}

#lead-in-prices div.slick-slide.active {
	border-color: var(--fc-strong-light-grey);
	background-color: var(--fc-light-grey);
}

#lead-in-prices div.slick-slide.active .upsell,
#lead-in-prices div.slick-slide.hide-upsell .upsell {
	display: none;
}

#lead-in-prices div h4,
#lead-in-prices div .fprice {
	padding: 0 20px;
}

#lead-in-prices div h4 {
	margin: 15px 0 15px;
	text-transform: capitalize;
}

#lead-in-prices div label {
	padding: 0;
	margin: 0 0 0 20px;
}

#lead-in-prices div img {
	border-radius: 12px 12px 0 0;
	height: 154px;
	object-fit: cover;
	width: 100%;
	object-position: center;
}

#lead-in-prices label {
	height: 100%;
	cursor: pointer;
	display: inline-flex;
	flex-direction: column;
	align-items: flex-start;
}

#lead-in-prices label.multi-select {
	margin-top: auto;
	height: inherit;
}

#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: var(--midblue);
}

#lead-in-prices .active {
	background: #fff;
	color: var(--midblue);
}

#lead-in-prices .active label .sprice span:first-child {
	display: none;
}

#lead-in-prices .active label .sprice span:last-child {
	display: block;
}

#lead-in-prices .active label i {
	color: var(--orange);
}

#cruise-map {
	position: relative;
	z-index: 0;
	width: 100%;
	height: 450px;
}

#cruise-map .map-marker {
	font-size: 26px;
	width: 20px !important;
	height: 40px !important;
}

#cruise-map .map-marker span {
	position: absolute;
	width: 18px;
	height: 18px;
	font-size: 12px;
	background-color: var(--white);
	border-radius: 50%;
	text-align: center;
	line-height: 18px;
	right: -50%;
	top: -3px;
	font-weight: bold;
}

#cruise-map .leaflet-popup-content {
	font: 16px 'Open Sans', Helvetica, Arial, sans-serif;
	color: var(--blue);
}

.tabs a {
	font-size: 12px;
	background: var(--white);
	border-bottom: 1px solid var(--fc-light-grey);
}

.flex .packtwo-col {
	width: 49%;
	margin: 0 0 30px
}

.ship-slideshow {
	height: 450px;
	width: 100%;
}

.ship-slideshow .slide {
	position: relative;
	height: 450px;
	width: 200px;
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.ship-slideshow .slide a {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	text-indent: -1000px;
	overflow: hidden;
}

/* Cruise Cabins */
#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;
}

#cruise-cabins-selector .deckplan-container img {
	position: absolute;
	top: 0;
	left: 0;
}

#cruise-cabins-selector .table-container {
	flex: 1 1 auto;
	width: 100%;
}

#cruise-cabins-selector .table-container {
	position: relative;
	display: block;
	width: 100%;
	max-height: 450px;
	overflow-y: auto;
}

#cruise-cabins-selector table {
	margin: 0;
}

#cruise-cabins-selector table th,
#cruise-cabins-selector table td {
	padding: 15px;
}

#cruise-cabins-selector table th {
	background: var(--white);
	font: normal normal 800 16px/20px Roboto;
	color: var(--fc-dark-grey);
	text-align: left;
}

#cruise-cabins-selector table th span {
	font-size: 14px;
	font-weight: 400;
	color: var(--fc-grey);
}

#cruise-cabins-selector table th.text-center {
	text-align: center;
}

#cruise-cabins-selector table td {
	padding: 15px;
	position: relative;
	z-index: 1;
	background: transparent;
	font-family: Roboto;
	font-size: 14px;
	color: var(--fc-dark-grey-2);
}

#cruise-cabins-selector table#cabins-table td.action {
	width: 120px;
}

#cruise-cabins-selector table#cabins-table td.action .step-2.info {
	color: var(--fc-grey);
	font-size: 12px;
	font-style: italic;
	border: none;
	text-align: center;
	width: 100%;
}

#cruise-cabins-selector table#cabins-table td.action .step-2.info::before {
	display: none;
}

#cruise-cabins-selector table td span.table-price {
	font-weight: 700;
	font-size: 18px;
}

#cruise-cabins-selector thead tr {
	position: sticky;
	top: 0;
	z-index: 2;
}

#cruise-cabins-selector tbody {
	max-width: 100%;
	background: var(--white);
}

#cruise-cabins-selector tbody tr {
	cursor: pointer;
	z-index: 1;
}

#cruise-cabins-selector tbody tr.disable-click {
	pointer-events: none;
	opacity: .7;
}

#cruise-cabins-selector tbody tr.loading {
	opacity: 1;
}

#cruise-cabins-selector .grade-active {
	display: table-row;
	position: relative;
	background: var(--fc-extra-light-grey);
}

#cruise-cabins-selector .grade-active:after {
	z-index: 0;
	content: "";
	border-top: 2px solid var(--fc-light-grey);
	border-bottom: 2px solid var(--fc-light-grey);
	position: absolute;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	top: 0;
	left: 0;
}

#cruise-cabins-selector .tagspan {
	opacity: .8;
	position: relative;
	z-index: 1;
	display: inline-block;
	margin: 0 0 1px;
	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.active {
	opacity: 1;
}

#cruise-cabins-selector .grade-active .tagspan {
	opacity: 0.5;
}

#cruise-cabins-selector .step {
	background: transparent;
	color: var(--fc-dark-grey);
	display: inline-block;
	text-align: center;
	padding: 10px;
	border-radius: 12px;
	text-transform: capitalize;
	font-weight: 700;
	font-size: 14px;
	line-height: 14px;
	width: 170px;
	height: 35px;
}

#cruise-cabins-selector #cabins-table .step {
	width: 120px;
}

#cruise-cabins-selector .step-1 {
	text-align: center;
	border: 1px solid var(--fc-light-grey);
}

#cruise-cabins-selector .step-2 {
	display: none;
	border: 1px solid var(--fc-light-grey)
}

#cruise-cabins-selector #cabins-table .step-2 {
	color: var(--fc-green);
}

#cruise-cabins-selector #cabins-table .step-2::before {
	content: "\f00c";
	font-family: 'Font Awesome 5 Pro';
	font-weight: 500;
	font-size: 14px;
	margin: 0 5px 0 0;
}

#cruise-cabins-selector .step-loading {
	display: none;
	background: var(--orange);
}

#cruise-cabins-selector .grade-active .step-1 {
	display: none;
}

#cruise-cabins-selector .grade-active .step-2 {
	display: inline-block;
}

#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 .cabin-active {
	position: relative;
	background: var(--fc-extra-light-grey);
}

#cruise-cabins-selector .cabin-active:after {
	content: "";
	border: 2px solid var(--fc-grey);
	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;
}

#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);
}


.deckplan-container {
	position: relative;
}

.deckplan-container .svg {
	position: absolute;
	z-index: 2;
	width: 100%;
	height: 100%;
}

.deckplan-container .svg .rect {
	position: absolute;
	z-index: 3;
	background: var(--fc-red);
	stroke: var(--fc-red);
	stroke-width: 5px;
	fill-opacity: 0;
	stroke-opacity: 1;
	opacity: 1;
	transition: opacity 1.5s;
	animation: cabin-highlighter 1.5s infinite;
	width: 10px !important;
	height: 10px !important;
	border-radius: 50%;
}

.deckplan-container .svg .rect.additional {
	background: var(--fc-blue);
}

#back-to-cabins {
	display: none;
	margin: 20px 0 0 0;
}

#back-to-cabins ul {
	font-size: 14px;
	display: flex;
	width: 300px;
	margin: 0 15px 0 0;
	flex-flow: column;
	align-items: center;
}

#back-to-cabins ul li {
	min-width: 140px;
}

#back-to-cabins ul .dot {
	width: 10px;
	height: 10px;
	display: inline-block;
	border-radius: 50%;
	background-color: var(--fc-red);
	margin: 0 10px 0 0;
}

#back-to-cabins ul .dot.additional {
	background-color: var(--fc-blue);
}

.packed-section {
	margin: 0 0 30px;
}

/* Flights */
#package-flights {
	position: relative;
	z-index: 1;
}

#flights-selector table {
	margin: 0;
}

#flights-selector table th,
#flights-selector table td {
	padding: 15px;
}

#flights-selector table th {
	background: #2d3b54;
	color: #fff;
	text-align: left;
}

#flights-selector table th.text-center {
	text-align: center;
}

#flights-selector table td {
	vertical-align: middle;
	padding: 15px;
	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;
}

#flights-selector tbody tr {
	cursor: pointer;
	z-index: 1;
}

#flights-selector .flight-active {
	display: table-row;
	position: relative;
}

#flights-selector .flight-active:after {
	z-index: 0;
	content: "";
	border: 2px solid var(--orange);
	position: absolute;
	width: calc(100% - 4px);
	height: calc(100% - 4px);
	top: 0;
	left: 0;
}

.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 */
.hotel-item {
	position: relative;
}

.hotel-active:after {
	z-index: 0;
	content: "";
	border: 2px solid var(--orange);
	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;
}

.error-message {
	position: fixed;
	top: 0;
	left: 0;
	z-index: 100;
	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: var(--blue);
	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: 10px;
	cursor: pointer;
	color: var(--fc-red);
}

.error-message .error-body {
	margin: 0;
	padding: 0;
	word-break: break-all;
}

/* Cruise Enquiry */
#cruise-enquiry {
	opacity: 0;
	visibility: hidden;
	display: flex;
	align-items: center;
	justify-content: center;
	position: fixed;
	z-index: 1000;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, 0.5);
	transition: all .3s;
}

#cruise-enquiry .cruise-enquiry-thank-you-top,
#cruise-enquiry .cruise-enquiry-thank-you-bottom {
	display: none;
}

#cruise-enquiry .cruise-enquiry-thank-you-bottom {
	margin: 29px 0 0 0;
}

#cruise-enquiry.thank-you-stage .cruise-enquiry-thank-you-top,
#cruise-enquiry.thank-you-stage .cruise-enquiry-thank-you-bottom {
	display: block;
	width: 100%;
}

#cruise-enquiry.thank-you-stage .cruise-enquiry-thank-you-top {
	height: 416px;
	display: flex;
	align-items: self-end;
	position: relative;
}

#cruise-enquiry.thank-you-stage .cruise-enquiry-thank-you-top::before {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0, 0, 0, .3);
}

#cruise-enquiry.thank-you-stage .cruise-enquiry-thank-you-top h2 {
	font: normal normal bold 48px/64px 'Gill Sans';
	color: var(--white);
	text-shadow: 0px 0px 6px rgba(0, 0, 0, 0.161);
}

#cruise-enquiry .cruise-form {
	width: 100%;
}

#cruise-enquiry.open.thank-you-stage .cruise-form {
	padding: 0 31px 41px;
	margin: 35px 0 0 0;
}

#cruise-enquiry.open.thank-you-stage .cruise-form .frm_message p strong {
	margin: 0 0 20px 0;
	display: inline-block;
}

#cruise-enquiry h2,
#cruise-enquiry h3 {
	color: var(--fc-dark-grey);
}

#cruise-enquiry h2.cruise-popup-form-title {
	font: normal normal 700 22px/28px 'Gill Sans';
}

#cruise-enquiry.open.thank-you-stage h2.cruise-popup-form-title {
	display: none;
}

#cruise-enquiry h3 {
	font-size: 18px;
	font-weight: 700;
	line-height: 24px;
}

#cruise-enquiry.open {
	opacity: 1;
	visibility: visible;
}

#cruise-enquiry .content {
	padding: 0;
	flex-direction: column;
	border-radius: 12px;
	position: relative;
	top: -30px;
	background: #fff;
	max-width: 648px;
	width: 100%;
	max-height: 90%;
	overflow: auto;
	display: flex;
	align-items: flex-start;
	transition: top .3s;
}

#cruise-enquiry.open .content {
	top: 0;
}

#cruise-enquiry p.close {
	top: 32px;
	right: 32px;
	position: absolute;
}

#cruise-enquiry .content h2 {
	padding: 28px 31px 0;
	margin: 0 0 28px 0;
	text-transform: inherit;
}

#cruise-enquiry .content .cruise-preview {
	padding: 0 31px;
	width: 100%;
	display: flex;
	gap: 22px;
}

#cruise-enquiry.open.thank-you-stage .content .cruise-preview {
	display: none;
}

#cruise-enquiry .cruise-preview img {
	display: block;
	width: 180px;
	height: auto;
	border-radius: 12px;
}

#cruise-enquiry .content #form_enquiries {
	padding: 30px 31px 32px;
}

#cruise-enquiry .content #form_enquiries h3 {
	margin: 0 0 7px 0;
}

#cruise-enquiry .content #form_enquiries .nice-select {
	height: 40px;
	border-radius: 12px;
	border: 1px solid var(--fc-light-grey);
}

#cruise-enquiry .cruise-preview {
	position: relative;
}

#cruise-enquiry .cruise-preview-content {
	position: relative;
	bottom: 0;
	left: 0;
	width: 100%;
	background: var(--white);
	color: var(--fc-grey);
	padding: 10px;
}

#cruise-enquiry .cruise-preview-content h3 {
	margin: 0 0 13px;
	text-transform: inherit;
}

#cruise-enquiry .cruise-preview-content p {
	margin: 0;
}

#cruise-enquiry .cruise-preview-content ul {
	display: grid;
	grid-template-columns: 1fr 1fr;
}

#cruise-enquiry .cruise-preview-content ul li {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	gap: 5px;
}

#cruise-enquiry .cruise-preview-content ul li::before {
	content: '';
	display: flex;
	align-items: center;
	justify-content: center;
	width: 24px;
	height: 24px;
	font-family: "Font Awesome 6 Pro";
	font-weight: 900;
	font-size: 14px;
	color: var(--fc-dark-grey);
}

#cruise-enquiry .cruise-preview-content ul li:nth-child(1):before {
	content: '\f133';
}

#cruise-enquiry .cruise-preview-content ul li:nth-child(2):before {
	content: '\f186';
}

#cruise-enquiry .cruise-preview-content ul li:nth-child(3):before {
	content: '\f3c5';
}

#cruise-enquiry .cruise-preview-content ul li:nth-child(4):before {
	content: '\f21a';
}


#cruise-enquiry p.description {
	color: var(--blue);
	font-size: 22px;
	font-weight: 700;
	margin: 0 0 20px;
}

#cruise-enquiry p.close {
	cursor: pointer;
	color: var(--light-grey);
	font-size: 16px;
	font-weight: 700;
	margin: 0 0 20px;
	transition: color .3s;
}

#cruise-enquiry.open.thank-you-stage p.close {
	background: var(--white);
	background: white;
	width: 32px;
	height: 32px;
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
}

#cruise-enquiry p.close:hover {
	color: var(--grey);
}

#cruise-enquiry.open.thank-you-stage p.close:hover {
	border: 1px solid var(--fc-dark-grey);
	width: 31px;
	height: 31px;
	transition: all 0.2s;
}


#cruise-enquiry .frm_screen_reader,
#cruise-enquiry .frm_verify,
#cruise-enquiry .frm_primary_label,
#cruise-enquiry .frm_error,
#cruise-enquiry .frm_error_style {
	display: none;
}

#cruise-enquiry .frm_form_field {
	width: 100%;
	margin: 0;
}

#cruise-enquiry .frm_form_field input,
#cruise-enquiry .frm_form_field textarea {
	font: 14px/15px 'Roboto', Helvetica, Arial, sans-serif;
	width: 100%;
	border: 0;
	border-radius: 12px;
	padding: 12px 14px;
	border: 1px solid var(--fc-light-grey);
	background: var(--white);
}

#cruise-enquiry .frm_blank_field input {
	border-color: var(--red);
}

#cruise-enquiry .frm_two_col {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

#cruise-enquiry #frm_field_32_container>.frm_two_col:last-child {
	margin: 20px 0 0 0;
}

#cruise-enquiry .frm_two_col .frm_form_field {
	width: 49%;
}

#cruise-enquiry .frm_three_col .frm_form_field {
	width: 33%;
}

#cruise-enquiry .frm_three_col {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

#cruise-enquiry #frm_field_22_container {
	margin: 24px 0 0 0;
}

#cruise-enquiry #frm_field_22_container #field_22zco_label {
	font-family: 'Gill Sans';
	font-size: 18px;
	line-height: 24px;
	color: var(--fc-dark-grey);
}

#cruise-enquiry #frm_field_22_container .frm_opt_container {
	margin: 11px 0 0 0;
	display: flex;
	gap: 40px;
}

#cruise-enquiry #frm_field_22_container #frm_field_28_container {
	margin: 25px 0 0 0;
}

#cruise-enquiry .frm_form_field .frm_checkbox input {
	margin: 0 8px 0 0;
}

#cruise-enquiry #frm_field_28_container {
	margin: 25px 0 0 0;
}

#cruise-enquiry #frm_field_28_container>.frm_two_col:last-child {
	margin: 20px 0 0 0;
}

#cruise-enquiry #frm_field_26_container {
	margin: 28px 0 0 0;
}

#cruise-enquiry #frm_field_36_container {
	margin: 7px 0 0 0;
	display: flex;
	justify-content: flex-start;
	align-items: center;
}

#cruise-enquiry #frm_field_36_container input#field_faq_information {
	border: 0;
	padding: 0 4px;
	font-weight: 500;
}


#cruise-enquiry .frm_submit {
	text-align: center;
	margin: 1px 0 0;
}

#cruise-enquiry .frm_submit button {
	margin: 0;
	white-space: nowrap;
	text-transform: capitalize;
	background: var(--fc-blue);
	border-radius: 12px;
	padding: 15px 25px;
}

#cruise-enquiry .frm_submit button:hover {
	background: var(--fc-blue-hover);
}

#cruise-enquiry .return-site {
	margin: 0;
	white-space: nowrap;
	text-transform: capitalize;
	background: var(--fc-blue);
	border-radius: 12px;
	padding: 15px 25px;
	color: var(--white);
	font: normal normal 500 16px/20px 'Roboto';
}

#cruise-enquiry .return-site:hover {
	background: var(--fc-blue-hover);
}


/* Booking Form */
#booking-process {
	margin: 30px 0;
}

#booking-process .inner {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

#booking-main:not(.booking-error) a {
	color: var(--blue);
}

#booking-main:not(.booking-error) a:hover {
	color: var(--blue-hover);
}

#booking-main {
	width: 69%
}

#booking-main h1 {
	font-size: 28px;
	font-weight: 700;
	color: var(--blue);
	margin: 0 0 30px;
}

#booking-main h1 strong {
	color: var(--blue);
}

#booking-main h2 {
	font-size: 28px;
	font-weight: 700;
	color: var(--blue);
	margin: 0 0 15px;
}

#booking-main h3 {
	font-size: 16px;
	font-weight: 700;
	color: var(--blue);
	margin: 10px 0 0;
}

#booking-main h3 small {
	color: #49515C;
	font-weight: 400;
}

#booking-main .errors {
	display: none;
	border: 1px solid var(--red);
	background-color: rgba(227, 59, 39, 0.25);
	padding: 10px;
	border-radius: 4px;
}

#booking-main .errors i {
	color: var(--red);
}

#booking-main .passenger-details {
	margin: 30px 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: var(--fc-dark-grey);
	margin: 0 0 5px;
}

#booking-main .input-row input,
#booking-main .input-row select,
#booking-main .input-row textarea {
	background: var(--fc-white);
	border: 1px solid var(--fc-light-grey);
	padding: 10px;
	border-radius: 12px;
	font: normal normal normal 14px/32px Roboto;
	color: var(--fc-dark-grey-2);
	width: 100%;
}

#booking-main .input-row .date-row {
	position: relative;
}

#booking-main .input-row .date-row i {
	position: absolute;
	top: 50%;
	right: 10px;
	z-index: 999;
	transform: translateY(-50%);
}

#booking-main .input-row .date-row input.input_dob {
	cursor: pointer;
}

#booking-main .input-row .date-row input.input_dob::-webkit-calendar-picker-indicator {
	background: transparent;
	bottom: 0;
	color: transparent;
	cursor: pointer;
	height: auto;
	left: 0;
	position: absolute;
	right: 0;
	top: 0;
	width: auto;
}

#booking-main .input-row textarea {
	height: 200px;
}

#booking-main .input-row input.error,
#booking-main .input-row select.error {
	border-color: var(--red);
	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 var(--red);
	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: var(--blue);
}

#booking-main label.checkbox:hover:before,
#booking-main label.radio:hover:before {
	color: var(--blue);
}

#booking-main label.checkbox:before {
	content: "\f0c8";
	font-family: "Font Awesome 5 Free";
	font-size: 18px;
	color: var(--fc-dark-grey);
	transition: color .2s;
	font-weight: normal;
}

#booking-main label.checkbox.checked:before {
	content: "\f14a";
	font-weight: 700;
	color: var(--blue);
}

.input.error:after,
.radio-group.error:after,
label.checkbox.error:after {
	content: attr(data-error-label);
	font-size: 14px;
	font-weight: bold;
	color: var(--red);
}

#booking-main .booking-condition {
	margin: 0 0 40px;
}

#booking-main .booking-condition label strong {
	color: var(--blue);
}

.error-labels {
	display: none;
	margin: 30px 0 0;
	color: var(--red);
	font-style: italic;
}

.error-labels li {
	margin: 0 0 5px;
}

#booking-main .buttons {
	margin: 0
}

#booking-main .buttons .button {
	min-width: 200px;
}

#booking-main .buttons .button:first-child {
	margin-right: 20px;
}

#booking-main iframe {
	width: 100%;
	height: 910px;
}

#payment-container {
	height: 600px;
}

.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: #FEF8F0;
	position: sticky;
	top: 150px;
}

#booking-side h3 {
	color: var(--blue);
	font-size: 20px;
	font-weight: 700;
	padding: 0;
	margin: 0 0 15px;
}

#booking-side h4 {
	background: var(--blue);
	color: #fff;
	font-size: 16px;
	font-weight: 700;
	padding: 10px;
	margin: 0;
}

#booking-side h5 {
	color: var(--blue);
	font-size: 28px;
	font-weight: 700;
	padding: 0;
	margin: 0;
}

#booking-side .content {
	color: var(--blue);
	padding: 10px;
	border: 1px solid var(--blue);
	margin-top: 0;
}

#booking-side .content p {
	margin: 0 0 15px;
}

.booking-condition label.radio input,
.booking-condition label.checkbox input {
	visibility: hidden;
}

.previous-button,
.next-button {
	color: #fff;
	display: inline-block;
	text-align: center;
	padding: 10px;
	border: 0;
	border-radius: 3px;
	text-transform: uppercase;
	font-weight: 700;
	font-size: 14px;
	line-height: 14px;
	width: 120px;
	height: 35px;
	color: #fff !important;
	cursor: pointer;
	transition: background .2s;
}

.previous-button {
	background: var(--grey);
}

.previous-button:hover {
	background: var(--grey);
}

.next-button {
	background: var(--blue);
}

.next-button:hover {
	background: var(--midblue);
}


.sidebar {
	width: 100%;
	float: none;
	background: var(--lightblue);
}

.sidebar-block {
	margin: 50px auto 0 auto;
	padding: 50px 50px;
	max-width: 1200px;
}

.sidebar-links {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr;
	grid-column-gap: 20px;
}

.sidebar li::before {
	content: "";
}

.sidebar-links li {
	padding-left: 0;
}

.white-split-section {
	margin-top: 0;
}

footer .newsletter-block.blue-form {
	margin-left: 80px;
}

footer .newsletter-block.blue-form .bf-item p {
	text-align: left;
}

footer .newsletter-block.blue-form .bf-grid {
	justify-content: center;
	grid-template-columns: 1fr 1fr;
}

.newsletter-block .bf-grid .bf-item:first-child {
	padding-right: 30px;
}

section.no-padding-top {
	padding-top: 0;
}

section.no-padding-bottom {
	padding-bottom: 0;
}

div#billing_address_2_field {
	display: none;
}

/* Responsive */

@media (min-width: 1101px) {
	.d-md-none {
		display: none;
	}
}

@media all and (max-width : 1100px) {

	.foot-logo {
		max-width: 180px;
	}

	.d-sm-none {
		display: none;
	}

	.colophon {
		padding: unset;
	}

	/* .parent > ul{
			margin-top: 15px;
			border-bottom:1px solid #e4e4e4;
		}
		.parent > ul > h5::after {
			content: "\f107"; 
			font-family: "Font Awesome 5 Free";
			margin-left: 5px;
			font-weight: 600;
		} */

	footer>.inner>hr {
		margin-top: 10px;
	}

	.mobile-hr {
		display: block;
		margin: 0;
	}

	.fa-bars:before {
		font-size: 17px;
		font-weight: 600;
	}

	#menu-header-menu-2>li:first-child>ul {
		min-width: 170%;
	}

	#menu-header-menu-2>li:first-child>a {
		font-size: 15px;
	}

	/* Basic Show/Hides */
	#mobile-navigation-control {
		display: block;
		color: white;
		line-height: 16px;
	}

	#header-container nav,
	.header-item {
		display: none;
	}

	#nav-short {
		display: block;
	}

	/* Header */
	#header-container {
		padding: 20px 0 0;
	}

	#header-logo {
		width: 320px;
	}

	/* Content Builder */

	/* Icon Blocks */
	.icon-blocks {
		flex-wrap: wrap;
	}

	.icon-block {
		flex: unset;
		width: 50%;
		padding: 10px 0;
	}

	/* Newsletter */
	.newsletter-block .bf-grid {
		grid-template-columns: 1fr;
		grid-row-gap: 10px;
	}

	.newsletter-block .bf-grid .bf-item:first-child {
		display: block;
		text-align: center;
	}

	.newsletter-block .frm_forms .frm_fields_container {
		justify-content: center;
	}

	/* Cruise */
	.secondary-nav .inner {
		padding: 0;
	}

	.secondary-nav span {
		display: none;
	}

	.secondary-nav i {
		display: block;
	}

	/* Enquiry */
	#cruise-enquiry .content {
		display: block;
		width: 90%;
	}

	#cruise-enquiry .cruise-preview {
		margin: 0 0 20px;
	}
}

@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;
	}
}

@media all and (max-width : 920px) {
	#header-logo .logo-mobile {
		display: block;
		height: 36px;
	}

	#header-logo .logo-desktop {
		display: none;
	}

	#nav-short {
		top: 54px;
	}

	.footer-copyright {
		flex-direction: column;
	}

	.footer-copyright #menu-copyright-menu {
		flex-wrap: wrap;
	}

	.footer-bottom-menu {
		margin: 30px 0 0 0;
	}

	.footer-bottom-menu .img-foot-h-b {
		display: none;
	}

	#back-to-cabins {
		margin: 20px 0;
	}

	#booking-main iframe {
		height: 960px;
	}
}

@media all and (max-width : 740px) {

	/* Header */
	#header-container .inner {
		gap: 10px;
	}

	#header-meta span.desktop {
		display: none;
	}

	/* Content Builder */

	/* Full Width Slider */
	.slider-inner-content {
		width: 90%;
	}

	.slider-inner h1 {
		font-size: 18px;
		line-height: 20px;
		font-weight: 700;
	}

	.slider-inner p {
		font-size: 14px;
		line-height: 18px;
		font-weight: 700;
	}

	/* Icon Blocks */
	.icon-block {
		width: 100%;
	}

	/* Newsletter */
	.newsletter-block .frm_forms .frm_fields_container {
		display: block;
	}

	.newsletter-block .frm_forms .frm_form_field.first-item {}

	.newsletter-block .frm_forms .frm_form_field.first-item input {
		text-align: center;
		width: 100%;
		border-bottom-left-radius: 0;
		border-top-right-radius: 5px;
	}

	.newsletter-block .frm_forms .frm_form_field.last-item {
		margin: 2px 0;
	}

	.newsletter-block .frm_forms .frm_form_field.last-item input {
		text-align: center;
		width: 100%;
		border-radius: 0;
	}

	.newsletter-block .frm_forms .frm_submit button {
		width: 100%;
		border-top-right-radius: 0;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
	}

	.newsletter-block .frm_forms .frm_form_field .frm_error {
		position: static;
		margin: 0 0 10px;
	}

	/* CTA Blocks */
	.cta-blocks {
		display: block;
		margin: 0;
	}

	.cta-block {
		margin: 0 0 20px;
	}

	/* Alternate Blocks */
	.two-last,
	.two-item {
		text-align: center;
	}

	/* Gallery */
	.gallery .gallery-item {
		width: 100% !important;
	}

	/* Feature Blocks */
	.feature-block article {
		width: auto;
		height: 100%;
	}

	.content-row {
		flex-direction: column;
		margin: 0;
	}

	.content-col {
		width: 100% !important;
		margin: 0 0 10px;
	}

	.content-col img {
		width: 100%;
		height: auto;
	}

	/* Ship */
	#ship-cabins-selector {
		display: block;
	}

	#ship-cabins-selector .deckplan-container {
		width: 100%;
		height: 200px;
		margin: 0 0 20px;
		text-align: center;
	}

	/* Footer */
	.footer-top-menu {
		grid-template-columns: 1fr;
	}

	.footer-top-menu .footer-menu-item {
		border-bottom: 1px solid var(--fc-light-grey);
	}

	.footer-top-menu .footer-menu-item h3 {
		margin: 0;
		padding: 10px 0;
		display: flex;
		justify-content: space-between;
	}

	.footer-top-menu .footer-menu-item h3::after {
		content: '\f078';
		font-family: 'FontAwesome';
		font-size: 12px;
	}

	.footer-top-menu .footer-menu-item ul {
		display: none;
		padding: 0 0 15px 0;
	}

	.footer-top-menu .footer-menu-item.active ul {
		display: block;
		padding: 0 0 15px 0;
	}

	.footer-bottom-menu {
		flex-direction: column;
		align-items: start;
		margin: 70px 0 0 0;
		gap: 40px;
	}

	/* Booking */
	#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 {}

	#booking-main .buttons .button {
		align-items: center;
	}

	.sidebar-links {
		grid-template-columns: 1fr 1fr;
	}

	.sidebar-links li {
		text-align: center;
	}

	.hero .slick-dots {
		margin: 0 !important;
	}

	/* Form Enquire */
	#cruise-enquiry .content h2 {
		padding-top: 36px;
	}

	#cruise-enquiry p.close {
		top: 24px;
		right: 24px;
	}

	#cruise-enquiry .cruise-preview {
		flex-direction: column;
	}

	#cruise-enquiry .cruise-preview {
		flex-direction: column;
	}

	#cruise-enquiry .cruise-preview img {
		width: unset;
	}

	#cruise-enquiry .content #form_enquiries {
		padding-top: 0;
	}

	#cruise-enquiry .frm_two_col {
		flex-direction: column;
	}

	#cruise-enquiry .frm_two_col .frm_form_field {
		width: 100%;
	}

	#cruise-enquiry .frm_three_col {
		gap: 20px;
		flex-direction: column;
	}

	#cruise-enquiry .frm_three_col .frm_form_field {
		width: 100%;
	}

}

@media all and (max-width: 620px) {

	/* Header */
	#header-meta span.desktop {
		display: inline;
	}

	#menu-header-menu-2>li:not(:first-child):not(:last-child) {
		display: none;
	}

	#menu-header-menu-2>li:last-child a span {
		display: none;
	}

	#menu-item-33536 a::before {
		content: "\f007";
		font-family: "Font Awesome 5 Free";
		display: inline-block;
		font-size: 14px;
		color: var(--white);
	}

	#header-logo {
		width: 100%;
	}

	#header-meta {
		width: 100%;
		justify-content: space-between;
	}

	/* Navigation Short */
	#menu-navigation-short li {
		margin: 0;
	}

	#menu-navigation-short li a {
		font-size: 14px;
		line-height: 18px;
	}

	/* Form Enquire */
	#cruise-enquiry .frm_footer_box {
		flex-direction: column;
		gap: 10px;
		margin: 10px 0 0 0;
	}

	#cruise-enquiry .frm_submit {
		width: 100%;
	}

	#cruise-enquiry .frm_submit button {
		width: 100%;
	}
}

@media all and (max-width : 500px) {
	#cruise-enquiry .cruise-preview-content ul {
		grid-template-columns: 1fr;
	}
}

@media all and (max-width : 440px) {
	#header-logo .logo-mobile {
		height: 32px;
	}
}


.show-mobile {
	display: none;
}

.show-desktop {
	display: flex;
}


@media all and (max-width : 920px) {
	#expiry-inner {
		max-width: 90%;
	}
}

@media (max-width: 620px) {
	.show-mobile {
		width: 100%;
		display: inline-block;
	}

	.show-desktop {
		display: none;
	}

	.single-cruises .packed-section .packtwo-col .ship-slideshow .slick-list .slide,
	.single-cruises .packed-section .packtwo-col .ship-slideshow {
		height: 250px;
	}
}

.merchandising-content ul,
.merchandising-content ol {
	padding-left: 15px;
	margin-bottom: 14px;
}

.merchandising-content a {
	color: var(--fc-dark-grey);
	text-decoration: underline;
}

.merchandising-content a:hover {
	text-decoration: none;
}

.merchandising-content h1,
.merchandising-content h2,
.merchandising-content h3,
.merchandising-content h4,
.merchandising-content h5 {
	margin-bottom: 14px;
	font-family: "Gill Sans", Helvetica, Arial, sans-serif;
	font-weight: 700;
	text-transform: capitalize;
	color: var(--fc-dark-grey);
}

.merchandising-content li {
	list-style: inherit;
	margin-left: 15px;
}

.merchandising-content .wp-caption.aligncenter {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
}

.merchandising-content .wp-caption.aligncenter .wp-caption-text {
	left: 50%;
	transform: translateX(-50%);
}