.button {
  outline: 0;
  font-size: 16px;
  border-radius: 0;
  display: inline-block;
  margin: 0 2px;
  font-weight: normal;
}

.button.green_btn {
  background-color: rgb(25 123 48);
  color: white;
}

.button.green_btn:hover {
  background-color: rgb(18 90 35);
  text-decoration: none;
}

.button.red_btn {
  background-color: rgb(255 3 72);
  color: white;
}

.button.red_btn:hover {
  background-color: rgb(203 2 57);
  text-decoration: none;
}

#last_minute_cruises_page * {
  box-sizing: border-box;
}

#last_minute_cruises_page *::before,
#last_minute_cruises_page *::after {
  box-sizing: border-box;
}

#last_minute_cruises_page {
  color: #004a83;
  line-height: normal;
}

#last_minute_cruises_page > .top_section {
  background: url("//img.americandiscountvacations.com/open_water_ship.jpg") no-repeat center;
  background-size: cover;
  width: 100%;
  max-width: 100%;
  line-height: normal;
  min-height: 340px;
}

#last_minute_cruises_page > .top_section .breadcrumbs {
  padding: 20px 0;
  margin: 0;
  color: white;
}

#last_minute_cruises_page > .top_section .page_title {
  margin: 0 0 10px;
}

.sailing-result .cruise_details > .left .subtitle {
  font-style: italic;
}

#last_minute_cruises_page > .top_section .subtitle {
  margin: 18px 0;
  font-size: 23px;
  font-style: italic;
}

#last_minute_cruises_page > .top_section .details {
  font-size: 17px;
  line-height: 24px;
}

/** END Cruises List Section **/
#cruises_list_section h3 {
  font-size: 30px;
  padding: 20px 0;
}

.cruise_box {
  margin-bottom: 15px;
}

.cruise_box .header {
  background-color: #004a83;
  color: white;
  padding: 5px 10px;
  display: inline-block;
  border-radius: 0 8px 0 0;
  margin-top: 14px;
}

.sailing-result .starting_at_box .price {
  font-weight: bold;
}

.cruise_box .wrapper {
  padding: 10px;
  border: 1px solid #004a83;
  overflow-x: auto;
  float: left;
  width: 100%;
}

.cruise_box .wrapper table {
  width: 100%;
  border: 1px solid #ccc;
  line-height: 22px;
  font-size: 15px;
}

.cruise_box .wrapper table .price {
  color: #0067e1;
  font-size: 18px;
}

.cruise_box .wrapper table .call_us {
  color: #0067e1;
  font-size: 16px;
}

.cruise_box .wrapper table .actions {
  text-align: center;
}

.cruise_box .wrapper table thead {
  background-color: #cacaca;
}

.cruise_box .wrapper table th,
.cruise_box .wrapper table td {
  padding: 5px 10px;
  text-align: center;
  vertical-align: middle;
  font-size: 14px;
}

.cruise_box .wrapper table th:first-child,
.cruise_box .wrapper table td:first-child {
  text-align: left;
  width: 15%;
}

.cruise_box .wrapper table tbody tr:nth-child(odd) {
  background-color: #f0f0f0;
}

.cruise_box .wrapper table .button {
  padding: 3px 8px;
  margin: 1px;
}

.cruise_box div.startAndEndPorts {
  font-size: 11px;
  font-style: italic;
}

.cruise_box div.lengthAndItinerary {
  font-weight: bold;
}

.cruise_box div.cruiseShipName {
  font-size: 11px;
}

.cruise_box div.departureDate {
  font-weight: bold;
}

.cruise_box .footer {
  background-color: #ccc;
  font-weight: bold;
  display: inline-block;
  padding: 5px;
  position: relative;
}

.cruise_box .footer::after {
  content: "";
  position: absolute;
  top: 0;
  right: -22px;
  border-top: 27px solid #ccc;
  border-right: 22px solid transparent;
}

#cruises_list_section .terms {
  margin: 30px 5px 5px;
  font-size: 12px;
  color: #ccc;
  float: left;
}

/*** FILTERS START ***/
.sailing-result .cruise_details > .left .title {
  font-weight: bold;
  font-size: 19px;
}

#filters_container {
  margin-bottom: 20px;
}

#filters_container .reset_filter_link {
  cursor: pointer;
  font-size: 12px;
}

#filters_container .filtered-results {
  margin-top: 15px;
}

#filters_container .filter {
  padding-top: 10px;
}

#filters_container .filter .title {
  font-weight: bold;
  color: #004a83;
  font-size: 16px;
  margin-bottom: 3px;
}

#filters_container .dropdown .btn {
  text-align: left;
}

#filters_container .dropdown .btn .caret {
  margin-top: 9px;
}

#filters_container .dropdown-toggle.btn-default:hover,
#filters_container .dropdown-toggle.btn-default:active,
#filters_container .dropdown.open > .dropdown-toggle.btn-default {
  background-color: white;
}

#filters_container .dropdown-menu {
  margin-top: 0;
  padding: 15px;
}

#filters_container .search-dropdown-items {
  margin: -5px 0 10px;
}

#filters_container .dropdown-menu form .options {
  border-bottom: 1px solid #ddd;
  margin-bottom: 15px;
  padding-bottom: 5px;
}

/* new styled checkbox */
.checkbox {
  position: relative;
  margin: 10px 5px;
  width: 100%;
}

#filters_container .dropdown-menu .checkbox {
  margin-top: 0;
  margin-bottom: 5px;
}

#filters_container .dropdown-menu .checkbox label.disabled {
  opacity: 0.3;
  pointer-events: none;
}

/* Hide the browser's default radio button */
.radio-container input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
}

#filters_container .dropdown-menu .checkbox input {
  margin-top: 2px;
}

/*** FILTERS END ***/

#cruise_results_pagination {
  float: right;
}

.filters-resetsearch a {
  text-decoration: underline;
}

.filters-resetsearch a:hover {
  text-decoration: none;
}

#cruise_results_pagination a {
  display: inline-block;
  color: black;
  float: left;
  padding: 5px 11px;
  text-decoration: none;
  transition: background-color 0.3s;
  border: 1px solid #ddd;
}

#cruise_results_pagination a.active {
  background-color: #004a83;
  color: white;
  border: 1px solid #004a83;
}

.filter .dropdown-menu .options-scroll {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 250px;
  padding-bottom: 5px;
  border-bottom: 1px solid #ccc;
  margin-bottom: 20px;
}

.close-dropdown {
  padding: 0 20px;
}

.start-date-options {
  margin-bottom: 10px;
  float: left;
  padding-right: 10px;
}

.end-date-options {
  margin-bottom: 10px;
}

.flexible-day-options {
  padding-bottom: 10px;
  margin-bottom: 0;
}

.filter-border-top {
  border-top: 1px solid #ccc;
  padding-top: 10px;
  float: left;
  width: 100%;
}

.filters-countreset {
  margin-bottom: 20px;
  width: 100%;
  float: left;
}

.filters-resultscountsearch {
  font-size: 20px;
  float: left;
}

.filters-resetsearch {
  font-size: 16px;
  float: right;
  padding-right: 30px;
}

.departuredate-select select {
  padding: 5px;
}

.date-options {
  float: left;
  padding-right: 20px;
}

.day-options {
  float: left;
}

.view-more-sailings {
  margin: 22px 0 12px;
  font-size: 15px;
}

.filter-styledCheckboxLabel {
  margin: 0 !important;
  padding: 0 !important;
  font-size: 14px;
}

.filter-styledCheckboxLabel span {
  display: block;
  float: left;
  padding-left: 2em;
  position: absolute;
  left: 0;
  top: 0;
  line-height: 1.4;
}

.filter-styledCheckbox {
  position: absolute;
  opacity: 0;
}

.filter-styledCheckbox + label {
  display: block;
  position: relative;
  cursor: pointer;
  padding: 0;
  font-weight: inherit;
  font-size: 14px;
}

.filter-styledCheckbox + label::before {
  content: "";
  margin-right: 8px;
  display: inline-block;
  vertical-align: middle;
  width: 16px;
  height: 16px;
  background: white;
  border: #979797 1px solid;
  border-radius: 0.1875em;
  box-shadow: inset 0 0 2px 1px rgb(0 0 0 / 10%);
}

.filter-styledCheckbox:hover + label::before {
  background: #337ab7;
} /* hover color */

.filter-styledCheckbox:active + label::before {
  box-shadow: 0 0 0 3px rgb(0 0 0 / 12%);
} /* active style */
.filter-styledCheckbox:focus + label::before {
  outline: 2px dotted #337ab7;
  outline-offset: 2px;
}

.filter-styledCheckbox:checked + label::before {
  background: #337ab7;
} /* chose a default here - checked background color conly 333333 */
.filter-styledCheckbox:disabled + label {
  color: #b8b8b8;
  cursor: auto;
}

.filter-styledCheckbox:disabled + label::before {
  box-shadow: none;
  background: #ddd;
}

.filter-styledCheckbox:checked + label::after {
  content: "";
  position: absolute;
  left: 3px;
  top: 8px;
  background: white;
  width: 3px;
  height: 3px;
  box-shadow: 2px 0 0 white, 4px 0 0 white, 4px -2px 0 white, 4px -4px 0 white, 4px -6px 0 white, 4px -8px 0 white;
  transform: rotate(45deg);
}

/* End  new styled checkbox */

.sort_sailing {
  float: right;
  padding-bottom: 6px;
}

.cruise_types {
  padding-top: 15px;
}

.sort_sailing .form-control {
  display: inline !important;
  width: auto !important;
}

.sort-data-button {
  float: right;
  padding-left: 10px;
  position: relative;
  padding-top: 7px;
}

/* The container */
.radio-container {
  margin-right: 15px;
  position: relative;
  padding-left: 24px;
  margin-bottom: 0;
  cursor: pointer;
  font-size: 14px;
  user-select: none;
  padding-top: 3px;
}

/* Create a custom radio button */
.checkmark {
  position: absolute;
  top: 0;
  left: 0;
  height: 20px;
  width: 20px;
  background-color: #fff;
  border-radius: 50%;
  border: 3px solid #444;
}

/* On mouse-over, add a grey background color */
.radio-container:hover input ~ .checkmark {
  background-color: #444;
}

/* When the radio button is checked, add a blue background */
.radio-container input:checked ~ .checkmark {
  background-color: #444;
}

/* Create the indicator (the dot/circle - hidden when not checked) */
.checkmark::after {
  content: "";
  position: absolute;
  display: none;
}

/* Style the indicator (dot/circle) */
.radio-container .checkmark::after {
  top: 0;
  left: 0;
  width: 14px;
  height: 14px;
  border-radius: 50%;
  background: #444;
  border: 3px solid #fff;
}

/* Show the indicator (dot/circle) when checked */
.radio-container input:checked ~ .checkmark::after {
  display: block;
}

.cruise-disable-label {
  background: #ededed !important;
  color: #a6a6a6 !important;
  cursor: text;
  pointer-events: none;
  padding: 8px;
  line-height: 12px;
  min-height: 12px;
  width: 100%;
  display: block;
  margin-bottom: 5px;
  text-align: center;
}

.wrapper-result {
  padding: 0;
  border: 1px solid #004a83;
  overflow-x: auto;
  float: left;
  width: 100%;
}

.sailing-result-box {
  width: 100%;
  padding: 1.3%;
  box-sizing: border-box;
  float: left;
}

.sailing-result-box:nth-child(odd) {
  background: #fff;
}

.sailing-result-box:nth-child(even) {
  background: #eaeaea;
}

.sailing-result {
  width: 100%;
  min-height: 230px;
  box-sizing: border-box;
  text-align: left;
  line-height: normal;
  float: left;
}

.sailing-result hr {
  width: 100%;
  border-top: 1px solid #ccc;
  margin: 10px auto;
}

.sailing-result > .top_section > .left {
  float: left;
  width: 25%;
  padding: 0 1% 1% 0;
  box-sizing: border-box;
}

.sailing-result > .top_section > .left img {
  width: 100%;
  display: inline-block;
}

.sailing-result > .top_section > .right {
  float: left;
  width: 74%;
}

.sailing-result > .top_section > .right .cruise_details {
  box-sizing: border-box;
}

.sailing-result > .top_section .ship_cl,
.sailing-result > .top_section .port_details {
  margin-bottom: 10px;
}

.sailing-result .cruise_details > .left {
  float: left;
  width: 40%;
}

.sailing-result .cruise_details > .middle {
  float: left;
  width: 40%;
  text-align: center;
}

.sailing-result .cruise_details > .middle img {
  width: 60%;
  display: inline-block;
}

.sailing-result .cruise_details > .right {
  float: right;
}

.cruise_box .sailing-result .footer {
  background-color: inherit;
  box-sizing: border-box;
  padding: 0 10px;
  font-weight: inherit;
  display: inherit;
  position: inherit;
}

.cruise_box .sailing-result .footer::after {
  display: none;
}

.sailing-result .starting_at_box {
  background-color: #004a83;
  color: white;
  padding: 10px;
  border-radius: 8px;
  text-align: center;
  display: inline-block;
}

.sailing-result .starting_at_box .label {
  font-size: 13px;
  display: block;
}

.sailing-result .footer .left {
  float: left;
  width: 20%;
  box-sizing: border-box;
}

.sailing-result .footer .middle {
  float: left;
  width: 50%;
  box-sizing: border-box;
}

.sailing-result .footer .middle .accommodation {
  float: left;
  width: 25%;
  box-sizing: border-box;
  text-align: center;
  font-size: 18px;
}

.sailing-result .footer .middle .accommodation .price {
  color: #0067e1;
}

.sailing-result .footer .right {
  float: left;
  width: 30%;
  box-sizing: border-box;
  text-align: right;
}

.room_type_not_offered {
  color: #adb5bd;
}

.sailing-result > .taxesIncluded {
  text-align: center;
  font-size: 12px;
  margin-top: 14px;
}

@media only screen and (max-width: 1000px) {
  .sailing-result .cruise_details > .middle {
    width: 32%;
  }

  .sailing-result .cruise_details > .middle img {
    width: 100%;
  }

  .sailing-result > .top_section > .left {
    width: 35%;
  }

  .sailing-result > .top_section > .right {
    width: 65%;
    margin-bottom: 10px;
  }

  .sailing-result .footer .left,
  .sailing-result .footer .middle,
  .sailing-result .footer .right {
    float: none;
    width: 100%;
    text-align: center;
  }

  .sailing-result .footer .left {
    font-size: 18px;
  }

  .sailing-result .footer .middle {
    padding: 1% 0;
    text-align: center;
  }

  .sailing-result .footer .middle .accommodation {
    float: none;
    display: inline-block;
    width: 18%;
    font-size: 22px;
  }
}

@media only screen and (max-width: 850px) {
  .sailing-result .footer .left {
    font-size: 16px;
  }

  .sailing-result .footer .middle .accommodation {
    font-size: 18px;
  }
}

@media only screen and (max-width: 700px) {
  .sailing-result > .top_section {
    position: relative;
  }

  .sailing-result .cruise_details > .middle img {
    width: 30%;
    padding: 1%;
    position: absolute;
    top: 0;
    left: 0;
    background: rgb(255 255 255 / 70%);
    border-radius: 0 0 4px;
  }

  .sailing-result > .top_section > .left,
  .sailing-result > .top_section > .right,
  .sailing-result .cruise_details > .left,
  .sailing-result .cruise_details > .right {
    float: none;
    width: 100%;
    text-align: center;
  }

  .sailing-result > .top_section > .left {
    padding: 0;
  }

  .sailing-result > .top_section > .right,
  .sailing-result > .top_section > .port_details {
    box-sizing: border-box;
    padding: 2% 2% 0;
  }

  .sailing-result .top_section > .ship_cl {
    text-align: center;
  }

  .sailing-result > .top_section > .right .cruise_details {
    padding-left: 0;
  }

  .sailing-result .starting_at_box {
    padding: 1% 3%;
    position: absolute;
    top: 0;
    right: 0;
    font-size: 16px;
    border-radius: 0 0 0 4px;
  }

  .sailing-result .starting_at_box .label {
    font-size: 10px;
    padding: 0;
  }

  .sailing-result > .footer {
    padding: 0 2% 2%;
  }

  .sailing-result .footer .middle .accommodation {
    font-size: 18px;
  }

  .sailing-result .footer .middle .accommodation div:first-child {
    font-size: 12px;
  }
}

@media only screen and (max-width: 500px) {
  .sailing-result .footer .middle .accommodation {
    width: 24%;
  }
}
