/* original */
/* aux classes */
.cf:before, .cf:after {
    content: " "; /* 1 */
    display: table; /* 2 */
}

.cf:after {
    clear: both;
}


/* style for loading spinner */
.deals-container{
	min-width: 100%;
	height: 100px;
	overflow: hidden;
	position: relative;
	transition: height 300ms linear;
	padding: 3px;
}

.deals-loading{
	position: absolute;
	height: 100%;
	width: 100%;
	left: 0px;
	top: 0px;
	background: url('../images/ajax-loader.gif') no-repeat;
	background-size: 50px 50px;
	background-position: right 50%;
	pointer-events: none;
}

.deals-loading span{
	position: relative;
	right: 60px;
	height: 100%;
	font-size: 26px;
	line-height: 100px;
}

.deals-request-form{
	display: block;
}

.packages-container {
	margin-top: 15px;
	margin-bottom: 70px;
}

/* styles for boxes */
a.single-package-link.single-box {
    display: block;
    width: 30%;
    margin-left: 1%;
    float: right;
    border-radius: 7px;
    padding: 0;
    height: auto;
    margin-bottom: 20px;
	text-align: right;
    transition: 300ms box-shadow linear;
}

a.single-package-link.single-box:hover {
	text-decoration: none;
	box-shadow: 0px 0px 4px 1px black;
}

a.single-package-link.single-box div.single-package-title-area {
    border-radius: 7px 7px 0px 0px;
    min-height: 105px;
    padding: 11px;
}

a.single-package-link.single-box div.single-package-title-area h4 {
    padding: 0px;
    margin: 0px;
    font-size: 16px;
    margin-bottom: 1px;
	font-weight: 400;
}

a.single-package-link.single-box div.single-package-title-area  span.deal-box-strong{
	font-weight: bold;
	font-size: 18px;
}

a.single-package-link.single-box div.single-package-title-area span.single-package-title-secondary {
    font-size: 14px;
}

a.single-package-link.single-box div.single-package-price-area {
    min-height: 36px;
    line-height: 36px;
    padding-right: 12px;
}

a.single-package-link.single-box div.single-package-price-area span.single-package-price {
    font-size: 20px;
    font-weight: bold;
    letter-spacing: 1px;
}



a.single-package-link.single-box div.single-package-price-area span.single-package-chevron {
    width: 15px;
    float: left;
    margin-left: 5px;
    font-size: 26px;
    font-weight: bold;
}

a.single-package-link.single-box div.single-package-image-holder {
    width: 100%;
    height: auto;
}

a.single-package-link.single-box div.single-package-image-holder img {
    width: 100%!important;
    display: block;
    margin: auto;
    border-radius: 0px 0px 7px 7px;

}

a.single-package-link.single-box div.single-package-ship-area {
    border-radius: 0px 0px 7px 7px;
    min-height: 65px;
    padding: 11px 11px 0px 11px;
	box-sizing: border-box;
}

a.single-package-link.single-box div.single-package-ship-area h4 {
    padding: 0px;
    margin: 0px;
    font-size: 20px;
    margin-bottom: 1px;
	text-align: center;
}

/* styles for the deal scroller */
div.deal-scroller-container{
	width: 100%;
}

div.deal-scroller-button.right{
	height: 100%;
	width: 8%;
	float: right;
	margin-right: 1%;
}

div.deal-scroller-button.left{
	height: 100%;
	width: 8%;
	float: left;
	margin-left: 1%;
}

div.deal-scroller-button{
	position: relative;	
}

div.deal-scroller-button i {
	position: absolute;
	top: 50%;
	font-size: 50px;
	margin-top: -5px;
	cursor: pointer;

}

div.deals-scroller-inner-container{
	float: left;
	width: 80%;
	margin-left: 1%;
	position: relative;
	box-sizing: border-box;
	-moz-box-sizing: boerder-box;
	overflow: hidden;
}

div.deals-scroller-inner-items{
	box-sizing: border-box;
	-moz-box-sizing: boerder-box;
	position: absolute;
	top: 0px;
	left: 0px;
	width: auto;
	overflow: visible;
	padding-top: 20px;
	transition: left 500ms ease-in 50ms;
}



div.deals-scroller-inner-items a.single-package-link{
	float: left;
	margin-left: 15px;
	margin-right: 15px;
	width: 45%;
	margin-bottom: 30px;
	height: 295px;
	overflow: hidden;
	border-radius: 7px;
}



div.deals-scroller-inner-items a.single-package-link .single-package-title-area{
	min-height: 105px;

}

/* responsive styles for scroller */
@media screen and (max-width:980px){

	div.deal-scroller-button.right{
		height: 100%;
		width: 10%;
		float: right;
		margin-right: 1%;
	}

	div.deal-scroller-button.left{
		height: 100%;
		width: 10%;
		float: left;
		margin-left: 1%;
	}

	div.deals-scroller-inner-container{
		float: left;
		width: 74%;
		margin-left: 1%;
		position: relative;
		box-sizing: border-box;
		-moz-box-sizing: boerder-box;
		overflow: hidden;

	}

	div.deals-scroller-inner-items a.single-package-link{
		float: left;
		margin-left: 15px;
		margin-right: 15px;
		width: 43%;
	}
}



@media screen and (max-width:500px){

	div.deals-scroller-inner-items a.single-package-link{
		float: left;
		margin-left: 15px;
		margin-right: 15px;
		width: 92%;
		height: 290px;
	}

}

/* list styles */

.package-list-item-logo{
	float: right;
	margin-left: 2%;
	width: auto;
	min-width:150px;
}



.package-list-item-info-container{
	float: right;
	width: 80%;
	min-width: 200px;
	max-width: 300px;
	margin-bottom: 1em;
}



.package-list-item .package-list-item-link{
	font-size: 1.4em;
	line-height: 1em;
	text-shadow: 1px 1px 3px rgba(0, 0, 0, 0.2);
}



.package-list-item-strong{
	font-weight: bold;
	font-size: 1.3em;
	line-height: 1.3em;
}



.package-list-item-separator{
	width: 95%;
	height: 0.2em;
	background: rgba(0, 0, 0, 0.3);
	margin: 2em 0 2em 0;
	clear: both;

}



.package-list-item:last-of-type .package-list-item-separator{
	background: transparent;
	margin: 0.5em;
}



/* list-all-prices style */

h4.list-prices-title{
	width: 100%;
	display: block;
	text-align: center;
	margin-bottom: 0px;
}



span.list-prices-inline-dsc{
	float: right;
	min-width: 66%;
}

span.package-list-prices-inline-prices{
	float: right;
	min-width: 30%;

}

a.package-list-item-link.list-prices{
	float: left;
	margin-left: 5%;
	margin-bottom: 10px;
}

.list-prices-price{
	display: inline-block;
	float: right;
	padding: 0px 14px;
	position: relative;
	line-height: 14px;
}

.list-prices-price:after{
	content : ' ';
	top: 0px;
	left: 0px;
	height: 14px;
	width: 1px;
	background: black;
	position: absolute;
	
}

.list-prices-price:first-of-type{
	padding-right: 0px;
}

.list-prices-price:last-of-type:after{
	display: none;
}

.list-prices-price.list-prices-tax{
	display: inline-block;
	float: right;

	padding: 0px 14px;
}

.list-prices-price.list-prices-tax:after{
	display: none;

}

/* styles for the table layout */
.package-deals-table {
	width: 100%;
}

.package-deals-table th {
	background: #D1A733;
	color: white;
	text-align: center;
	border: 1px solid white;
	border-top: none;
	padding: 2px;
	font-size: 16px;
	font-weight: 400;
	word-wrap: break-word;
}

.package-deals-table td {
	border: 1px solid white;
	border-top: none;
	background: #E9EAEB;
	color: black;
	padding: 2px 6px 2px 6px;
	word-wrap: break-word;
}

.package-deals-table td.order-cell a{
	color: #004B6A;
	font-weight: bold;
	text-align: center;
	display: block;
	word-wrap: break-word;
}























/* fixes from tpl */

/* package deals module */

/* aux */

a.single-package-link .english-text,
.package-list .english-text{
	direction: ltr;
	text-align: left;
}


a.single-package-link,
a.single-package-link *{
	box-sizing: border-box;
}

/* styles for boxes */
a.single-package-link.single-box {
    display: block;
	min-width: 250px;
    width: 30%;
    margin: 0.5% 0.5% 20px 0.5%;
    float: right;
    border-radius: 0;
    padding: 0;
    height: auto;
    transition: 300ms box-shadow linear;
	background: #e8ecef;
	border-bottom: 2px solid #1a99ce;
	
}

a.single-package-link.single-box:hover {
	text-decoration: none;
	box-shadow: none;
}

a.single-package-link.single-box div.single-package-title-area {
    padding: 0 14px;
	background: #00628b;
	color: white;
	font-size: 16px;
	min-height: 40px;
	height: 40px;
	border-radius: 0;
	position: relative;
}

a.single-package-link.single-box div.single-package-title-area h4 {
	color: white;
	font-size: 16px;
	line-height: 40px;
	border-radius: 0;
	display: block;
	padding: 0px;
	margin: 0px;
}

a.single-package-link.single-box div.single-package-title-area  span.deal-box-strong{
	font-weight: bold;
	font-size: 18px;
}


a.single-package-link.single-box div.single-package-title-area span.single-package-title-secondary {
    font-size: 14px;
}

a.single-package-link.single-box div.sc-details-area {
    padding: 4px 0 4px 0;
	text-align: center;
	
}

a.single-package-link.single-box div.sc-details-area span.sc-date{
	display: block;
	font-size: 14px;
}


a.single-package-link.single-box div.sc-details-area span.sc-date .package-includes{
	font-size: 16px;
}

a.single-package-link.single-box div.sc-details-area span.sc-price {
	display: block;
	font-size: 16px;
	color: #b9262a;
	margin: 12px 0;
	height: 40px;
	line-height: 40px;
}

a.single-package-link.single-box div.sc-details-area span.sc-price.two-prices {
	margin: 8px 0;
	height: 48px;
	line-height: 22px;
}

a.single-package-link.single-box div.sc-details-area .sc-price-old {
	color: #454545;
}
a.single-package-link.single-box div.sc-details-area .sc-price-old .sc-price-strike {
	text-decoration: line-through;
}

a.single-package-link.single-box div.sc-details-area span.sc-price-large {
    display: inline;
	font-size: 22px;
	font-weight: bold;
	color: #b9262a;
}

a.single-package-link.single-box div.sc-details-area .sc-order {
	width: 140px;
	height: 42px;
	padding: 0;
	color: white;
	background: #b9262a;
	font-weight: bold;
	font-size: 16px;
	line-height: 42px;
	text-align: center;
	display: block;
	margin: 0 auto 10px auto;
	position: relative;
}


a.single-package-link.single-box div.single-package-image-holder {
    position: relative;
	width: 100%;
	height: 140px;
	background-size: cover;
	background-position: center;
}

.sc-sale {
	position: absolute;
	display: block;
	width: 107px;
	height: 60px;
	top: 6px;
	bottom: 0;
	left: -1px;
	right: auto;
	padding: 12px 14px 0 4px;
	color: white;
	font-size: 16px;
	line-height: 18px;
	font-weight: bold;
	font-style: italic;
	text-align: center;
	background: url(../images/sale_ribbon.png) center center no-repeat;

}

a.single-package-link.single-box div.single-package-ship-area {
    border-radius: 0px 0px 7px 7px;
    min-height: 65px;
    padding: 11px 11px 0px 11px;
	box-sizing: border-box;
}

a.single-package-link.single-box div.single-package-ship-area h4 {
    padding: 0px;
    margin: 0px;
    font-size: 20px;
    margin-bottom: 1px;
	text-align: center;
}

/* extra styles for boxes and scroller for this site */
a.single-package-link.single-box .single-package-ship-info{
	height: 60px;
	background: #1386b6;
	padding: 8px 0 8px 0;
}

.sc-cruiseline,
.sc-ship{
	margin-right: 10px;
	padding: 2px 28px 2px 10px;
	height: 22px;
	font-size: 16px;
	color: white;
	line-height: 18px;
	display: block;
}

.sc-cruiseline{
	background: url('../images/helm_icon.png') right center no-repeat;
}

.sc-ship{
	background: url('../images/ship_icon.png') right center no-repeat;
}




/* styles for the deal scroller */
div.deal-scroller-container{
	box-sizing: border-box;
	width: 100%;
	padding: 0 35px 0 35px;
}

div.deal-scroller-button.right{
	position: absolute;
	z-index: 1000;
	right: -2px;
	width: 32px;
	height: 46px;
	top: 30px;
	
	
	background-color: none;
	background: url('../images/scrollet_right_button.png') center center no-repeat;
}

div.deal-scroller-button.left{
	position: absolute;
	left: 0px;
	width: 32px;
	height: 46px;
	top: 30px;
	float: left;
	background-color: none;
	background: url('../images/scroller_left_button.png') center center no-repeat;
}

div.deal-scroller-button{
	position: relative;	
}




div.deals-scroller-inner-container{
	float: left;
	width: 100%;
	margin-left: 0;
	position: relative;
	box-sizing: border-box;
	-moz-box-sizing: boerder-box;
	overflow: hidden;
}

div.deals-scroller-inner-items{
	box-sizing: border-box;
	-moz-box-sizing: boerder-box;
	position: absolute;
	top: 0px;
	left: 0px;
	width: auto;
	overflow: visible;
	padding-top: 20px;
	transition: left 500ms ease-in 50ms;
}

div.deals-scroller-inner-items a.single-package-link.single-box{
	float: left;
	margin-left: 4px;
	margin-right: 4px;
	margin-bottom: 30px;
	height: 425px!important;
	width: 220px!important;
	min-width: 220px;
	overflow: hidden;
	border-radius: 0px;
	background: #e8ecef;
	border-bottom: 2px solid #1a99ce;
}

div.deals-scroller-inner-items a.single-package-link:hover{
	box-shadow: none;
}

div.deals-scroller-inner-items a.single-package-link .single-package-title-area{
	min-height: 32px;
}

/* responsive styles for scroller */
@media screen and (max-width:980px){
	div.deals-scroller-inner-items a.single-package-link.single-box{
		float: left;
		margin-left: 5px;
		margin-right: 5px;
		margin-bottom: 30px;
		height: 425px!important;
		width: 205px!important;
		min-width: 205px;
		overflow: hidden;
		border-radius: 0px;
		background: #e8ecef;
		border-bottom: 2px solid #1a99ce;
	}
}



/* packages */

/* package container */
.packages-display{
	position: relative;
}
/* list styles */
.cdl-logo-container{
	height: 110px;
	min-height: 110px;
	width: 170px;
	padding: 0px;
	margin: 0px;
	height: 100%;
	position: relative;
	float: right;
}

.cdl-logo-container .package-list-item-logo{
	float: right;
	margin-left: 2%;
	width: auto;
	min-width: 150px;
	position: absolute;
	top: 50%;
	right: 10px;
	margin-top: -15px;
	height: 30px;
	width: 150px;
	display: block;
}


.package-list-item-info-container{
	float: right;
	width: 80%;
	min-width: 200px;
	max-width: 300px;
	margin-bottom: 1em;
	
}

.package-list-item-strong{
	font-weight: bold;
	font-size: 1.3em;
	line-height: 1.3em;
}

/* list-all-prices style */
.package-list-item.all-prices{
	background: #e8ecef;
	margin: 20px 0 20px 0;
	position: relative;
}

h4.package-list-prices-title {
	box-sizing: border-box;
	background: #00628b;
	display: block;
	width: 80%;
	width: calc( (100%) - 170px );
	float: left;
	color: white;
	padding: 5px;
	line-height: 21px;
	margin: 0;
	font-size: 16px;
	font-weight: 400;
	text-align: center;
}

.package-list-item .list-prices-price.order-button{
	float: left;
	position: relative;
	height: 55px;
	width: 135px;
	padding: 0px;
	margin: 0px;
}
.package-list-item a.package-list-item-link{
	position: relative;
	height: 55px;
	width: 135px;
	padding: 0;
	margin: 0;
	color: white;
	line-height: 55px;
	font-size: 18px;
	text-align: right;
	text-indent: 7px;
	background: #b9262a;

}

.package-list-item a.package-list-item-link:after {
	content: '>';
	position: absolute;
	left: 4px;
	top: 0px;
	bottom: 0px;
	height: 100%;
	line-height: 55px;
	font-size: 18px;
	font-weight: 400;
}

h4.package-list-prices-title.list-prices-details {
	background: #1386b6
}


span.list-prices-inline-dsc{
	float: right;
	min-width: 66%;
}

span.package-list-prices-inline-prices{
	box-sizing: border-box;
	float: left;
	width: 80%;
	width: calc( (100%) - 170px );
}


.list-prices-price{
	display: inline-block;
	height: 100%;
	min-width: 80px;
	min-height: 35px;
	margin: 10px 0px 10px 0px;
	line-height: 15px;
	text-align: center;
	padding: 0px;

}

.list-prices-price:after{
	content : ' ';
	top: 10%;
	left: 0px;
	height: 80%;
	width: 1px;
	background: #dfe3e6;
	position: absolute;
	
}

.list-prices-price:first-of-type{
	
}
.list-prices-price .lap-amount{
	color: #b9262a;
	font-weight: bold;
}


.list-prices-price:last-of-type:after{
	display: none;
}

.list-prices-price.list-prices-tax{
	display: inline-block;
	float: right;
	padding: 0px;
}

.list-prices-price.list-prices-tax:after{
	display: none;

}

/* small boxes */
/* psb = package small box */
a.psb {
	display: block;
	min-width: 200px;
	width: 23%;
	margin: 1%;
	border: 1px solid #788fa1;
	min-height: 50px;
	float: right;
	color: #284a6d;
}

a.psb .psb-image {
	width: 100%;
	max-width: 100%;
}

a.psb h3 {
	margin: 6px 0 2px 0;
	padding: 0;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	direction: ltr;

}

a.psb .psb-line {
	float: right;
	clear: right;
	display: block;
	margin: 2px 7px 2px 7px;
}

a.psb .psb-spaced-right{
	margin-right: 20px;
}

a.psb .psb-button {
	position: relative;
	float: left;
	clear: right;
	display: block;
	width: 85px;
	height: 30px;
	margin: 5px 0 1px 1px;
	color: white;
	background: #b40e18;
	font-weight: bold;
	font-size: 16px;
	padding-right: 8px;
	line-height: 30px;
}


a.psb .psb-final {
	float: left;
	clear: right;
	display: inline-block;
	color: #832a2c;
	margin: 5px 0 0 10px;
	line-height: 30px;
}

/* extra link */
/* fp packages */
a.packages-more-link{
	display: inline-block;
	position: relative;
	float: left;
	clear: left;
	background: #00628b;
	padding: 10px 10px 10px 34px;
	color: white;
	font-size: 18px;
}

a.packages-more-link:after {
	position: absolute;
	content: ' ';
	top: 0;
	left: 6px;
	height: 100%;
	width: 20px;
	background: url('../images/packages_more_link.png') center center no-repeat;
}

a.packages-more-link:hover {
	color: white;
	text-decoration: underline;
}

