/*   Template4.css  */
/*   :: Copyright © 2016 Travtech Inc. :: */
/*   :: Please refer Stylesheet Usage document before you make any changes :: */
/*   Last Updated 5/27/16 TSM  */

/* ----- General Style Rules (applying to all pages) ------ */
body {
    margin: 0;
}
a{
    color:#224273;
    text-decoration:underline;
    cursor:pointer;
}
a:hover{
    text-decoration:none;
}
div {
    border:none 1px #cccccc;
}
form, img {
    margin:0; border:0;
}
h1{
  margin:10px 0; color:#224373; font-size:1.6em;
  font-weight:bold;
}
h2{
  margin:0; color:#224373; font-size:1.4em;
}
h3{
  margin:0; color:#224373; font-size:1em;
}
h4, h5{
  margin:0; font-size:1em;
}
p {
  margin:3px 0;
}
table{
    border-spacing:0;
    border-collapse:collapse;
}
ul{
  margin:0; color:#cc6633;
}
li span,
li a{
    color:#4e4e4e;
}
var{
    display:none;
}


/* --- Top-level page rules ------ */
div.zzTopDiv{
    width:900px; clear:both;
    font: normal 11px verdana, arial, helvetica, sans-serif;
    color:#4e4e4e; text-align:left;
}
iframe.hdCustHdrFrame {
    display:block;
    width:900px; height:130px; 
}
iframe.ftCustFtrFrame{
    display:block;
    width:900px; height:70px; 
}
code.floatEnd{
   clear:left; 
   display:block; height:0px;
}

/* ---Theme Class Style Rules (applying to all pages) ------ */
.zzBackground {
    background-color:#f0f0f0;
}
.zzTitleBox {
    background-color:#224373; color:#ffffff;
}
.zzSubTitleBox{
    background-color:#ccddff;
}
.zzTitleText{
    color:#cc0000;
}
.zzErrorText{
    color:#cc0000; font-weight:bold;
}
.zzAltRow{
    background-color: #eeeeee;
}
.zzCatColor {
    display:inline-block;
    *zoom:1; *display:inline;
    width:18px;height:18px;
    border:solid 1px black;
}
.zzOffline{
    display:none;
}

/* ----------------  Header Classes --------------- */

.hdPageTitle {
    text-align:center; 
    background-color:#224273; color:white;
}    
.hdPageTitle img{
    float:left;
}
.hdPageTitle>div{    
    height:25px; padding-top:6px;
    font-size:1.3em; font-weight:bold;
}
.hdPageTitle>h4{
    padding:3px 0;
}
.hdPageTitle span.phone {
    float:right;
    margin-right:10px; 
}
.hdPageTitle span.phone a{
    color:white; text-decoration: none;
}

/* ----------------  Footer Classes --------------- */
.ftCallAssist,
.ftNeedHelpText {
    margin-top:10px;
    font-weight:bold; 
}
.ftCallAssist{
    color:#224273; font-size:12px;
}
.ftNeedHelpText span.phone,
.ftNeedHelpText span.refNum{
    color:#cc6633;
}

.ftCopyrightNotice{
    margin-top:10px; font-size:10px;
}
.ftCopyrightNotice a{
}
.ftDateTime{
    margin-top:10px;
}

.ftAirDisclaimer,
.ftRateDisclaimer{
    font-size:9px;
    margin-top:5px;
}


/*------------Other Commom Classes ---------------*/

/* Button classes */
.zzContinueButton,
.zzCancelButton,
.zzSubmitButton,
.zwSearchButton,
.zzSelectButton,
.cdpUpdateRatesButton{
    color:white; background-color:#CC6633;
    font-size:11px; font-weight:bold; text-transform:uppercase;
    padding:1px 4px;
    border:solid 1px white;
    cursor:pointer;
}
.zzContinueButton:hover,
.zwSearchButton:hover,
.zzSelectButton:hover,
.cdpUpdateRatesButton:hover{
    background-color:#E07226;
}
.zzContinueButton.pending,
.zwSearchButton.pending,
.zzSelectButton.pending{
    background-color:black;
    cursor:default;
}

.zzCloseButton {
    padding:2px 4px;
    background-color:#224273; color:white;
    cursor:pointer;
}
.zzPriceCurrencyCode{
    font-size:.875em; margin-right:2px;
}

/* Demo Site Banner */
div.zzDemoMessage {
    margin:10px 0;
    border-style:solid;
    padding:10px 90px 10px 90px;
    background-color: #D0D7E0;
    font-size: 12pt; font-weight: bold;
    text-align: center; 
}
div.zzDemoMessage p{
    color: #CC0000;
    font-size: 16pt; margin:8px;
    text-transform:uppercase;
}
    
    
/* Booking Summary Area */
div.zzBookingSummary div.box{
    background-color:#FDFDEE;
    border:solid 1px #999999;
    padding:10px; overflow:hidden;
}
div.zzBookingSummary h2{
    color:#cc6633;
    font-size:13px;
}
div.zzBookingSummary div.box>div.image{
    float:right; width:20%; 
}
div.zzBookingSummary div.box>div.image img{
    width:100%;
}
div.zzBookingSummary div.box>div>div{
    margin:4px 0;
}
div.zzBookingSummary span[class|=zzSummary]{
    font-weight:bold;
}

div.zzBookingSailing{
    display:table-cell;
    *float:left;
    width:235px;
    padding-right:10px;
    border-right:solid 1px #999999;
}
div.zzBookingSailing >div{
    clear:right;
}
div.zzBookingSailing >div>div{
    float:right; width:65%;
}

div.zzBookingDetails,
div.zzBookingDetails0{
    display:table-cell;
    *float:left;
    padding:0 10px;
    border-right:solid 1px #999999;
}

div.zzBookingPricing{
    display:table-cell;
    *float:left;
    width:200px;
    padding:0 10px;
}
div.zzBookingPricing>div{
    text-align:right;
    margin:4px 0;
}
div.zzBookingPricing>div.total{
    font-weight:bold;
}
div.zzBookingPricing>div span.desc{
    float:left;
}
div.zzBookingPricing>div.code{
    font-size:7px;
}
div.zzBookingPricing>div.deposit{
    margin-top:10px;
}

div.zzBookingIntinerary{
    padding-bottom:3px;
    border-bottom:solid 1px #999999;
}
div.zzBookingDetails1,
div.zzBookingDetails2{
    display:table-cell; 
    *float:left;
    width:300px;
}
div.zzBookingDetails2{
    width:220px;
    padding-left:10px;
    border-left:solid 1px #999999;
}
div.zzBookingDetails0>div>div{
    clear:right; margin-top:3px;
}
div.zzBookingDetails0>div>div>div{
    float:right; width:60%
}
div.zzBookingDetails0{
    border:none;
}
div.zzBookingSummary div.buttonBox{
    border-top:solid 1px #999999;
    margin-top:4px; padding-top:4px;
    text-align:right;
}
div.zzBookingSummary div.buttonBox div.total{
    color:#cc6633; font-size:12px; font-weight:bold;
}
div.zzBookingSummary div.buttonBox div.total span:first-child{
    margin-right:5px;
}
div.zzBookingSummary div.buttonBox>div span:first-child{
    margin-right:10px;
}
div.zzBookingSummary div.buttonBox span.zzSummary-ViewDetails,
div.zzBookingSummary div.buttonBox span.zzSummary-HideDetails{
   padding:2px 5px; font-size:10px; font-weight:bold;
   background-color:#224273; color:white;
   text-transform:uppercase; cursor:pointer;
}


div.zzBookingSummary div.bonus{
    margin:5px 0; padding-bottom:5px;
    border-bottom:solid 1px #888888;
}
div.zzBookingSummary div.bonus span{
    font-size:12px; font-weight:bold;
    color:#224273; margin-right:5px;
}
div.zzBookingSummary div.bonus a{
    margin-right:5px; color:#4e4e4e;
}

/* Cabin Info Overlay */
div.zzCabinOverlay{
    position:relative;
    display:none;
}
div.zzCabinOverlay >div{
    width:350px; 
    padding:10px;
    border-style:solid;
    background-color:#ffffff;
    position:absolute; z-index:2;
    top:-150px; left:250px;
}
div.zzCabinOverlay div.image{
    margin:7px 10px;
    text-align:center;
}
div.zzCabinOverlay div.image img{
    width:320px; height:220px;
}
div.zzCabinOverlay div.info{
    margin-top:10px;
}
div.zzCabinOverlay div.info div{
    margin:3px 0;
}
div.zzCabinOverlay div.info span{
    margin-right:3px;
    font-weight: bold;
}

.zzInterstitialOverlay,
.zzInterstitialOverlayBox,
.zzModalOverlay{
    z-index: 100;
    position: fixed; top:0; 
    height:100%; width:100%;
    background-color: rgba(250,250,250,0.9);
    *background-color:white;
}
div.zzInterstitialOverlay.default>div{
    margin-top:120px;
    text-align:center;
}
div.zzInterstitialOverlay.default img{
    display:block; margin:0 auto;
}


.zzModalOverlay{
      overflow-y: scroll;
}
.zzInterstitialOverlayBox{
    position: absolute; left:0;
    background-color: rgba(240,240,240,0.6);
}
.zzInterstitialMsg{
    color: #000099; padding:8px 5px;
    font-size:14px; font-weight:bold;
    background: url('https://ttcm.s3.amazonaws.com/Images/Template/spinner_blue.gif') no-repeat 130px;
}


/* Special Offer */
div.zzSpecialOffer {
    padding:10px;
    border:solid 1px #224273;
    background-color:#F3F3F3;
}
div.zzSpecialOffer img.logo{
    display:block; margin-bottom:10px;
}
div.zzSpecialOffer h1{
    font-size:13px;
    padding-bottom:5px; margin-bottom:5px;
    border-bottom:solid 1px #cccccc;
}
div.zzSpecialOffer h2{
    font-size:1em; color:#4e4e4e;
}
div.zzSpecialOffer div.items{
    margin-top:10px; padding:5px;
    background-color:#FDFDEE;
    border:solid 1px #999999; 
}
div.zzSpecialOffer div.items p{
    color:#cc6633; font-weight:bold;
}
div.zzSpecialOffer div.items ul{
    padding-left:16px;
    margin-bottom:10px;
}
div.zzSpecialOffer div.items li{
    color:#4e4e4e; font-size:10px;
    margin-bottom:5px;
}
div.zzSpecialOffer div.code{
    font-size:9px;
}

/*--------------------- Cruise Search Classes ----------------------*/


/*   - Location Explorer(le) Style Classes  */
/*   ---------------------------------------  */
#leBody{
}
#leBody h1{
   margin-left:10px;
}
#leTopDiv{
    width:auto; padding:10px; 
}
h2{
    color:#cc6633;
}
#leTopDiv h3{
    padding:5px; 
    border-top-left-radius:5px; border-top-right-radius:5px;
    background-color:#337ab7; color:white;
    font-size:16px; font-weight:normal;
}
#leTopDiv .slider {
    cursor:pointer; font-size:14px;
}
#leTopDiv h3.slider span{
    float:right;
}
#leTopDiv h4.slider{
    padding:4px 5px;
    text-align:center;
}
#leTopDiv h4.slider span{
    margin-left:4px;
}
#leMainBody>div{
    overflow:hidden;
}

/** Styling for menu tabs **/
#leTopDiv header ul.menu{
    margin-top:10px; padding:0; text-align:center;
}
#leTopDiv header ul.menu li{
    display:inline-block; list-style-type:none;
    margin:5px 2px; padding:5px 8px;
    color:#4e4e4e; background-color:#eee;
    border-radius:5px; cursor:pointer;
    font-size:16px;
}
#leTopDiv header ul.menu li.selected {
    background-color:#337ab7; color:white;
}
#leTopDiv .table{
    margin-top:10px;
    border:solid 1px #ddd;
    border-radius:5px;
}
#leTopDiv div.table h3{
    padding:5px;
    background-color:#337ab7; color:white;
}

#leTopDiv .table>div{
    padding:3px 5px;
}
#leTopDiv .table>div:nth-child(odd){
    background-color:#ddd;
}
#leTopDiv .table>div>label{
   display:inline-block; width:40%;
   vertical-align:top;
}
#leTopDiv .table>div>a,
#leTopDiv .table>div>span{
    display:inline-block; width:59%;
}

/** Styling for Main tab **/
#leTabMain div.localColor{
    font:normal 12px "Helvetica Neue",Helvetica,Arial,sans-serif;
    line-height:1.6em;
}
#leTabMain div.media{
    margin:10px 0; padding-top:10px;
    border-top:solid 1px #ddd;
    overflow:hidden;
}
/* styling for link thumbnails */
#leTabMain div.linkBox{
    float:left; width:42%;
}
#leTabMain div.linkBox>div{
    margin:10px 0 0 10px;
}
#leTabMain div.linkBox img{
    width:60px; height:40px;
    margin:4px 8px 0 0;
    cursor:pointer;
}
/* styling for media display box */
#leTabMain div.media figure{
    margin:0 0px 0 43%;
    text-align:center;
}
/* styling for images */
#leTabMain div.media figure img{
    width:100%;
}
/* styling for iframed media */
#leTabMain div.media figure>div>div{
    position: relative; height:0px; 
    margin-bottom:5px; padding-bottom:56%;
}
#leTabMain div.media figure iframe{
    position: absolute; right:0;
    width:100%; height:100%;
}
/* styling for mp4 videos */
#leTabMain div.media figure video{
     width:100%;
}

/** Styling for Facts tab **/
#leTabFacts {
    margin-top:5px; padding-top:10px;
    border-top:solid 1px #ddd;
}
#leTabFacts section:first-child{
    overflow:hidden;
}
#leTabFacts div.col1{
    float:left; width:40%; 
}
#leTabFacts div.col1 img{
    width:100%;
}
#leTabFacts div.col2{
    margin-left:40%; padding:0 10px;
}
#leTabFacts div.col1 a{
    display:block; margin-top:2px; text-align:center;
}
#leTabFacts div.flags{
    display:flex;
    justify-content: space-around;
}

/** Styling for Weather tab **/
#leTabWeather section.wwidget{
    
}
#leWeatherWidget{
    margin:5px; overflow:hidden;
}
#leWeatherWidget div.current{
    float:left; overflow:hidden;
}
#leWeatherWidget div.current figure{
    float:left; margin:0 10px 0 0;
    text-align:center; width:130px;
}
#leWeatherWidget  div.current figure>div{
    width:120px; height:90px; overflow:hidden;  /* crop image */
    margin:0 auto;
}
#leWeatherWidget div.current figure img{
    width:180px;
}
#leWeatherWidget div.current>div{
    float:left;
}

#leWeatherWidget h4{
    font-size:16px; color:#cc6633;
}
#leWeatherWidget label{
    color:#538ac3; margin-right:5px;
}
#leWeatherWidget a{
    display:block; margin-top:10px;
}
#leWeatherWidget div.forecast{
    margin-left:280px;
}
#leWeatherWidget div.forecast h4{
    text-align:center;
}
#leWeatherWidget div.forecast table{
    width:100%;
}
#leWeatherWidget div.forecast td{
    text-align:center;
}
/* styling for weather averages */
#leTabWeather section.averages>div{
    padding:2px 0;
    border-bottom:solid 1px #eee;
}
#leTabWeather section.averages>div>div{
    display:flex; justify-content: space-around;
    /*font-size:14px;*/
}
#leTabWeather section.averages>div>div div:nth-child(6){
    margin-right:3%;
}
#leTabWeather section.averages label{
    color:#538ac3; display:block;
}
/** Styling for Parking tab **/
    #leTabParking section:not(:first-child)>div{
    display:none;
}

#leTopDiv footer{
    margin:10px 0; padding-top:10px;
    border-top:solid 1px #ddd;
    text-align:center;
}

/** Styling for Comments form **/
#leCommentForm{
    display:none;
}
#leCommentForm div.box{
    padding:8px; border:solid 1px black;
}
#leCommentForm div.box>div{
    margin:5px 0;
}
#leCommentForm label{
    display:inline-block; width:20%;
}
#leCommentForm input,
#leCommentForm textarea{
    width:75%;
}
#leCommentForm div.buttonBox button{
    float:right; margin-top:10px;
}
#leCommentForm div.buttonBox p{
    margin-right:90px;
}
#leButtonBox {
    text-align:center;
}


/*   - Default Search Widget (dw) Style Classes -   */
/*   --------------------------------------------   */
#dwBody{
}

#dwTopDiv{
    font: normal 10px verdana, arial, helvetica, sans-serif;
    width:350px;
    border-style:solid;
}
#dwTopDiv p{
    margin:0;
}

#dwTitle{
    font-size:12px; text-align:center;
    margin:3px 0;
}
#dwButtonBox{
    float:right; width:49px;
    text-align:center;
}

#dwButtonBox p span.zzTitleText{
    font-weight:bold; margin-right:4px;
}


#dwForm{
}

#dwForm>div{
    height:21px;
}
#dwForm .formLabel{
    float:left;    width: 75px; 
    margin-right:4px; padding-top:1px;
    text-align:right;
}
#dwForm select {
    font: bold 10px verdana, arial, helvetica, sans-serif;
    color:#000066;
    width:218px; 
}

#dwPort,
#dwShip,
#dwSortBy{
    display:none;
}
#dwDestination,
#dwPort,
#dwCruiseline,
#dwShip {
}
#dwDate{
  float:left;
  width:46%;
}
#dwDays{
  float:left;
}
#dwDays .formLabel{
    width:52px;
}
#dwDays select,
#dwDate select {
    width:80px;
}
#dwSortBy{
    clear:left;
}

#dwGoButton{
    margin:10px auto 0 auto;
}
#dwGoButton span {
    padding:4px;
}
#dwBottomBox {
    clear:both; height:29px;
    border-top-style:solid;
    text-align:center;
}
#dwExOffers  {
    width:80px; height:29px; float:left;
    border-right-style:solid; 
}

#dwExOffers  input{
    float:left;
    margin-top:2px;
}
#dwExOffers  div{
    width:60px; float:left;
    font-family:arial;
}

#dwLinkBox{
    text-align:center;
}
#dwLinkBox >div {
    display:inline-block;
    margin-top:2px;
    font-size:9px; 
}
#dwLinkBox span.zwPortSearchLink,
#dwLinkBox span.zwAdvancedSearchLink{
    color:#000099;
    font-size:10px; font-weight:bold;
    cursor: pointer; text-decoration:underline;
}
#dwLinkBox span:Hover {
    text-decoration:none;
}
#dwASLink {
    margin-left:10px;
}


/*   - Left Search Widget (lf) Style Classes  */
/*   ---------------------------------------  */
#lfBody{
    overflow:hidden;
}
#lfTopDiv{
    width:200px;
    background-color:#538AC3;
    color:white;
}
#lfTopDiv .zzHighlightText{
    color:white;
}
#lfTopDiv h2 {
    color:white; font-size:12px;
    margin:0 0 0 2px;
}

#lfLogoBox img {
    width:100%; height:31px;
}
#lfForm{
    position:relative;
}
#lfSelectCriteria{
    margin: 5px 7px;
    overflow:hidden;
}
#lfSelectCriteria>div{
    margin-bottom:5px;
}
#lfSelectCriteria div.formLabel{
    display:none;
}
#lfSelectCriteria select {
    margin:2px 0;
    font-size:10px; font-weight:bold;
    color:black;
}
#lfDate,
#lfDays {
    width:50%; float:left;
}

#lfSortBy {
    display:none;
}

#lfDestination select,
#lfPort select,
#lfCruiseline select,
#lfShip select,
#lfSortBy select {
    width:180px;
}
#lfDays select,
#lfDate select {
    width:87px;
}

#lfExOffers input{
    vertical-align:middle;
}

#lfBestDealBox{
    margin:8px; padding:4px 0 8px;
    border-top:solid 1px #cccccc;
    border-bottom:solid 1px #cccccc;
    font-size: 9px;
}
#lfBestDealBox h2 img{
    cursor:pointer;
}
#lfBestDealBox h4{
    font-size:1em;
    margin:6px 0;
}
#lfPaxOptions {
    position:relative;
}
#lfPaxOptions span {
    vertical-align:2px;
}
#lfPaxOptions>span{
    display:inline-block;
    width:49%;
}

#lfPaxOptions div.overlay {
    display:none;
    position:absolute;left:-1px; z-index:2;
    width:170px; 
    color:#000000; background-color:#fefeee;
    border-style:solid;
}
#lfPaxOptions div.overlay div.buttonBox{
    margin:5px 0; text-align:center;
}
#lfPaxOptions>div  h5{
    margin:2px; font-size:9px;
}
#lfResidency h4 {
    font-size: 1em; font-weight:normal;
}
#lfResidency select{
    width:160px;
    font-size:10px;
    color:black;
}
#lfPromoCode {

}
#lfPromoCode input {
    width:150px;
    font-size:10px;
}

#lfButtonBox{
  padding:5px 0;
}
#lfButtonBox div.links{
    width:65%; font-size: 9px;
    margin-left:10px
}
#lfButtonBox div.links a {
    display:block;
    margin-bottom:5px;
    text-transform: capitalize;
}
#lfButtonBox span.zwSearchButton{
    float:right;
    margin:3px 5px 0 0;
}
#lfButtonBox div.errorCode{
    clear:right; float:right; margin-right:5px;
    font-weight:bold;
}

#lfPricesDisclaimer{
    margin-left:10px;
}
#lfAdSpace{
}
#lfAdSpace iframe{
    width:200px;height:250px;
}
#lfBestDealOverlay{
}


/*   CRUISE RESULTS (parent)PAGE (cr) Style Classes /
/*   -------------------------------------------------------  */
#crBody{
}
#crCustHdrFrame{
}
#crTopDiv {
  height:100%;
}
#crBodyFrame {
    display:block; margin-left:200px;
    width:700px; height:600px;
    border:none;
}
#crSearchFrame {
    display:block; 
    position:absolute; /*Chrome fix*/
    width:200px; height:600px;
    background-color:#538AC3;
    border:none;
}
#crCustFtrFrame{
    clear:both;
}
#crBestDealOverlay{
    display:none;
    position:absolute; left:154px; top:250px;
    width:250px;
    border:solid 2px gray;
    background-color:#fdfdee;
    padding:5px;
    font: normal 10px verdana, arial, helvetica, sans-serif;
}
#crBestDealOverlay h2{
    margin:5px 0;
    color:#cc6633;
}



/*   -------------------------------------------------------  */
/*   CRUISE RESULT (sub)PAGE (crp) Style Classes */
#crpBody{
}
#crpTopDiv{
    width:700px;
}
/* Cruise Results Header */
#crpHeader{
}
span.crpItineraries{
  font-size:.875em; font-weight:normal;
}
#crpHeader2{
    padding:10px 10px 0 30px;
}
.crpSortLinks span,
.crpSortLinks a{
    font-weight:bold;
    margin-left:8px;
}


#crpHeader2 .crpPaging{
    float:right;
}
.crpPaging a{
}
.crpPaging a.left,
.crpPaging a.right{
   display:inline-block; 
   width:6px; margin:0 5px;
   text-decoration:none;
}
.crpPaging a.left{
    background: url('https://ttcm.s3.amazonaws.com/Images/Template/previous.gif') no-repeat;
}
.crpPaging a.right{
   background: url('https://ttcm.s3.amazonaws.com/Images/Template/next.gif') no-repeat;
}


/*  Cruise Result Listings Classes */
#crpCruiseListings{
    padding-left:30px;
}
.crpCruiseListing{
    margin:21px 0; padding:10px;
    border:solid 1px #000066;
    min-height:153px;
    background-color:#f3f3f3;
    overflow:hidden;
}
.crpCruiseListing.featured{
    background-color:#FFFED2;
}
.crpShipImage{
    float:left;
    margin:3px 0;
}
.crpShipImage>img{
    width:225px;
}
.crpShipImage img[alt=New]{
    margin-left:-225px;
}
.crpShipImage span.stars{
    color:#CC6633; font-size:1.6em;
}
.crpShipImage img.maglass{
    cursor:pointer; 
    margin-left:4px; vertical-align:-3px;
}

div.crpCruiseBox{
    margin-left:240px;
}
div.crpCompareLink {
    float:right;
}
div.crpCompareLink span{
    margin-right:4px;
    font-size:.9em; 
    text-decoration:underline;
    cursor:pointer;      
}
div.crpCompareLink span:hover{
    text-decoration:none;
}
div.crpCompareLink input{
    vertical-align:middle;
}
h3.crpLengthDestination{
    margin-bottom:2px;
    font-size:1.2em;
}
div.crpVendorCruise{
    font-weight:bold;
    margin-bottom:2px;
}
div.crpVendorCruise span{
    color:#cc6633;
}
.crpSailingDates {
    margin-top:4px;
}
.crpSailingDates span.label{
    font-weight:bold; 
}
div.crpPrices{
    margin:5px 0; padding:3px 0;
    border:solid 1px gray;
    background-color:#fefeee;
    font-size:.875em;
}
div.crpPrices div.cabinType{
    width:24.3%; display:inline-block;
    *zoom:1; *display:inline; /* IE7 compatibility */
    text-align:center;
}
div.crpPrices div.label{
    font-weight:bold;
}
div.crpPrices div.price{
    color:#224273; 
    font-size:1.3em; font-weight:bold;
}
div.crpPrices span.currencyCode {
    font-size:.8em; margin-right:3px;
}
div.crpPrices.noPrice{
    text-align:right; padding-right:5px;
    color:#224273; 
    font-size:1.2em; font-weight:bold;
}
div.crpBonusOffers{
    margin-left:22px;
}
div.crpBonusOffers span.zzBonusOffers-Title{
    color:#cc6633; font-weight:bold;
    text-transform:uppercase;
}
a.crpListingViewDetails,
div.crpBonusOffers .zzSelectButton{
    float:right;
}
div.crpBonusOffers ul{
    padding-left:15px;
}
div.crpCruiseListing a.crpViewDetails{
}
div.crpCruiseListing code.floatEnd{
    clear:both;
}

/*   Cruise Results Footer Classes*/
#crpFooter{
    margin:10px;
    padding: 2px;
}
#crpFooter .crpPaging{
    text-align:right;
    margin-bottom:10px;
}

#crpCallAssist{
}


/*   -------------------------------------------------------  */
/*   CRUISE DETAILS (sub)PAGE (cdp) Style Classes */

#cdpBody{
}
#cdpTopDiv{
    width:700px;
}
#cdpMainBody{
    margin:15px 0 0 30px;
}

#cdpItinInfo{
    position:relative;
    float:left; width:235px; margin-right:20px;
}
#cdpItinInfo h3{
    margin:4px 0;
}
#cdpItinInfo div.rates{
    margin:15px 0; padding:2px 6px;
    font-weight:bold;
    background-color:#fdfed6; 
    border:solid 2px #cc6633; border-radius:5px;
}
#cdpItinInfo div.rates span.price{
    color:#cc6633; font-size:1.1em;
}
#cdpItinInfo div.rates a{
  font-weight:normal; 
  float:right;
}
#cdpItinInfo img.map{
    position:absolute; width:100%;
}
#cdpItinInfo img.map:hover{
    width:auto;
}
div.cdpShareButton{
    text-align:right; margin-bottom:2px;
}
div.cdpShareButton a{
    font-size:11px; font-weight:bold;
    color:#4e4e4e; text-decoration:none;
}
div.cdpShareButton a:hover{
    color:#cc6633;
}
div.cdpShareButton span{
    float:right; margin-left:2px;
    font-size:23px; line-height:11px;
}

/* Sailing Itinerary Section */
#cdpItinDetails{
    height:287px; overflow:auto;
    margin-top:5px;
}

#cdpItinDetails table{
    width:100%;
    *width:96%; /* IE7 compatibility */
    border-bottom:solid 1px #224273;
    border-right:solid 1px #224273;
}
#cdpItinDetails tr.top{
    background-image:linear-gradient(#ffffff,#f8f8f8);
    background-image: -webkit-linear-gradient(top,#ffffff,#f8f8f8);    
}
#cdpItinDetails tr.bot{
    background-image:linear-gradient(#f8f8f8,#dedede);
    background-image: -webkit-linear-gradient(top,#f8f8f8,#dedede);
    background-color:#f4f4f4;
}
#cdpItinDetails td{
  padding:2px 4px;
}
#cdpItinDetails tr.top td{
    border-top:solid 1px #224273;
}
#cdpItinDetails tr.top td.day{
    border-top-color:#979797;
}

#cdpItinDetails td.day{
    text-align: center; padding:0;
    color:white; background-color:#224273;
}
#cdpItinDetails td.port,
#cdpItinDetails td.port a{
    color:#224273; font-weight:bold;
}
#cdpItinDetails td.port span{
    font-weight:normal;
}
#cdpItinDetails td.port span.icon{
    cursor:help;
}
#cdpItinDetails div.mouseover{
    display:none; 
    position:absolute; left:300px;
    color:black; font-weight:normal;
    padding:3px;
    background-color:#ffffcc;
    border:solid 1px black;
}
#cdpSailingFeature{
    clear:left;
}
/* Passenger Information Section */
#cdpPaxBox{
    margin:25px 0;
    padding:10px;
    background-color:#FDFDEE;
    border:solid 1px #999999;
    font-size:10px;
    overflow:hidden;
}
#cdpPaxBox  input,
#cdpPaxBox  select{
    font-size:1em;
}
#cdpPaxBox h2{
    margin:4px 0;
    font-size:1.35em;
}
#cdpPaxBox h3{
    margin:4px 0;
}
#cdpPaxBox>code.floatEnd{
    clear:both;
}
div.cdpPaxSelect{
    float:right; width:27%;
}
div.cdpPaxSelect>div{
    margin:5px 0; text-align:right;
}
div.cdpPaxSelect>div span.label{
    float:left;
}
div.cdpChildAges{
    display:none;
    text-align:center;
}
div.cdpChildAges p{
    color:#cc6633; margin:2px 10px;
}
div.cdpChildAges div.controls>div{
    display:inline-block; margin:0 3px;
    zoom:1; *display:inline; /*IE7 hack */
}

div.cdpAgeRules{
    text-align:center;
}

div.cdpPaxSelect div.buttonBox{
    padding-top:10px; 
    border-top:solid 1px #999999;
    text-align:center;
}


div.cdpBestRate{
    width:71%;
    border-right:solid 1px #999999;
    padding-right:7px;
}
div.cdpBestRate div.title{
    float:left; width:70%;
    margin:0 20px 3px 0; padding-right:5px;
    border-right:solid 1px #999999;
}
div.cdpBestRate p{
    margin:4px 0;
    font-size:11px;
}
div.cdpPaxType{
}
div.cdpPaxType span{
    vertical-align:2px;
}
div.cdpResidencyGroup{
    margin-top:3px; padding-top:3px;
    border-top:solid 1px #999999;
    overflow:hidden; clear:left;
}
div.cdpResidencyGroup>div{
   float:left; width:49%;
}
div.cdpResidencyGroup select{
   width:90%;
}
div.cdpVendorPromo{
    margin-top:10px; padding-top:5px;
    border-top:solid 1px #999999;
}
div.cdpVendorPromo h3{
    float:left; width:80px;
}
div.cdpVendorPromo select{
    float:left; width:150px;
    margin-top:10px;
}
div.cdpVendorPromo p{
    margin-left:250px;
}

#cdpTabArea{
    clear:both; margin:20px 0 8px 0;
}
#cdpTabArea>ul{
    padding:0; margin-bottom:2px;
}
#cdpTabArea>ul li{
    display:inline; list-style-type:none;
    padding:2px; margin:2px 1px;
    font-weight:bold; background-color:white;
    border:solid 1px #224273; border-bottom:0;
    cursor:pointer;
}
#cdpTabArea>ul li span{
    color:#224273;
}
#cdpTabArea>ul li.selected {
    background-color:#224273;
}
#cdpTabArea>ul li.selected span{
    color:white; 
}
#cdpTabArea>ul li.bookNow{
    margin-left:10px;
    color:#CC6633; background-color:#FDFED6;
}
#cdpTabArea div.tab{
    background-color:#f3f3f3;
    border:solid 1px #224273;
    overflow:hidden;
}

/* Rates/Dates Tab */
#cdpTabArea div.rates{
    font-size:12px; font-weight:bold; 
    padding:10px;
}
#cdpTabArea div.rates table{
    width: 100%;
    border-spacing: 0px;
    border-collapse: collapse;
}
#cdpTabArea div.rates tr{
    border-bottom:solid 1px #cccccc;
}
#cdpTabArea div.rates tr.title{
    text-transform:uppercase;
    font-size:10px; color:#224273 ;background-color:#DEE3EB;
    background-image:linear-gradient(#ffffff,#acb9cc);
    background-image: -webkit-linear-gradient(top,#ffffff,#acb9cc);
    border:solid 1px #224273;
}
#cdpTabArea div.rates tr.title td:first-child{
    color:#CC6633;
}
#cdpTabArea div.rates td:first-child{
    white-space:nowrap;
}
#cdpTabArea div.rates td:nth-child(6){
  max-width:250px;
}
#cdpTabArea div.rates tr.showMore{
    border:0;
}
#cdpTabArea div.rates td{
    padding:5px;
}
#cdpTabArea div.rates td ul{
    margin:0; padding-left:14px;
    font-size:10px; font-weight:normal;
}
#cdpTabArea div.rates td li {
    margin:2px 0;
}

#cdpTabArea div.rates td>a{
   font-size:.9em;
}

#cdpTabArea div.rates tr.selected{
   background-color:#ffffcc;
}
#cdpTabArea div.rates span.zzSelectButton{
   display:none;
}
#cdpTabArea div.rates tr.selected a{
    text-decoration:none;
}
#cdpTabArea div.rates tr.selected span.zzSelectButton{
   display:inline;
}

#cdpTabArea div.rates span.currencyCode{
    font-size:.75em;
}
#cdpTabArea div.rates td.minPrice,
#cdpTabArea div.rates tr.showMore a{
    color:#CC6633;
}
#cdpTabArea div.rates tr.more,
#cdpTabArea div.frame,
#cdpTabArea div.hdPageTitle{
    display:none;
}

#cdpFooter{
    margin-left:30px;
}
#cdpFooter p.ftRateDisclaimer{
}

#cdpBody div.ui-dialog{
	max-width:100%;
}
#cdpBody div.ui-dialog-buttonset{
    text-align:center; float:none;
} 
#cdpBody div.ui-dialog button.close{
    color:white; background:#cc6633;
}



/*   - Ship Dining/Public Areas (sub)Page (spa) Style Classes */
/*   ------------------------------------------------------- */
#spaBody{
    background-image:none;
}
#spaTopDiv{    width:668px;
}
#spaTitle  a{
    color:white; font-weight:normal;
    margin:0 10px;
}
#spaMainBody{
    margin:10px 0;
}
#spaMainBody h3{
    font-size:1.1em;
}
#spaMainBody p{
    margin:4px 0 0 0;
}
#spaRightPane{
    float:right; width:320px; margin-right:10px;
}
#spaRightPane h2{
    margin:5px 0 10px 0;
}
#spaRightPane img.large{
    margin-bottom:10px;
}

#spaListings{
    width:310px; padding:0 10px;
}
div.spaListing{
    padding:4px 0;
    border-bottom-style:solid;
    overflow:hidden;
}
div.spaListing div{
    width:78%;
}
div.spaListing img{
    float:right; width:20%;
    cursor:pointer;
}
#spaMainBody code.floatEnd{
    clear:right;
}


/*   - Ship Profile (sub)Page (spr) Style Classes */
/*   ------------------------------------------------------- */
#sprBody{
    background-image:none;
}
#sprTopDiv{
    width:668px; 
}
#sprTitle  a{
    color:white; font-weight:normal;
    margin:0 10px;
}

#sprMainBody{
    padding:10px;
    background-color:white;
}
#sprTopRow {
    padding-bottom:10px;
    border-bottom:solid 1px #cccccc;    
}
#sprTopRow img.ship{
    float:left;
    width:225px;
}
#sprTopRow>div{
    margin-left:235px;

}
#sprTopRow>div h2{
    padding-bottom:5px;
    border-bottom:solid 1px #cccccc;
}

#sprTopRow table{
    margin-top:10px;
    width:320px;
    color:#224273; font-weight:bold;
}
#sprTopRow  td{
    padding:2px;
}
#sprTopRow  td div{
    width:60%; float:left;
}
#sprTopRow  tr.zzAltRow td{
    background-image:linear-gradient(to right,#CECECE,#f6f6f6);
}

table#sprStats{
    clear:left; width:100%; 
    margin-top:10px;
 }
table#sprStats th{
    width:20px;
}
table#sprStats td{
    width:32%; padding:3px; text-align:right;
}
table#sprStats td span{
    float:left;
}
table#sprStats tr.zzAltRow{
    background-color:transparent;
}
table#sprStats tr.zzAltRow td{
    background-color:#eeeeee;
    background-image: linear-gradient(to right,#CECECE,#f6f6f6);
}
#sprMainBody hr{
    margin-top:20px; border:0;
    background-color:#F3F3F3; height:12px;
}


/*   - Ship Ratings (sub)Page (sra) Style Classes */
/*   ------------------------------------------------------- */
#sraBody{
}
#sraTopDiv{
    width:668px; 
}
#sraTitle  a{
    color:white; font-weight:normal;
    margin:0 10px;
}

#sraMainBody{
    padding:10px;
    background-color:white;
}
#sraTopRow {
}
#sraTopRow img.logo{
    float:left;
    margin-top:3px;
}
#sraTopRow h2{
margin-left:130px;
}
#sraTopRow>div.rating{
    font-weight:bold; 
    margin:5px 0 0 130px;
}
#sraTopRow>div.rating span.rating{
    color:#CC6633;
    margin-left:5px;
}

#sraTopRow>div.note{
    margin-top:5px; padding-top:5px;
    border-top:solid 1px #cccccc;    
}

#sraRatingDetails{
    clear:left; margin-top:10px;
    overflow:hidden;
}
#sraRatingDetails table{
    float:left; width:31%;
    border-collapse:separate; border-spacings:2px;
 }
#sraRatingDetails table{
    margin-left:22px;
}
#sraRatingDetails table:first-child{
    margin-left:0;
}
 #sraRatingDetails th{
    text-align:left;
    background-color:#eeeeee;
    background-image: linear-gradient(to right,#CECECE,#f3f3f3);    
}
#sraRatingDetails td{
    padding:2px 0;
    border-top:solid 1px #cccccc; 
}
#sraRatingDetails td.rating{
    width:70px;
    text-align:right;
    color:#CC6633; font-size:1.2em;
}
/*
#sraRatingDetails td.rating span{
    display:inline-block;
    background: url("http://ttcm.s3.amazonaws.com/Images/Template/stars_5.png") left center repeat-x;
}
*/

/*   - Deck Plan(sub)Page (dpl) Style Classes */
/*   ------------------------------------------------------- */
#dplBody{
    background-image:none;
}
#dplTopDiv{
    width:668px; 
}
#dplTitle  a{
    color:white; font-weight:normal;
    margin:0 10px;
}
#dplMainBody{
    padding:10px 0 10px 10px;
}
#dplMainBody img.logo{
  float:left; margin-right:10px;
}

/* Deck Image Block */
#dplRightPane{
    float:right;
    margin-left:10px; margin-bottom:10px; 
    *width:300px; text-align:center;
}
#dplRightPane img.legend{
    display:block; margin:0 auto;
}
#dplRightPane div.zzCabinOverlay{
    position:static;  /* override common setting */
}
#dplRightPane div.zzCabinOverlay >div{
    left:10px; 
}

#dplMainPane{
}
#dplMainPane div.header{
}
/* Deck Selection Block */
#dplDeckSelection{
    width:350px;
	*width:335px;
    margin:10px; padding:10px 0;
    background:url( "http://s3.amazonaws.com/TTCMTEST/Images/Template/deckbg.png" ) center no-repeat;
    text-align:center; font-size:8pt; font-weight:bold
}
#dplDeckSelection.small{
    background:url( "http://s3.amazonaws.com/TTCMTEST/Images/Template/deckbgs.png" ) center no-repeat;
}
#dplDeckSelection div.box {
    margin:0px 92px; 
    background-color:#ddddde;
    border-bottom:solid 1px black;
}
#dplDeckSelection div.box>div{
    padding:1px 10px;
    border:solid 1px black; border-bottom:0px;
}
#dplDeckSelection div.box>div a{
    text-decoration:none;
}
#dplDeckSelection div.box>div:hover{
    background-color:white;
}
#dplDeckSelection div.box>div.selected{
    color:white; background-color:#224273;
}
/* Cabin Categories Block */
#dplCategories{
}
div.dplCategory  {
    margin:7px 0; 
    overflow:hidden;
}
div.dplCategory div.left {
    float:left; width:65px;
}
div.dplCategory div.left>span{
    font-weight:bold; color:#224273;
    vertical-align:8px;
    margin-left:5px;
}
div.dplCategory div.left img.cabin{
    width:60px; margin-top:8px;
}
div.dplCategory div.right{
    margin-left:75px;
}
div.dplCategory div.right p{
    margin:0;
}

#dplFooter {
    clear:both;
}


/*   Exclusive/Special Offer pop-up page(eo) Style Classes   */
/*   ------------------------------------------------------  */
#eoBody{
    background-image:none;
}
#eoTopDiv{
    width:90%; margin:10px auto;
}
#eoTopDiv div.buttonBox{
    margin:10px 0; text-align:right;
}

/*   - Cruise Compare (sub)Page (ccp) Style Classes */
/*   ------------------------------------------------------- */
#ccBody{
}
#ccCustHdrFrame{
}
#ccTopDiv{
}
#ccMainBody{
    margin:20px;
}
#ccMainBody h1 span.ccPageTitle{
}
#ccMainBody h1 span.ccBackButton{
    float:right;
    color:white; background-color:#CC6633;
    font-size: 10px;
    padding:3px 5px;
    cursor:pointer;
}

#ccMainBody table {
    border:solid 1px #224273;
}
#ccMainBody td{
    width:150px; padding:5px;
    border:solid 1px #224273;
    vertical-align:top;
    font-size:10px;
}
#ccMainBody td:first-child{
    width:100px;
    color:white; background-color:#224273;
    font-weight:bold; text-align:left;
    border-bottom-color:white;
}
#ccMainBody tr.spacerNext td:first-child{
    border-bottom-color:#224273;
}
#ccMainBody tr.spacer td{
    height:12px;
    background-color:#CCD4DF;
    border-style:none;
    background-image:linear-gradient(#ffffff,#99A9C0);
    background-image: -webkit-linear-gradient(top,#ffffff,#acb9cc);}

tr.ccVendorRow,
tr.ccDestinationRow,
tr.ccLengthRow,
tr.ccShipRow,
tr.ccButtonRow{
    color:#224273; font-weight:bold;
    text-align:center;
}
tr.ccVendorRow img{
    margin:5px 0;
}
tr.ccShipRow img{
    width:90%; margin:5px 0;
    *width:135px; /* IE7 compatibility */
}
tr.ccPricesRow td{
    text-align:center;
}
tr.ccPricesRow td div{
    text-align:right;
}
tr.ccPricesRow td div span{
    float:left;
}
tr.ccPricesRow td div span.price{
    float:none; 
    color:#CC6633; font-weight:bold;
}
tr.ccSpecialOffersRow ul{
   padding-left:12px;
}
tr.ccSpecialOffersRow li{
   margin-left:5px;
}
tr.ccSpecialOffersRow li span{
    color:#4e4e4e;
}
#ccMainBody tr.ccButtonRow td{
    padding:7px 0;
}
tr.ccDepartRow,
tr.ccArriveRow{
    color:#224273; font-weight:bold;
}
tr.ccItinRow h4,
tr.ccShipDetailsRow h4{
    margin:2px 0; text-align:center;
    font-weight:bold; font-size:1.1em;
}
tr.ccShipDetailsRow td>div{
    text-align:right;
}
tr.ccShipDetailsRow td>div span{
    float:left;
}
#ccCustFtrFrame{
}


/*--------------------- CBE Classes ----------------------*/
/* -- Common Styles -- */
div.zzMainBody{
    margin:20px;
}
div.zzPageTitle{
    margin:20px 0;
}
div.zzHoldTimer{
    position:relative;
    float:right; padding:3px;
    background-color:#FDFDEE;
    color:#4e4e4e; font-weight:bold; font-size:10px;
    border:solid 1px black;
}
div.zzHoldTimer span{
    vertical-align:middle;
}
div.zzHoldTimer span.time{
    color:#cc6633; font-size:16px;
    margin-left:15px;
}
span.zzCabinHoldExtendLink {
    font-size:9px; background-color:#224273; color:white;
    margin:0 5px; padding:2px 5px; text-transform:uppercase;
    cursor:pointer;
}
span.zzCabinHoldExtendLink:hover{
    background-color:#3360A4;
}

div.zzFormBody{
    position:relative; overflow:hidden;
    padding-left:150px;
}
div.zzFooter{
    margin:0 20px;
}
div.zzDisplayFrame{
    position:absolute; left:0;
    width:130px;
}
div.zzDisplayFrame img{
    margin-bottom:10px;
}

iframe.zzDisplayFrame{
    position:absolute; left:0px;
    width:130px; height:800px;
}

/* Customer Form - Common Style Classes */
div.zzCustomerForm h2{
    margin-bottom:10px;
}
div.zzCustomerForm h2 span.subtitle {
    margin-left:10px;
    font-size:11px; font-weight:normal; color:#4e4e4e;
}
div.zzCustomerForm  div.formSection{
    margin:5px 0; clear:left; overflow:hidden;
    padding-top:4px; border-top:solid 1px #cccccc;
}
div.zzCustomerForm div.formField,
div.zzCustomerForm div.formField1{
    float:left; width:50%; padding:0px 0; height:30px;
}
div.zzCustomerForm div.formField1{
    width:auto;
}
div.zzCustomerForm span[class|=zzFormLabel]{
    margin-right:3px;
}
div.zzCustomerForm div.formLabel{
    float:left; width:72px;
    text-align:right; font-size:11px;
}
div.zzCustomerForm input,
div.zzCustomerForm select{
    margin-right:6px;
    font-size:10px;  background-color:white;
}
div.zzCustomerForm div.required input,
div.zzCustomerForm div.required select{
    background-color: #ffffcc;
}
div.zzCustomerForm div.formField input{
    width:210px;
}
div.zzCustomerForm div.formField select{
    width:216px;
}

/* Passenger Form - Common Style Classes */
div.zzPaxForm{
    border:solid 1px #224273;
    background-color:#f0f0f0;
    font-size:11px;
    margin-bottom:10px;
}
div.zzPaxForm  div.zzTitleBox{
    padding:4px 6px;
}
div.zzPaxForm span.title{
    font-weight:bold; font-size:13px;
    text-transform:uppercase;
}
div.zzPaxForm span.select{
    float:right; 
}

div.zzPaxForm  div.formSection{
    margin:5px 10px; clear:left; overflow:hidden;
    padding-top:4px; border-top:solid 1px #cccccc;
}
div.zzPaxForm  div.formSection0{
    margin-left:40px;
}
div.zzPaxForm div.formField,
div.zzPaxForm div.formField1{
    float:left; height:16px;
    padding:5px 0;
}
div.zzPaxForm div.formField1{
    width:auto; margin-left:15px;
}
div.zzPaxForm div.formField1 select{
    margin-left:5px;
}
div.zzPaxForm div.fname input{
    width:110px;
}
div.zzPaxForm div.lname input{
    width:155px;
}
div.zzPaxForm span[class|=zzFormLabel]{
    margin-right:4px;
}
div.zzPaxForm div.formLabel{
    float:left; width:75px;
    text-align:right;
}
div.zzPaxForm input,
div.zzPaxForm select{
    font-size:10px;  background-color:white;
}
div.zzPaxForm div.formField input{
    width:210px;
}
div.zzPaxForm div.country select,
div.zzPaxForm div.nationality select{
    width:216px;
}
div.zzPaxForm div.required input,
div.zzPaxForm div.required select{
    background-color: #ffffcc;
}
div.zzPaxForm div.pportidate div.formLabel,
div.zzPaxForm div.pportedate div.formLabel{
    width:125px;
}
div.zzPaxForm div.same{
    display:none;
}

/* -- JQuery Dialog Box -- */
div.ui-dialog{
    font-size:10px; padding:0;
}
div.ui-dialog div.ui-dialog-content{
    padding:0; margin:0;
}
div.ui-dialog-titlebar{
    font-size:1.2em; border:none; border-radius:0;
    color:white; background:#224273;
}
div.ui-dialog-titlebar button.ui-button{
    color:#4e4e4e; background-image:none;
}
div.ui-dialog-titlebar button.ui-button:before{
    content:'X';
}
div.ui-dialog-buttonpane{
    font-size:1.1em;
}
div.ui-widget button.submit{
    color:white; background:#cc6633;
    font-weight:bold;
}

/* -- Category Availability Page (ca) Style Defintions -- */
#caBody{
}
#caCustHdrFrame{
}
#caTopDiv{
}
#caMainBody{
}
/* Top-of-page Message Area */
#caMessageArea{
    font-size: 10px;
    margin:4px;
}
#caMessageArea h1 {
    text-align:center;
    font-size:16px; font-weight:normal;
}

/* Category List Area */
#caCategoryList{
    margin:20px 0;
}
#caCategoryList div.tabs{
    padding-bottom:2px;
    border-bottom:solid 1px #224273;
}
#caCategoryList div.tabs>span{
    color:#224273; font-weight:bold;
    border:solid 1px #224273; border-bottom:none;
    margin-right:5px; padding:2px 4px;
    cursor:pointer;
}
#caCategoryList div.tabs span.selected{
    color:white; background-color:#224273;
}
#caCategoryList div.tab{
    display:none;
}
#caCategoryList div.tab#caCategoryListInside, /*old*/
#caCategoryList div.tab#caTabBody0{
    display:block;
}

div.caCategoryListing{
    padding:10px;
    border:solid 1px #224273; border-top:none;
    min-height:135px;
}
div.caCategoryListing div.image{
    float:left; width:16%; font-size:.9em;position:relative;
}
div.caCategoryListing div.image img{
    width:100%; margin-bottom:2px;
}
div.caCategoryListing div.image img:hover{
    position:absolute; z-index:2;
    width:300px;
}

div.caCategoryListing div.image span{
    font-weight:bold;
}
div.caCategoryListing>h3{
    font-size:1.1em;
    padding:3px 6px;
    background-color:#224273; color:white;
}
div.caCategoryListing>h3 span.special{
    float:right; 
    color:white;
    font-size:.9em;
    text-transform:uppercase;
}
div.caCategoryListing>h2{
    margin-top:5px;
    font-size:1em;
}
div.caCategoryListing>h2,
div.caCategoryListing>h3,
div.caCategoryListing>p,
div.caCategoryListing>div.decks{
    margin-left:18%;
}
div.caCategoryListing>div.decks{
    margin-top:10px;
}
div.caCategoryListing div.priceBox{
    position:relative; float:right; width:15%;
    margin:10px 5px 0 5px; padding:5px 0;
    text-align:center;
    background-color:#f3f3f3;
    border:solid 1px #999999;
}
div.caCategoryListing div.priceBox.air{
    width:25%; top:-2px;
}
div.caCategoryListing div.priceBox.special{
    top:-3px; background-color:#FDFED6;
}
div.caCategoryListing div.priceBox.air.special{
    top:-8px;
}
div.caCategoryListing div.priceBox div.cruiseOnly{
    float:left; width:50%; position:relative;
    border-right:solid 1px #cccccc;
}
div.caCategoryListing div.priceBox span.price{
    font-weight:bold; font-size:1.35em;
}
div.caCategoryListing div.priceBox div.label{
    font-size:.9em;
}
div.caCategoryListing div.priceBox div.mot{
    color:#224273; font-weight:bold;
}
div.caCategoryListing div.priceBox img.noDetails{
    cursor:pointer;
}
div.caCategoryListing div.priceBox div.buttonBox{
    margin:4px 0;
}
div.caCategoryListing div.priceBox div.zzBookingPricing{
    display:none;
}
div.caCategoryListing div.zzBookingPricing{
    position:absolute; right:40px; z-index:10;
    width:200px; padding:5px 5px 0 5px;
    background-color:#FFFED2;
    border:solid 1px #999999;
}
div.caCategoryListing div.priceBox h2{
    font-size:1em;
}
#caCustFtrFrame{
}
#caTagData{
}


/* -- Cabin Selection Page (cs) Style Defintions -- */

#csBody{
}
#csCustHdrFrame {
}
#csTopDiv {
}
#csMainBody{
    overflow:hidden;
}

#csMsgBox{
    text-align:center;
    FONT-SIZE: 14px; FONT-WEIGHT: bold;
    padding:5px 100px;
}
#csMsgBox a{
    color:Red;
}

/* ---- Deck Image Section ---- */
#csDeckPlan{
    float:right;
    margin-left:5px;
    text-align:center;
}
#csDeckPlan div.image{
    position:relative; padding-right:17px;
    height:450px; overflow:auto;
    margin-bottom:10px;
}
#csDeckPlan img.csDeckFlashImg {
    WIDTH: 13px; HEIGHT: 13px;
    Z-INDEX: 2; POSITION: absolute;
    CURSOR: pointer;
}

/* ---- Main Section ---- */
#csMainSection{
    min-height:425px;
    padding:10px; 
    border:solid 1px #224273;
    background-color:#F3F3F3;
    overflow:hidden;
}
#csMainSection h2{
    margin-bottom:20px;
    color:#cc6633; font-size:13px;
}
#csMainSection h2 img{
        vertical-align:-10px;
        margin-right:5px;
}
#csMainSection h2 span{
    color:#4e4e4e; font-size:.8em;
}

/* ---- Subsection 1 ---- */
#csSubSection1{
    float:right; width:65%;
}

/* Catetgory Upgrade block */
#csCategoryUpgradeSection{
    padding:10px; position:relative;
    background-color:white;
    border:solid 1px #999999;
    overflow:hidden;    
}
#csCategoryUpgradeSection h3{
    margin-bottom:5px;
}
div.csCategoryUpgradeItem {
    float:left; width:45%;
    padding-top:5px; margin-right:5%;
    border-top:solid 1px #999999;
}
div.csCategoryUpgradeItem span.category{
}
div.csCategoryUpgradeItem span.zzCatColor {
    vertical-align:-5px;
}
div.csCategoryUpgradeItem span.catCode,
div.csCategoryUpgradeItem span.price{
    font-size:1.1em; font-weight:bold;
    cursor:pointer;
}
div.csCategoryUpgradeItem span.price{
    float:right; color:#cc6633;

}
div.csCategoryUpgradeItem p{
    font-size:.9em;
}

/* ---- Subsection 2 ---- */
#csSubsection2{
    width:33%; 
}
/* Cabin Image Bock */
#csCabinImage{
    margin-bottom:10px;
    position:relative; 
}
#csCabinImage>img{
    width:100%;
}
#csCabinImage div.zzCabinOverlay >div{
    left:180px;
}
#csCabinImage>p{
    margin:8px 0;
    font-size:.9em;
}
#csCabinNumbers{
    margin-bottom:10px; padding-bottom:10px;
    /*border-bottom:solid 1px #999999;*/
    font-size:.9em;
}
#csCabinNumbers h2{
    margin:1px 0 0 0; padding:2px 4px;
    background:#224273 url('https://ttcm.s3.amazonaws.com/Images/Template/T4/triangle-dn.png') 95% 50% no-repeat;
    color:white;  font-size:10px; font-weight:normal;
    cursor:pointer;
}
#csCabinNumbers h2.open{
    background-image: url('https://ttcm.s3.amazonaws.com/Images/Template/T4/triangle-up.png');
}
#csCabinNumbers div.deck{
    display:none;
    background-color:white;
    border:solid 1px #999999;
    padding:6px;
}
#csCabinNumbers h3{
}
#csCabinNumbers div.list{
    overflow:hidden;
}
#csCabinNumbers div.list>div{
    width:49%; float:left;
}
#csCabinNumbers div.list>div input{
    margin-right:5px;
}
#csCabinNumbers div.buttonBox{
    margin:8px 0 0 60%;
}
#csCabinNumbers span.upgrade{
    margin-left:5px; color:red;
}
#csCabinNumbers div.legend{
    margin:10px 0 0 2px;
}
#csCabinNumbers div.legend>div{
    text-transform:uppercase;
}
#csCabinNumbers div.legend span.star{
    color:red
}
#csCabinNumbers div.legend p{
    margin-top:5px; padding-top:3px;
    border-top:solid 1px #999999;
}
#csCabinNumbers div.legend p.cssmode2{
    font-size:14px; font-weight:bold;
}
#csCabinNumbers div.legend p.cssmode2 a{
    color:#cc0000;
}


#csCustFtrFrame{
}
#csTagData{
}


/* -- Login/Registration Page (lg) Style Defintions -- */
#lgBody{
}
#lgCustFtrFrame{
}
#lgTopDiv{
}
#lgPageHeader {
}
#lgMainBody{
}

/* Login Type Selection Box */
#lgLoginTypeSelectBox{
    float:left; 
    font-size:12px; font-weight:bold;
}
#lgLoginTypeSelectBox>div{
    margin:5px 2px;
}
#lgLoginTypeSelectBox>div.selected{
    color:#cc6633;
}
#lgLoginTypeSelectBox>div input{
    vertical-align:middle;
    cursor:pointer;
}

#lgCustomerFormBox{
    margin-left:240px;
    position:relative;
}
div.lgLoginOption {
    display:none;
}

#lgCustomerFormBox div.zzCustomerForm{
    border:solid 1px #224273;
    background-color:#f0f0f0;
    padding:10px;
    font-size:10px;
    overflow:hidden;
}

#lgCustomerFormBox div.button{
    clear:left; padding-top:10px;
}
#lgCustomerFormBox div.button input{
    vertical-align:middle;
}
#lgCustomerFormBox div.button a{
    margin-left:10px;
}
#lgCustomerFormBox div.button>div{
    margin-top:5px;
}
/* Form Button */
#lgCustomerFormBox  span.zzContinueButton{
   float:right;
}

div.lgSNButtons{
    margin:5px 0;
    text-align:right
}
div.lgSNButtons img{
}
#lgMsgBox{
    margin-top:4px;
    font-size:12px;
}
#lgForgotPwdBox{
    padding:4px;
}
/* ------- Page Footer ------- */
#lgDemoMessage{
}
#lgFooter{
    margin-top:75px;
    border-top:solid 1px #cccccc;
}
#lgCustFtrFrame{
}
#lgTagData{
}


/* -- Passenger Info (px) Style Definitions -- */
#pxBody{
}
#pxCustFtrFrame{
}
#pxTopDiv{
}
#pxPageHeader {
}
#pxMainBody{
}
#pxLoginInfo{
    margin-bottom:15px;
}
#pxFormBody{
}
#pxServicesForm div.formField1{
    white-space:nowrap;
}
#pxServicesForm a{
    font-weight:bold;
}
#pxServicesForm span.zzContinueButton{
    float:right;
}
#pxServicesForm div.specialServices{
    position:relative; padding-bottom:5px;
}
#pxDisclaimerArea{
    font-size:10px;
}
#pxFooter{
    margin-left:170px;
}

.pxSpServiceOverlay{
    padding:0 5px;
}

.pxSpServiceOverlay input,
.pxSpServiceOverlay select{
    height:15px; font-size:10px;
    vertical-align:middle;
    color:inherit;
}
.pxSpServiceOverlay h2{
    color:#cc6633; font-size:11px;
    background-color:transparent;
    padding-top:8px;
}
.pxSpServiceOverlay h3{
    margin:3px 0;
}
.pxSpServiceOverlay div.formSubsection{
    clear:left; overflow:hidden;
}
.pxSpServiceOverlay div.formField{
    float:left; width:120px;
    margin-bottom:2px;
}
.pxSpServiceOverlay div.formField label{
    display:inline-block; max-width:95px; 
    overflow:hidden; vertical-align:middle;
}
.pxSpServiceOverlay span.price{
    margin-left:5px;
}

/* -- Customer Profile Page (cp) Style Defintions -- */
#cpBody{
}
#cpCustHdrFrame{
}
#cpTopDiv{
}
#cpPageTitle {
}
#cpBookingSummary{
}
#cpCustomerForm{
    width:75%; margin:30px auto;
    border-style: solid;
    background-color:#f0f0f0;
    padding:10px 15px;
    font-size:10px;
}
#cpCustomerForm h2{
    margin:0 0 5px 0;
}
#cpCustomerForm form{
    overflow:hidden;
}
/* Customer Form Fields */
#cpCustomerForm div.formField{
    float:left; min-height:21px;
    padding:4px 20px 4px 0;
}
#cpCustomerForm div.required{
    font-weight:bold;
}
#cpCustomerForm input,
#cpCustomerForm select{
    FONT-SIZE: 10px;
}
#cpCustomerForm div.required input,
#cpCustomerForm div.required select{
    background-color: #ffffcc;
}
#cpCustomerForm input[name=address2]{
    margin-right:60px;
}
#cpCustomerForm div.optIn{

    margin:5px 0;
}
#cpCustomerForm div.optIn span{
    vertical-align:3px;
}

#cpButtonBox{
    text-align:right;
}
#cpButtonBox a{
    font-size:1.1em;
    float:left;
}
#cpMsgBox{
    margin-top:10px;
    font-size:12px;
}

/* --------- Travelers Form Overlay --------- */

#cpBody div.ui-dialog{
    width:760px !important;
}
#cpBody div.ui-dialog-buttonset{
    width:100%;
}
#cpBody button.ui-button.submit,
#cpBody button.ui-button.close{
    float:right; 
}

/* Traveler Form Box */
div.zzTravelerBox{
    margin-bottom:5px;
    border: 1px solid #224273;
    background-color:#f0f0f0;
}
/* Traveler Form Heading Row */
div.zzTravelerBox div.formHeader{
    padding:2px; font-weight:bold;
    background-color: #ffffff; 
}
div.zzTravelerBox div.formHeader input{
     vertical-align:-2px;
}
/* Form Row */
div.zzTravelerBox div.formRow{
    clear:both;
    border-top: 1px solid black;
}
/* Form Cell */
div.zzTravelerBox div.formLabel{
    float:left; width:13%;
    padding:2px;
}
div.zzTravelerBox div.formData,
div.zzTravelerBox div.formData1,
div.zzTravelerBox div.formData2{
    float:left; padding: 2px;
    border-left: 1px solid black;
}
div.zzTravelerBox div.formData{
    width:78%;
}
div.zzTravelerBox div.formData1{
  width:37%;
}
div.zzTravelerBox div.formData2{
}
/* Form Data Item */
div.zzTravelerBox div.formField{
    float:left;
    padding: 0 3px 2px 7px;
}
/* Form Data Item Label */
div.zzTravelerBox div.formData div.formField div{
    white-space:nowrap;
}
div.zzTravelerBox div.formData div.required div{
    font-weight:bold;
}
div.zzTravelerBox div.formData .cuSameAddrCb{
    width:90%;
}
div.zzTravelerBox div.citizenship >div{
    min-height:70px;
}
/* Form Data Item Control */
div.zzTravelerBox input,
div.zzTravelerBox select{
    font-size:10px;
}
div.zzTravelerBox div.required input,
div.zzTravelerBox div.required select{
    background: #ffffcc;
}

div.zzTravelerBox div.zzPastPaxBox{
}
div.zzTravelerBox div.zzPastPaxBox h4{
    margin:0; font-size:1em;
}
div.zzTravelerBox div.zzPastPaxBox p{
    font-size:.8em; font-weight:normal;
    margin:0;
}
div.zzTravelerBox div.zzPastPaxBox h4 button{
    margin-left:35px; font-size:.8em;
}
div.zzTravelerBox div.zzPastPaxBox>div span{
    display:inline-block; width:160px; vertical-align:top;
}
div.zzTravelerBox div.same{
    display:none;
}

/* ------- Page Footer ------- */
#cpFooter{
}
#cpCustFtrFrame{
}
#cpTagData{
}




/* -- Payment page (pm) Style Definitions -- */
#pmBody{
}
#pmCustFtrFrame{
}
#pmTopDiv{
}
.zzOffline{
    display:none;
}
#pmPageHeader {
}
#pmMainBody{
}
#pmMainBody  h2{
    background-color:#224273; color:white;
    font-size:12px; text-transform:uppercase;
    padding:2px 4px;
}
#pmMainBody h3{
    color:#cc6633;
    font-size:12px;
}


#pmPaxFareInfo{
   display:none;
}
#pmPaxFareInfo table{
    width:97%;
}
#pmPaxFareInfo table th{
    text-align:left; 
    color:#224273; font-size:10px;
}
#pmPaxFareInfo .price{
    text-align:right;
}
#pmPaxFareInfo .total{
    font-weight:bold;
}
#pmPaxFareInfo div.paxInfo{
    clear:left; margin:8px 0; padding:8px 0;
    border-top:solid 1px #999999; 
}
#pmPaxFareInfo .left{
    float:left; width:20%;
}
#pmPaxFareInfo .right{
    width:80%; margin-left:20%;
    padding:0 10px; 
}
#pmPaxFareInfo div.statementBox{
    border-top:solid 1px #999999;
    padding-top:10px;
}

#pmPaxFareInfo div.buttonBox>div{
    margin-top:4px;
}
#pmPaxFareInfo div.buttonBox>p{
    float:left; width: 70%; margin-top:5px;
    text-align:left; font-size:9px;
}

#pmTravelInsurBox,
#pmPaymentInfo,
#pmPointsBox,
div.pmCreditCardForm,
#pmSubmitBox{
    margin-bottom:10px;
    border:solid 1px #224273;
    background-color:#f3f3f3;
    overflow:hidden;    
}

/* - Insurance Box - */
#pmTravelInsurBox{
}
#pmTravelInsurBox>div{
    padding:7px 10px;
}
#pmTravelInsurBox p{
    margin-top:5px;
}
#pmTravelInsurBox>div.pmInsFormPrice{
    width:30%; float:right;
    margin-left:10px; padding:5px 0 5px 10px;
    border-left:solid 1px #999999;
}
div.pmInsFormPrice div.buttons{
    margin:4px 0;
    font-weight:bold;
}
div.pmInsFormPrice div.buttons input{
    vertical-align:middle;
}
div.pmInsFormPrice div.buttons span.pmInsuranceAccept{
    margin-right:30px;
}
div.pmInsFormPrice p{
    padding-top:4px;
    border-top:solid 1px #999999;
    font-size:9px;
}

 /* - Payment Box - */     
#pmPaymentInfo{
}
#pmPaymentInfo>div{
    padding:10px;
}

div.pmPaymentOptions{
    padding-bottom:5px; margin-bottom:10px;
    border-bottom:solid 1px #999999;
}
div.pmPaymentOptions input{
    vertical-align:middle;
}
div.pmPaymentOptions>span{
    display:inline-block; margin:0 4px 2px 0;
}
div.pmPaymentOptions label,
div.pmCreditCardForm label{
    color:#224273; font-weight:bold;
    margin-right:4px;
}


#pmPaymentInfo  span.secure{
    float:right;
    font-size:9px; color:#4e4e4e;
}
#pmPaymentInfo span.secure img{
    vertical-align:middle;
}
#pmPaymentInfo div.split select{
    font-size:10px;
}
#pmPaymentInfo div.split span{
    color:#224273; font-weight:bold;  
}

/* Purchase with Points */
#pmPointsBox{
    overflow:hidden; margin:10px 0;
    border-style:solid; 
}
#pmPointsBox>div{
    float:left; width:32%; 
    margin:5px 3px;
}
#pmPointsBox>div>label{
    margin-right:4px;
}
#pmPointsBox input{
    width:60px; text-align:right;
}
#pmPointsBox>div.pbalance{
}
#pmPointsBox>div.pointsApplied{
}
#pmPointsBox>div.balanceDue{
}


 /* - Credit Card Forms - */  
div.pmCreditCardForm{
    padding-bottom:5px;
}
div.pmCreditCardForm span.pmsCCard-Note{
    font-size:11px; font-weight:normal; text-transform:none;    
}

div.pmCreditCardForm input,
div.pmCreditCardForm select{
    margin-right:5px;
    font-size:10px;
}
div.pmCreditCardForm .required {
    background-color:#ffffcc;
}

div.pmCreditCardForm div.formRow{
    margin:8px 5px 0 5px;
}
div.pmCreditCardForm div.formRow span{
    margin-right:4px;
}
div.pmCreditCardForm div.formRow span:first-child{
    display:inline-block; width:100px;
    text-align:right;
}
div.pmCreditCardForm div.amountApplied{
    padding-top:8px; border-top:solid 1px #cccccc;
}
div.pmCreditCardForm div.amountApplied  span.surcharge,
div.pmCreditCardForm div.amountApplied span.total{
    font-weight:bold;
}

#pmSubmitBox{
    margin:20px 0; padding:10px;
}
#pmSubmitBox span.zzContinueButton{
    float:right; margin-left:20px;
}
#pmSubmitBox p{
    margin-bottom:10px; font-weight:bold;
}

#pmSubmitBox input[type=checkbox]{
   float:left; margin-right:8px;
}

#pmPaymentDisclaimer p{
    margin-bottom:10px; padding-bottom:10px;
    border-bottom:solid 1px #999999;
    font-size:9px;
}


/* -- Confirmation page (co) Style Definitions -- */
#coBody{
}
#coCustFtrFrame{
}
#coTopDiv{
}
#coPageHeader {
}
#coMainBody{
}

#coMainBody h3{
    color:#cc6633;
    font-size:12px;
}

#coConfSection{
    margin-bottom:10px; overflow:hidden;
}
#coConfSection div.panel1{
    width:62%;
}
#coConfSection div.panel1 p{
    margin:10px 0;
    font-size:12px;
}
#coConfSection div.buttonBox{
    margin-top:10px; padding:10px 0;
    border-top:solid 1px #224273;
    font-weight:bold;
}
#coConfSection div.buttonBox span.coBookAgainButton{
    background-color:#224273; margin-right:10px;
}
#coConfSection div.buttonBox input{
    font-size:10px; color:#333333.
}

#coConfSection div.panel2{
    float:right; width:36%;
}
#coConfSection div.panel2>div{
    font-size:14px; font-weight:bold;
    border-left:solid 2px #cccccc;
    padding-left:10px;
}
#coConfSection div.panel2>div>div{
    margin-top:4px;
}
#coConfSection div.panel2 h2{
    color:#cc6633; font-size:13px;
}
#coConfSection div.panel2 iframe{
    width:100%; height:160px; margin-top:10px;
}

#coWarningMessages div.coMsgBox{
    width:75%; margin:10px auto; padding:5px 5px 5px 70px;
    background:#FDFED6 url("https://ttcm.s3.amazonaws.com/Images/Template/T4/exclamation.png") no-repeat 10px;
    border:solid 1px #cccccc;
}
#coWarningMessages h2{
    color:#cc0000; font-size:12px;
}

/* - Insurance Box - */
#coTravelInsurBox{
    margin:10px 0; padding-bottom:5px;
    border:solid 1px #224273;
    background-color:#f3f3f3; 
}
#coTravelInsurBox p{
    margin:5px;
}
#coTravelInsurBox h2{
    background-color:#224273; color:white;
    font-size:12px; text-transform:uppercase;
    padding:2px 4px;
}

#coPaxFareInfo table{
    width:97%;
}
#coPaxFareInfo table th{
    text-align:left; 
    color:#224273; font-size:10px;
}
#coPaxFareInfo .price{
    text-align:right;
}
#coPaxFareInfo .total{
    font-weight:bold;
}
#coPaxFareInfo div.paxInfo{
    clear:left; margin:8px 0; padding:8px 0;
    border-top:solid 1px #999999; 
}
#coPaxFareInfo .left{
    float:left; width:20%;
}
#coPaxFareInfo .left a{
    font-size:.9em;
}
#coPaxFareInfo .right{
    width:80%; margin-left:20%;
    padding:0 10px; 
}
#coPaxFareInfo div.statementBox{
    border-top:solid 1px #999999;
    padding-top:10px;
}
#coPaxFareInfo div.grandTotal{
    border-top:solid 1px #999999;
    margin-top:4px; padding-top:4px;
    text-align:right;
	color:#cc6633; font-size:12px; font-weight:bold;
}
#coPaxFareInfo div.grandTotal span:first-child{
    margin-right:5px; color:#4e4e4e;
}
#coPaxFareInfo div.payments{
    margin-top:4px;
    text-align:right;
}
#coPaxFareInfo div.payments div.amount{
	display:inline-block; width:100px;
	*zoom:1; *display:inline;
}