.trip-sold-out {
    color: lightgray;
}

span.twitter-typeahead {
    width: 100%;
}

.error {
    color: #F11;
}

.option-addendum {
    margin-top: 10px;
    margin-bottom: 0;
    padding: 5px;
}

.option-addendum p {
    text-transform: none;
}

#ticket_form input{
   text-align:center;
}

.alert-fixed {
    position: fixed;
    top: 0px;
    left: 15px;
    right: 15px;
    z-index: 9999;
}

del {
	text-decoration-thickness: 1.5px;
}

form.is-submitting input[type="submit"] {
  cursor: not-allowed;
}

/*buttons */
#ticket_form .form-btn { -webkit-box-shadow: inset 0px -4px rgba(0,0,0,0.25); -moz-box-shadow: inset 0px -4px rgba(0,0,0,0.25); box-shadow: inset 0px -4px rgba(0,0,0,0.25);}

#ticket_form .btn-form {font-family: 'oswaldregular', sans-serif; font-size:18px; padding:15px 10px !important; border:none; color:#FFF !important; width: 98% !important;}
#ticket_form .btn-form:hover {color: #CCC; background:#0f5784 !important;}
#ticket_form .btn-form:last-child { margin-left:0;}

#ticket_form #submit {-webkit-box-shadow: inset 0px -4px rgba(0,0,0,0.25); -moz-box-shadow: inset 0px -4px rgba(0,0,0,0.25); box-shadow: inset 0px -4px rgba(0,0,0,0.25); font-family: 'oswaldregular', sans-serif; text-transform:uppercase; font-size:18px; padding:15px 30px !important; border:none; color:#FFF !important; width: auto !important; background:#e13b3d;}
#ticket_form #submit:hover {color: #CCC; background:#063f62 !important;}
#ticket_form #submit:last-child { margin-left:0;}

#ticket_form #confirm_reservation #submit {-webkit-box-shadow: inset 0px -4px rgba(0,0,0,0.25); -moz-box-shadow: inset 0px -4px rgba(0,0,0,0.25); box-shadow: inset 0px -4px rgba(0,0,0,0.25); font-family: 'oswaldregular', sans-serif; text-transform:uppercase; font-size:18px; padding:15px 30px !important; border:none; color:#FFF !important; width: 98% !important; background:#e13b3d;}
#ticket_form #confirm_reservation #submit:hover {color: #CCC; background:#063f62 !important;}
#ticket_form #confirm_reservation #submit:last-child { margin-left:0;}

#ticket_form .btn-danger {font-family: 'oswaldregular', sans-serif; text-transform:uppercase; font-size:14px; padding:15px 30px !important; border:none; color:#333 !important; width: 100% !important; background:none !important; margin-top: -45px !important;}
#ticket_form .btn-danger:hover {color: #787878 !important;}
#ticket_form .btn-danger:last-child { margin-left:0 !important;}

#ticket_form h2.blue {
	color:#1c75ad;v
}

#ticket_form .bg-bs-green {
	background: #5bb85d !important;
}

#ticket_form #trip_type .form-group div {
	margin: 0 auto;
	padding-bottom:10px;
}

#ticket_form #trip_type .form-group div div{
	float:left;
	width: 50%;
	margin: 0 auto 20px;
}

#ticket_form #trip_type .form-group .control-label {
	display:none;
}

#ticket_form  #trip_type .form-group div div label{
	display:block;
	font-family: 'oswaldregular', sans-serif;
	font-size:20px;
	font-weight:500;
	color: #1c75ae;
	text-transform:uppercase;
	text-align:center;
	margin: 15px auto;
	padding-left:20px;
}

#ticket_form #trip_type .form-group div div .radio {
	display:block;
	float:none;
	margin: 0 auto;
	width:240px;
 }


#ticket_form #trip_type .form-group div div .radio label.radio{
	font-family: 'oswaldregular', sans-serif;
	font-size:16px;
	font-weight:300;
	color: #fff;
	background-color:#1c75ae;
	text-transform:uppercase;
	text-align:center;
	display:block;
	padding:10px;
    border-radius: 4px;
}

#ticket_form .form-group input[type="radio"] {
    margin-left: 0 !important;
}

#ticket_form #trip_type .form-group div div .active {
   background-color:#1a5a81 !important;
}

#ticket_form #trip_type .form-group div div .active:hover {
   background-color:#1a5a81 !important;
}

#ticket_form #trip_type .form-group div div .hover {
   background-color:#515151 !important;
}

/* Above is the radio button */

/* Passenger counts */
#ticket_form #pax_count .form-group div .form-control {
  -webkit-appearance: none;
  font-family: 'oswaldregular', sans-serif;
  font-size: 18px;
 padding-left: 49%;
 color: #fff !important;
 background-color:#1c75ae;
 height: 45px;
}

#ticket_form #pax_count .form-group div .form-control:focus {
 outline-color: transparent;
 outline-style: none;
}
/* End passenger counts */

#ticket_form #choose_your_trip .form-group div .radio {
	display:block;
	float:none;
	margin: 5px auto;
	width:auto;
 }

#ticket_form #choose_your_trip .form-group div .radio label.radio{
	font-family: 'oswaldregular', sans-serif;
	font-size:16px;
	font-weight:300;
	color: #fff;
	background-color:#1c75ae;
	text-transform:uppercase;
	text-align:center;
	display:block;
	padding:10px;
	margin-left:-20px;
    border-radius: 4px;
}

#ticket_form #choose_your_trip .form-group div .active {
   background-color:#1a5a81 !important;
}

#ticket_form #choose_your_trip .form-group div .active:hover {
   background-color:#1a5a81 !important;
}

#ticket_form #choose_your_trip .form-group div .hover {
   background-color:#515151 !important;
}

#ticket_form #choose_your_trip .form-group div .radio label.radio input[id*=departure_trip] {
    color: #1c75ae !important;
}

#ticket_form #choose_your_trip .form-group div .radio label.radio input[id*=return_trip] {
    color: #1c75ae !important;
}

#ticket_form #payment_method .form-group div {
	margin: 0 auto;
	padding-bottom:10px;
}

#ticket_form #payment_method .form-group div div{
	float:left;
	width: 50%;
	margin: 0 auto 20px;
}

#ticket_form #payment_method .form-group div .radio {
	display:block;
	float:none;
	margin: 0 auto;
	width:300px;
 }


#ticket_form #payment_method .form-group div .radio label.radio{
	font-family: 'oswaldregular', sans-serif;
	font-size:16px;
	font-weight:300;
	color: #fff;
	background-color:#1c75ae;
	text-transform:uppercase;
	text-align:center;
	display:block;
	padding:10px;
	margin-left:-20px;
    border-radius: 4px;
}

#ticket_form #payment_method .form-group div .active {
   background-color:#1a5a81 !important;
}

#ticket_form #payment_method .form-group div .active:hover {
   background-color:#1a5a81 !important;
}

#ticket_form #payment_method .form-group div .hover {
   background-color:#515151 !important;
}

#purchase_tenpass_container {
	max-width: 650px !important;
	margin: 25px auto 0 auto;
}

#purchase_tenpass_container p{
	line-height:24px;
}

#purchase_tenpass_container .form-group div .radio {
	display:block;
	float:none;
	margin: 5px auto;
	width:420px;
}

#purchase_tenpass_container .form-group div .radio label.radio{
	font-family: 'oswaldregular', sans-serif;
	font-size:16px;
	font-weight:300;
	color: #fff;
	background-color:#1c75ae;
	text-transform:uppercase;
	text-align:center;
	display:block;
	padding: 12px;
	margin-left:-20px;
    border-radius: 4px;
}

#purchase_tenpass_container .form-group div .active {
   background-color:#1a5a81 !important;
}

#purchase_tenpass_container .form-group div .active:hover {
   background-color:#1a5a81 !important;
}

#purchase_tenpass_container .form-group div .hover {
   background-color:#515151 !important;
}

.owner_container {
	max-width: 700px;
	margin: 0 auto;
}

.owner_container p{
	line-height:24px;
	text-align:center;
}

.purchase-tickets-container {
	max-width: 960px;
	margin: 0 auto;
}

.purchase-tickets-container h2{
	font-family: 'oswaldregular', sans-serif !important;
	text-align:center;
	font-size:30px;
	color:#1d76ae;
	padding: 15px 0;
}

.primary-traveler-container {
	max-width: 650px;
	margin: 0 auto;
}

.card-container {
	max-width: 730px;
	margin: 0 auto;
}

.card-container h1{
	font-family: 'oswaldregular', sans-serif !important;
	text-align:center;
	font-size:40px;
}

.card-container h2{
	font-family: 'oswaldregular', sans-serif !important;
	text-align:center;
	font-size:30px;
}

.card-container p{
	font-size:17px;
	text-align:center;
	line-height:23px;
	padding:5px;
}

.summary-container {
	max-width: 760px;
	margin: 0 auto;
}

.summary-container h2{
	text-align:center;
	font-size:30px;
}

.summary-container p{
	text-align:center;
	font-size:16px;
	line-height:24px;
	padding:5px;
}

#ticket_form .alert-info {
	text-align:center;
}

#ticket_form .control-label-header {
	font-family: 'oswaldregular', sans-serif;
	font-size:24px;
	font-weight:500;
	color: #1c75ae;
	text-transform:uppercase;
	text-align:center;
	margin: 0 auto;
	padding:10px;
}

#ticket_form .control-label {
	font-family: 'oswaldregular', sans-serif;
	font-size:18px;
	font-weight:400;
	color: #1c75ae;
	text-transform:uppercase;
	text-align:center;
	margin: 0 auto;
	padding-bottom:10px;
}

#ticket_form .control-label h2{
	font-family: 'oswaldregular', sans-serif;
	font-size:24px;
	font-weight:400;
	color: #333333;
	text-transform:uppercase;
	text-align:center;
	margin: 0 auto;
	padding-top:20px;
}

#ticket_form .vertical-line {
	border-left: solid thin #acacac;
}

#ticket_form .radio {
	width:100%;
	margin:15px auto;
	text-align:left;
}

#ticket_form .radio-2 {
	width:190px;
	margin:15px auto;
	text-align:left;
}

#ticket_form .radio-2 label {
	display: inline;
	font-weight: normal;
	cursor: pointer;
}

#ticket_form .radio-3 {
	width:220px;
	margin:15px auto;
	text-align:left;
}

#ticket_form .radio-3 label {
	display: inline;
	font-weight: normal;
	cursor: pointer;
}

#ticket_form .form-group {
	text-align:center;
	width:100%;
	padding: 20px 0;
}

#ticket_form .form-control{
	width:100%;
	height: 50px;
	font-size: 15px;
}

#ticket_form .form-group-trip {
	width:100%;
}

/* CUSTOM 5 COLUMN SPAN LAYOUT
  *
  * based on http://gridcalculator.dk/
  * width => 1200, gutter => 15px, margin => 15px, columns => 5
  */
 .row-fluid-5 {
	padding: 10px 0;
   width: 100%;
   *zoom: 1;
 }
 .row-fluid-5:before,
 .row-fluid-5:after {
   display: table;
   line-height: 0;
   content: "";
 }
 .row-fluid-5:after {
   clear: both;
 }
 .row-fluid-5 [class*="span"] {
   display: block;
   float: left;
   width: 100%;
   min-height: 30px;
   margin-left: 1.875%;
   *margin-left: 1.875%;

   -webkit-box-sizing: border-box;
      -moz-box-sizing: border-box;
           box-sizing: border-box;
 }

 .row-fluid-5 .controls-row [class*="span"] + [class*="span"] {

   margin-left: 1.875%;
 }
 .row-fluid-5 [class*="span"]:first-child{
    margin-left: 0;
 }
 .row-fluid-5 .span2 {
   width: 18.5%;
   *width: 18.5%;
 }

 .row-fluid-5 .span2 .form-group div .form-control {
	 -webkit-appearance: none;
	 font-family: 'oswaldregular', sans-serif;
	 font-size: 18px;
	padding-left: 49%;
	color: #fff !important;
	background-color:#1c75ae;
	height: 45px;
 }

 .row-fluid-5 .span2 .form-group div .form-control:focus {
  outline-color: transparent;
  outline-style: none;
}

.form-group div textarea.form-control {
    height: auto;
}

.form-group div .form-control {
	 -webkit-appearance: none;
	 font-family: 'oswaldregular', sans-serif;
	 font-size: 18px;
	height: 45px;
}
.form-horizontal .form-group label {
	font-size: 17px;
	height: 45px;
	padding-top:10px;
}
.form-horizontal .form-group .form-control-static {
	font-size: 17px;
	padding-top:10px;
}

#payment_method em{
	display: block !important;
	font-size: 12px !important;
	margin-top: 5px !important;
	line-height: 1.2 !important;
}

.trip-date-disclaimer {
    font-size: 14px;
    font-family: 'oswaldregular', sans-serif;
    text-align: center;
    color: #1c75ae;
}
.trip-date-disclaimer a {
	color: #1c75ae;
    text-decoration: underline;
}
.trip-date-disclaimer .disclaimer-red {
	color: #e13b3d;
}
.ticket-disclaimer {
	font-family: 'open_sansregular',sans-serif;
	font-size: 13px;
	padding: 3px 0;
}

 /* responsive ONLY */

 @media (max-width: 767px){ /* spans reduce to 100px then go full width */

    .row-fluid-5 [class*="span"]{
		margin-left: 0;
		float: left;
		width: 100%;
		padding: 5px;
    }

	#ticket_form .btn-form {
		margin-bottom:20px !important;
	}

	.vertical-line {
		border-left: none !important;
		border-top: solid thin #acacac !important;
		width:300px !important;
		margin: 20px auto !important;
	}

	#ticket_form #submit {-webkit-box-shadow: inset 0px -4px rgba(0,0,0,0.25); -moz-box-shadow: inset 0px -4px rgba(0,0,0,0.25); box-shadow: inset 0px -4px rgba(0,0,0,0.25); font-family: 'oswaldregular', sans-serif; text-transform:uppercase; padding: 0 !important; border:none; color:#FFF !important; width: 100% !important; background:#e13b3d;}
	#ticket_form #submit:hover {color: #CCC; background:#063f62 !important;}
	#ticket_form #submit:last-child { margin-left:0;}

	#trip_type .form-group div div{
		float:none !important;
		width: 98% !important;
		margin: 0 auto;
	}

	#trip_type .form-group div div .radio {
		width:100% !important;
		margin: 5px auto !important;
		padding: 0 !important;
	 }

	#ticket_form .form-group input[type="radio"], .form-group input[type="radio"] {
		margin: -15px 15px !important;
	}

	#trip_type .form-group div div .radio label.radio{
		font-size:20px !important;
		padding:20px 0 !important;
		margin-left:0 !important;
	}

	#payment_method .form-group div{
		float:none !important;
		width: 98% !important;
		margin: 0 auto;
		line-height: 1;
	}

	#payment_method .form-group div .radio {
		width:100% !important;
		margin: 5px auto !important;
		padding: 0 !important;
	 }


	#payment_method .form-group div .radio label.radio{
		font-size:20px !important;
		padding:20px 0 !important;
		margin-left:0 !important;
	}

	#tenpass_form {
	padding:20px 0 !important;
	text-align:center !important;
	}

	#tenpass_form #submit {
		padding-top:20px !important;
	}

	 #purchase_tenpass_container .form-group div{
		float:none !important;
		width: 98% !important;
		margin: 0 auto;
	}

	 #purchase_tenpass_container .form-group div .radio {
		width:100% !important;
		margin: 5px auto !important;
		padding: 0 !important;
	 }

	  #purchase_tenpass_container .form-group div .radio label.radio{
		font-size:16px !important;
		padding:20px 0 !important;
		margin-left:0 !important;
	}

	#ticket_form .control-label-header {
		font-size:30px !important;
	}

	#ticket_form .control-label {
		font-size:24px !important;
	}

	#ticket_form .control-label h2{
		font-size:30px !important;
	}

	#ticket_form .form-group div input {
		height:50px !important;
	}
	#ticket_form .form-control{
	width:100%;
	font-size: 20px !important;
	line-height: 1 !important;
	padding-top: 10px !important;
}
 input#departure_date.form-control, input#return_date.form-control{
	padding-top: 20px !important;
	font-size: 20px !important;
	line-height: 1 !important;
}

	#ticket_form .form-group div select {
		height:60px !important;
		font-size: 20px !important;
		line-height: 1 !important;
		padding-top: 10px !important;
	}

	#ticket_form .summary-container p{
		font-size:24px !important;
		line-height:26px !important;
		padding:5px;
	}

	#ticket_form .summary-container h2{
		text-align:center;
		font-size:30px !important;
		font-family: 'oswaldregular', sans-serif !important;
	}

	#ticket_form .summary-container p{
		text-align:center;
		line-height:16px;
		font-size:16px !important;
		padding:5px;
	}

	select {
		text-align: center !important;
	}

	#ticket_form select {
		text-align: center !important;
	}

#payment_method{
	font-size: 14px !important;
}

#payment_method em{
	display: block !important;
	font-size: 12px !important;
	margin-top: 5px !important;
	line-height: 1.2 !important;
}
select#card_expiration_year.form-control{
	text-align: center;
}
 }

@media print {
  html, body {height:auto;}
  body { padding-top:0; }
  .wrapper { padding-bottom:0; min-height: 0; }
  #footer { position: relative; height: auto; }

  a[href]:after {
    content: none;
  }
}

/* Public Cruise List */
.cruise-tickets {
    margin-bottom: 30px;
}
.cruise-tickets .row {
    padding: 10px 0px;
}
.cruise-tickets img {
    margin-bottom: 1em;
}
.cruise-tickets .date {
    font-weight: bold;
}
.cruise-tickets .boarding,
.cruise-tickets .departure {
    display: block;
}
.cruise-tickets .border-left {
    border-left: 2px solid #fff;
}
.cruise-tickets .btn-secondary {
    width: 90% !important;
    margin: 0;
}
@media screen and (max-width:768px) {
    .cruise-tickets .border-left {border-left:none;}
}

/* Manage Fare Collections */
.fare-collection-table .form-group {
    margin-bottom: 0;
}
.fare-collection-table .form-group .help-block {
    margin-bottom: 0;
}
.fare-collection-table .row-label {
    padding-top: 20px;
}

/* Mayflower 400 Cruise Page */
.mayflower400-wrapper h2 {
    margin-top: 0;
}

.mayflower400-wrapper .cruise-option>label {
    display: none;
}

/* Date Picker JS Widget */
.datepicker {
    z-index: 1500;
}

/****************************************************************************/
/* MailChimp Embedded Form                                                  */
/****************************************************************************/
/* https://cdn-images.mailchimp.com/embedcode/horizontal-slim-10_7.css      */
#mc_embed_signup form {text-align:center; padding:10px 0 10px 0;}
.mc-field-group { display: inline-block; } /* positions input field horizontally */
#mc_embed_signup input.email {font-family:"Open Sans","Helvetica Neue",Arial,Helvetica,Verdana,sans-serif; font-size: 15px; border: 1px solid #ABB0B2;  -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; color: #343434; background-color: #fff; box-sizing:border-box; height:32px; padding: 0px 0.4em; display: inline-block; margin: 0; width:350px; vertical-align:top;}
#mc_embed_signup label {display:block; font-size:16px; padding-bottom:10px; font-weight:bold;}
#mc_embed_signup .clear {display: inline-block;} /* positions button horizontally in line with input */
/*
#mc_embed_signup .button {font-size: 13px; border: none; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; letter-spacing: .03em; color: #fff; background-color: #aaa; box-sizing:border-box; height:32px; line-height:32px; padding:0 18px; display: inline-block; margin: 0; transition: all 0.23s ease-in-out 0s;}
#mc_embed_signup .button:hover {background-color:#777; cursor:pointer;}
*/
#mc_embed_signup div#mce-responses {float:left; top:-1.4em; padding:0em .5em 0em .5em; overflow:hidden; width:90%;margin: 0 5%; clear: both;}
#mc_embed_signup div.response {margin:1em 0; padding:1em .5em .5em 0; font-weight:bold; float:left; top:-1.5em; z-index:1; width:80%;}
#mc_embed_signup #mce-error-response {display:none;}
#mc_embed_signup #mce-success-response {color:#529214; display:none;}
#mc_embed_signup label.error {display:block; float:none; width:auto; margin-left:1.05em; text-align:left; padding:.5em 0;}
@media (max-width: 768px) {
    #mc_embed_signup input.email {width:100%; margin-bottom:5px;}
    #mc_embed_signup .clear {display: block; width: 100% }
    #mc_embed_signup .button {width: 100%; margin:0; }
}
#sms_opt_in { transform: scale(1.5); margin-right: 0.5em; }
#ticket_form .form-group.sms-opt-in { text-align: left; }

/****************************************************************************/
/* Local modifications below                                                */

/* Switch-lookup box (Manage Reservation <-> Manage TenPass): vertically
   center the switch button against the blurb once the columns sit side by
   side at the md breakpoint. Below md the columns stack, so leave them be. */
@media (min-width: 992px) {
    .switch-lookup-row { display: flex; align-items: center; }
    .switch-lookup-row > div { min-width: 0; }
    .switch-lookup-row p { margin: 0; }
}

#mc_embed_signup .button {font-size: 13px; border: none; -webkit-border-radius: 3px; -moz-border-radius: 3px; border-radius: 3px; letter-spacing: .03em; box-sizing:border-box; height:32px; line-height:32px; padding:0 18px; display: inline-block; margin: 0;}
#mc_embed_signup .button {-webkit-box-shadow: inset 0px -4px rgba(0,0,0,0.25); -moz-box-shadow: inset 0px -4px rgba(0,0,0,0.25); box-shadow: inset 0px -4px rgba(0,0,0,0.25); font-family: 'oswaldregular', sans-serif; text-transform:uppercase; border:none; color:#FFF !important; width: auto !important; background:#e13b3d;}
#mc_embed_signup .button:hover {color: #CCC; background:#063f62 !important;}
/****************************************************************************/
