@charset "UTF-8";

/* restores their styles */

body swift-ui cruise,
body.page_cruise_cabin div.page-container,
body.page_cruise_category div.page-container,
body.page_cruise_statement div.page-container,
body.page_customer_registration div.login-reg-wrapper,
body.page_customer_login div.login-reg-wrapper,
body.page_booking_checkout div.page-container,
body.page_cruise_emailrequest div.page-container,
body.page_customer_booking_details div.page-container,
body.page_cruise_packages.inIframe {
  line-height: 1.5 !important;
  font-weight: 400 !important;
  font-size: 0.875rem;
  font-family: 'Open Sans', Helvetica, Arial, sans-serif !important;
  color: #212121 !important;
}

label {
  margin-bottom: 0.5rem !important;
}

body.page_booking_checkout div.page-container div.switch-field label,
body.page_booking_checkout div.page-container div.itinerary-node-info-group label {
  margin-bottom: 0 !important;
}

.mt-1,
.my-1 {
  margin-top: 0.25rem !important;
}

td.compare-book-cell a.btn-primary {
  color: #fff !important;
}

td.compare-book-cell a.btn-primary:hover {
  color: #fff !important;
}

/* overrides their styles */

body {
  background-color: #dfe1e2 !important;
}

a.breadcrumb-item,
a.view-details-rule,
div[data-ody-id='upgrade-for-member-only-price'] a,
div.btn_container a,
tr.ng-star-inserted td a,
div[data-ody-id='StateroomNumber'] a,
#LoginTBL > div.card-header.lf-header a,
div.alert a,
div.ships-view-more-content a {
  color: #1a7dde !important;
  text-decoration: none !important;
  transition: 0.1s !important;
}

a.breadcrumb-item:hover,
a.view-details-rule:hover,
div[data-ody-id='upgrade-for-member-only-price'] a:hover,
div.btn_container a:hover,
tr.ng-star-inserted td a:hover,
div[data-ody-id='StateroomNumber'] a:hover,
#LoginTBL > div.card-header.lf-header a:hover,
div.alert a:hover,
div.ships-view-more-content a:hover {
  color: #ff3048 !important;
  text-decoration: underline !important;
}

swift-ui button.back-to-top {
  right: initial;
  left: 24px;
}

@media (max-width: 767px) {
  swift-ui button.back-to-top {
      left: 16px;
  }
}

div#navigation ul li a:hover {
  text-decoration: none;
}

div#final_section {
  background-color: #fff !important;
}

#SessionExpiredTBL > div > div > div.modal-body > div > a {
  color: #1caadc;
}

@media (max-width: 1000px) {
  div.breadcrumb {
    font-size: 14px;
  }
}

@media (max-width: 893px) {
  div.breadcrumb {
    font-size: 13px;
  }
}

@media (max-width: 767px) {
  .btn-request-quote .odi-request-quote {
    display: inline-block !important;
  }

  .btn-request-quote .odi-request-quote+span {
    display: inline-block !important;
    margin: 5px;
  }
}

@media (max-width: 720px) {
  div.breadcrumb {
    font-size: 12px;
  }
}

/* Cruise - Search Results */

div.ADClongDescription {
  display: none;
}

.bonus-offers-label.bonus-text-primary {
  font-size: 20px !important;
}

td.rules-icons {
  white-space: normal !important;
}

ul.bonusOfferChoices li {
  margin: 15px 0;
}

ul.rsscAmenities li {
  margin: 10px 0;
  padding: 0;
}

div.cruise-offers-list ul {
  background: none !important;
}

ul.crystalAmenities li {
  margin: 10px 0;
  padding: 0;
}

div.bonusOfferBody ul.offerAmenityList li {
  margin: 9px 0 9px 0;
  color: #ff3048;
}

.cruise-promotions-for-list .cruise-offers-list.cruise-offers-description-list ul {
  margin: 13px auto 0 auto !important;
  width: 95% !important;
}

body.page_customer_registration ul.errorblock_ul li {
  margin: 10px 0;
}

.cruise-promotions-for-list .cruise-offers-list.cruise-offers-description-list ul li {
  margin: 2px 0 !important;
}

ul#rsscAmenities li {
  margin: 10px 0;
  padding: 0;
}

ul#crystalAmenities li {
  margin: 10px 0;
  padding: 0;
}

section.search-bar-section-collapsed {
  background: #cd5162;
}

section.search-bar-section,
#searchform-container,
.search-resultpage.swift-search-bar.search-bar-section {
  background-image: linear-gradient(to bottom, #cd5162 5%, #d93148 100%);
}

.cruise-item-card .cruise-price .cruise-min-price {
  line-height: 32px !important;
}

div[data-ody-id='cruise-details-disclaimer'] {
  padding: 8px !important;
  text-align: center;
  font-weight: normal !important;
  font-size: 18px !important;
}

div[data-ody-id='cruise-details-disclaimer'] i.fa-exclamation-circle {
  color: #ff3048;
}

swift-ui cruise result-container-component div.disclaimer.mb-3 {
  margin-bottom: 0 !important;
}

cruise-sailing-component .cruise-offers-list.cruise-offers-description-list {
  padding-top: 0 !important;
}

swift-ui result-container-component span.bonus-offer-disclaimer {
  padding-top: 20px !important;
  padding-bottom: 12px !important;
  display: block !important;
}

swift-ui cruise-container-component div.card.cruise-item-card div.insider-club div.border.font-weight-bold,
.package-details-page swift-ui cruise form.guest-info-form div.border.font-weight-bold.text-center {
  background-color: lightyellow;
}

.package-details-page swift-ui cruise form.guest-info-form div.col-12.col-xl-6.float-left div.border.font-weight-bold.text-center:nth-child(3) {
  background-color: #fff;
}

@media (min-width: 1200px) and (max-width: 1440px) {
  .list-view .cruise-prices .low-rate li.word-break label {
    width: auto !important;
  }
}

@media (max-width: 987px) {
  .cruise-item-card .cruise-price .cruise-min-price {
    line-height: 27px !important;
  }
}

@media (max-width: 568px) {
  data-ody-id#cruise-details-disclaimer {
    font-size: 15px;
  }
}

/* Cruise - Package step */
body.package-details-page h1,
body.package-details-page h2,
body.package-details-page h3,
body.package-details-page h4,
body.package-details-page h5,
body.package-details-page h6,
body.package-details-page .h1,
body.package-details-page .h2,
body.package-details-page .h3,
body.package-details-page .h4,
body.package-details-page .h5,
body.package-details-page .h6 {
  margin-bottom: 0.5rem !important;
}

body.package-details-page h5,
body.package-details-page .h5 {
  font-size: 1.25rem !important;
}

body.package-details-page h6,
body.package-details-page .h6 {
  font-size: 1rem !important;
}

body.package-details-page fieldset {
  border: 1px solid rgba(0, 0, 0, 0.12) !important;
  padding: 1rem 1rem 0 !important;
  margin: 0 0 1rem !important;
}

div.pg_title h1 {
  margin-bottom: 0 !important;
}

.package-details-page .package-promo .bonus-offer-disclaimer {
  font-size: 11px;
  color: #666;
  display: block !important;
}

.package-details-page div[data-ody-id='cruise-details-disclaimer'] {
  font-size: 14px !important;
}

div.package-details-page .package-promo {
  margin: -0.85rem -1.25rem;
}

swift-ui .policies-section policies accordion accordion-group div p {
  margin: 15px 0;
}

swift-ui .policies-section policies accordion accordion-group div p:first-child {
  margin-top: 0;
}

div.section-cruise-details {
  margin-top: 15px;
}

body.package-details-page swift-ui cruise div.disclaimer {
  margin-bottom: 1rem !important;
}

body.package-details-page swift-ui cruise div.disclaimer.mt-2 {
  margin-bottom: 0 !important;
}

body.package-details-page swift-ui span.bonus-offer-disclaimer {
  font-size: 11px;
}

/* Cruise - Stateroom Selection step - Section 1 of 2 (needed to separate from section 2 for lint passing) */

.bonusOfferBody p {
  font-size: 14px;
  color: #033669;
  margin-top: 10px;
  margin-bottom: 10px;
}

.bonusOfferTerms p {
  margin-bottom: 10px;
}

ul.bonusOfferChoices li p {
  margin: 0;
}

/* Hotel - Search Results - Section 1 of 2 (needed to separate from section 2 for lint passing) */

ul.bonusOfferChoices li span {
  font-weight: bold;
  color: #ff3048;
  font-size: 20px;
}

body.page_hotel_results .rules-icon span {
  margin-top: 6px;
}

body.package-details-page h6.sailing-category-label span {
  font-size: 0.875rem !important;
}

@media (max-width: 767px) {
  body.page_hotel_results .filter-section {
    padding-bottom: 110px;
  }
}

/* Insider's Club */

p#insiderClubDisclaimer {
  font-size: 12px;
  margin: 20px;
  word-break: break-word;
}

p#insiderClubDisclaimer span#insiderIntroNotice {
  font-weight: bold;
  text-decoration: underline;
}

div[data-ody-id='member-only-price-note'] p:first-child {
  font-size: 15px;
  margin-top: 9px;
}

div[data-ody-id='member-only-price-note'] p:nth-child(2) {
  margin: 10px 0 9px 0;
  font-weight: normal;
  font-size: 12px;
}

div[data-ody-id='member-only-price-note'] p:nth-child(2) span {
  text-decoration: underline;
}

div[data-ody-id='footer-note'] div.insiderNoticeSurround {
  font-weight: bold;
}

div[data-ody-id='footer-note'] div.insiderNoticeSurround span.insiderImportant {
  color: #ff3048;
  text-decoration: underline;
}

div[data-ody-id='footer-note'] div.insiderNoticeSurround span.insiderClubName {
  font-style: italic;
}

/* Cruise - Category step */

body.page_cruise_category h1.page-title,
body.page_cruise_cabin h1.page-title {
  font-size: 1.3125rem;
}

div.breadcrumb {
  background-color: #f7f7f7 !important;
}

div.progress-stepper-arrow,
.checkout-step-inner::before {
  line-height: 1.5 !important;
}

.nav-stepper .nav-link,
.progress-stepper-arrow .checkout-steps-wrap .checkout-step .checkout-step-inner {
  color: rgba(0, 0, 0, 0.86) !important;
  background: #f7f7f7 !important;
}

.nav-stepper .nav-link::before,
.checkout-step-inner::before {
  border-color: transparent #dfe1e2 !important;
}

.nav-stepper .nav-link::after,
.progress-stepper-arrow .checkout-steps-wrap .checkout-step .checkout-step-inner::after {
  border-color: transparent #f7f7f7 !important;
}

.nav-stepper .nav-link:hover {
  background: #c3c3c3 !important;
}

.nav-stepper .nav-link:hover::after {
  border-color: transparent #c3c3c3 !important;
}

.nav-stepper .nav-link.active,
.progress-stepper-arrow .checkout-steps-wrap .checkout-step.current .checkout-step-inner {
  background: #0978bd !important;
  color: white !important;
  height: 100% !important;
}

.progress-stepper-arrow .checkout-steps-wrap .checkout-step.current .checkout-step-inner::after {
  height: 100%;
  border-color: transparent #0978bd !important;
}

.nav-stepper .nav-link.active::after,
.progress-stepper-arrow .checkout-steps-wrap .checkout-step.past .checkout-step-inner::after {
  border-color: transparent #0978bd !important;
}

.nav-stepper .stepper-item-caption {
  color: #0978bd !important;
}

.nav-stepper .nav-link.active .stepper-item-caption {
  color: inherit !important;
}

div#roomTypeTitle {
  font-weight: bold;
}

ul#roomTypeList {
  margin: 10px 0 0 0;
}

ul#roomTypeList li {
  margin: 5px 0 0 20px;
  list-style-type: circle;
}

div#roomTypeNote {
  font-size: 11px;
  margin-top: 14px;
}

/* Cruise - Stateroom Selection step - Section 2 of 2 */

div.section-cruise-details h5.text-primary,
div.section-cruise-details.section-cruise-cabin div h1 {
  font-size: 20px;
  font-style: italic;
  color: #004a83 !important;
}

div#DownCruiseCategoryContentDisclaimer.disclaimer,
div#TopCruisePricingNote.disclaimer {
  display: none;
}

div.section-stateroom-details div.alert {
  font-size: 15px;
}

div#Upgrade-room-contents table p {
  margin-bottom: 6px !important;
}

div.section-stateroom-price-details div.section-stateroom-price h4#cabinfare.text-secondary {
  font-size: 26px;
}

div.section-stateroom-price-details div.section-stateroom-price strong#cabintaxes {
  margin-bottom: 7px;
}

div#timeLimitNotice {
  margin-top: 15px !important;
}

span.SpnGurantee {
  font-size: 14px;
  display: inline-block;
  margin-top: 20px;
}

div#Stateroom-price div table td.stateroom-price-left {
  font-size: 14px;
}

div.categoryview-container h5.category-not-available {
  margin-bottom: 40px;
  margin-top: 20px;
  color: #ff3048;
}

/* Checkout step */

div#TravelInsu label {
  margin-bottom: 13px;
  font-style: italic;
}

.page_booking_checkout .checkout-nationality {
  flex: 0 0 65% !important;
  max-width: 211px !important;
}

div#section_insurance div#InsufficientPaxInfo {
  color: white;
  background-color: #ff3048;
  padding: 7px 10px;
  margin-bottom: 21px;
}

body.page_hotel_results .rules-icon span:hover,
body.page_hotel_results a.bonus-offer-popup:hover {
  color: #ff3048;
  text-decoration: underline;
}

div#ResultsContainer.hotel-list div.hotel-item-card div.bonus-offer-popup span {
  margin-top: 3px;
  margin-left: 3px;
}

div#section_insurance div#InsufficientPaxInfo span {
  text-decoration: underline;
  font-weight: bold;
}

div.bonus-non-exclusive {
  margin: 15px 0;
}

div.card.cruise-special-services {
  margin-top: 25px;
}

div#cabinupgradealternate.card-header {
  background-color: #ff3048;
  color: #ffffff;
}

div.PaymentSection div.divTermsAndConditionsDetail ul {
  list-style: circle;
  margin: 0 0 5px 15px;
}

div.PaymentSection a {
  color: #d93148;
}

/* Login page */

div.cruise-detail-box div.pax-login-form div#LoginTBL {
  margin-top: 10px;
}

div.pax-login-form {
  flex: 0 0 65% !important;
  max-width: 65% !important;
}

div.login-page-details div.login-text {
  font-weight: bold;
  background-color: #1a7dde;
  padding: 10px;
  color: #fff;
  font-size: 15px;
  border: 2px solid #fff;
}

div.login-info {
  margin-bottom: 12px;
}

.page_customer_login div.login-btn input.btn.btn-primary {
  margin-bottom: 6px;
}

.login-reg-wrapper .login-text {
  margin-top: 41px;
}

@media (max-width: 732px) {
  div.pax-login-form {
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
}

/* Registration page */

div.registration-inner div.form-group {
  margin: 11px 0 !important;
}

body.page_customer_registration ul.errorblock_ul {
  list-style: circle;
  margin-left: 10px;
}

div.registration-inner {
  margin: 20px auto !important;
}

div#newPasswordRules ul li span.password-rule-cont.text-danger i.password-rule-icon.fas.fa-times {
  margin-right: 5px;
}

@media (max-width: 575px) {
  div.FDRegisterPanel.card-body {
    padding: 0 1rem 1.5rem 1rem;
  }
}

/* Hotel - Search Results - Section 2 of 2 */

div.selected-hotel {
  background-color: lightyellow;
}

div#ResultsContainer.hotel-list div.hotel-item-card div.bonus-offer-popup {
  cursor: pointer;
}

body.page_hotel_results .rules-icon img {
  margin-right: 4px;
}

/* Warning messages */
div.alert-warning {
  line-height: 20px;
}

.page_cruise_category div.section-cruise-details div.alert.alert-icon.alert-info {
  margin-top: 10px;
}

/* Bonus Offer fancyboxes */

div.bonusOfferHdr {
  font-size: 20px;
  font-weight: bold;
  color: #033669;
  margin-bottom: 5px;
  text-align: left;
}

div.bonusOfferSub {
  font-size: 13px;
  color: #033669;
  font-style: italic;
  font-weight: bold;
  margin-bottom: 12px;
  text-align: left;
}

div.bonusOfferBody {
  margin-bottom: 20px;
  text-align: left;
}

.bonusOfferWarning {
  font-size: 15px;
  font-weight: bold;
  color: #ff3048;
  padding: 5px;
  border: 1px solid #ff3048;
  margin-bottom: 15px;
  text-align: left;
}

ul.bonusOfferChoices {
  margin: 10px 0;
  padding: 0 0 0 25px;
  list-style-image: url(https://www.americandiscountcruises.com/assets/images/booking-engine/bonus-star-step6.png);
}

#promoPriceTable {
  font-size: 14px;
  padding: 5px;
  border: 1px solid #ccc;
}

#promoPriceTable th {
  font-size: 14px;
  font-weight: bold;
  padding-bottom: 6px;
  text-decoration: underline;
  text-align: left;
}

div.bonusOfferTerms {
  font-size: 11px;
  color: #033669;
  text-align: left;
}

.bonusOfferTermsHdr {
  font-weight: bold;
  margin-bottom: 2px;
  color: #033669;
}

ul#rsscAmenities,
ul.rsscAmenities {
  margin: 0 0 0 25px;
  color: #ff3048;
  padding: 0;
  list-style-image: url(https://www.americandiscountcruises.com/assets/images/booking-engine/bonus-star-step6.png);
}

ul#crystalAmenities,
ul.crystalAmenities {
  margin: 0 0 0 25px;
  color: #ff3048;
  font-size: 13px;
  padding: 0;
  list-style-image: url(https://www.americandiscountcruises.com/assets/images/booking-engine/bonus-star-step6.png);
}

/* Added for Swift Bonus Offers */

div.bonusOfferBody ul.offerAmenityList {
  margin: 15px 0 10px 0;
}

.modal-dialog.modal-message-content {
  max-width: unset;
  width: 70%;
}

.modal-dialog {
  max-width: 70%;
}

.modal-header {
  justify-content: center;
}

@media (max-width: 800px) {
  .modal-dialog.modal-message-content {
    width: 95%;
  }

  .modal-dialog {
    max-width: 95%;
  }
}

/* Restores our styles */

div.toursByDestinationSubHdr {
  margin-bottom: 0 !important;
  font-weight: bold !important;
}

@media (max-width: 720px) {
  .main-navbar {
    z-index: 1030; /* is normally 99, but changed to 1030 to avoid checkout page countdown from overlapping it on smaller viewports */
  }
}

@media (max-width: 450px) and (min-width: 415px) {
  .checkout-step .checkout-step-inner {
    padding: 20px 0 !important;
  }
}

/* Updates Odysseus templates that don't have the same styling as our template to be consistent with ours */

.cruise-promotions-for-list .cruise-offers-list.cruise-offers-description-list {
  border: 3px solid #eee;
}

div.cruise-item-card span.bonus-offer-disclaimer.disclaimer-border {
  border: 3px solid #eee;
  border-top: 0;
}

div.cruise-offers-list {
  border-bottom: 0 !important;
}
