@charset "UTF-8";
html {
  overflow-x: hidden;
  max-width: 100vw;
}

.headerabove {
  font-size: 12px;
}
.headerabove .flexcol {
  display: flex;
  flex-flow: column;
  justify-content: center;
}

.header_top {
  background: #fff;
  z-index: 1000;
  position: relative;
  float: initial;
}

.header_mid .navbar-brand {
  position: relative;
}
.header_mid .navbar-brand img {
  width: 200px;
}
.header_mid .navbar-brand p {
  position: absolute;
  font-size: 10px;
  bottom: -3px;
  left: 52px;
}

.menubox button {
  margin: auto;
}

.login-header .form-control, .login-header .btn, .login-header .loginbox {
  font-size: 12px;
  padding: 5px 10px;
}
.login-header .loginbox {
  display: block;
  border-radius: 5px;
  border: 1px solid #efefef;
  background: #fff;
  color: #333 !important;
  cursor: pointer;
}
.login-header .loginbox a {
  color: #333 !important;
}
.login-header .loginbox a:hover {
  color: #427cac !important;
}
.login-header .loginbox:hover {
  border-color: #427cac;
}
.login-header .loginbox:hover a {
  color: #427cac !important;
}

@media screen and (min-width: 1200px) {
  .header_top + .header_top {
    z-index: 1;
  }
  .all-item {
    border-top: 1px solid #b2afaf;
  }
  .all-item a {
    font-weight: 600 !important;
  }
}
span.top_mnu {
  color: #7bbe69;
  text-decoration: underline;
  position: relative;
  cursor: pointer;
  -moz-transition: all 0.5s ease-in-out;
  -o-transition: all 0.5s ease-in-out;
  -webkit-transition: all 0.5s ease-in-out;
  -ms-transition: all 0.5s ease-in-out;
  transition: all 0.5s ease-in-out;
}

.top_mnu:hover .drop_menu {
  visibility: visible;
  opacity: 1;
  max-height: initial;
}

.drop_menu {
  background: #e1e1e1;
  pointer-events: none;
  color: #333;
  width: 170px;
}
.drop_menu a {
  color: #333;
}
.drop_menu:before {
  background: #e1e1e1;
}
.drop_menu a {
  display: flex;
}
.drop_menu a small {
  margin-left: auto;
}

.top_mnu:hover .drop_menu_wo {
  visibility: visible;
  opacity: 1;
  max-height: initial;
}

.drop_menu_wo {
  background: #e1e1e1;
  pointer-events: none;
  color: #333;
  width: 225px;
}
.drop_menu_wo a {
  color: #333;
}
.drop_menu_wo:before {
  background: #e1e1e1;
}
.drop_menu_wo a {
  display: flex;
}
.drop_menu_wo a small {
  margin-left: auto;
}

.top_mnu:hover .drop_menu_reverse {
  visibility: visible;
  opacity: 1;
  max-height: initial;
}

.drop_menu_reverse {
  background: #e1e1e1;
  pointer-events: none;
  color: #333 !important;
  width: 170px;
}
.drop_menu_reverse a {
  color: #333 !important;
}
.drop_menu_reverse:before {
  background: #e1e1e1;
}
.drop_menu_reverse a {
  display: flex !important;
  height: 25px !important;
}
.drop_menu_reverse a small {
  margin-left: auto;
}

@media only screen and (max-width: 767px) {
  .navbar-brand {
    width: initial;
    max-width: 50%;
  }
  .navbar-brand img {
    max-height: 30px;
  }
}
.topmenufaz .fa-check {
  color: green;
}

@media only screen and (max-width: 1199px) {
  .navbar-collapse {
    width: 100%;
    max-width: 350px;
    background: #427cac;
    position: fixed;
    height: 100%;
    overflow: auto;
    left: -100%;
    top: 0px;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    transition: all 0.3s ease;
    display: block !important;
    z-index: 10000;
    border-right: 2px solid #3b6f9a;
  }
  .navbar-collapse .topmenufaz {
    float: initial;
    width: 100%;
  }
  .navbar-collapse .topmenufaz .fa-home {
    font-size: 24px;
  }
  .navbar-collapse .topmenufaz li {
    padding-block: 20px;
    padding-inline: 10px;
    font-size: 14px;
    font-weight: bold;
    color: #fff !important;
  }
  .navbar-collapse .topmenufaz li a {
    color: #fff !important;
  }
  .navbar-collapse .topmenufaz li:not(:first-child) {
    border-top: 1px solid #f98c2e;
  }
  .navbar-collapse .topmenufaz li:last-child {
    border-bottom: 1px solid #f98c2e;
  }
  .navbar-collapse .dropdown .dropdown-menu {
    display: none;
  }
  .navbar-collapse.show {
    left: 0;
    box-shadow: 100px 0 300px -2px #fff;
  }
  .navbar-collapse.show .navbar-toggler {
    position: absolute;
    right: 10px;
    top: 10px;
    background: transparent;
    color: #fff;
    border: none;
    font-size: 24px;
  }
  .navbar-toggler {
    padding: 10px;
    margin-right: 0;
    border-color: transparent !important;
    background: transparent !important;
    outline: none;
  }
  .navbar-toggler .icon-bar {
    display: block;
    width: 30px !important;
    height: 2px;
    border-radius: 1px;
    background: #606060 !important;
  }
  .navbar-toggler .icon-bar + .icon-bar {
    margin-top: 4px;
  }
}
.hoibtn {
  float: right;
  width: 20%;
  display: flex;
  flex-flow: row;
  justify-content: space-between;
}

.hoibtn .li:not(:last-child) {
  width: 100%;
  min-width: 150px !important;
  display: flex;
  justify-content: space-between;
  font-weight: bold;
}
.hoibtn .li:not(:last-child) a {
  width: 100%;
  display: flex;
  justify-content: space-between;
}

.hoibtn .li:last-child i {
  margin-top: 2px;
}

.hoibtn .li {
  font-size: 11px;
  padding: 4px;
  text-align: left;
  background: #ffffff;
  color: #427cac;
  padding-left: 8px;
  border: 1px solid #427cac;
  border-radius: 5px;
}
.hoibtn .li a {
  color: #606060;
}

.hoibtn .li {
  position: relative;
  width: 50px;
  margin-right: 7px;
  text-align: center;
  padding: 4px;
  margin-left: auto;
}

.hoibtn span:not(.material-icons) {
  position: absolute;
  top: -6px;
  right: -6px;
  color: white;
  font-size: 10px;
  background: #7bbe69;
  width: 16px;
  height: 16px;
  border-radius: 10px;
}

.rt_drom a.more_btn2:hover {
  background: #3b6f9a;
  border-color: #606060;
}

.navicon {
  color: #606060;
  border: #d9d7d8 1px solid;
  width: 30px;
  text-align: center;
  line-height: 27px;
  height: 30px;
  border-radius: 50%;
}

.header_mid.noborder {
  box-shadow: none;
  border-bottom: 1px solid #e9e9e9 !important;
}

#menubar, #menubar_2 {
  display: block;
  position: relative;
  z-index: 1001;
  overflow: unset;
  box-shadow: unset;
  padding: 0;
}
#menubar li, #menubar_2 li {
  border-bottom: 0 !important;
  padding: 0;
}
#menubar li .drop-arw, #menubar_2 li .drop-arw {
  top: 19px;
}
#menubar li a, #menubar_2 li a {
  padding-block: 15px;
  padding-inline: 10px;
  display: block;
}
#menubar .dropdown-menu, #menubar_2 .dropdown-menu {
  max-height: initial !important;
  top: 100%;
  background: #ededee !important;
  color: #333 !important;
  padding-inline: 0 !important;
}
#menubar .dropdown-menu li, #menubar_2 .dropdown-menu li {
  padding-block: 0 !important;
  padding-inline: 0 !important;
}
#menubar .dropdown-menu li a, #menubar_2 .dropdown-menu li a {
  color: #333 !important;
  padding-block: 10px !important;
  padding-inline: 10px;
}
#menubar .dropdown-menu li a:hover, #menubar_2 .dropdown-menu li a:hover {
  background: #e1e1e1 !important;
}

#menubar:hover {
  z-index: 1004;
}

.menubar-waves {
  background: #4684b7;
  border-bottom: 1px solid #3f77a5;
}
.menubar-waves * {
  color: #fff;
}
.menubar-waves li {
  border-bottom: 0 !important;
  padding: 0;
}
.menubar-waves li .drop-arw {
  top: 19px;
}
.menubar-waves li a, .menubar-waves li .a {
  padding-block: 10px !important;
  padding-inline: 10px;
  display: block;
}
.menubar-waves li a input, .menubar-waves li .a input {
  background: rgba(255, 255, 255, 0.4);
  border: 1px solid transparent;
  padding: 5px;
  width: 100%;
  border-radius: 2px;
}
.menubar-waves li a input.icon-search, .menubar-waves li .a input.icon-search {
  position: relative;
  padding-left: 30px;
}
.menubar-waves li a input::placeholder, .menubar-waves li .a input::placeholder {
  opacity: 0.5;
  color: #fff;
}
.menubar-waves li a input:focus, .menubar-waves li a input:focus-visible, .menubar-waves li a input:active, .menubar-waves li .a input:focus, .menubar-waves li .a input:focus-visible, .menubar-waves li .a input:active {
  outline: none;
  border: 1px solid white;
  box-shadow: none;
}
.menubar-waves li a .logout, .menubar-waves li .a .logout {
  font-size: 12px;
  background: #3b6f9a;
  padding-block: 5px;
  padding-inline: 7px;
  border-radius: 3px;
}
.menubar-waves li a .logout:hover, .menubar-waves li .a .logout:hover {
  background: #37678f;
}
.menubar-waves li.nohover:hover {
  background: #427cac !important;
}

body.modal-open #sidebar-waves {
  z-index: 999999;
}

#body {
  margin-left: 60px;
  width: calc(100% - 60px);
}
@media screen and (max-width: 991px) {
  #body .floatingpriceoverview, #body .floatingpriceoverview .detailedprice, #body #toggleBar {
    width: calc(100% - 60px);
    left: 60px;
  }
  #body #filterMobileBtn {
    max-width: calc(90% - 60px) !important;
    left: calc(50% + 30px) !important;
  }
}

.iconbar {
  position: relative;
  background: #fff;
}
.iconbar .itemx {
  line-height: 45px;
  position: relative;
}
.iconbar .itemx .circle {
  width: 25px;
  height: 25px;
  border-radius: 50%;
  background: #b1b1b1;
  margin-block: 10px;
  margin-inline: 10px;
  line-height: 25px;
  text-align: center;
  color: #fff;
  font-size: 14px;
  border: none !important;
}
.iconbar .itemx:not(:last-child):not(.last-child) {
  margin-right: 40px;
}
.iconbar .itemx:not(:last-child):not(.last-child):after {
  position: absolute;
  top: 50%;
  right: -40px;
  height: 1px;
  width: 30px;
  content: "";
  background: gray;
  opacity: 0.4;
}
.iconbar .itemx.active .circle, .iconbar .itemx.passed .circle {
  background: #427cac;
}
.iconbar .itemx.active {
  font-weight: 600;
}
.iconbar .itemx:not(.active):not(.passed:hover) {
  opacity: 0.6;
}

#sidebar-waves {
  background: #4d89bb;
  border-right: 1px solid #5f95c2;
  z-index: 9999991;
  width: 60px;
  position: fixed;
  left: 0;
  top: 0;
  bottom: 0;
  height: 100vh;
}
#sidebar-waves * {
  color: #fff;
}
#sidebar-waves ul {
  display: flex;
  /* move flex-items in column */
  flex-direction: column;
  height: 100%;
}
#sidebar-waves li.big {
  display: none;
}
#sidebar-waves li.small {
  display: list-item;
}
#sidebar-waves li {
  overflow: hidden;
}
#sidebar-waves li a {
  height: 60px;
  line-height: 60px;
  display: flex;
}
#sidebar-waves li a:hover {
  background: #5f95c2;
}
#sidebar-waves li .icon {
  text-align: center;
  font-size: 18px;
  width: 60px;
}
#sidebar-waves li .text {
  display: none;
}
#sidebar-waves li.disabled {
  cursor: not-allowed;
  opacity: 0.4;
  filter: grayscale(100);
}
#sidebar-waves li.disabled a {
  pointer-events: none;
}
#sidebar-waves li.blurred {
  filter: blur(2px);
  cursor: help;
}
#sidebar-waves li.blurred .text {
  filter: blur(2px);
}

.row.no-style a {
  text-decoration: underline;
}

@media screen and (max-width: 1199px) {
  #menubar {
    padding: 0;
    border-bottom: 0;
    z-index: 12004;
  }
  #navbarSupportedContent .menu_sec {
    border-top: 0px solid;
  }
  #navbarSupportedContent .menu_sec li a {
    padding: 8px;
    width: 100%;
    float: left;
  }
  #navbarSupportedContent .menu_sec .li {
    font-size: 26px;
  }
  #navbarSupportedContent .menu_sec .li span {
    padding: 6px;
  }
  #navbarSupportedContent .menu_sec li {
    width: 100%;
    text-transform: none;
    font-weight: bold;
    color: #fff !important;
    padding-block: 0;
  }
  #navbarSupportedContent .menu_sec li a {
    color: #fff !important;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3) !important;
    padding-block: 20px !important;
    font-size: 14px;
  }
  #navbarSupportedContent .menu_sec .drop-arw {
    padding: 20px;
    top: 0;
    font-size: 20px;
    right: 4px;
  }
  #navbarSupportedContent .menu_sec li.loginbutton a {
    border: 1px solid rgb(255, 255, 255) !important;
    border-radius: 5px;
    padding-block: 10px !important;
    font-weight: normal;
    text-align: center;
  }
  #navbarSupportedContent .menu_sec .dropdown-menu {
    background: transparent !important;
    color: #fff !important;
  }
  #navbarSupportedContent .menu_sec .dropdown-menu.show {
    display: block;
  }
  #navbarSupportedContent .menu_sec .dropdown-menu li {
    font-weight: normal;
    color: #fff !important;
  }
  #navbarSupportedContent .menu_sec .dropdown-menu li a {
    color: #fff !important;
  }
  #navbarSupportedContent .menu_sec .dropdown-menu li:hover, #navbarSupportedContent .menu_sec .dropdown-menu li a:hover {
    background: transparent !important;
  }
}
.hoverboxcountry.hover .changeCountryList {
  display: block;
}

.hoverboxcountry.hover .changeCountryList {
  display: block;
}

.changeCountry {
  width: 20px;
  height: 20px;
  display: inline-block;
  border: 1px solid #e9e9e9;
  margin-left: auto;
  border-radius: 50%;
  background-size: cover;
  background-position: center;
  position: relative;
  cursor: pointer;
  z-index: 200;
  top: 5px;
}
@media sceen and (min-width: 991px) {
  .changeCountry:hover .changeCountryList {
    display: block;
  }
}
@media sceen and (max-width: 991px) {
  .changeCountry:focus .changeCountryList {
    display: block;
  }
}

.changeCountryList {
  display: none;
  position: absolute;
  top: 25px;
  padding-top: 2px;
  left: -5px;
  border-radius: 5px;
  border: 1px solid #e9e9e9;
  background: #fff;
}
.changeCountryList .countryList {
  z-index: 100;
  color: #333;
  padding-block: 5px;
  padding-inline: 10px;
  display: flex;
  flex-flow: row;
  white-space: nowrap;
  cursor: pointer;
  line-height: 30px;
}
.changeCountryList .countryList .flag {
  width: 30px;
  height: 30px;
  border: 1px solid #e9e9e9;
  border-radius: 50%;
  margin-right: 10px;
  background-size: cover;
  background-position: center;
}
.changeCountryList .countryList.active {
  font-weight: bold;
}
.changeCountryList .countryList:hover {
  color: #333;
  background: #e9e9e9;
}
.changeCountryList .countryList:not(:last-child) {
  border-bottom: 1px solid #e9e9e9;
}

.popupcountry .flag {
  width: 29px;
  height: 21px;
  border: 1px solid #e9e9e9;
  margin-right: 10px;
  background-size: cover;
  background-position: center;
}
.popupcountry .countryrow {
  color: #333 !important;
  display: flex;
  line-height: 21px;
  font-size: 18px;
  padding-inline: 10px;
  padding-block: 14px;
}
.popupcountry .countryrow.active {
  font-weight: bold;
}
.popupcountry .countryrow:hover {
  background: #f0efef;
}

.confirmCountryBox {
  padding-block: 10px;
  background: #427cac;
  position: sticky;
  top: 0;
  z-index: 1032;
  border-bottom: 2px solid #366892;
}
.confirmCountryBox .p {
  color: #fff;
  font-weight: normal;
  line-height: 30px;
}
.confirmCountryBox .p .closeit {
  display: inline-block;
  border: 1px solid #fff;
  color: #fff;
  font-size: 12px;
  padding-inline: 10px;
  text-align: center;
  border-radius: 5px;
  cursor: pointer;
}
.confirmCountryBox .p .closeit:hover {
  color: #fff !important;
  background: #5390c2;
}
.confirmCountryBox .p .changeCountryButton {
  display: flex;
  background: #fff;
  font-size: 14px;
  margin-inline: 10px;
  font-weight: normal;
  padding-inline: 5px;
  text-align: center;
  border-radius: 5px;
  cursor: pointer;
  color: #333;
}
.confirmCountryBox .p .changeCountryButton:hover + .changeCountryList {
  display: block;
}
@media screen and (min-width: 991px) {
  .confirmCountryBox br {
    display: none;
  }
}

#menubar .nav_top .dropdown-menu .dropdown-menu {
  left: 100%;
  top: -5px;
}

.nav_top .dropdown:hover .dropdown-menu .dropdown-menu {
  display: none;
}

.nav_top .dropdown .dropdown-menu .dropdown:hover .dropdown-menu {
  display: block;
}

.dropdown-menu .drop-arw {
  right: 8px;
}

.header_sec + section:not(.breadcrumb-box) {
  border-top: 1px solid #e9e9e9;
}

.breadcrumb-box {
  border-bottom: 1px solid #e9e9e9;
  padding-block: 10px;
}
.breadcrumb-box ul.time {
  padding: 0;
}

@media screen and (max-width: 1200px) {
  ul.dropdown-menu {
    display: none !important;
    width: 100% !important;
  }
  ul.dropdown-menu.show {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
    border: none !important;
  }
  ul.dropdown-menu .dropdown .dropdown-menu {
    display: none !important;
  }
  ul.dropdown-menu .dropdown.show .dropdown-menu {
    display: block !important;
  }
  ul.dropdown-menu .dropdown.show .dropdown-menu li {
    width: 100%;
    min-width: initial !important;
    padding-left: 20px !important;
  }
  ul.dropdown-menu li {
    width: 100% !important;
    min-width: initial !important;
  }
  ul.dropdown-menu .dropdown-menu li {
    width: calc(100% - 20px) !important;
    margin-left: 20px !important;
    border-left: 1px dashed #81a6c6;
    min-width: initial !important;
  }
}
#navbarSupportedContent .mobileicons {
  display: flex;
  border-bottom: 1px solid rgba(255, 255, 255, 0.3) !important;
}
#navbarSupportedContent .mobileicons li a, #navbarSupportedContent .mobileicons .favoriteProductContentMobile a {
  border-bottom: none !important;
}

.btn-back {
  box-sizing: content-box;
  background: transparent;
  border-radius: 5px;
  color: #000;
  border: 0;
  opacity: 0.5;
}
.btn-back:before {
  content: "←";
  font-size: 26px;
  line-height: 26px;
}

.top_heading h1, .top_heading h2, .top_heading :not(.contentblock) h3 {
  font: 700 24px/26px "Poppins", sans-serif !important;
}

.h2style, .top_heading h1, h1, .details_top b {
  color: #606060;
  font-weight: bold;
}
.h2style span, .top_heading h1 span, h1 span, .details_top b span {
  color: #427cac;
}

h2, .top_heading h2 {
  font-size: 18px !important;
}

.contentblock h1, .contentblock h2, .contentblock h3, .contentblock h4, .contentblock h5, .contentblock h6, .contentblock h7 {
  color: #427cac !important;
}
.contentblock h1 span, .contentblock h2 span, .contentblock h3 span, .contentblock h4 span, .contentblock h5 span, .contentblock h6 span, .contentblock h7 span {
  color: #427cac !important;
}
.contentblock h3 {
  font-size: 18px;
}
.contentblock h3 + p {
  margin-top: 0 !important;
}

.top_heading h2:not(.oldh2) {
  font-size: 24px !important;
  margin-bottom: 18px;
}

#faciliteiten ul.list li:after {
  width: 15px;
  height: 12px;
  position: absolute;
  left: 0px;
  background: none;
  top: 0px;
  font-family: "Material Icons";
  font-weight: 900;
  color: #0F9E5E;
}
#faciliteiten .det1:nth-child(5) .bottomborder, #faciliteiten .det1:nth-child(9) .bottomborder, #faciliteiten .det1:nth-child(12) .bottomborder {
  border-color: transparent;
}

.details_top ul.list li:after {
  font-family: "Material Icons";
  font-weight: 900;
  content: "\e5ca";
  position: absolute;
  left: 0px;
  top: 0px;
  background: none;
  color: #0F9E5E;
}

.active-dining, .active-excursion {
  background: #cbdbea;
}

.occupied-dining {
  opacity: 0.5;
  filter: grayscale(90);
  pointer-events: none;
  background: #dae5ef;
}

.flexxie {
  display: flex;
  flex-flow: column;
  flex-wrap: wrap;
  height: 580px;
}
@media screen and (max-width: 1099px) {
  .flexxie {
    flex-flow: row;
    flex-wrap: wrap;
    margin-bottom: 15px;
    height: initial;
  }
}
.flexxie .details_top {
  width: 33.3333333333%;
  padding-bottom: 15px;
}
@media screen and (max-width: 768px) {
  .flexxie .details_top {
    width: 100%;
  }
}
@media screen and (min-width: 768px) and (max-width: 1099px) {
  .flexxie .details_top {
    width: 50%;
  }
}
.flexxie .details_top ul.list {
  padding: 0;
}
.flexxie .details_top ul.list li:first-child {
  margin-top: 4px;
}

@media screen and (max-width: 768px) {
  .beoorde_boRt {
    width: 100%;
  }
}
.weatherflow {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  flex-flow: row;
}
.weatherflow .weatherinfo {
  width: 180px !important;
  border-right: 1px solid lightgrey;
}
.weatherflow .weatherdetails {
  display: flex;
  flex-wrap: wrap;
  flex-flow: row;
  overflow-y: auto;
  max-width: calc(100% - 180px);
}
.weatherflow .weatherdetails .weatherdetail {
  width: 8.3333333333%;
  min-width: 100px;
  padding-inline: 10px;
  border-left: 1px solid lightgrey;
}
.weatherflow .weatherdetails .weatherdetail div {
  text-align: center;
}
.weatherflow .weatherinfo div, .weatherflow .weatherdetail div {
  padding-block: 15px;
  padding-inline: 10px;
  border-bottom: 1px solid lightgrey;
}

.details_sec .row .details_top.det1:last-child .bottomborder {
  border-bottom: 0 solid;
}

ul.list.nocheck li {
  padding-left: 0;
}
ul.list.nocheck li:after {
  content: "";
}
ul.list.bottomborder {
  width: 95%;
  border-bottom: 1px solid lightgrey;
  padding-bottom: 15px !important;
}
ul.list.includedlist li.plus:after {
  content: "\e145";
  color: green;
  font-family: "Material Icons";
  font-weight: 900;
  background: initial;
}
ul.list.includedlist li.minus:after {
  content: "\f111";
  color: #e9e9e9;
  font-family: "Material Icons";
  font-weight: 900;
  background: initial;
}
ul.list.includedlist.right li {
  padding-left: initial;
  padding-right: 23px;
}
ul.list.includedlist.right li.plus:after {
  content: "\e145";
  color: green;
  right: 0;
  left: initial;
}
ul.list.includedlist.right li.minus:after {
  content: "\f111";
  color: #e9e9e9;
}

.floatingmenu {
  display: flex;
  flex-flow: row;
  overflow-y: auto;
}

.scrollbaar a {
  width: max(25%, 150px);
  text-align: center;
}

.floatingmenu li, .floatingmenu a {
  display: list-item;
  padding: 20px 20px;
  font-size: 14px;
  color: #606060;
  font-weight: 600;
  cursor: pointer;
  white-space: nowrap;
  border-bottom: 1px solid transparent;
}

.floatingmenu li:hover, .floatingmenu li.active, .floatingmenu a:hover, .floatingmenu a.active {
  /*background: #dee6ef;*/
  color: #427cac;
  border-bottom: 1px solid #427cac;
}

.accKamertypes .accordion-button:after {
  filter: contrast(0) !important;
}
.accKamertypes .flexlist {
  display: flex !important;
  flex-basis: 50%;
  flex-flow: row wrap;
}
.accKamertypes .flexlist li {
  width: 50% !important;
  margin-top: 5px !important;
}
@media screen and (max-width: 700px) {
  .accKamertypes .flexlist li {
    width: 100% !important;
  }
}
.accKamertypes .card-body.rooms > .row {
  padding-top: 15px;
}
.accKamertypes .card-body.rooms .row {
  border-bottom: 1px solid #dfdfdf;
  padding-bottom: 15px;
  margin-bottom: 15px;
}
.accKamertypes .card-body.rooms .row:last-child {
  border-bottom: 0;
  padding-bottom: 0;
  margin-bottom: 0;
}

#pictureModal .modal-header {
  position: sticky;
  top: -16px;
  background: #ffffff;
  z-index: 11;
}

.center-bold-blue div[class^=col-] {
  padding: 10px;
  text-align: center;
  display: flex;
  justify-content: center;
  flex-flow: column;
}
.center-bold-blue div[class^=col-] b {
  color: #427cac;
  padding-block: 5px;
  font-size: 18px;
}
.center-bold-blue div[class^=col-]:not(:last-child) {
  border-right: 1px solid #e9e9e9;
}

.itin-day {
  margin: auto;
  background: #427cac;
  border-radius: 50px;
  width: 40px;
  font-size: 14px;
  line-height: 40px;
  text-align: center;
  color: white;
  z-index: 2;
  aspect-ratio: 1/1;
  font-weight: bold;
}

.itin-container h4 {
  padding-top: 0;
}
.itin-container .aanvull_innnr .aanvull_box:nth-child(even) {
  background: initial;
}

.line-middle {
  position: relative;
}
.line-middle:after {
  content: "";
  position: absolute;
  z-index: 1;
  top: 25px;
  bottom: 25px;
  left: calc((8.3% + 10px) / 2);
  border-left: 4px dotted #427cac;
}

.circle-line {
  position: relative;
}
.circle-line:after {
  content: "";
  position: absolute;
  z-index: 1;
  height: 100%;
  aspect-ratio: 1/1;
  top: 50%;
  left: 10px;
  border-radius: 50%;
  border-left: 4px dotted #427cac;
}

.aanvull_box:nth-child(even) .circle-line:after {
  left: -10px;
  border-left: transparent;
  border-right: 4px dotted #427cac;
}

.aanvull_box:last-child .circle-line:after {
  border: transparent;
}

@media screen and (max-width: 991px) {
  .itin-container .aanvull_innnr {
    margin-top: 0;
  }
  .itin-container .aanvull_box .circle-line:after {
    content: "";
    border: transparent !important;
  }
  .itin-container .aanvull_box {
    padding: 0px !important;
  }
  .itin-container .aanvull_box h4, .itin-container .aanvull_box p {
    padding: 0;
  }
  .itin-container .itin-box :nth-child(2) {
    padding-block: 10px !important;
  }
  .itin-container .itin-box .col-10 p {
    padding-top: 0 !important;
    padding-bottom: 10px !important;
  }
  .itin-container .itin-day {
    width: 30px;
    line-height: 30px;
    font-size: 14px;
  }
  #floatMobile {
    display: none !important;
  }
}
.itin-side .itin-box p {
  margin-top: 0;
  padding-top: 0;
}
.itin-side .itin-box div:nth-child(2) {
  padding-block: 8px !important;
}
.itin-side .itin-box .circle-line:after {
  top: 50%;
  left: 50%;
  border-radius: 0;
  border-left: 3px dotted #426cac !important;
  border-right: none !important;
}
.itin-side .aanvull_box:last-child .circle-line:after {
  top: 50%;
  left: 50%;
  border-radius: 0;
  border-left: none !important;
  border-right: none !important;
}

.droom_boxImg {
  min-height: 200px;
}

.logo_parent {
  position: absolute;
  bottom: 0px;
  right: 0px;
  width: 100px;
  background: #fff;
  padding: 10px;
  border-top-left-radius: 5px;
}
.logo_parent img {
  height: initial;
  min-height: initial;
  aspect-ratio: initial;
}

.droom_boxImg.droom_room {
  min-height: unset;
}

.droom_boxImg.droom_room img {
  height: unset;
  min-height: unset;
}

.transparant {
  background: transparent;
  border: none;
  cursor: initial;
}
.transparant div, .transparant:hover {
  background: transparent;
  box-shadow: 0 0 4px 0 transparent;
}

.slideButton.left {
  display: none;
}

.imageoverlay {
  float: left;
  margin-top: -41px;
  z-index: 1;
  position: absolute;
  padding-left: 14px;
  width: 100%;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)), no-repeat center center;
}

.droom_room .slideButton .arrow_btn {
  cursor: pointer;
  top: 0;
}

.discount {
  background-color: #efc9a7;
  border-radius: 5px;
  padding: 0px;
  margin: 0px;
  height: auto;
  font-size: 14px;
  line-height: 28px;
  margin-top: -20px;
  color: #ed7305;
  z-index: 1000;
}

.infoicons {
  font-size: 12px;
  padding: 8px;
  border-top: 1px solid #eaeaea;
  text-align: left;
  display: block;
  height: 35px;
}
.infoicons .infoicon {
  font-size: 16px;
  color: #adadad;
  margin-right: 10px;
  width: 50px;
  display: block;
  text-align: center;
  border-right: 1px solid #ddd;
  float: left;
}

.fa-star {
  color: #feba02;
}

.fa-check-circle:not(.original) {
  color: green;
  font-size: 16px;
}

.priceBox {
  background: #427cac;
  color: #fff;
  min-width: 75px;
  min-height: 75px;
  max-width: 100%;
  aspect-ratio: 1/1;
  border-radius: 50px;
  font-size: 11px;
  padding-top: 15px;
  padding-left: 5px;
  padding-right: 7px;
  text-align: center;
  position: absolute;
  top: -14px;
  right: -6px;
  line-height: 20px;
}

.best-product {
  position: absolute;
  z-index: 10;
  background: #426cac;
  color: #fff;
  padding-block: 4px;
  padding-inline: 6px;
  top: 10px;
  font-size: 14px;
  font-weight: bold;
}

.priceBox span {
  font-size: 22px;
  font-weight: bold;
  width: 100%;
  display: block;
}

@media screen and (max-width: 1099px) {
  .droom_box_txt ul.drm_txt2 li {
    font-size: 12px;
  }
}
.owl-prev,
.owl-next {
  position: absolute;
  top: calc(50% - 20px);
  color: #aeaeae;
  transform: translateY(-50%);
  font-size: 40px;
}

@media screen and (max-width: 767px) {
  .owl-prev {
    left: 15px;
    color: #fff;
    top: 50%;
  }
  .owl-next {
    right: 15px;
    color: #fff;
    top: 50%;
  }
}
@media screen and (min-width: 768px) {
  .owl-prev {
    left: -50px;
  }
  .owl-next {
    right: -50px;
  }
}
.owl-carousel .col-12 {
  width: 100% !important;
}

.droom_box_txt .h4 {
  font: 700 14px/16px "Poppins", sans-serif;
  color: #606060;
}

.left_drom {
  display: flex;
  flex-flow: column;
  justify-content: space-evenly;
  height: 56px;
}
.left_drom .h5 {
  font: 700 16px/18px "Poppins", sans-serif;
  color: #427cac;
}
.left_drom .h5 span {
  font-size: 12px;
  font-weight: 400;
  color: #606060;
  padding: 7px 0 0;
  display: inline-block;
}
.left_drom .h5 small {
  font-size: 10px;
  font-weight: 400;
  color: #606060;
}
.left_drom .h5 b {
  text-decoration: line-through;
  font-weight: 400;
}

.droom_box .label-comfort, .droom_box .label-budget, .droom_box .label-premium, .droom_box .label-default {
  display: inline-block;
  z-index: 1000;
  padding-inline: 6px;
  padding-block: 2px;
  border-radius: 5px;
  font-size: 11px;
}

.floating-usps .label-default, .droom_box .label-default, .droom_room .label-default {
  color: #427cac;
  background: #dee6ef;
}
@media screen and (max-width: 768px) {
  .floating-usps .label-default, .droom_box .label-default, .droom_room .label-default {
    margin: 0;
    margin-top: 5px;
    margin-right: 5px;
  }
}
.floating-usps .label-premium, .droom_box .label-premium, .droom_room .label-premium {
  background: goldenrod;
  color: white;
}
.floating-usps .label-comfort, .droom_box .label-comfort, .droom_room .label-comfort {
  background: #a5b7c5;
  color: white;
}
.floating-usps .label-budget, .droom_box .label-budget, .droom_room .label-budget {
  background: #8f8f8f;
  color: white;
}

.facilityList li {
  padding-block: 7px;
  height: 34px;
}
.facilityList li.text-end {
  padding-block: 8px;
}
.facilityList li:not(.text-end) {
  font-size: 14px;
  text-align: center;
  color: #333;
}
.facilityList li.even {
  background: #f9f6f6;
}
.facilityList .fa-check {
  color: #0F9E5E;
}
.facilityList .fa-times {
  color: #a5a5a5;
}

.compare input, .compare label {
  cursor: pointer;
}

.compare input {
  height: 10px;
}

.flexvergelijk {
  cursor: pointer;
  display: flex;
  flex-flow: column;
  justify-content: center;
  text-align: center;
  font-size: 18px;
  line-height: 28px;
}
.flexvergelijk .vergelijk .fa-plus {
  font-size: 50px;
  color: #427cac;
  display: block;
}

li[data-title^=fac] {
  cursor: pointer;
}

.favorite {
  z-index: 10;
  padding: 10px;
  right: 0;
  top: 0;
  cursor: pointer;
}
.favorite.product {
  color: #606060;
  position: relative;
  padding: 0;
}
.favorite.active {
  opacity: 1;
  color: #ed0644;
}
@media screen and (min-width: 768px) {
  .favorite:hover {
    opacity: 1;
    color: #ed0644;
  }
}

span.buildyear {
  font-size: 11px !important;
  float: initial;
  font-style: italic;
}

.itinerary {
  margin-block: 5px;
  color: #606060;
  line-height: 22px;
  font-family: "Poppins";
  -webkit-line-clamp: 3; /* number of lines to show */
  line-clamp: 3;
  min-height: 66px;
  -webkit-box-orient: vertical;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
}

@media screen and (max-width: 991px) {
  .droom_box_btm {
    flex-flow: column !important;
  }
  .droom_box_btm > div {
    margin-block: 5px;
    width: 100% !important;
  }
  .rt_drom .more_btn2 {
    padding-block: 15px !important;
    font-size: 16px !important;
  }
  .rt_drom .more_btn2 .fas {
    padding-left: 10px !important;
    font-size: 14px !important;
  }
  .left_drom {
    height: unset;
    padding-top: 10px !important;
  }
  .left_drom .h5 {
    font-size: 22px !important;
  }
}
.more_btn2 .fas {
  padding-left: 10px;
  font-size: 14px;
}

.compare-category {
  cursor: pointer;
  border-top: 1px solid #dee6eb;
}
.compare-category span {
  font-weight: bold;
}

.facilityPage .trip-vergelijker {
  background: none;
  border: none;
  cursor: default;
}
.facilityPage .trip-vergelijker:hover {
  border: none;
  box-shadow: none;
}
.facilityPage .even {
  background: #f9f6f6;
}
.facilityPage .fa-check {
  color: #0F9E5E;
}
.facilityPage .fa-times {
  color: #a5a5a5;
}
.facilityPage .card-max-height {
  height: 550px;
}
@media (min-width: 576px) {
  .facilityPage .card-max-height {
    height: 735px;
  }
}
@media (min-width: 768px) {
  .facilityPage .card-max-height {
    height: 620px;
  }
}
@media (min-width: 992px) {
  .facilityPage .card-max-height {
    height: 550px;
  }
}
.facilityPage .category_even {
  background-color: rgba(173, 193, 205, 0.4196078431);
}
.facilityPage .category_odd {
  background-color: rgba(187, 204, 215, 0.8);
}

.owl-carousel2 {
  height: calc(100vh - 100px);
  max-height: 800px;
}
.owl-carousel2 .owl-item {
  position: relative;
  background-size: 300%;
  background-position: center;
  border-radius: 10px;
}
.owl-carousel2 .owl-item img {
  height: 800px;
  max-height: 100%;
  width: initial !important;
  margin: auto;
  z-index: 2;
  position: relative;
}
.makeMeBigger {
  position: relative;
  cursor: zoom-in;
}
.makeMeBigger:after {
  font-family: "Material Icons";
  font-weight: 900;
  pointer-events: none;
  content: "\e8b6";
  position: absolute;
  right: 5px;
  top: 5px;
  background: none;
  color: #fff;
  font-size: 14px;
}
.makeMeBigger .bigimage-show {
  display: none;
  z-index: 20;
  position: relative;
  cursor: pointer;
  pointer-events: initial;
}
.makeMeBigger .bigimage-hide {
  display: block;
}
.makeMeBigger .slideButton {
  cursor: pointer;
}
.makeMeBigger.iAmBig {
  position: fixed;
  top: 0px;
  right: 0px;
  z-index: 20000;
  left: 0;
  bottom: 0;
  background: rgba(0, 0, 0, 0.4);
  cursor: zoom-out;
}
.makeMeBigger.iAmBig .bigimage-hide {
  display: none;
}
.makeMeBigger.iAmBig .bigimage-show {
  display: block;
}
.makeMeBigger.iAmBig:after {
  content: "\e5cd";
  color: #000;
  right: 15px;
  top: 15px;
}
.makeMeBigger.iAmBig div[id^=slides-] {
  pointer-events: none;
  user-select: none;
  text-align: center;
  transform: translate(-50%, -50%);
  cursor: initial;
  position: absolute;
  top: 50%;
  left: 50%;
  width: calc(100% - 20px);
  max-width: 800px;
}
.makeMeBigger.iAmBig div[id^=slides-] img {
  width: 100%;
  max-width: 800px;
  border-radius: 5px;
}
.makeMeBigger.iAmBig div[id^=slides-]:after {
  font-family: "Material Icons";
  font-weight: 900;
  pointer-events: none;
  content: "\e5cd";
  position: absolute;
  right: -20px;
  top: -20px;
  background: none;
  color: #fff;
  font-size: 22px;
}
@media screen and (max-width: 800px) {
  .makeMeBigger.iAmBig div[id^=slides-]:after {
    right: 10px;
    top: 10px;
  }
}
.makeMeBigger.iAmBig .slideButton {
  cursor: pointer;
  transform: translateX(calc(50% + 500px)) translateY(calc(50% - 75px));
  right: 50%;
  width: 75px;
  height: 75px;
  line-height: 65px;
  font-size: 30px;
  border: none;
}
.makeMeBigger.iAmBig .slideButton.left {
  cursor: pointer;
  transform: translateX(calc(50% - 575px)) translateY(calc(50% - 75px));
  left: 50%;
}
.makeMeBigger.iAmBig .best-choice {
  display: none;
}
@media screen and (max-width: 800px) {
  .makeMeBigger.iAmBig .slideButton {
    cursor: pointer;
    transform: translateY(calc(50% - 75px));
    right: 10px;
  }
  .makeMeBigger.iAmBig .slideButton .fa {
    top: calc(50% - 15px);
  }
  .makeMeBigger.iAmBig .slideButton.left {
    cursor: pointer;
    transform: translateY(calc(50% - 75px));
    left: 10px;
  }
  .makeMeBigger.iAmBig .slideButton.left .fa {
    top: calc(50% - 15px);
  }
}

.owl-carousel6 .owl-stage {
  padding-left: 0px !important;
}

.form-control:disabled, .form-control[readonly]:not(.fakereadonly) {
  background-color: #e9ecef !important;
}

.numberinput {
  display: block;
  pointer-events: none;
  position: relative;
}
.numberinput input[type=number] {
  width: 100%;
  text-align: center;
  padding-inline: 20px;
  pointer-events: none;
}
.numberinput:before {
  position: absolute;
  left: 15px;
  top: 7px;
  content: "-";
  font-weight: bold;
  font-size: 14px;
  pointer-events: all;
  cursor: pointer;
}
.numberinput:after {
  position: absolute;
  right: 15px;
  top: 8px;
  content: "+";
  font-weight: bold;
  font-size: 14px;
  pointer-events: all;
  cursor: pointer;
}

.show-reisgezelschap {
  position: relative;
}
.show-reisgezelschap .reisgezelschap-box {
  display: none;
  position: absolute;
  width: 400px;
  max-width: 100%;
  z-index: 2100;
  font-size: 14px;
  top: 67px;
  padding-inline: 20px;
  border: 1px solid #dfdfdf;
  padding-block: 10px;
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, 0.2) 8px 8px 16px;
  background: #fff;
}
@media screen and (max-width: 410px) {
  .show-reisgezelschap .reisgezelschap-box {
    left: 0;
  }
}
.show-reisgezelschap .reisgezelschap-box div#A, .show-reisgezelschap .reisgezelschap-box div#C, .show-reisgezelschap .reisgezelschap-box div#Y {
  padding-top: 15px;
  font-weight: bold;
  display: flex;
  line-height: 20px;
  justify-content: space-between;
}
.show-reisgezelschap .reisgezelschap-box div#A div.agebox, .show-reisgezelschap .reisgezelschap-box div#C div.agebox, .show-reisgezelschap .reisgezelschap-box div#Y div.agebox {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 50%;
  max-width: 150px;
}
.show-reisgezelschap .reisgezelschap-box div#A div.agebox span, .show-reisgezelschap .reisgezelschap-box div#C div.agebox span, .show-reisgezelschap .reisgezelschap-box div#Y div.agebox span {
  font-size: 18px;
}
.show-reisgezelschap .reisgezelschap-box div#A div.agebox span.total, .show-reisgezelschap .reisgezelschap-box div#C div.agebox span.total, .show-reisgezelschap .reisgezelschap-box div#Y div.agebox span.total {
  font-weight: normal;
}
.show-reisgezelschap .reisgezelschap-box div#A div.agebox span:not(.total), .show-reisgezelschap .reisgezelschap-box div#C div.agebox span:not(.total), .show-reisgezelschap .reisgezelschap-box div#Y div.agebox span:not(.total) {
  cursor: pointer;
}
.show-reisgezelschap .reisgezelschap-box div#A-desc, .show-reisgezelschap .reisgezelschap-box div#Y-desc, .show-reisgezelschap .reisgezelschap-box div#C-desc {
  font-size: 11px;
  font-weight: initial;
}
.show-reisgezelschap .reisgezelschap-box div#C-info, .show-reisgezelschap .reisgezelschap-box div#Y-info {
  margin-top: 10px;
  border-top: 1px solid #dfdfdf;
  padding-top: 10px;
  font-weight: 600;
}
.show-reisgezelschap .reisgezelschap-box div#C-info select, .show-reisgezelschap .reisgezelschap-box div#Y-info select {
  width: 100%;
  border: 1px solid #dfdfdf;
  padding-block: 8px;
  margin-block: 8px;
}

.sharebox {
  position: absolute;
  z-index: 2100;
  font-size: 14px;
  padding-inline: 20px;
  border: 1px solid #dfdfdf;
  padding-block: 10px;
  border-radius: 5px;
  box-shadow: rgba(0, 0, 0, 0.2) 8px 8px 16px;
  background: #fff;
}

#people:not(.keepposition) {
  position: relative;
}
#people #paxContainer div#A, #people #paxContainer div#C {
  padding-block: 10px;
  font-weight: bold;
  display: flex;
  line-height: 20px;
  justify-content: space-between;
}
#people #paxContainer div#A div, #people #paxContainer div#C div {
  display: flex;
  justify-content: space-between;
  width: 50%;
  max-width: 150px;
}
#people #paxContainer div#A div span, #people #paxContainer div#C div span {
  font-size: 18px;
}
#people #paxContainer div#A div span.total, #people #paxContainer div#C div span.total {
  font-weight: normal;
}
#people #paxContainer div#A div span:not(.total), #people #paxContainer div#C div span:not(.total) {
  cursor: pointer;
}
#people #paxContainer div#C-info {
  margin-top: 10px;
  border-top: 1px solid #dfdfdf;
  padding-top: 10px;
  font-weight: 600;
}
#people #paxContainer div#C-info select,
#people #paxContainer div#C-info input {
  width: 100%;
  border: 1px solid #dfdfdf;
  padding-block: 8px;
  padding-inline: 5px;
  margin-block: 8px;
}

#people.countryflagbox #paxContainer {
  z-index: 1;
  width: 100%;
}

.caitlin {
  transform: scaleX(-1);
  position: absolute;
  bottom: -181px;
  right: 0;
}

.footer_sec .newsletter {
  display: flex;
  justify-content: space-around;
  flex-flow: column;
}
.footer_sec .newsletter input {
  padding: 10px;
}
@media screen and (max-width: 991px) {
  .footer_sec .footer_topBox h4 {
    font-size: 18px;
    line-height: 24px;
  }
  .footer_sec .footer_topBox p {
    line-height: 22px;
    margin-bottom: 10px;
  }
  .footer_sec h5.clickit, .footer_sec .h5.clickit {
    position: relative;
  }
  .footer_sec h5.clickit:after, .footer_sec .h5.clickit:after {
    position: absolute;
    right: 10px;
    font-family: "Material Icons";
    font-weight: 900;
    content: "\e313";
    top: 0px;
    font-size: 14px;
  }
}
.footer_sec hr {
  margin-top: 2rem;
}
.footer_sec .logobox {
  text-align: center;
  display: flex;
  flex-flow: row;
  justify-content: space-around;
}
.footer_sec .logobox img {
  width: 100%;
  max-width: 200px;
  margin: auto;
}
.footer_sec .bottomfooter {
  text-align: center;
  line-height: 24px;
}
.footer_sec .bottomfooter div {
  font-size: 13px;
}
.footer_sec .logo_feedback img {
  width: 80px;
}

@keyframes mi-spin {
  from {
    transform: rotate(0deg);
  }
  to {
    transform: rotate(360deg);
  }
}
.mi-spin {
  animation-name: mi-spin;
  animation-duration: 2000ms;
  animation-iteration-count: infinite;
  animation-timing-function: linear;
}

.goodpricebar {
  margin-top: 40px;
  margin-right: 12px;
  background: #e4fddc;
  padding-block: 20px !important;
  border: 1px solid #c2d5bc;
  overflow: hidden;
}
.goodpricebar div:not(:first-child) :first-child {
  font-size: 16px;
  font-weight: 600;
}
.goodpricebar div:not(:first-child) :not(:first-child) {
  margin-top: 7px;
  line-height: 20px;
}
.goodpricebar div.iconbox {
  position: relative;
  width: 84px;
}
.goodpricebar div.iconbox:before {
  position: absolute;
  font-family: "Material Icons";
  font-weight: 900;
  content: "\e5ca";
  font-size: 54px;
  height: 80px;
  width: 80px;
  left: -7px;
  bottom: -33px;
  padding-top: 33px;
  padding-left: 15px;
  border-radius: 40px;
  background: #a8d19c;
  color: #e4fddc;
}
.goodpricebar#lastminutebar {
  border: 1px solid #faeddc;
  background: #dee6ef;
  color: #703502;
}
.goodpricebar#lastminutebar div.iconbox:before {
  content: "\f587";
  background: #ffffff;
  color: #fbc290;
}
.goodpricebar#sadpricebar {
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar#sadpricebar div.iconbox:before {
  content: "\f5c2";
  background: #856404;
  color: #fff3cd;
}
.goodpricebar#noratebar {
  position: relative;
  margin-inline: 12px;
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar#noratebar div.iconbox:before {
  font-size: 38px;
  text-align: center;
  content: "\f02c";
  background: #856404;
  color: #fff3cd;
}
.goodpricebar.nocabinbar {
  position: relative;
  margin-inline: 12px;
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar.nocabinbar div.iconbox:before {
  font-size: 38px;
  padding-left: 6px;
  text-align: center;
  content: "\f236";
  background: #856404;
  color: #fff3cd;
}
.goodpricebar.disneybar {
  position: relative;
  margin-inline: 12px;
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
  z-index: 10;
  padding-inline: 10px;
  line-height: 24px;
}
.goodpricebar#noratebar, .goodpricebar#fullySoldout, .goodpricebar.nocabinbar {
  position: relative;
}
.goodpricebar#noratebar .fa-spinner, .goodpricebar#fullySoldout .fa-spinner, .goodpricebar.nocabinbar .fa-spinner {
  position: absolute;
  font-size: 38px;
  top: calc(50% - 27px);
  right: 15px;
}
.goodpricebar.noflightbar {
  border: 1px solid #fcf1cf;
  display: flex !important;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar.noflightbar div.iconbox:before {
  content: "\f5b0";
  background: #856404;
  color: #fff3cd;
}
.goodpricebar.nohotelbar {
  border: 1px solid #fcf1cf;
  display: flex !important;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar.nohotelbar div.iconbox:before {
  content: "\ea40";
  background: #856404;
  color: #fff3cd;
}
.goodpricebar#soldoutbar, .goodpricebar.soldoutbar {
  border: 1px solid #f8d7da;
  background: #f8d7da;
  color: #721c24;
}
.goodpricebar#soldoutbar div.iconbox:before, .goodpricebar.soldoutbar div.iconbox:before {
  content: "\e811";
  background: #721c24;
  color: #f8d7da;
}
.goodpricebar#soldoutbar, .goodpricebar.paybar-danger {
  border: 1px solid #f8d7da;
  background: #f8d7da;
  color: #721c24;
}
.goodpricebar#soldoutbar div.iconbox:before, .goodpricebar.paybar-danger div.iconbox:before {
  content: "\f0d6";
  background: #721c24;
  color: #f8d7da;
  font-size: 45px;
}
.goodpricebar#soldoutbar, .goodpricebar.paybar-warning {
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar#soldoutbar div.iconbox:before, .goodpricebar.paybar-warning div.iconbox:before {
  content: "\f0d6";
  background: #856404;
  color: #fff3cd;
  font-size: 45px;
}
.goodpricebar.soldoutbar {
  display: flex !important;
}
.goodpricebar#changedairport {
  display: flex !important;
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.goodpricebar#changedairport div.iconbox:before {
  font-size: 34px;
  padding-top: 28px;
  padding-left: 21px;
  content: "\f5b0";
  background: #856404;
  color: #fff3cd;
}
.goodpricebar#maxpaxbar, .goodpricebar#paxinfobar {
  border: 1px solid #d3d3d3;
  border-top: 0;
  background: #eaf5ff;
  color: #424242;
  margin-bottom: 10px;
}
.goodpricebar#maxpaxbar div.iconbox:before, .goodpricebar#paxinfobar div.iconbox:before {
  left: -10px;
  font-size: 34px;
  padding-top: 28px;
  padding-left: 21px;
  content: "\f071";
  background: #5d6872;
  color: #eaf5ff;
}

.orangepricebar {
  margin-top: 40px;
  margin-right: 12px;
  background: #fff3cd;
  padding-block: 20px !important;
  border: 1px solid #ffeeba;
  overflow: hidden;
}
.orangepricebar div:not(:first-child) :first-child {
  font-size: 16px;
  font-weight: 600;
}
.orangepricebar div:not(:first-child) :not(:first-child) {
  margin-top: 7px;
}
.orangepricebar#makenewcall {
  border: 1px solid #fcf1cf;
  border-top: 0;
  background: #fff3cd;
  color: #424242;
  margin-bottom: 10px;
}
.orangepricebar#makenewcall div.iconbox:before {
  left: -10px;
  font-size: 34px;
  padding-top: 28px;
  padding-left: 21px;
  content: "\f071";
  background: #856404;
  color: #fff3cd;
}
.orangepricebar div.iconbox {
  position: relative;
  width: 84px;
}
.orangepricebar div.iconbox:before {
  position: absolute;
  font-family: "Material Icons";
  font-weight: 900;
  content: "\e002";
  font-size: 54px;
  height: 80px;
  width: 80px;
  left: -7px;
  bottom: -33px;
  padding-top: 33px;
  padding-left: 15px;
  border-radius: 40px;
  background: #856404;
  color: #fff3cd;
}
.orangepricebar#lastminutebar {
  border: 1px solid #faeddc;
  background: #9ebad2;
  color: #703502;
}
.orangepricebar#lastminutebar div.iconbox:before {
  content: "\f6a5";
  background: #ffffff;
  color: #fbc290;
}
.orangepricebar#sadpricebar {
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.orangepricebar#sadpricebar div.iconbox:before {
  content: "\e811";
  background: #856404;
  color: #fff3cd;
}
.orangepricebar#soldoutbar, .orangepricebar.soldoutbar {
  border: 1px solid #f8d7da;
  background: #f8d7da;
  color: #721c24;
}
.orangepricebar#soldoutbar div.iconbox:before, .orangepricebar.soldoutbar div.iconbox:before {
  content: "\e811";
  background: #721c24;
  color: #f8d7da;
}
.orangepricebar#soldoutbar, .orangepricebar.paybar-danger {
  border: 1px solid #f8d7da;
  background: #f8d7da;
  color: #721c24;
}
.orangepricebar#soldoutbar div.iconbox:before, .orangepricebar.paybar-danger div.iconbox:before {
  content: "\f0d6";
  background: #721c24;
  color: #f8d7da;
  font-size: 45px;
}
.orangepricebar#soldoutbar, .orangepricebar.paybar-warning {
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.orangepricebar#soldoutbar div.iconbox:before, .orangepricebar.paybar-warning div.iconbox:before {
  content: "\f0d6";
  background: #856404;
  color: #fff3cd;
  font-size: 45px;
}
.orangepricebar.soldoutbar {
  display: flex !important;
}
.orangepricebar#changedairport {
  display: flex !important;
  border: 1px solid #fcf1cf;
  background: #fff3cd;
  color: #856404;
}
.orangepricebar#changedairport div.iconbox:before {
  font-size: 34px;
  padding-top: 28px;
  padding-left: 21px;
  content: "\f5b0";
  background: #856404;
  color: #fff3cd;
}

.selectFirstDate, .selectFirstCabin {
  font-weight: bold;
  cursor: pointer;
  border: 1px solid #721c24;
  padding: 8px;
  color: #721c24;
  border-radius: 5px;
  font-size: 12px !important;
  line-height: initial !important;
  width: 150px;
  position: absolute;
  right: 20px;
  top: calc(50% - 20px);
  text-align: center;
}
.selectFirstDate:hover, .selectFirstCabin:hover {
  text-decoration: underline;
}

.paybar-warning .selectFirstDate {
  border-color: #856404;
  color: #856404;
}

.flightrow,
.addonrow {
  width: 100%;
  padding-right: 20px;
  padding-left: 50px;
  padding-block: 20px !important;
}
@media screen and (max-width: 991px) {
  .flightrow,
  .addonrow {
    padding-right: 10px;
    padding-left: 10px;
    padding-block: 10px !important;
  }
  .flightrow .fa-plane,
  .addonrow .fa-plane {
    display: none;
  }
  .flightrow br,
  .addonrow br {
    display: initial;
  }
  .flightrow .text-center.logos,
  .addonrow .text-center.logos {
    width: 90%;
  }
}

.addonrow {
  padding-left: 30px;
}

.flight-logo {
  width: 100%;
  display: block;
  margin: auto;
  margin-bottom: 15px;
  max-width: 150px;
}
@media screen and (max-width: 991px) {
  .flight-logo {
    margin: 5px auto;
  }
}

.flight-extra br {
  display: none;
}
@media screen and (max-width: 991px) {
  .flight-extra br {
    display: initial;
  }
}

.fakerow {
  display: flex;
  flex-wrap: wrap;
}
.fakerow > * {
  width: 100%;
}

.m-12 {
  margin-inline: 12px;
}

.padding12inline {
  padding-inline: 12px;
}

.arrowbox {
  display: flex;
  flex-flow: row;
  justify-content: space-between;
  font-size: 26px;
}
.arrowbox .arrow-before, .arrowbox .arrow-after {
  cursor: pointer;
  display: flex;
  flex-flow: column;
  justify-content: space-around;
}

.row.disabled,
.arrow-before.disabled,
.arrow-after.disabled {
  color: #dfdfdf !important;
  pointer-events: none;
  cursor: not-allowed;
}

.pricespacer {
  height: 300px;
}

.borders {
  background: transparent;
}

.hotelroom {
  width: calc(25% - 8px);
  margin-right: 10px;
  position: relative;
}
.hotelroom:not(.ship):nth-child(4) {
  padding: 0;
  margin: 0;
}
.hotelroom label {
  width: 100%;
}
@media screen and (max-width: 800px) {
  .hotelroom {
    margin-inline: 0;
    margin: 0 0 15px;
    padding: 0;
  }
}

.hotelroom.soldout {
  filter: grayscale(90);
  pointer-events: none;
}
.hotelroom.soldout input {
  opacity: 0.8;
}
.hotelroom.soldout .text-center span {
  font-weight: 600;
}

@media screen and (max-width: 800px) {
  .nopaddingmobile {
    padding: 0 !important;
  }
  .hotelroom {
    width: 100%;
  }
  .padding12 {
    padding: 6px;
  }
  .padding12inline {
    padding-inline: 6px;
  }
  .m-12 {
    margin-inline: 6px;
  }
}
.priceblock .price-discounted {
  margin-top: 7px;
  font-size: 22px;
  font-weight: 400;
  position: relative;
  overflow: hidden;
}
.priceblock .price-discounted:before {
  position: absolute;
  width: 100%;
  height: 1px;
  background: #333;
  transform: rotate(-3deg);
  content: "";
  top: 50%;
  width: 60px;
  opacity: 0.8;
}

.pricerow {
  justify-content: center;
  height: 100%;
}
.pricerow .pricedatecol {
  cursor: pointer;
  width: calc(14.2857142857% - 10px);
  margin-inline: 5px;
  padding-inline: 0;
  display: flex;
  flex-flow: column;
  text-align: center;
}
.pricerow .pricedatecol .price-Block {
  background: #e9e9e9;
  height: 100%;
  border-radius: 5px;
  display: flex;
  flex-flow: column;
  padding-top: 7px;
}
.pricerow .pricedatecol .price-Block span.price {
  margin-top: 7px;
  font-weight: bold;
  font-size: 18px;
}
.pricerow .pricedatecol .price-Block span.price-discounted {
  margin-top: 7px;
  font-size: 14px;
  font-weight: 400;
  position: relative;
  overflow: hidden;
}
.pricerow .pricedatecol .price-Block span.price-discounted:before {
  position: absolute;
  width: 100%;
  height: 1px;
  background: #333;
  transform: rotate(-3deg);
  content: "";
  top: 50%;
  width: 47px;
  opacity: 0.8;
}
@media screen and (max-width: 800px) {
  .pricerow .pricedatecol {
    margin-inline: 2px;
    font-size: 11px;
  }
  .pricerow .pricedatecol .price-Block span.price {
    margin-top: 7px;
    font-weight: bold;
    font-size: 14px;
  }
}
.pricerow .pricedatecol .datadate {
  padding-top: 5px;
  display: flex;
  flex-flow: column;
  justify-content: space-around;
}
.pricerow .pricedatecol .datadate b, .pricerow .pricedatecol .datadate span {
  margin-block: 2px;
}
.pricerow .pricedatecol .radiobutton {
  padding-top: 15px;
  padding-bottom: 15px;
}
.pricerow .pricedatecol.selected .price-Block {
  background: #dee6ef;
  color: #606060;
}
.pricerow .pricedatecol.active .price-Block {
  background: #427cac;
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  color: white;
}
.pricerow .pricedatecol.active .datadate {
  background: #427cac;
  color: white;
}
.pricerow .pricedatecol.active .radiobutton {
  position: relative;
}
.pricerow .pricedatecol.active .radiobutton input {
  position: relative;
}
.pricerow .pricedatecol.active .radiobutton:before {
  position: absolute;
  width: 100%;
  height: 100%;
  aspect-ratio: 1/1;
  background: #427cac;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
  content: "";
  top: 0;
  left: 0;
}
.pricerow .pricedatecol:hover {
  background: rgba(217, 228, 254, 0.4);
  border-radius: 5px;
}

.usps-small {
  padding-inline: 30px;
  background: #e9e9e9;
  line-height: 23px;
  font-size: 13px;
  border-top: 1px solid #dfdfdf;
}
.usps-small b {
  font-size: 14px;
}
.usps-small li b {
  font-size: 13px;
}

.steps-loader {
  margin-block: 0;
  position: relative;
}
.steps-loader .step-wait {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  padding-top: 115px;
  z-index: 10;
}
.steps-loader .stepheaders {
  opacity: 0.6;
  text-align: left;
}

.included-small {
  border-top: 1px dashed #dfdfdf;
  font-size: 11px;
}
.included-small ul.list li, .included-small li {
  font-size: 11px;
}
.included-small ul.list li.plus, .included-small li.plus {
  padding-right: 13px;
}
.included-small ul.list li.minus, .included-small li.minus {
  padding-left: 13px;
}

.fakereadonly {
  background-color: #fff !important;
  border: 1px solid #ced4da;
}

.tooSlow {
  position: absolute;
  top: 0px;
  right: 0px;
  z-index: 2000;
  left: 0;
  bottom: 0;
  background: rgba(255, 255, 255, 0.5);
  display: flex;
  flex-flow: column;
  justify-content: center;
}
.tooSlow .popup {
  background: #fff;
  max-width: 420px;
  margin: auto;
  position: sticky;
  top: 100px;
  width: 100%;
  border-radius: 5px;
  padding: 16px;
  line-height: 24px;
  border: 1px solid #ced4da;
}
.tooSlow .popup b {
  font-size: 18px;
  line-height: 28px;
}

.input-right {
  left: initial !important;
  right: 30px;
}

.steps input[type=radio].input-right + label {
  padding-right: 60px;
  padding-left: 0;
}

.smallright input[type=radio].input-right + label {
  padding-right: 30px !important;
}
.smallright input[type=radio]:checked.input-right + label .price {
  font-size: 10px !important;
}
.smallright .input-right {
  bottom: initial !important;
  top: calc(50% - 6px) !important;
  right: 5px;
}
.smallright .fakerow {
  width: calc(50% - 5px);
  padding: 0;
  margin-bottom: 10px;
}
@media screen and (max-width: 799px) {
  .smallright .fakerow {
    margin-left: 0px !important;
    width: 100%;
  }
}
.smallright .fakerow:nth-child(even) {
  margin-left: 10px;
}

.best-choice {
  position: absolute;
  top: 10px;
  padding-inline: 10px;
  padding-block: 3px;
  margin-top: 10px;
  margin-right: 20px;
  font-weight: bold;
  background: #d6edfe;
  color: #306393;
  border-radius: 8px;
}

.reserve-choice {
  position: absolute;
  top: 10px;
  padding-inline: 10px;
  padding-block: 3px;
  margin-top: 10px;
  margin-right: 20px;
  font-weight: bold;
  background: #d9e5d8;
  color: #1c6d14;
  border-radius: 8px;
}

.shipImage {
  background-image: url("/dev/assets/images/ship-outline.png");
  background-repeat: no-repeat;
  width: 100%;
  aspect-ratio: 1/1;
  filter: invert(38%) sepia(0%) saturate(2794%) hue-rotate(177deg) brightness(140%) contrast(111%);
}
@supports not (aspect-ratio: 1/1) {
  .shipImage {
    padding-top: 100%;
  }
}
.shipImage.backship {
  background-position: center left;
}
.shipImage.midship {
  background-position: center center;
}
.shipImage.frontship {
  background-position: center right;
}

.hotelroom.ship {
  width: calc(33.3333333333% - 10px);
}

.steps input[type=radio]:not(.no-hover):hover + label .shipImage {
  filter: invert(38%) sepia(11%) saturate(2786%) hue-rotate(177deg) brightness(87%) contrast(26%);
}

.steps input[type=radio].no-hover:hover + label {
  background-color: white;
  cursor: default;
}

.steps input[type=radio]:checked + label .shipImage {
  filter: invert(38%) sepia(11%) saturate(2786%) hue-rotate(177deg) brightness(56%) contrast(52%);
}

.steps input[type=radio]:disabled + label {
  opacity: 0.7;
}

.lastcabins {
  font-size: 12px;
  color: #427cac;
  background: #dee6ef;
  border-radius: 5px;
  margin-left: 8px;
  padding: 3px 7px;
}

.steps input[type=radio]:checked + label .lastcabins {
  background: #427cac;
  color: white;
}

.roomDeckLocation .fakerow:not(:last-child) {
  margin-bottom: 10px;
}

.roomCategoryLocation .fakerow:not(:last-child) {
  margin-bottom: 10px;
}
.roomCategoryLocation .fakerow input + label {
  border-top: 1px solid lightgrey !important;
}

.steps.inPageLoading .roomCategoryLocation {
  filter: grayscale(1) opacity(0.5);
  pointer-events: none;
}
.steps.inPageLoading .roomCategoryLocation label {
  background-image: linear-gradient(75deg, #f8f8f8 40%, rgb(240, 240, 240) 45%, #f8f8f8 50%, #f8f8f8 60%, rgb(240, 240, 240) 65%, #f8f8f8 70%);
  background-size: 300% 100%;
  animation: lazyEffect 3s infinite linear;
}
.steps.inPageLoading .roomCategoryLocation label * {
  color: transparent !important;
}
.steps.inPageLoading .roomCategoryLocation span, .steps.inPageLoading .roomCategoryLocation b, .steps.inPageLoading .roomCategoryLocation .best-choice, .steps.inPageLoading .roomCategoryLocation p {
  background: #fff;
  animation: lazyEffect 3s infinite linear;
}

.inPageLoading {
  position: relative;
}
.inPageLoading button {
  pointer-events: none;
  opacity: 0.6;
  filter: grayscale(1) opacity(0.5);
}
.inPageLoading #finishLoadingArea {
  pointer-events: none;
  filter: grayscale(1) opacity(0.5);
}
.inPageLoading #finishLoadingArea .pricerows {
  position: relative;
}
.inPageLoading #finishLoadingArea .pricerows:after {
  position: absolute;
  content: "";
  background: url("https://cdn.cruiseonline.com/icon/cruiseonline.png");
  background-repeat: no-repeat;
  background-size: cover;
  animation: lazyBackground 8s infinite linear;
  background-position: 0% 10%;
  width: 250px;
  height: 250px;
  z-index: 3000;
  top: 150px;
}
.inPageLoading #finishLoadingArea label {
  background-image: linear-gradient(75deg, #f8f8f8 40%, rgb(240, 240, 240) 45%, #f8f8f8 50%, #f8f8f8 60%, rgb(240, 240, 240) 65%, #f8f8f8 70%);
  background-size: 300% 100%;
  animation: lazyEffect 3s infinite linear;
}
.inPageLoading #finishLoadingArea label * {
  color: transparent !important;
}
.inPageLoading #finishLoadingArea span, .inPageLoading #finishLoadingArea b, .inPageLoading #finishLoadingArea .best-choice, .inPageLoading #finishLoadingArea p {
  background: #fff;
  animation: lazyEffect 3s infinite linear;
}
.inPageLoading #finishLoadingArea input {
  display: none;
}

.shipcabin {
  width: initial;
  float: right;
  display: block;
  max-width: calc(100% - 570px);
  margin-right: 0;
}
.shipcabin input[type=radio]:not(:checked) + label, .shipcabin input[type=radio]:not(:checked) {
  display: none !important;
}
.shipcabin input[type=radio] + label {
  margin-left: 10px;
}

div[id^=floorplan-] {
  position: relative;
}
div[id^=floorplan-] .cabinLocation {
  position: absolute;
  cursor: pointer;
  border: 2px solid transparent;
  color: transparent;
  text-align: center;
  user-select: none;
}
div[id^=floorplan-] .cabinLocation.available {
  background: #55ac42;
  opacity: 0.3;
}
div[id^=floorplan-] .cabinLocation.not-available {
  background: #ac4242;
  opacity: 0.8;
  pointer-events: none;
}
div[id^=floorplan-] .cabinLocation:hover {
  border: 2px solid #426cac;
}
div[id^=floorplan-] .cabinLocation.active {
  border: 2px solid #fff;
  background: #1ad326;
  opacity: 0.6;
  animation: flickerAnimation 1.5s infinite;
}
div[id^=floorplan-] .cabinLocation:before {
  content: "";
  display: inline-block;
  height: 100%;
  vertical-align: middle;
}

.heartbeat {
  animation: flickerAnimation2 0.8s infinite;
}

@keyframes flickerAnimation {
  0% {
    opacity: 0.8;
  }
  50% {
    opacity: 0.6;
  }
  100% {
    opacity: 0.8;
  }
}
@keyframes flickerAnimation2 {
  0% {
    background: #fff;
  }
  50% {
    background: #b1cee7;
  }
  100% {
    background: #fff;
  }
}
.deckplanarea {
  width: 100%;
  max-width: 570px;
  overflow-y: scroll;
  height: 800px;
  padding: 20px;
  border: 1px solid #d3d3d3;
  background: white;
  border-radius: 5px;
  /* Track */
  /* Handle */
  /* Handle on hover */
}
.deckplanarea::-webkit-scrollbar {
  width: 10px;
}
.deckplanarea::-webkit-scrollbar-track {
  border-radius: 10px;
}
.deckplanarea::-webkit-scrollbar-thumb {
  background: #606060;
  border-radius: 10px;
}
.deckplanarea::-webkit-scrollbar-thumb:hover {
  background: #333;
}
.deckplanarea.hidescroll::-webkit-scrollbar-thumb {
  background: rgba(96, 96, 96, 0.8);
  border-radius: 10px;
}

.neverscroll {
  overflow: hidden;
}

.headerstep br {
  display: none;
}

@media screen and (max-width: 991px) {
  .goBack {
    margin-top: 5px;
    float: left !important;
    text-align: left !important;
  }
  .headerstep br {
    display: initial;
  }
  .stepbody + hr {
    margin-top: 20px !important;
  }
  .steps .inputleftmobile input[type=radio] {
    position: absolute;
    left: 20px;
    top: calc(50% - 6px);
    width: 10px;
  }
}
#price-overview-2 {
  margin-bottom: 30px;
}

.headerstep .stepheader {
  margin-top: 0;
}

.headerstep ~ .headerstep .stepheader {
  margin-top: 30px;
}

@media screen and (min-width: 991px) {
  .flight-box {
    line-height: 57px;
  }
}
.flight-box .stop-dots {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  display: flex;
  width: 100%;
  justify-content: center;
}
.flight-box .stop-dots .stop-dot {
  width: 10px;
  height: 10px;
  border: 2px solid #527089;
  border-radius: 10px;
  background: #dae5f0;
  margin-inline: 5px;
}
.flight-box .nw {
  white-space: nowrap;
}
.flight-box .nlh {
  line-height: initial;
}
.flight-box .flight-duration {
  font-size: 11px;
  text-align: center;
}
.flight-box .flight-date,
.flight-box .flight-stops {
  white-space: nowrap;
  font-size: 11px;
}
.flight-box .flight-stops {
  font-size: 12px;
  text-align: center;
}

.outbound .flight-box + .fas,
.inbound .flight-box + .fas {
  height: 57px;
  line-height: 57px;
}

.steps input[type=radio]:checked + label .flight-extra div {
  background: #cbdbea !important;
}

.shiprow input[name=room_location]:disabled + label {
  position: relative;
}
.shiprow input[name=room_location]:disabled + label .price {
  display: none;
}
.shiprow input[name=room_location]:disabled + label .priceUnavailable {
  display: block !important;
  font-weight: bold;
}

.flight-extra-box {
  background: #dee6ef;
  padding-left: 62px;
  padding-right: 30px;
  font-size: 12px;
}
@media screen and (max-width: 991px) {
  .flight-extra-box {
    padding-left: 10px;
    padding-right: 10px;
  }
}

.loadingbar {
  background: #f8f8f8;
  height: 40px;
  margin: auto;
  margin-top: 30px;
  border-radius: 3px;
  border: 2px solid #fff;
  width: calc(100% - 100px);
}
.loadingbar .progress {
  height: 100%;
  width: 0%;
  background: #426cac;
  animation: letsLoad 17s linear forwards;
  animation-iteration-count: 1;
}
.loadingbar .progress.done {
  animation: none;
}
.loadingbar .progress2 {
  height: 100%;
  width: 0%;
  background: #426cac;
}

@media screen and (max-width: 991px) {
  .stepscrollmobile {
    display: flex;
    overflow-x: auto;
  }
  .stepscrollmobile > div {
    min-width: calc(100% - 20px);
  }
}
@keyframes letsLoad {
  0% {
    width: 0%;
  }
  10% {
    width: 11%;
  }
  20% {
    width: 22%;
  }
  30% {
    width: 33%;
  }
  40% {
    width: 44%;
  }
  50% {
    width: 50%;
  }
  60% {
    width: 59%;
  }
  70% {
    width: 68%;
  }
  80% {
    width: 77%;
  }
  90% {
    width: 86%;
  }
  95% {
    width: 90%;
  }
  100% {
    width: 91%;
  }
}
.showmoreflight {
  display: none;
}

@media screen and (max-width: 991px) {
  .showmoreflight {
    display: block;
  }
  #showmoreflightbutton {
    display: none;
  }
}
.inputrow.disabled input {
  background-color: #e9ecef !important;
}

.flatpickerdisabled {
  background-color: #e9ecef !important;
  pointer-events: none !important;
}

.board-row {
  margin-top: 30px;
}
.board-row .grouprow, .board-row .groupconditions {
  margin-top: 20px;
}
.board-row .grouprow .price-board-col, .board-row .groupconditions .price-board-col {
  position: relative;
  padding-left: 40px;
  padding-block: 20px;
  padding-right: 20px;
  background: #fff;
  margin-top: 10px;
  border: 1px solid lightgrey;
  border-radius: 4px;
  display: flex;
  cursor: pointer;
}
.board-row .grouprow .price-board-col .fa-check, .board-row .groupconditions .price-board-col .fa-check {
  color: green;
}
.board-row .grouprow .price-board-col p, .board-row .groupconditions .price-board-col p {
  line-height: 22px;
  font-size: 12px;
}
.board-row .grouprow .price-board-col p + p, .board-row .groupconditions .price-board-col p + p {
  margin-top: 2px;
}
.board-row .grouprow .price-board-col .fakecheckbox2, .board-row .groupconditions .price-board-col .fakecheckbox2 {
  position: absolute;
  left: 15px;
  top: calc(50% - 6px);
  pointer-events: none;
}
.board-row .grouprow .price-board-col .info-area, .board-row .groupconditions .price-board-col .info-area {
  width: 80%;
}
.board-row .grouprow .price-board-col .info-area b, .board-row .groupconditions .price-board-col .info-area b {
  font-size: 14px;
}
.board-row .grouprow .price-board-col .best-choice ~ .price-area, .board-row .groupconditions .price-board-col .best-choice ~ .price-area {
  margin-top: 15px;
}
.board-row .grouprow .price-board-col .price-area, .board-row .groupconditions .price-board-col .price-area {
  width: 20%;
  display: flex;
  flex-flow: column;
  justify-content: center;
  text-align: right;
  font-size: 16px;
  font-weight: 600;
}
.board-row .grouprow .price-board-col .price-area small, .board-row .groupconditions .price-board-col .price-area small {
  font-weight: normal;
}
.board-row .grouprow .price-board-col.selected, .board-row .groupconditions .price-board-col.selected {
  color: #fff !important;
  background: #427cac !important;
}
.board-row .grouprow .price-board-col.selected p, .board-row .grouprow .price-board-col.selected .fa-check, .board-row .grouprow .price-board-col.selected b, .board-row .groupconditions .price-board-col.selected p, .board-row .groupconditions .price-board-col.selected .fa-check, .board-row .groupconditions .price-board-col.selected b {
  color: #fff !important;
}
.board-row .grouprow .price-board-col.checked, .board-row .groupconditions .price-board-col.checked {
  border-width: 2px;
  border-color: #005F9C;
  background: #EFFAFF !important;
}
.board-row .grouprow .price-board-col.checked span.price, .board-row .groupconditions .price-board-col.checked span.price {
  color: #ffffff;
  background: #6c757d;
  font-size: 12px !important;
  padding-block: 3px;
  padding-inline: 8px;
  border-radius: 5px;
}
.board-row .grouprow .price-board-col:hover, .board-row .grouprow .price-board-col.active {
  background: #f3fafe;
}
.board-row .groupconditions {
  margin-top: 0;
}
.board-row.active-campaign {
  opacity: 1;
}
.board-row.active-campaign .grouprow {
  display: block !important;
}
.board-row.active-campaign .grouprow .price-board-col, .board-row.active-campaign .groupconditions .price-board-col {
  margin: 0;
  border: none;
}
.board-row.active-campaign .groupconditions {
  border: 3px solid #427cac;
}
.board-row .price-board-col + .groupconditions {
  margin-top: 0px;
}
.board-row .price-board-col + .groupconditions .price-board-col {
  margin-top: 0px;
  border-top: none;
}

@media screen and (max-width: 991px) {
  .board-row .grouprow .price-board-col, .board-row .groupconditions .price-board-col {
    padding: 10px 10px 30px;
    flex-flow: column;
  }
  .board-row .grouprow .price-board-col .fakecheckbox2, .board-row .groupconditions .price-board-col .fakecheckbox2 {
    left: calc(50% - 6px);
    top: initial;
    bottom: 10px;
  }
  .board-row .grouprow .price-board-col .info-area, .board-row .groupconditions .price-board-col .info-area {
    width: 100%;
  }
  .board-row .grouprow .price-board-col .price-area, .board-row .groupconditions .price-board-col .price-area {
    width: 100%;
    text-align: center;
    margin-block: 10px;
  }
  .board-row .grouprow .price-board-col .best-choice + .info-area, .board-row .groupconditions .price-board-col .best-choice + .info-area {
    margin-top: 25px;
  }
  .board-row.active-campaign .grouprow .info-area p:first-child {
    font-size: 12px;
  }
  .board-row.active-campaign .grouprow .info-area p:first-child span {
    font-size: 14px !important;
  }
}
.steps .price, .grouprow .price {
  color: #403f3f !important;
  font-size: 14px !important;
  font-weight: bold !important;
}
.steps .price span, .grouprow .price span {
  font-size: 14px;
  font-weight: initial;
  margin: 0;
  color: #333;
}

.imageLoading {
  filter: opacity(0.5);
}

@media screen and (max-width: 991px) {
  .deckplanarea {
    max-width: 100%;
  }
}
#paydate, #paynow, #paylater, #reserve-small-text {
  font-size: 12px;
}

.fa-search-plus, .fa-plus {
  cursor: pointer;
}

.transport_option {
  position: relative;
  text-align: center;
  width: 100%;
}
.transport_option input[type=radio] {
  position: absolute;
  left: calc(50% - 6px);
  bottom: 15px;
}
.transport_option input[type=radio] + label {
  cursor: pointer;
  padding-bottom: 40px;
  padding-top: 30px;
  width: 100%;
  height: 100%;
  background: white;
  border: 1px solid lightgrey;
  border-radius: 3px;
}
.transport_option input[type=radio] + label:hover {
  background: #f3fafe;
}
.transport_option input[type=radio]:checked + label {
  border-width: 2px;
  border-color: #195185;
  background: #f2f9ff !important;
}
.transport_option .icons {
  width: 100%;
  font-size: 26px;
  padding-bottom: 20px;
}
.transport_option:first-child {
  margin-right: 5px;
}
.transport_option:nth-child(2) {
  margin-left: 5px;
}

.pax_step {
  display: flex;
  flex-flow: column;
}
.pax_step .step_pax {
  background: white;
  border: 1px solid #e3e3e3;
  border-radius: 1px;
  padding: 20px;
  display: flex;
  flex-flow: row;
  font-size: 14px;
  line-height: 36px;
  width: 100%;
}
.pax_step .step_pax:first-child {
  border-bottom: none;
}
.pax_step .step_pax b {
  width: 160px;
  max-width: 100%;
}
.pax_step .step_pax .paxes {
  display: flex;
}
.pax_step .step_pax .paxes .male {
  font-size: 36px;
  width: 30px;
}
.pax_step .step_pax .paxes .child {
  font-size: 40px;
  width: 29px;
}
.pax_step .step_pax .paxes .material-icons {
  color: #bfbcbc;
  cursor: pointer;
}
.pax_step .step_pax .paxes:not(.hovering) .material-icons.active {
  color: #427cac !important;
}
.pax_step .step_pax .paxes .material-icons.hover {
  color: #396b94 !important;
}
.pax_step .step_pax .pax-info {
  width: 40%;
  display: flex;
}
.pax_step .step_pax .fa-times {
  cursor: pointer;
}
.pax_step .step_pax .invalid {
  color: #DC3545;
}
.pax_step .step_pax .invalid input {
  border: 1px solid #DC3545;
  color: #DC3545;
  animation: shakeIt 8s linear;
}
.pax_step .pax-ages {
  width: 60%;
}
.pax_step .step_pax_border {
  border-inline: none;
  width: 1px;
  background: #fff;
  padding: 0;
  padding-block: 20px;
}
.pax_step .step_pax_border .line {
  background: #e3e3e3;
  width: 1px;
  height: 100%;
}

@media screen and (max-width: 991px) {
  .pax_step .step_pax {
    flex-flow: column;
  }
  .pax_step .step_pax .pax-info {
    width: 100%;
  }
  .pax_step .step_pax .pax-info .paxes {
    align-items: center;
  }
  .pax_step .step_pax .pax-ages {
    width: 100%;
  }
  .transport_option .icons {
    font-size: 16px;
  }
}
@keyframes shakeIt {
  1%, 3%, 5% {
    margin-left: 5px;
  }
  2%, 4%, 6% {
    margin-left: 0px;
  }
}
.container.priceoverview.active1 .stepheader:first-child, .container.priceoverview.active1 .stepbody.pax_step, .container.priceoverview.active2 .stepheader:first-child, .container.priceoverview.active2 .stepbody.pax_step, .container.priceoverview.active3 .stepheader:first-child, .container.priceoverview.active3 .stepbody.pax_step {
  z-index: 2010;
  position: relative;
}
.container.priceoverview.active1 .button-pax, .container.priceoverview.active2 .button-pax, .container.priceoverview.active3 .button-pax {
  z-index: 2010;
  position: relative;
}
.container.priceoverview.active2 .stepheader:nth-child(3), .container.priceoverview.active2 .transport_steps, .container.priceoverview.active3 .stepheader:nth-child(3), .container.priceoverview.active3 .transport_steps {
  z-index: 2010;
  position: relative;
}
.container.priceoverview.active3 .stepheader:nth-child(5), .container.priceoverview.active3 #book-1 {
  z-index: 2010;
  position: relative;
}
.container.priceoverview #steps .stepheader {
  z-index: 10;
}

.button-pax {
  margin-left: auto;
  width: 200px;
  text-align: center;
  padding-block: 11px;
  padding-inline: 10px;
  font-size: 14px;
  background: #4aac42;
  margin-top: 10px;
  border-radius: 2px;
  font-weight: 600;
  cursor: pointer;
  color: #fff;
  border-radius: 5px;
}

.green-text {
  color: #4aac42;
}

#travel-results > div:hover {
  background-color: #e3e3e3;
  cursor: pointer;
}
#travel-results > div:hover label:hover {
  cursor: pointer;
}

#reserve-loader .loadingbar {
  background: #f8f8f8;
  height: 25px;
  margin: 5px auto auto;
  border-radius: 12px;
  border: none;
  width: calc(100% - 150px);
}
#reserve-loader .loadingbar .progress {
  height: 100%;
  width: 0;
  background: linear-gradient(to right, #D4D4D4, #427CAC) !important;
  animation: letsLoad 17s linear forwards;
  animation-iteration-count: 1;
}
#reserve-loader .loadingbar .progress.done {
  animation: none;
}
#reserve-loader .loadingbar .progress2 {
  height: 100%;
  width: 0;
  background: linear-gradient(to right, #D4D4D4, #427CAC) !important;
}
#reserve-loader .loadingbar .percentage {
  position: absolute;
  margin-left: 40px;
  width: 0;
}
@media screen and (max-width: 991px) {
  #reserve-loader .loadingbar {
    width: 80%;
  }
  #reserve-loader #randomMessages {
    font-size: 15px;
  }
}

.deckplanview .nav-link {
  background: #fff;
  text-align: left;
  border: 1px solid #e9e9e9;
  border-bottom-width: 0;
  color: #606060;
  border-radius: 0;
  padding-block: 20px;
  padding-inline: 10px;
  width: 100%;
}
.deckplanview .nav-link:not(.big) {
  padding-block: 15px;
  padding-inline: 10px;
}
.deckplanview .nav-link.active {
  background: #427cac;
  color: #fff;
}
.deckplanview .nav-link:last-child {
  border-bottom-left-radius: 5px;
  border-bottom-right-radius: 5px;
  border-bottom: 1px solid #e9e9e9;
}
.deckplanview .nav-link#deck-list-button {
  border-radius: 0;
}
.deckplanview .tab-content p {
  margin-top: 0;
}
.deckplanview .deck-title {
  font-weight: bold;
  font-size: 16px;
}
.deckplanview .deckview {
  width: 100%;
  overflow-x: scroll;
}
.deckplanview .deckview .imgdiv {
  height: 400px;
}
.deckplanview .deckview .imgdiv img {
  height: 100%;
}

.deck-list {
  position: absolute;
  top: calc(100% - 10px);
  left: 10px;
  z-index: 100;
  right: 10px;
  box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
}

.activity-view .card {
  cursor: pointer;
}
.activity-view .card.active {
  background: #427cac;
}
.activity-view .card.active * {
  color: #fff;
}
.activity-view .card:hover {
  border-color: #427cac;
}

.highlights_sec .container-fluid {
  max-width: 1600px;
}
.highlights_sec .container-fluid .more_btn {
  margin-top: 30px;
  font-weight: normal;
}

@media screen and (max-width: 991px) {
  .highlights_sec .droom_boxFull, .highlights_sec .flexfull {
    height: initial;
  }
}
.aanvull_innnr .aanvull_box:nth-child(even) {
  background: #f8f8f8;
}

.mapscard {
  background: url("/dev/assets/images/paaseiland.png");
  height: 100px;
  background-size: cover;
}
.mapscard .card-body {
  display: flex;
  flex-flow: column;
  justify-content: center;
}

.accordion-button:not(.collapsed) {
  background: #fff;
  color: rgb(33, 37, 41);
}

#accKamertypes .card:not(:last-child) {
  border-bottom: 0;
  border-radius: 0;
}
#accKamertypes .card:last-child {
  border-radius: 0 0 0.25rem 0.25rem;
}
#accKamertypes .card:first-child {
  border-radius: 0.25rem 0.25rem 0 0;
}

.no-top-border {
  border-top: none !important;
}

@media screen and (max-width: 1199px) {
  .stickynav .floatingmenu li {
    padding: 15px 10px;
    font-size: 12px;
  }
  #sidebar .details_top {
    padding-left: 0 !important;
    border-lefT: none !important;
  }
  .floatingpriceoverview {
    box-shadow: 0 0 16px 2px #d8d5d3;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 12000;
    padding-inline: 0;
  }
  .floatingpriceoverview .card {
    border-radius: 0;
    background: rgb(252, 252, 252) !important;
  }
  .floatingpriceoverview .card .price {
    font-size: 10px;
  }
  .floatingpriceoverview .card .price span {
    font-size: 16px;
  }
  .floatingpriceoverview .card .btn-small {
    font-size: 12px;
  }
  .floatingpriceoverview .row {
    margin: auto;
  }
  .floatingpriceoverview div[class^=col-]:not(:first-child) {
    border-top: 2px dotted #dfdfdf;
  }
  .floatingpriceoverview .detailedprice {
    top: 0;
    left: 0;
    right: 0;
    overflow-y: auto;
    bottom: 0;
    margin-bottom: 90px;
    background: #fff;
    display: block !important;
    padding-inline: 15px !important;
    line-height: 22px;
    padding: 2.75rem;
  }
  .floatingpriceoverview .col-12 {
    z-index: 10;
  }
  .blockToBottom {
    position: absolute;
    bottom: -1px;
    left: 0;
    padding: 16px 16px 17px 16px !important;
  }
  .mobile_100vh {
    height: 100vh;
    overflow-y: auto;
  }
  #priceblock {
    overflow: auto;
    overscroll-behavior: contain;
  }
  .aanvull_sec.hoi-bg {
    background: none;
  }
  .scrollrowmobile {
    display: flex;
    flex-flow: row;
    overflow-x: auto;
  }
  .deckplanarea {
    margin-bottom: 10px;
  }
}
@media screen and (max-width: 991px) {
  .mobile-nowrap {
    display: inline-block;
    width: 100%;
  }
  .scrollrowmobile .hotelroom {
    width: 90%;
    max-width: 500px;
    min-width: 300px;
    margin-right: 20px;
    margin-top: 10px !important;
    margin-bottom: 15px !important;
  }
  .scrollrowmobile .hotelroom label {
    margin-left: 0 !important;
  }
  .scrollrowmobile .hotelroom:last-child {
    margin-right: 0;
  }
  .scrollrowmobile .hotelroom:last-child:first-child {
    min-width: 100%;
  }
  .scrollrowmobile .shipcabin {
    width: 100% !important;
    min-width: 100%;
    margin: 0 !important;
  }
  .steps input[type=radio] {
    left: calc(50% - 6px);
    bottom: 20px;
    top: initial;
  }
  .steps .stepbody:not(.radio-under) input[type=radio] + label {
    padding-bottom: 40px !important;
    padding-inline: 10px;
  }
  .arrowbox {
    display: flex;
    flex-flow: row;
    justify-content: space-between;
    font-size: 12px;
  }
  .arrowbox .arrow-before, .arrowbox .arrow-after {
    cursor: pointer;
    display: flex;
    flex-flow: column;
    width: 100%;
    flex-flow: row;
    justify-content: end;
  }
  .arrowbox .arrow-before.arrow-before, .arrowbox .arrow-after.arrow-before {
    justify-content: start;
  }
  .arrowbox .arrow-before .fa, .arrowbox .arrow-after .fa {
    margin-inline: 10px;
  }
  .toggle-mobile {
    padding: 30px 0;
    text-align: left !important;
    position: relative;
  }
  .toggle-mobile h2 {
    text-align: left !important;
  }
  .toggle-mobile:after {
    position: absolute;
    right: 10px;
    font-family: "Material Icons";
    font-weight: 900;
    content: "\e313";
    top: 30px;
    font-size: 14px;
  }
  .toggle-mobile.arrow-up:after {
    content: "\e316";
  }
  .hide-on-mobile {
    display: none;
  }
  .owl-carousel.hide-on-mobile {
    display: none;
  }
  #checkit-1, #checkit-2 {
    display: none !important;
  }
  .priceblock div[class^=col-]:last-child {
    padding-top: 0;
    border-top: none;
  }
  .priceblock.after {
    padding-inline: 0 !important;
  }
  .mobile-aanvull_sec {
    width: 100%;
    padding: 0;
    border-top: 1px solid #e9e9e9;
    background: #fff;
  }
  .aanvull_sec {
    padding: 0;
  }
}
@media screen and (max-width: 576px) {
  .goodpricebar .iconbox {
    display: none;
  }
  .goodpricebar .col-10 {
    width: 100%;
    padding-inline: 10px;
  }
  .detailedprice {
    bottom: 230px;
  }
  .selectFirstDate, .selectFirstCabin {
    position: unset;
    margin-top: 5px;
  }
}
.owl-carousel3.zoomed {
  position: fixed;
  top: 0;
  z-index: 12002;
  left: 0;
  right: 0;
  bottom: 0;
  display: flex !important;
  flex-flow: column;
  justify-content: center;
  background: rgba(0, 0, 0, 0.4);
}
.owl-carousel3.zoomed .droom_boxFull {
  aspect-ratio: 3/2;
}
.owl-carousel3.zoomed:after {
  font-family: "Material Icons";
  font-weight: 900;
  pointer-events: none;
  content: "\e5cd";
  position: absolute;
  right: 5px;
  top: 5px;
  background: none;
  color: #fff;
  font-size: 18px;
}

.resizeonclick .owl-stage-outer {
  height: 100%;
  display: flex;
  flex-flow: column;
  justify-content: center;
}

.modal {
  z-index: 12050;
}

.modal-backdrop {
  z-index: 12001;
}

/*# sourceMappingURL=product.css.map */
