/* Global properties ======================================================== */
html {width:100% !important;}

body.x-body {
	font-family:'Open Sans' !important;
	font-size:14px !important;
	/*color:#f9f9f9;*/
	min-width:960px;
	padding:0 !important;
	/*background-image: url(../images/site_bg_111511.png);*/
	/*background-repeat: repeat-x;
	background-attachment: fixed !important;*/
	}

/* Scoped reset to isolate special deal from CDN global styles */
.special-deal-scope {
	font-family: 'Open Sans', Arial, sans-serif !important;
	font-size: 14px !important;
	line-height: 1.428571429 !important;
	color: #333 !important;
	background-color: #f7f7f7 !important;
}

.special-deal-scope article,
.special-deal-scope aside,
.special-deal-scope details,
.special-deal-scope figcaption,
.special-deal-scope figure,
.special-deal-scope footer,
.special-deal-scope header,
.special-deal-scope hgroup,
.special-deal-scope main,
.special-deal-scope menu,
.special-deal-scope nav,
.special-deal-scope section,
.special-deal-scope summary {
	display: block !important;
}

.special-deal-scope audio,
.special-deal-scope canvas,
.special-deal-scope progress,
.special-deal-scope video {
	display: inline-block !important;
	vertical-align: baseline !important;
}

.special-deal-scope [hidden],
.special-deal-scope template {
	display: none !important;
}

.special-deal-scope a {
	background-color: transparent !important;
	color: #8c8c8c !important;
	outline: none !important;
	text-decoration: none !important;
}

.special-deal-scope b,
.special-deal-scope strong {
	font-weight: bold !important;
}

.special-deal-scope img {
	border: 0 !important;
	max-width: 100% !important;
	height: auto !important;
}

.special-deal-scope svg:not(:root) {
	overflow: hidden !important;
}

.special-deal-scope hr {
	box-sizing: content-box !important;
	height: 0 !important;
}

.special-deal-scope pre {
	overflow: auto !important;
}

.special-deal-scope code,
.special-deal-scope kbd,
.special-deal-scope pre,
.special-deal-scope samp {
	font-family: monospace !important;
	font-size: 1em !important;
}

.special-deal-scope button,
.special-deal-scope input,
.special-deal-scope optgroup,
.special-deal-scope select,
.special-deal-scope textarea {
	color: inherit !important;
	font: inherit !important;
	margin: 0 !important;
}

.special-deal-scope button,
.special-deal-scope input[type="button"],
.special-deal-scope input[type="reset"] {
	-webkit-appearance: button !important;
	cursor: pointer !important;
}

.special-deal-scope button[disabled],
.special-deal-scope input[disabled] {
	cursor: default !important;
}

.special-deal-scope table {
	border-collapse: collapse !important;
	border-spacing: 0 !important;
}

.special-deal-scope th,
.special-deal-scope td {
	padding: 0 !important;
}

/* =========================================
	 SPECIAL DEAL HARD OVERRIDES
	 ========================================= */
.special-deal,
.special-deal * {
	box-sizing: border-box !important;
}

.main.special-deal {
	width: 100% !important;
	max-width: 1140px !important;
	margin: 0 auto !important;
}

.special-deal .cstm-container,
.special-deal.cstm-container {
	width: 100% !important;
	max-width: 1140px !important;
	margin: 0 auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.special-deal .cstm-row {
	display: block !important;
	margin-left: -15px !important;
	margin-right: -15px !important;
	clear: both !important;
}

.special-deal [class*="col-"] {
	position: relative !important;
	min-height: 1px !important;
	float: left !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
}

.specials-page {
	margin: 20px 0 10px 0 !important;
	text-align: center !important;
	width: 100% !important;
}

.bg-bot {
	width: 100% !important;
	position: relative !important;
	padding-bottom: 35px !important;
}

.wrapper {
	width: 100% !important;
	overflow: hidden !important;
	position: relative !important;
}

.box {
	position: relative !important;
}

.box-padding3 {
	padding: 16px 19px 20px 19px !important;
}

@media (min-width: 768px) {
	.special-deal .col-sm-12 { width: 100% !important; }
	.special-deal .col-sm-8 { width: 66.6667% !important; }
	.special-deal .col-sm-6 { width: 50% !important; }
	.special-deal .col-sm-4 { width: 33.3333% !important; }
}
.main { 	
	/*padding:0;
	margin:0 auto !important;
	font-size:0.75em !important;
	line-height:1.3333em !important;
	position:relative !important;
	background: none !important;
	z-index:3 !important;
	padding-top: 200px !important;*/
	/*
	padding: 80px 66px 0px 66px;
	 max-width:1100px !important;*/
	}

.bg-bot {width:100% !important;}

/* Special deal isolation: override external row/column styles */
.special-deal .cstm-row {
	display: block !important;
	margin-left: -15px !important;
	margin-right: -15px !important;
	clear: both !important;
}

.special-deal [class*="col-"] {
	position: relative !important;
	min-height: 1px !important;
	float: left !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
	box-sizing: border-box !important;
}

/* Bootstrap-style column widths for special deal layout */
.special-deal .col-sm-12 { width: 100% !important; }
.special-deal .col-sm-8 { width: 66.6667% !important; }
.special-deal .col-sm-6 { width: 50% !important; }
.special-deal .col-sm-4 { width: 33.3333% !important; }

.special-deal .cstm-container,
.special-deal.cstm-container {
	width: 100% !important;
	max-width: 1140px !important;
	margin: 0 auto !important;
	padding-left: 15px !important;
	padding-right: 15px !important;
}


a {color:#8c8c8c !important; outline:none !important;}
a:hover {text-decoration:none !important;}

/* Header link color consistency (override global link color) */
.ovc-header-scope .nav_menu_link,
.ovc-header-scope .w-nav-link,
.ovc-header-scope .w-dropdown-link,
.ovc-header-scope .nav_lvl2_link,
.ovc-header-scope .dropdown-toggle,
.ovc-header-scope .dropdown-toggle .text-block-9,
.ovc-header-scope a,
.ovc-header-scope a:visited,
.ovc-header-scope a:hover,
.ovc-header-scope a:focus {
	color: #1c2945 !important;
}

.ovc-header-scope #phone-ref-cid a,
.ovc-header-scope #phone-ref-cid span,
.ovc-header-scope #phone-ref-cid a:visited,
.ovc-header-scope #phone-ref-cid a:hover,
.ovc-header-scope #phone-ref-cid a:focus {
	color: #ffffff !important;
}

.ovc-header-scope .header-phone-inline a,
.ovc-header-scope .header-phone-inline span,
.ovc-header-scope .header-phone-inline a:visited,
.ovc-header-scope .header-phone-inline a:hover,
.ovc-header-scope .header-phone-inline a:focus {
	color: #1c2945 !important;
}

.clear {clear:both !important; width:100% !important; line-height:0 !important; font-size:0 !important;}

.col-1, .col-2, .col-3, .col-4 {float:left !important;}
.column-1, .column-2, .column-3 {float:left !important;}  

.wrapper {width:100% !important; overflow:hidden !important; position:relative !important;}
.extra-box {overflow:hidden !important;}
 

p {margin-bottom:0px !important;}
.p0 {margin-bottom:1px !important;}
.p00 {margin-bottom:6px !important;}
.p000 {margin-bottom:3px !important;}
.p1 {margin-bottom:8px !important;}
.p2 {margin-bottom:15px !important;}
.p3 {margin-bottom:29px !important;}
.p4 {margin-bottom:40px !important;}
.p5 {margin-bottom:49px !important;}

.fleft {float:left !important;}
.fright {float:right !important;}

.alignright {text-align:right !important;}
.aligncenter {text-align:center !important;}

.letter {letter-spacing:1px !important;}

.color-1 {color:#fff !important;}
.color-2 {color:#001B3C !important;}
.color-3 {color:#06F !important;}
	
.bold {font-weight:bold}

.tcs {
	width:90% !important;
	height: 100% !important;
	font-size:10px !important;
	line-height:12px !important;
	color:#666 !important;
	text-align:justify !important;
	padding:0px 0px 130px 0px !important;}

hr {width:95% !important; 
	margin-bottom:10px !important;
	color:#ccc !important;
	height:1px !important; }
	
/*********************************header section*************************************/

.specials-page {
	margin:20px 0 10px 0 !important;
	text-align:center !important;
	width:100% !important; }
	
.title-1 {
	font-size:22px !important;
	line-height:24px !important;
	color:#2e67b1 !important;
	font-weight:bold !important;}
	
.title-2 {
	font-size:15px !important;
	line-height:17px !important;
	color:#036 !important;
	font-weight:bold !important;
	margin-bottom:20px !important;}
	
/*********************************pricing*************************************/	
	
.cabincategory-1,.cabincategory-2 {
	align:center !important;
	text-align:center !important;
	vertical-align:middle !important;
	padding: 3px 0px 3px 0px !important;
	border: solid 1px #ccc !important;
	width:25% !important;
	padding: 5px !important;
	text-transform: uppercase !important;
		background: #ececec !important;
		color:#4b7eb5  !important;
		font-weight: bold !important;
	}
	
.cabincategory-2 {

	border-right: solid 1px #ccc !important;
	}
	
.cabincategory-3 {
	align:center !important;
	text-align:center !important;
	vertical-align:middle !important;
	padding: 3px 0px 3px 0px !important;
	}
	
.pricing-1,.pricing-2
	{
		padding: 15px !important;
	text-align:center !important;   
	font-size:24px !important;
	line-height:18px !important;
	color:#C5272C !important; 
	border: solid 1px #cccccc !important; 
	font-weight:bold !important;
	vertical-align:middle !important;}
	
.pricing-2
	{

	border-right: solid 1px #cccccc !important; 

}
	

	

/*********************************figures*************************************/

.figure1 {
	border: solid 1px #ccc !important;
}
	
.maintext-2
	{font-size:14px !important;
	color:#333 !important;
	font-weight:normal !important;
	text-align:left !important;}
.maintext-2.no-title .list-1:first-child {
	padding-top: 25px !important;
}
.maintext-3
	{font-size:10px !important;
	color:#fff !important;
	font-weight:normal !important;}
	
.list-1,.list-2{
	margin-bottom: 5px !important;
	margin-top: 5px !important;
}
.special-deal .maintext-2 .list-1{
	line-height: 1.4 !important;
}
.special-deal .maintext-2 .list-1 img{
	display: inline-block !important;
	vertical-align: middle !important;
	margin-right: 6px !important;
	float: none !important;
}


/*.list-1
	{margin:0px !important;}
*/
.list-2
	{/*margin:0px; */
	text-align:center; 
	font-weight:bold !important;}


.itinerary-1,
.itinerary-2,
.itinerary-3,
.itinerary-4,
.itinerary-5,
.itinerary-6,
.itinerary-7
{
	font-size:14px !important;
}

.itinerary-1
	{padding:5px !important; 
	color:#333 !important;
	text-align:center !important;
	font-weight:bold !important;
	border-bottom: solid 1px #cccccc !important;
	background-color:#f0f0f0 !important;}
	
.itinerary-2
	{padding:5px 5px 5px 10px !important; 

	color:#333 !important;
	text-align:left !important;
	font-weight:bold !important;
	border-bottom: solid 1px #cccccc !important;}
	
.itinerary-3
	{padding:5px 5px 5px 10px !important; 
	color:#333 !important;
	text-align:left !important;
	font-weight:bold !important;
	border-bottom: solid 1px #cccccc !important;
	background-color:#f0f0f0 !important;}
	
.itinerary-4
	{padding:5px !important; 
	color:#333 !important;
	text-align:center !important;
	border-bottom: solid 1px #cccccc !important;
	background-color:#f0f0f0 !important;}
	
.itinerary-5
	{padding:5px 5px 5px 10px !important; 
	font-weight:bold !important;
	color:#036 !important;
	text-align:left !important;
	border-bottom: solid 1px #cccccc !important;}
	
.itinerary-6
	{padding:5px 5px 5px 10px !important; 
	color:#333 !important;
	text-align:left !important;
	border-bottom: solid 1px #cccccc !important;
	background-color:#f0f0f0 !important;}

.itinerary-7
	{padding:5px 5px 5px 10px !important; 
	color:#333 !important;
	text-align:left !important;
	border-bottom: solid 1px #cccccc !important;}
	
.sidebar {
	text-align:justify !important;
	vertical-align:top !important;
	margin: 5px auto 15px !important;
	font-size:13px !important;
	color:#333 !important;
	max-width: 300px !important;
	/*width:300px;*/
}

.buttons {
	margin-bottom:0 !important;}
	
.header
{ /*width: 860px;*/
	 margin-bottom:15px;
  }
.header h2{
	color: #4c7db5 !important;
	font-family: 'Libre Baskerville' !important;
	color: #4c7db5 !important;
	font-style: italic !important;
	font-size: 32px !important;
	margin:0 0 15px !important;
}	  

/* Keep the trip name line centered and stable in the header */
.specials-page .header .list-1 {
	display: block !important;
	text-align: center !important;
}
	
/*********************************tabular data and information*************************************/
			
.datagroup-1   { width: 300px !important;}
.column-1    { width:198px !important; height:26px !important; float:left !important; vertical-align:middle !important; padding-top:4px !important;}
.column-2   { width:25px !important; height:26px !important; float:right !important; vertical-align:middle !important; padding-top:4px !important;}
.column-3    { width:25px !important; height:26px !important; float:right !important; vertical-align:middle !important; padding-top:4px !important;}
.column-4    { width:27px !important; height:26px !important; float:right !important; vertical-align:middle !important; padding-top:4px !important;}
.column-5   { width:25px !important; height:26px !important; float:right !important; vertical-align:middle !important; padding-top:4px !important;}

.datagroup-2   { width: 880px !important; margin-bottom:20px !important;}
.column-6    { width:560px !important; float:left !important;}
.column-7   { width:320px !important; float:right !important;}

.datagroup-3   { width: 860px !important; margin-bottom:15px !important; }
.column-8    { width:270px !important; float:left !important; vertical-align:middle !important; border:solid 1px #ccc !important; padding: 8px 10px 8px 10px !important; background-color:#fff !important;}
.column-9   { width:301px !important; float:right !important; vertical-align:middle !important; line-height:24px !important; margin-bottom:5px !important; text-align:left !important;}
.column-10    { width:237px !important;  float:left !important; vertical-align:middle !important; margin-left:30px !important; line-height:24px !important; margin-bottom:5px !important; text-align:left !important; }

.datagroup-4   { width: 832px !important; margin-bottom:20px !important;}
.column-11    { width:288px !important; float:left !important; vertical-align:middle !important; padding-top:5px !important;}
.column-12   { width:544px !important; float:right !important;}

.datagroup-5   { width: 860px !important; margin-bottom:20px !important;}

.table-1 {
		border:0px !important;
		text-align:center !important;
		width: 100% !important;
		max-width: 100% !important;}

.special-deal-scope .table-1 th.cabincategory-1,
.special-deal-scope .table-1 th.cabincategory-2 {
	padding: 8px 6px !important;
}

.special-deal-scope .table-1 td.pricing-1,
.special-deal-scope .table-1 td.pricing-2 {
	padding: 15px 10px !important;
}

	.table-1 .maintext-1{
		font-size: 12px !important;
		font-weight: 600 !important;
		color: #5b5b5d
	}

		
.table-2 {
		border:0px !important;
		text-align:center !important;
		margin-bottom:42px !important;
		/*width:860px;*/
		width: 100%;
		max-width: 100%
		}

		.special-deal .table-2 {
			table-layout: fixed !important;
			display: table !important;
			width: 100% !important;
		}

		.special-deal .table-2 thead,
		.special-deal .table-2 tbody {
			display: table-row-group !important;
		}

		.special-deal .table-2 tr {
			display: table-row !important;
		}

		.special-deal .table-2 th,
		.special-deal .table-2 td {
			display: table-cell !important;
		}

		.table-2 .title-2{
			color: #4c7db5 !important;
			font-weight: 800
		}
		.table-2 .maintext-1{
			color: #fff
		}
		.table-2 .btn{
			text-transform: none !important;
			color: #fff!important;
			width: 100% !important;
			height: 40px !important;
			padding: 0 8px !important;
			font-size: 12px !important;
			line-height: 40px !important;
			font-weight: 600 !important;
			white-space: nowrap !important;
			overflow: hidden !important;
			text-overflow: ellipsis !important;
		}
		.table-2 td{
			font-size:18px !important;
			font-weight: 700 !important;
			color: #4c7db5 !important;
		/*	border-top: solid 1px #fff; */
			border-bottom: solid 1px #f7f7f7; 

			vertical-align:middle !important;
			text-align:center !important;
			padding: 10px !important;
			border-left: solid 1px #fff !important;  
			background: #ffffff !important;
			/*text-transform:uppercase;*/
		}
			.table-2 td a{
				color: #4c7db5 !important;
			}

		.table-2 tbody td.link-2{
			background: #ffffff !important;
			border: none !important;
			min-width: 150px !important;
			width: 150px !important;
			max-width: 150px !important;
			padding: 10px 5px !important;
		}
		.table-2 tbody td.link-2 .btn{
			overflow: visible !important;
			text-overflow: clip !important;
			white-space: nowrap !important;
			font-size: 11px !important;
			padding: 0 8px !important;
			width: 100% !important;
			box-sizing: border-box !important;
			height: 40px !important;
			line-height: 40px !important;
			display: inline-block !important;
			border-radius: 4px !important;
			background-color: #2962d1 !important;
			border: 1px solid #2962d1 !important;
		}
		.table-2 tbody tr:first-child td{
			background-color: #4c7db5 !important;
			color:#fff !important;
			border-bottom: none !important;
		}
		
		/* Ensure CHECK AVAILABILITY button in first row matches View Cruise style */
		.table-2 tbody tr:first-child td.link-2,
		.table-2 tbody tr:first-child td.link-2 .btn,
		.table-2 tbody tr:first-child td.link-2 .btn-orange {
			background-color: transparent !important;
			color: #ffffff !important;
		}

		.table-2 tbody tr:first-child td.link-2 .btn {
			background-color: #2962d1 !important;
			border-color: #2962d1 !important;
			color: #ffffff !important;
		}
		.table-2 tbody tr:nth-child(even) td{
			background: #f9fcfe !important;
			color: #1c2945 !important;
		}
		.table-2 tbody tr:nth-child(even) td a{
			color: #1c2945 !important;
		}
		.table-2 td .phone-number{
			font-size: 14px !important;
		}

		
	
/*********************************content*************************************/
	
.box-padding {padding:16px 19px 20px 19px !important;}

.box {position:relative !important; /*border:1px solid #fff;	background-color: #f9f9f9 !important;*/}

/************ links **********************/

.link-1 {
	display:inline-block !important;
	color:#06C !important; 
	font-size:14px !important;
	
}
.link-1:hover {
	color:#6FBF44 !important;
}

.link-2 
	{padding:5px !important;
	vertical-align:middle !important;}
	
/*.link-3
	{display:inline-block !important;
	color:#fff !important;}

.link-3:hover {
	color:#6FBF44 !important;
}*/

.trip-info{
	border: 1px solid #c2c2c2 !important;
	margin-bottom: 30px !important;
	background: #fff !important;
	/*padding:20px 15px;*/
	position: relative;
}
.trip-info-content{
	padding: 10px 15px 10px 15px !important;
}
.trip-info-title{
	background-color: #EEE !important;
	font-size: 18px !important;
	padding: 8px 15px !important;
	margin: 0 !important;
}
.trip-info-content .col-sm-4,
.trip-info-content .col-sm-4 .logo:first-child {
	position: static !important;
	transform: none !important;
	margin: 0 !important;
	top: auto !important;
}
.trip-info .col-sm-4:first-of-type, .trip-info .col-sm-4:first-of-type .logo:first-child {
	margin: 0 !important;
    transform: none !important;
    position: static !important;
    top: auto !important;
}

/* Override absolute positioning for Vacation Inclusions content columns */
.trip-info-content .col-sm-4,
.trip-info-content .col-sm-4:first-of-type,
.trip-info-content .col-sm-4:first-of-type .logo:first-child {
	position: static !important;
	transform: none !important;
	margin: 0 !important;
	top: auto !important;
	left: auto !important;
}
.trip-info .col-sm-4:first-of-type .logo:first-child img {
	    max-width: 85% !important;
}
.trip-info .col-sm-4:nth-of-type(2) {
	margin-left: 33.33% !important;
}

/* Remove margin offset for Vacation Inclusions content area */
.trip-info-content .col-sm-4:nth-of-type(2) {
	margin-left: 0 !important;
}

.trip-info-content .col-sm-4:nth-of-type(3) {
	margin-left: 0 !important;
}

/* Ensure all Vacation Inclusions columns display properly */
.special-deal .trip-info-content .col-sm-4 {
	float: left !important;
	width: 33.3333% !important;
	position: static !important;
	margin-left: 0 !important;
}
.trip-info .viplogo img{
	max-width: 55% !important;
}
.trip-info .logo img{
	max-width: 70% !important;
	display: block !important;
	margin: 0 auto !important;
}

/* Calendar logo positioning */
.list-1 .logo img {
	float: none !important;
	display: inline-block !important;
	margin-right: 8px !important;
	max-width: 20px !important;
	vertical-align: middle !important;
}

.list-1 {
	display: flex !important;
	align-items: center !important;
	flex-wrap: wrap !important;
	margin-bottom: 15px !important;
}
.trip-info .viplogo{
	margin-bottom: 30px
}
.trip-info .vip-logo{
	margin-bottom: 15px
}
.price-info{
	margin-bottom:40px !important; 
	clear: both !important;
	width: 100% !important;
	display: block !important;
}

.special-deal .price-info > .col-sm-4 {
	width: 100% !important;
	float: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.special-deal .price-info::after,
.special-deal .trip-info::after {
	content: "" !important;
	display: table !important;
	clear: both !important;
}

.special-deal .cstm-row::after {
	content: "" !important;
	display: table !important;
	clear: both !important;
}

.special-deal-scope::after {
	content: "" !important;
	display: table !important;
	clear: both !important;
}

.special-deal-scope {
	min-height: 100vh !important;
	height: 100% !important;
}

.special-deal-scope .main,
.special-deal-scope .wrapper {
	min-height: 100% !important;
}

.footer-class {
	clear: both !important;
	font-size: 16px !important;
}

.footer-class footer {
	margin-top: 0 !important;
}

.footer-class .footer_component {
	font-size: 16px !important;
}

@media (max-width: 767px) {
	.special-deal-scope,
	.special-deal-scope .bg-bot,
	.special-deal-scope .main,
	.special-deal-scope .wrapper {
		overflow: visible !important;
		overflow-x: hidden !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}

	.special-deal-scope {
		min-height: auto !important;
		height: auto !important;
	}

	.special-deal-scope .bg-bot {
		padding-bottom: 0 !important;
	}

	.footer-class {
		position: relative !important;
		clear: both !important;
		margin-top: 0 !important;
		z-index: 1 !important;
	}
	
	.price-info .btn {
		margin-left: 0 !important;
		margin-right: 0 !important;
		width: 100% !important;
		box-sizing: border-box !important;
	}
}

/* Special deal two-column layout alignment */
@media (min-width: 768px) {
	.special-deal .price-info > .col-sm-4 {
		float: left !important;
		width: 33.3333% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.special-deal .price-info > .col-sm-8 {
		float: left !important;
		width: 66.6667% !important;
		padding-left: 15px !important;
		padding-right: 0 !important;
	}

	.special-deal .price-info .col-sm-6 {
		float: left !important;
		width: 50% !important;
	}
}

@media (min-width: 992px) {
	.special-deal .price-info > .col-sm-4 .col-sm-6 {
		float: left !important;
		width: 50% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		padding-right: 5px !important;
	}

	.special-deal .price-info > .col-sm-4 .col-sm-6 + .col-sm-6 {
		margin-top: 0 !important;
		padding-right: 0 !important;
		padding-left: 5px !important;
	}
}

@media (max-width: 767px) {
	.special-deal .price-info > .col-sm-4,
	.special-deal .price-info > .col-sm-8,
	.special-deal .price-info .col-sm-6 {
		float: none !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .cstm-row {
		display: flex !important;
		flex-wrap: nowrap !important;
		gap: 5px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 {
		flex: 1 !important;
		width: calc((100% - 5px) / 2) !important;
		padding-left: 0px !important;
		padding-right: 0px !important;
		margin-bottom: 0px !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 .btn {
		width: 100% !important;
		height: 45px !important;
		line-height: 45px !important;
		font-size: 12px !important;
	}
	
	.special-deal .price-info {
		overflow: visible !important;
		overflow-x: hidden !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
	
	.special-deal .price-info > .col-sm-4 {
		padding: 0 !important;
		margin: 0 !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .row {
		width: 100% !important;
		max-width: 100% !important;
		margin-left: 0 !important;
		margin-right: 0 !important;
		box-sizing: border-box !important;
	}
	
	.special-deal .sailing-dates {
		overflow-x: auto !important;
		width: 100% !important;
	}
	
	.special-deal .table-2 {
		width: 100% !important;
		font-size: 12px !important;
	}
	
	.special-deal .table-2 th,
	.special-deal .table-2 td {
		padding: 8px 4px !important;
		font-size: 11px !important;
	}
	
	.table-2 tbody td.link-2 {
		min-width: 100px !important;
		width: 100px !important;
		max-width: 100px !important;
		padding: 8px 2px !important;
	}
	
	.table-2 tbody td.link-2 .btn {
		font-size: 12px !important;
		padding: 0 6px !important;
		height: 44px !important;
		line-height: 44px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .col-sm-6 {
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	.special-deal .table-2 {
		overflow-x: hidden !important;
		width: 100% !important;
		max-width: 100% !important;
		box-sizing: border-box !important;
	}
}
	
.price-info .btn{
	width: 100% !important;
	height: 45px !important;
	min-height: 45px !important;
	text-transform: none !important;
	font-size: 13px !important;
	line-height: 45px !important;
	padding: 0 12px !important;
	box-sizing: border-box !important;
	display: block !important;
	float: none !important;
	margin-bottom: 4px !important;
	margin-top: 0 !important;
	white-space: nowrap !important;
	overflow: hidden !important;
	text-overflow: ellipsis !important;
	border: none !important;
}
.price-info .check{
	white-space: nowrap !important;
}
.price-info .btn-orange{
	text-transform: uppercase !important;
	font-size: 14px !important;
	margin-bottom: 4px !important;
}

/* Top CHECK AVAILABILITY button - Orange with blue hover */
.special-deal .price-info .btn-orange {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
	height: 45px !important;
	line-height: 45px !important;
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	box-sizing: border-box !important;
	text-align: center !important;
	margin-bottom: 8px !important;
}

/* Specific spacing for the top CHECK AVAILABILITY button */
.special-deal .price-info .btn-orange.check {
	margin-left: 20px !important;
	margin-bottom: 0 !important;
}

.special-deal .price-info .btn-orange:hover {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
}

/* Quote Request button - Blue style */
.special-deal .price-info .btn-info {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
	margin-bottom: 8px !important;
	height: 45px !important;
	line-height: 45px !important;
	width: 100% !important;
	min-width: 100% !important;
	max-width: 100% !important;
	display: block !important;
	box-sizing: border-box !important;
	text-align: center !important;
}

/* Normalize any manual margins added via inline styles */
.special-deal .price-info .btn,
.special-deal .price-info .btn-orange,
.special-deal .price-info .btn-info {
	margin-left: 0 !important;
	margin-right: 0 !important;
}

.special-deal .price-info .cstm-row .btn-info {
	margin: 0 !important;
}

.special-deal .sidebar-buttons .btn-orange,
.special-deal .sidebar-buttons .btn-info {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
}

/* Fix btn-info color for View Cruise buttons on special-deal pages */
.special-deal .btn-info {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
}

.price-info .btn + .btn {
	margin-top: 0 !important;
}

.price-info .row::after {
	content: "" !important;
	display: table !important;
	clear: both !important;
}
/* Special deal CTA color standardization */
.special-deal .btn,
.special-deal .btn-info,
.special-deal .btn-orange {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
}

.special-deal .price-info .btn,
.special-deal .sidebar-buttons .btn {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
	background-image: none !important;
}

/* Departure table CHECK AVAILABILITY button - Solid blue matching View Cruise */
.special-deal .table-2 .btn-orange,
.special-deal .table-2 .link-2 .btn-orange {
	background-color: #2962d1 !important;
	background-image: none !important;
	border: none !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	height: 45px !important;
	line-height: 45px !important;
	width: 100% !important;
	padding: 0 12px !important;
	box-sizing: border-box !important;
	display: block !important;
	font-size: 13px !important;
	text-transform: uppercase !important;
}

.special-deal .table-2 .btn-orange:hover,
.special-deal .table-2 .link-2 .btn-orange:hover {
	background-color: #2962d1 !important;
	color: #ffffff !important;
	border-color: #2962d1 !important;
}

/* View Cruise button in departure table - Blue solid style */
.special-deal .table-2 .btn-info,
.special-deal .table-2 .link-2 .btn-info {
	background-color: #2962d1 !important;
	background-image: none !important;
	border: none !important;
	color: #ffffff !important;
	font-weight: 600 !important;
	height: 45px !important;
	line-height: 45px !important;
	width: 100% !important;
	padding: 0 12px !important;
	box-sizing: border-box !important;
	display: block !important;
	font-size: 13px !important;
}

.special-deal .table-2 .btn-info:hover,
.special-deal .table-2 .link-2 .btn-info:hover {
	background-color: #2962d1 !important;
	color: #ffffff !important;
}

.btn-orange {
	background-color: #ff8c00 !important;
	border-color: #ff8c00 !important;
	color: #ffffff !important;
	background-image: none !important;
}

.btn-orange:hover {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
}

.special-deal .btn:hover,
.special-deal .btn:focus,
.special-deal .btn-info:hover,
.special-deal .btn-info:focus,
.special-deal .btn-orange:hover,
.special-deal .btn-orange:focus {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
}

/* Special deal CTA alignment and no-overlap safeguards */
.special-deal .table-2 .link-2 {
	position: static !important;
	vertical-align: middle !important;
	text-align: center !important;
}

.special-deal .table-2 .link-2 a,
.special-deal .table-2 .link-2 .btn {
	display: block !important;
	width: 100% !important;
	max-width: 100% !important;
	margin: 0 auto !important;
	white-space: nowrap !important;
	float: none !important;
	position: static !important;
}

.special-deal .table-2 td {
	vertical-align: middle !important;
}


@media (min-width: 768px) {
	.special-deal .price-info > .col-sm-4 .row,
	.special-deal .price-info > .col-sm-4 .cstm-row {
		display: flex !important;
		flex-wrap: nowrap !important;
		gap: 10px !important;
	}

	.special-deal .price-info > .col-sm-4 .row > [class*="col-"],
	.special-deal .price-info > .col-sm-4 .cstm-row > [class*="col-"] {
		flex: 1 !important;
		width: calc((100% - 10px) / 2) !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
		margin-right: 0 !important;
	}

	.special-deal .price-info > .col-sm-4 .col-sm-6 {
		flex: 1 !important;
		width: calc((100% - 10px) / 2) !important;
		margin-right: 0 !important;
	}

	.special-deal .price-info > .col-sm-4 .col-sm-6 + .col-sm-6 {
		margin-right: 0 !important;
	}

	.special-deal .price-info .col-sm-6 .btn {
		height: 45px !important;
		line-height: 45px !important;
		font-size: 13px !important;
		margin-bottom: 10px !important;
	}
}
.sailing-dates .headline h3{
	color: #1b2944 !important;
	font-size: 35px !important;
	font-weight: normal !important;
	padding-bottom: 5px !important;
	border-bottom: 5px solid #4c7db5 !important;
	margin-bottom: 20px !important;
}
.sailing-dates .headline h3 strong{
	text-transform: uppercase !important;
}

.trip-description{
	font-size: 17px !important;
	color: #59595b !important;
	font-family: MyriadPro-Regular, 'Myriad Pro Regular', MyriadPro, 'Myriad Pro', Helvetica, Arial, sans-serif !important;
}
.trip-description p{
margin-bottom: 0 !important;
}
.trip-name{
	font-size: 18px !important;
	color: #1c2945 !important;
	font-size: 21px !important;
	margin-bottom: 15px !important;
}
.title-trip-name{
	font-size: 20px !important;
	color: #1c2945 !important;
	margin-bottom: 15px !important;
	font-weight: 600 !important;
	line-height: 1.4 !important;
}

/* Keep calendar icon and link aligned on one line */
.title-trip-name span {
	display: inline-flex !important;
	align-items: center !important;
	gap: 6px !important;
	white-space: nowrap !important;
}

.title-trip-name span .logo {
	display: inline-flex !important;
	align-items: center !important;
}

.title-trip-name span .logo img {
	display: inline-block !important;
	margin: 0 !important;
	max-width: 16px !important;
	vertical-align: middle !important;
}
div[class^='image-container-hotel']{
	
    max-width: 300px !important;
    
}
.image-container{
	/*overflow: hidden;
	position: relative !important;
		display: inline-block !important;*/
	margin: 0 auto;
    max-width: 300px !important;
    opacity:0 !important;
}
.image-container.loaded{
	opacity:1 !important;
}
.image-container .buttons{
	/*background: #ebebeb;*/
	padding: 5px
}
.image-container  img{
	max-width: 100% !important;
	max-height:100% !important;
}
.image-container .slick-slide{
	height:200px !important;
}

.image-container .slick-dots{
	position: absolute !important;
	bottom: 0 !important;
	top:auto !important;
	background: rgba(89,89,91,0.9) !important;
	text-align: right !important;
	margin:0 !important;
}
.image-container .slick-dots li button{
	border-radius: 50% !important;
	background: #ffffff !important;
	height: 10px !important;
	width: 10px !important;
}

.image-container .slick-dots li{
	margin:0 !important;
}

.image-container .slick-dots li.slick-active button{
background: #f58521 !important;
-webkit-box-shadow: inset 1px -1px 2px 0px #674719 !important;
-moz-box-shadow: inset 1px -1px 2px 0px #674719 !important;
box-shadow: inset 1px -1px 2px 0px #674719 !important;
}
.image-container .slick-dots li button:before{
	display: none!important;
}

.image-container .slick-dots li + li{
	margin-left: 5px !important;
}
.image-container .slick-slider{
	margin-bottom: 0
}
.call-info-line{
	position: absolute !important;
	width: 100% !important;
	left: 0 !important;
	bottom: 0 !important;
	background: #e8e8e8 !important;
	color: #4b7db2 !important;
	padding: 5px !important;
	font-weight: bold !important;
}
.bg-bot{
	position: relative !important;
	padding-bottom: 35px
	
}
#back{
	text-transform: none !important;
	margin-bottom: 40px !important;
}
#back .fa{
	position: relative !important;
	left: -5px !important;
	padding: 0 10px 0 0 !important;
	margin-right: 5px !important;
}
#back .fa:after{
	content: '' !important;
    position: absolute !important;
    width: 1px !important;
    background: #a3bad9 !important;
    right: 0 !important;
    height: 36px !important;
    top: -10px !important;
}
.sidebar-buttons {
	padding-top:10px !important;
	display: flex !important;
	flex-direction: column !important;
	gap: 10px !important;
}
.sidebar-buttons .btn{
		display:block !important;
		width: 100% !important;
		height: 40px !important;
		min-height: 40px !important;
		line-height: 40px !important;
		padding: 0 12px !important;
		font-size: 13px !important;
		white-space: nowrap !important;
		overflow: hidden !important;
		text-overflow: ellipsis !important;
		margin-bottom: 0 !important;
		clear: both !important;
		background-color: #2962d1 !important;
		border-color: #2962d1 !important;
		color: #ffffff !important;
}

.sidebar-buttons .btn + .btn {
	margin-top: 0 !important;
}

@media screen and (max-width: 1230px) {
.price-info .btn{
	padding: 0 10px !important;
	font-size: 14px !important;
	line-height: 45px !important;
}
}
@media screen and (max-width: 1023px) {
	.specials-page .header,
	.specials-page .datagroup-3,
	.specials-page  .datagroup-2,
	.specials-page .datagroup-1,
	.specials-page .datagroup-5,
	.specials-page .column-9,
	.specials-page .column-8,
	.specials-page .column-6,
	.specials-page .column-7,
	.specials-page .column-10,
	.specials-page .column-11,
	.specials-page .column-12{
		width:100% !important;
	}
	
		.specials-page .column-6  table{
			width:100%!important;
		}
		
			.specials-page .column-6  table .no-mobile
	{
			display:none !important;}
	
		.specials-page .column-9,		
		.specials-page .column-10{
	padding-left:20px !important;
	margin-left:0 !important;}
		
		.specials-page  .sidebar{
			width:auto !important;
			text-align:center !important;
		}

	.specials-page .column-11,
		.specials-page .column-6{
	margin-bottom:10px}
	.specials-page{
	margin:0}
	.specials-page .table-2,
	.specials-page .table-1{
	width:100% !important;}
	
	.specials-page .header .title-2{
	line-height:normal}
	.specials-page .tcs{padding:0 !important;text-align:center !important;width:100%}
	.specials-page .table-2 td{
	width:20%!important;}
	.specials-page .table-2 tr:first-child  td:last-child{
	display:none !important;}
	
	.specials-page .table-2 .pricing-4,
	.specials-page .table-2 .title-2,
			.specials-page .table-1 .pricing-1,
		.specials-page .table-1 .pricing-2,
		.specials-page .table-1 .title-2{
	font-size:12px !important;}
	.specials-page  .buttons .column-1{display:none !important;}
		.specials-page .table-2 .pricing-4{
		line-height:28px !important;}
		.specials-page .datagroup-5{
		position:relative !important;
		}
		
		.specials-page .table-2{
			margin-bottom:40px !important;
		}

		.specials-page .table-2 .link-2 a{
		display:block !important;
		position: static !important;
		bottom: auto !important;
		left: auto !important;
		margin-left: 0 !important;
		transform: none !important;
		text-align: center !important;
	}

	.specials-page .table-2 .link-2 {
		position: static !important;
		padding-top: 8px !important;
		padding-bottom: 8px !important;
	}
}

@media screen and (max-width: 991px) {
	.main.special-deal,
	.special-deal .cstm-container,
	.special-deal.cstm-container {
		max-width: 100% !important;
		padding-left: 16px !important;
		padding-right: 16px !important;
	}

	.special-deal .cstm-row {
		margin-left: 0 !important;
		margin-right: 0 !important;
	}

	.special-deal [class*="col-"] {
		float: none !important;
		width: 100% !important;
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	.special-deal .preheader {
		flex-wrap: wrap !important;
		justify-content: center !important;
		gap: 12px !important;
	}

	.special-deal .preheader .logo,
	.special-deal .preheader .ejlogo,
	.special-deal .preheader .viplogo,
	.special-deal .preheader .airlogo {
		width: 100% !important;
		text-align: center !important;
	}

	.special-deal .preheader img {
		float: none !important;
		display: inline-block !important;
		margin: 0 auto !important;
		max-width: 100% !important;
		height: auto !important;
	}

	.special-deal .sidebar {
		max-width: 100% !important;
	}

	.special-deal table {
		display: block !important;
		width: 100% !important;
		overflow-x: auto !important;
		-webkit-overflow-scrolling: touch;
	}
}

@media screen and (max-width: 767px) {
	.specials-page {
		margin: 16px 0 !important;
	}

	.title-trip-name {
		font-size: 18px !important;
	}

	.trip-description {
		font-size: 15px !important;
	}

	.price-info .btn {
		min-height: 44px !important;
		font-size: 15px !important;
		line-height: 1.2 !important;
		padding: 10px 12px !important;
	}
}

@media screen and (max-width: 479px) {
	.special-deal .cstm-container,
	.special-deal.cstm-container {
		padding-left: 12px !important;
		padding-right: 12px !important;
	}

	.title-trip-name {
		font-size: 16px !important;
	}

	.sailing-dates .headline h3 {
		font-size: 26px !important;
	}
}

@media (max-width: 768px) {
	.trip-info .col-sm-4:first-of-type {
		position: static !important;
		transform: translate(0,0) !important;
	}
	.trip-info .col-sm-4:nth-of-type(2) {
		margin-left: 0 !important;
	}
}
@media only screen and (min-width: 320px) and (max-width: 667px) {
	.bg-bot{
		padding-bottom: 0 !important;
	}
	.pricing-1,.pricing-2 {
			  padding:5px
	}
	.special-deal-scope .table-1 td.pricing-1,
	.special-deal-scope .table-1 td.pricing-2 {
		padding: 5px !important;
	}
	.cabincategory-1, .cabincategory-2{
		font-size:12px !important;
		text-transform:none !important;
	}
	.itinerary-1,
.itinerary-2,
.itinerary-3,
.itinerary-4,
.itinerary-5,
.itinerary-6,
.itinerary-7{
	font-size:11px !important;
	padding:3px !important;
}
.trip-info{
	margin-top:0px !important;
	margin-bottom:20px !important;
}
#back{
	margin-bottom:10px !important;
	margin-top:10px !important;
}
.table-1{
	margin-top:10px !important;
}
.itinerary-5{
	width: 40% !important;
}
}

.trip-info .ejlogo{
        margin-bottom: 17px !important;
    margin-top: 20px !important;
}

.trip-info .ejlogo img{
height:25px !important;
}

/* Vacation Inclusions section header styling */
.special-deal .maintext-2 {
	background-color: #f5f5f5 !important;
	padding: 15px !important;
	margin-bottom: 15px !important;
	border-top: 3px solid #2962d1 !important;
}

.special-deal .maintext-2 h3 {
	color: #1c2945 !important;
	font-size: 18px !important;
	font-weight: 600 !important;
	margin-bottom: 15px !important;
	margin-top: 0 !important;
}

/* Better spacing for list items in inclusions */
.special-deal .maintext-2 .list-1 {
	margin-bottom: 8px !important;
	line-height: 1.5 !important;
}

/* Improve header section */
.special-deal .specials-page .header {
	margin-bottom: 20px !important;
}

.special-deal .specials-page .header p {
	margin-bottom: 10px !important;
}

/* Improve button spacing in price-info left column */
.special-deal .price-info > .col-sm-4 > a {
	display: block !important;
	margin-bottom: 8px !important;
	clear: both !important;
	position: relative !important;
	z-index: 1 !important;
	float: none !important;
	height: 45px !important;
	line-height: 45px !important;
}

.special-deal .price-info > .col-sm-4 > a + a {
	margin-top: 0px !important;
}

/* Ensure Shore Excursions and Need Help row spacing */
.special-deal .price-info .cstm-row {
	margin-top: 0px !important;
	margin-bottom: 15px !important;
	display: flex !important;
	flex-wrap: nowrap !important;
	gap: 5px !important;
	align-items: stretch !important;
	width: 100% !important;
}

.special-deal .price-info .cstm-row .col-sm-6 {
	padding: 0 !important;
	flex: 1 1 0 !important;
	width: auto !important;
	float: none !important;
	min-width: 0 !important;
}

.special-deal .price-info .cstm-row .col-sm-6:first-child {
	padding: 0 !important;
}

.special-deal .price-info .cstm-row .col-sm-6:last-child {
	padding: 0 !important;
}

.special-deal .price-info .cstm-row .col-sm-6 .btn-info {
	background-color: #2962d1 !important;
	border-color: #2962d1 !important;
	color: #ffffff !important;
	width: 100% !important;
	margin-bottom: 0px !important;
	height: 45px !important;
	line-height: 45px !important;
	display: block !important;
	font-size: 13px !important;
}

.special-deal .price-info .cstm-row .col-sm-6 .btn-info:hover {
	background-color: #2962d1 !important;
	color: #ffffff !important;
}

.special-deal .trip-info .trip-info-content .col-sm-4:first-of-type,
.special-deal .trip-info .trip-info-content .col-sm-4:first-of-type .logo:first-child {
	position: static !important;
	transform: none !important;
	margin: 0 !important;
	top: auto !important;
}

/* Remove top border from first Vacation Inclusions column to eliminate line artifact */
.special-deal .trip-info .trip-info-content .col-sm-4:first-child .maintext-2 {
	border-top: none !important;
	padding-top: 0 !important;
	background: transparent !important;
}

/* Remove background and border from all Vacation Inclusions columns */
.special-deal .trip-info .trip-info-content .maintext-2 {
	background: transparent !important;
	border-top: none !important;
	padding: 0 !important;
	margin: 0 !important;
}

@media print {
    div.topbar.navbar-fixed-top {
        position: absolute !important;
        min-height:0 !important;
    }
    header{
        border-top-width:59px !important;
    }
    .topbar{
        min-height:0!important;
    }
    .topbar .topbar-logo{
        padding:5px 0 !important;
    }
    .topbar .topbar-phone{
        padding-top:0 !important;
    }
    .topbar .topbar-phone span {
        color:#fff!important;
    }
    div.container.main-container {
        padding-top: 0
    }
    div.topbar.navbar-fixed-top a:after{
        display:none !important;
    }

    .topbar .topbar-phone .request {
        display: none !important;
    }   
	.topbar.container>.cstm-row>div{
        width: 50% !important;
    }
    .topbar .topbar-logo img {
        max-height:50px !important;
    }


    .big-wrapper .col-none  a {
        display: none !important;
    }


    .big-wrapper span {
        font-size: 40px !important;
    }
    .topbar {
        font-size: 40px !important;
    }
    .main {
        padding-top: 5px !important;
    }
    .pricing-1, .pricing-2{
        padding:5px !important;
        font-size:18px !important;
    }
    .price-info,.trip-info{
        margin-bottom:10px
    }

    /*
    .topbar .phone-number span {
            font-size: 50px!important;
            color:#fff!important;
        }*/

    .price-info .btn {
        display: none !important;
    }

    .bg-bot .image-container {
        display: none !important;
    }
    .colfull {
    width: 100% !important;
    max-width: none !important;
    }
    /*.sidebar {
     width: 100% !important;
     max-width: none !important;
    }*/
     .big-wrapper .bg-bot  .btn a {
        display: none !important;
    }
    .table-2 .btn {
    display: none !important;
    }
    .btn-info {
        display: none !important;
    }
    .call-info-line {
        font-weight: 100 !important;
        }
    footer {
        display: none !important;
    }
    .col-sm-4.colfull {
        page-break-after: always !important;
        font-size:12px
    }

    .trip-info .viplogo img{
        max-width:270px!important;
    }
    .trip-info .logo img{
        width: 200px!important;
    }
    .trip-info{
        padding:15px
    }
    .header h2{
        font-size:20px !important;
    }
    .trip-name{
        font-size:18px !important;
    }
    .list-1 a:after {
        content:"" !important;
    }
}

/* ============================================================
   RESPONSIVE DESIGN FOR ALL DEVICES
   Mobile-First Approach
   ============================================================ */

/* Extra Small Devices (< 480px) */
@media (max-width: 479px) {
	.special-deal .price-info {
		padding: 10px !important;
		width: 100% !important;
	}

	.special-deal .price-info > .col-sm-4 {
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	.price-info .btn {
		height: 38px !important;
		line-height: 38px !important;
		font-size: 11px !important;
		margin-bottom: 6px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .btn-orange,
	.special-deal .price-info .btn-info {
		height: 38px !important;
		line-height: 38px !important;
		margin-bottom: 6px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .cstm-row {
		flex-wrap: nowrap !important;
		gap: 8px !important;
		margin-bottom: 15px !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 {
		flex: 1 !important;
		width: calc((100% - 8px) / 2) !important;
		padding: 0 !important;
		min-width: 0 !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 .btn-info {
		height: 34px !important;
		line-height: 34px !important;
		font-size: 10px !important;
		width: 100% !important;
	}
	
	.special-deal .table-2 {
		font-size: 11px !important;
	}
	
	.table-2 tbody td.link-2 .btn {
		font-size: 11px !important;
		height: 40px !important;
		line-height: 40px !important;
	}
	
	/* Departure table responsive - Mobile views */
	.special-deal .table-2 {
		font-size: 11px !important;
		width: 100% !important;
	}
	
	.special-deal .table-2 thead {
		display: none !important;
	}
	
	.special-deal .table-2 tbody tr {
		display: flex !important;
		flex-wrap: nowrap !important;
		align-items: center !important;
		gap: 10px !important;
		margin-bottom: 8px !important;
		padding: 8px 10px !important;
		background: transparent !important;
		border-bottom: 1px solid #e0e0e0 !important;
	}
	
	.special-deal .table-2 tbody tr:first-child {
		background: #4c7db5 !important;
		color: #ffffff !important;
		border-bottom: none !important;
	}
	
	.special-deal .table-2 tbody td {
		padding: 0 !important;
		border: none !important;
		background: transparent !important;
		display: none !important;
	}
	
	/* Show only the first column (date/start) */
	.special-deal .table-2 tbody td:first-child {
		display: block !important;
		flex: 0 0 auto !important;
		min-width: 90px !important;
		text-align: left !important;
		font-weight: 700 !important;
		font-size: 13px !important;
	}
	
	/* Show only the last column (button) */
	.special-deal .table-2 tbody td.link-2 {
		display: block !important;
		flex: 1 !important;
		text-align: right !important;
		padding: 0 !important;
		min-width: 0 !important;
		width: auto !important;
		max-width: none !important;
	}
	
	/* Override legacy hide rule for the first row button */
	.specials-page .table-2 tbody tr:first-child td.link-2,
	.specials-page .table-2 tbody tr:first-child td:last-child {
		display: block !important;
	}
	
	.special-deal .table-2 tbody td.link-2 .btn {
		font-size: 11px !important;
		height: 40px !important;
		line-height: 40px !important;
		padding: 0 15px !important;
		white-space: nowrap !important;
		width: auto !important;
		min-width: 140px !important;
	}
}

/* Small Devices (480px - 767px) */
@media (min-width: 480px) and (max-width: 767px) {
	.special-deal .price-info {
		padding: 15px !important;
		width: 100% !important;
	}

	.special-deal .price-info > .col-sm-4 {
		width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	.price-info .btn {
		height: 40px !important;
		line-height: 40px !important;
		font-size: 12px !important;
		margin-bottom: 6px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .btn-orange,
	.special-deal .price-info .btn-info {
		height: 40px !important;
		line-height: 40px !important;
		margin-bottom: 6px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .cstm-row {
		flex-wrap: nowrap !important;
		gap: 8px !important;
		margin-bottom: 15px !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 {
		flex: 1 !important;
		width: calc((100% - 8px) / 2) !important;
		padding: 0 !important;
		min-width: 0 !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 .btn-info {
		height: 36px !important;
		line-height: 36px !important;
		font-size: 11px !important;
		width: 100% !important;
	}
	
	.special-deal .table-2 {
		font-size: 12px !important;
		width: 100% !important;
	}
	
	.table-2 tbody td.link-2 .btn {
		font-size: 12px !important;
		height: 44px !important;
		line-height: 44px !important;
		width: 100% !important;
	}

	.specials-page .table-2 tbody tr:first-child td.link-2,
	.specials-page .table-2 tbody tr:first-child td:last-child {
		display: table-cell !important;
	}
	
	.trip-info-content {
		padding: 10px 10px !important;
	}
}

/* Medium Devices - Tablets (768px - 991px) */
@media (min-width: 768px) and (max-width: 991px) {
	.special-deal .price-info {
		padding: 15px !important;
		width: 100% !important;
	}
	
	.price-info .btn {
		height: 45px !important;
		line-height: 45px !important;
		font-size: 13px !important;
		margin-bottom: 8px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .btn-orange,
	.special-deal .price-info .btn-info {
		height: 45px !important;
		line-height: 45px !important;
		margin-bottom: 8px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .cstm-row {
		gap: 8px !important;
		flex-wrap: nowrap !important;
		margin-bottom: 15px !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 {
		flex: 1 !important;
		width: calc((100% - 8px) / 2) !important;
		padding: 0 !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 .btn-info {
		height: 45px !important;
		line-height: 45px !important;
		font-size: 13px !important;
		width: 100% !important;
	}
	
	.special-deal .table-2 {
		font-size: 13px !important;
	}
	
	.table-2 tbody td.link-2 .btn {
		font-size: 13px !important;
		height: 45px !important;
		line-height: 45px !important;
		width: 100% !important;
	}
	
	.trip-info-content {
		padding: 15px 15px !important;
	}
}

/* Large Devices - Desktop (992px and above) */
@media (min-width: 992px) {
	.special-deal .price-info {
		padding: 20px !important;
		width: 100% !important;
		max-width: 100% !important;
		display: block !important;
	}
	
	.special-deal .price-info > .col-sm-4 {
		width: 33.3333% !important;
		float: left !important;
		padding: 0 !important;
		margin: 0 !important;
	}
	
	.special-deal .price-info > .col-sm-8 {
		width: 66.6667% !important;
		float: left !important;
	}

	.title-trip-name span {
		display: inline-flex !important;
		align-items: center !important;
		gap: 6px !important;
		white-space: nowrap !important;
	}

	.title-trip-name span .logo img {
		display: inline-block !important;
		margin: 0 !important;
		max-width: 16px !important;
		vertical-align: middle !important;
	}
	
	.price-info .btn {
		height: 45px !important;
		line-height: 45px !important;
		font-size: 13px !important;
		margin-bottom: 10px !important;
		width: 100% !important;
	}
	
	.special-deal .price-info .btn-orange,
	.special-deal .price-info .btn-info {
		height: 45px !important;
		line-height: 45px !important;
		width: 100% !important;
		margin-bottom: 10px !important;
	}
	
	.special-deal .price-info .cstm-row {
		gap: 10px !important;
		flex-wrap: nowrap !important;
		margin-bottom: 15px !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 {
		flex: 1 !important;
		width: calc((100% - 10px) / 2) !important;
		padding: 0 !important;
	}
	
	.special-deal .price-info .cstm-row .col-sm-6 .btn-info {
		height: 45px !important;
		line-height: 45px !important;
		font-size: 13px !important;
		width: 100% !important;
	}
	
	.special-deal .table-2 {
		font-size: 13px !important;
	}
	
	.table-2 tbody td.link-2 .btn {
		font-size: 13px !important;
		height: 45px !important;
		line-height: 45px !important;
		width: 100% !important;
	}
	
	.trip-info-content {
		padding: 20px 15px !important;
	}
}

