/****************************************
  MEDIA QUERIES
****************************************/
/****************************************
  GENERAL
****************************************/
.list-text-color {
  color: #939393; }

.dot {
  height: 10px;
  width: 10px;
  background-color: #21366C;
  border-radius: 50%;
  display: inline-block;
  margin-right: 10px; }

.img-not-found {
  font-size: 6rem; }

.div-img-not-found {
  height: 220px; }

.prices_color {
  color: #343434 !important; }

.boat-pricerow {
  font-size: 30px; }

.card-box {
  box-shadow: #000;
  height: 300px; }

.link-boat {
  color: #FFFFFF; }
  .link-boat:hover {
    color: #FFFFFF; }

.link.boat-row {
  color: #366CDA; }
  .link.boat-row:hover {
    color: #366CDA; }

.card-overlay {
  opacity: 0;
  background-color: #21366C;
  font-family: 'Roboto', sans-serif;
  top: 0;
  left: 0;
  overflow: hidden; }
  .card-overlay:hover {
    opacity: 1; }

.gradient_overlay {
  background-image: linear-gradient(to bottom, #21366C 75%, transparent); }

.text_overlay {
  font-size: 16px; }

.boat-card {
  min-height: 400px !important; }

/****************************************
  LIST HEADER
****************************************/
.item-counter {
  font-weight: bold;
  font-size: .6rem;
  font-family: 'Open Sans', sans-serif;
  color: #0F1830; }

#item-counter {
  color: #366CDA;
  font-size: 18px;
  padding: 8px;
  text-transform: uppercase; }
  #item-counter.reduced-counter {
    font-size: .7rem;
    margin: 0; }

.list-title {
  color: #21366C;
  font-weight: 700;
  margin: 0;
  text-transform: uppercase; }
  .list-title.filter-list-title {
    font-size: calc(1.2rem + 0.5rem); }

.item-title-landscape {
  color: #366CDA;
  font-weight: bolder;
  font-size: 3.2rem; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px) {
    .item-title-landscape {
      font-size: 2rem; } }
.item-abstract-landscape {
  color: #FFFFFF !important;
  font-size: 1.6rem !important;
  padding-right: 4rem; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px) {
    .item-abstract-landscape {
      font-size: 1rem !important;
      padding-right: 1rem; } }
.item-description-landscape {
  color: #FFFFFF !important; }

/****************************************
  BUTTONS & SELECTS
****************************************/
.btn-list,
.select-list-order-container {
  display: inline-block;
  font-size: .7rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: bold;
  text-transform: uppercase;
  color: #FFFFFF;
  text-align: center;
  vertical-align: middle;
  user-select: none;
  background-color: #21366C;
  border: 1px solid transparent;
  padding: 0.475rem 0;
  line-height: 1.5;
  min-width: 180px;
  border-radius: .25rem;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  margin: 0rem .25rem 1rem .25rem;
  cursor: pointer; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px) {
    .btn-list,
    .select-list-order-container {
      padding: 0.475rem 1rem;
      min-width: unset;
      margin: 0rem 0.05rem 1rem 0.05rem; } }
.btn-list:not(:disabled):hover, .btn-list:not(:disabled):focus {
  background-color: #366CDA;
  color: #FFFFFF;
  text-decoration-line: none;
  border: solid 1px #fff; }

.btn-list.btn-reload {
  color: #21366C;
  background: white;
  border: solid 1px #21366C; }

/* Order by */
.select-list-order-container {
  padding: 0.475rem 0 0.475rem 30px;
  background: white;
  border: 1px solid #6E6E6E; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px) {
    .select-list-order-container {
      min-width: 70px; } }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
    .select-list-order-container {
      width: 100%;
      margin: 0;
      margin-bottom: 1rem; } }
.select-list-order {
  text-align-last: center;
  height: unset;
  border: 0;
  color: #0F1830;
  font-size: .7rem;
  font-family: 'Open Sans', sans-serif;
  text-transform: capitalize;
  background: unset;
  padding: 0;
  padding-right: 30px; }
  .select-list-order:focus {
    border-color: #ced4da;
    box-shadow: none; }

.select-list-order-label {
  position: absolute;
  left: 10px;
  top: 0.475rem;
  color: #366CDA;
  font-size: .7rem;
  font-family: 'Open Sans', sans-serif;
  font-weight: bold;
  margin-bottom: 0; }

.custom-arrow-select {
  pointer-events: none;
  color: #21366C;
  position: absolute;
  right: 8px;
  top: 0.575rem; }

@media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
  .mobile-select {
    opacity: 0;
    position: absolute;
    height: 70%; } }

/****************************************
  GRID LAYOUT
****************************************/
.list-buttons {
  margin-top: 15px;
  margin-bottom: 15px; }

.list-grid {
  display: grid;
  grid-template-columns: 100%;
  grid-gap: 30px; }
  @media (min-width: 1200px) {
    .list-grid {
      grid-template-columns: minmax(163px, 233px) 1fr; } }
  @media (min-width: 1600px) {
    .list-grid {
      grid-template-columns: minmax(163px, 353px) 1fr; } }
  .list-grid.filter-collapsed, .list-grid.loading, .list-grid.no-filter {
    grid-template-columns: 100%; }
  .list-grid.loading .items-container-list {
    grid-template-columns: 100%; }
  .list-grid .items-container-list {
    display: grid;
    grid-gap: 30px;
    grid-template-columns: repeat(auto-fill, minmax(330px, 1fr));
    padding: 0; }
    .list-grid .items-container-list .list-pagination {
      grid-column: 1/-1; }

/****************************************
  FLEX LAYOUT
****************************************/
.list-flex .items-container-list {
  display: flex;
  justify-content: start;
  flex-wrap: wrap;
  grid-gap: 80px 30px;
  padding: 0; }
  .list-flex .items-container-list .div-item {
    flex: 0 0 350px;
    max-width: 350px; }
    @media (max-width: 480px) {
      .list-flex .items-container-list .div-item {
        flex: 0 0 100%;
        max-width: 100%; } }
/****************************************
  LIST ELEMENTS
****************************************/
.div-items {
  border: 0;
  background: transparent;
  vertical-align: baseline; }

h4.title {
  color: #000;
  font-size: .9rem;
  font-family: 'Open Sans', sans-serif;
  padding-bottom: 4px;
  margin: 0; }

h4.subtitle,
.boat-info {
  font-size: .6rem;
  font-family: 'Open Sans', sans-serif; }

img.card-img-top {
  width: 100%;
  height: 260px;
  object-fit: cover; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
    img.card-img-top {
      height: 180px; } }
img.card-img-top-landscape {
  height: 600px;
  object-fit: cover; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px) {
    img.card-img-top-landscape {
      height: 300px; } }
img.card-img-top-boat {
  width: 100%;
  height: 275px;
  object-fit: cover; }

.boat-subtitle {
  color: #000;
  font-size: .8rem;
  font-family: 'Open Sans', sans-serif; }

.see-details-boat {
  font-size: .9rem;
  font-family: 'Open Sans', sans-serif;
  background-color: #21366C;
  color: #FFFFFF; }
  .see-details-boat:hover {
    color: #366CDA; }
  .see-details-boat:focus {
    box-shadow: 0 0 0 0.2rem #366CDA; }

/****************************************
  CALENDAR
****************************************/
.btn-item-calendar,
.btn-close-calendar {
  background-color: #366CDA;
  color: #FFFFFF;
  border-radius: 0;
  text-transform: uppercase;
  font-weight: bold;
  height: 100%;
  font-size: .7rem;
  font-family: 'Open Sans', sans-serif;
  opacity: 0.75; }
  .btn-item-calendar.btn-details-calendar,
  .btn-close-calendar.btn-details-calendar {
    opacity: 1;
    font-size: .8rem; }
  .btn-item-calendar:hover, .btn-item-calendar:focus,
  .btn-close-calendar:hover,
  .btn-close-calendar:focus {
    outline: 0;
    box-shadow: unset;
    color: #FFFFFF; }

.calendar-card {
  position: absolute;
  height: 100%;
  background: white;
  width: 100%;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center; }
  .calendar-card .flatpickr-innerContainer {
    pointer-events: none; }

.item-calendar-close {
  display: flex;
  width: 100%;
  text-align: right;
  padding-right: 9px; }
  .item-calendar-close a {
    font-size: 36px;
    font-weight: 500;
    line-height: 1;
    color: #21366C;
    text-shadow: 0 1px 0 #fff;
    cursor: pointer;
    transform: rotate(45deg); }

.item-calendar-header {
  height: auto;
  text-align: center;
  margin-bottom: 15px; }
  .item-calendar-header .item-calendar-title {
    font-size: .8rem;
    font-family: 'Open Sans', sans-serif;
    margin: 0;
    color: #366CDA;
    font-weight: bold; }
  .item-calendar-header .item-calendar-subtitle {
    font-size: .7rem;
    font-family: 'Open Sans', sans-serif;
    margin: 0;
    color: #21366C;
    font-weight: bold; }

.calendar-container {
  display: none; }

.btn-item-calendar-check {
  margin-top: auto;
  background-color: #21366C;
  color: #FFFFFF; }
  .btn-item-calendar-check:hover, .btn-item-calendar-check:focus {
    box-shadow: unset;
    background-color: #366CDA;
    color: #FFFFFF; }

/* Arrows calendar */
#collapse-calendar .arrow-container-calendar {
  width: 30px;
  height: 30px;
  border-radius: 50%;
  border: 2px solid #366CDA;
  opacity: 0.5;
  pointer-events: none; }
  #collapse-calendar .arrow-container-calendar.allowed {
    opacity: 1;
    pointer-events: auto; }

#collapse-calendar .arrow-left {
  position: absolute;
  top: 50%;
  left: 1%;
  z-index: 10; }

#collapse-calendar .arrow-right {
  position: absolute;
  top: 50%;
  right: 1%;
  z-index: 10; }

/* Calendar table */
table.month {
  font-size: 1em;
  margin: 0 auto; }
  table.month td {
    text-align: center;
    padding: 5px;
    height: 45px;
    width: 45px;
    color: #ffffff80; }
  @media (min-width: 992px) and (max-width: 1500px) {
    table.month {
      font-size: .8em;
      margin: 0 auto; }
      table.month td {
        height: 38px;
        width: 38px; } }
/* Calendar resources */
#calendar-resources th {
  text-transform: uppercase;
  text-align: center; }
  #calendar-resources th.month {
    font-size: .9rem;
    padding-bottom: .75rem; }

#calendar-resources .calendar-legend {
  text-align: center;
  font-weight: bold;
  font-size: .5rem;
  color: #FFFFFF;
  margin-top: 2rem; }

#calendar-resources .dot {
  height: 10px;
  width: 10px;
  border-radius: 50%;
  display: inline-block;
  pointer-events: none; }

#calendar-resources .calendar-available {
  color: #FFFFFF;
  background-color: #FFFFFF; }

/* Flatpickr */
.flatpickr-calendar .flatpickr-days {
  width: 100%;
  padding: 0 5px;
  max-width: 310px; }
  .flatpickr-calendar .flatpickr-days .dayContainer {
    width: 100%;
    min-width: 100%;
    max-width: 310px; }

.flatpickr-day {
  height: 34px;
  line-height: 34px; }

/****************************************
  PAGINATION
****************************************/
.items_pagination {
  font-size: 22px;
  color: #C4C4C4 !important; }
  .items_pagination a {
    font-size: 22px;
    color: #C4C4C4 !important; }
    .items_pagination a.active {
      color: #21366C !important;
      font-weight: bold; }
      .items_pagination a.active i {
        color: #696969; }
    .items_pagination a:not([href]):not([tabindex]) {
      pointer-events: none;
      cursor: default; }

.view-option.active {
  color: #21366C !important;
  font-weight: bold; }

.items_pagination_num a {
  margin: 0 10px; }

/****************************************
  MAP VIEW
****************************************/
#map-boats-modal {
  padding: 15px; }
  #map-boats-modal .modal-dialog {
    margin: 0;
    max-width: unset;
    width: 100%;
    height: 100%; }
    @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
      #map-boats-modal .modal-dialog {
        position: fixed;
        top: 0;
        left: 0; } }
  #map-boats-modal .modal-content {
    width: 100%;
    height: 100%;
    background-color: #366CDA; }
  #map-boats-modal .modal-body {
    padding-top: 4rem;
    position: absolute; }
    @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
      #map-boats-modal .modal-body {
        padding: 15px 20px 75px 15px; } }
  #map-boats-modal #map-boats {
    height: 100%;
    width: 100%; }
    @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
      #map-boats-modal #map-boats {
        height: 100%;
        width: 100%;
        position: fixed !important;
        top: 0;
        left: 0; } }
#btn-close-modal-maps {
  height: 33px;
  width: 33px;
  display: flex;
  justify-content: center;
  align-items: center;
  background-color: #FFFFFF;
  border-radius: 50%;
  border: 3px solid #21366C;
  z-index: 10;
  transition: .6s ease; }
  #btn-close-modal-maps .close {
    color: #21366C;
    opacity: 1; }
    #btn-close-modal-maps .close:focus {
      outline: unset; }
  #btn-close-modal-maps:hover {
    background-color: #21366C;
    border-color: #FFFFFF; }
    #btn-close-modal-maps:hover .close {
      color: #FFFFFF;
      opacity: 1; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
    #btn-close-modal-maps {
      top: 0px;
      right: 0px; } }
.total-boats {
  color: #FFFFFF; }

@media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
  #div-show-list-map {
    z-index: 10;
    position: fixed;
    bottom: 25px;
    left: 0;
    width: calc(100% - 50px); } }

/* Map list & map shared styles */
#boat-list-map-container {
  height: 100%;
  color: #FFFFFF; }
  @media (max-width: 480px), (min-width: 481px) and (max-width: 769px), (min-width: 770px) and (max-width: 989px), (min-width: 990px) and (max-width: 1199px) {
    #boat-list-map-container {
      height: 80%; } }
#boat-list-map {
  overflow-x: hidden;
  overflow-y: auto; }

#boat-list-map a,
#map-boats a {
  color: #000; }

#boat-list-map h6.title,
#map-boats h6.title {
  color: #000;
  font-size: .9rem;
  font-family: 'Open Sans', sans-serif;
  padding-bottom: 4px;
  margin: 0; }

#boat-list-map h6.subtitle,
#boat-list-map .boat-info,
#map-boats h6.subtitle,
#map-boats .boat-info {
  font-size: .6rem;
  font-family: 'Open Sans', sans-serif; }

#boat-list-map h6.subtitle,
#map-boats h6.subtitle {
  color: #888; }

#boat-list-map .dot,
#map-boats .dot {
  height: 10px;
  width: 10px;
  background-color: #21366C;
  border-radius: 50%;
  display: inline-block;
  margin-right: 10px; }

#boat-list-map img.card-img-top,
#map-boats img.card-img-top {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
  padding-left: .3rem;
  padding-bottom: .26rem; }

#boat-list-map .col-feature,
#map-boats .col-feature {
  height: 2.75rem;
  width: 2.75rem;
  text-align: center;
  padding: .3rem; }

#boat-list-map .boat-card-info span,
#map-boats .boat-card-info span {
  color: #0F1830;
  font-weight: bold;
  margin-top: .25rem; }

#boat-list-map .boat-subtitle,
#map-boats .boat-subtitle {
  color: #888;
  font-size: .8rem;
  font-family: 'Open Sans', sans-serif; }

#boat-list-map .card-body:hover,
#map-boats .card-body:hover {
  -moz-box-shadow: inset 0 0 10px #21366C;
  -webkit-box-shadow: inset 0 0 10px #21366C;
  box-shadow: inset 0 0 10px #21366C; }

#boat-list-map .see-details-boat,
#map-boats .see-details-boat {
  font-size: .9rem;
  font-family: 'Open Sans', sans-serif;
  background-color: #21366C;
  color: #FFFFFF; }

#boat-list-map .img-not-found,
#map-boats .img-not-found {
  font-size: 6rem; }

#boat-list-map .div-img-not-found,
#map-boats .div-img-not-found {
  height: 220px; }

#boat-list-map .boat-model,
#map-boats .boat-model {
  font-size: .8rem;
  font-family: 'Open Sans', sans-serif;
  margin: 0;
  color: #21366C;
  font-weight: bold;
  text-align: center; }

#boat-list-map .boat-zone,
#map-boats .boat-zone {
  font-size: .6rem;
  font-family: 'Open Sans', sans-serif;
  color: #0F1830;
  text-align: center; }

#boat-list-map .card-bottom .from_text,
#map-boats .card-bottom .from_text {
  font-size: .7rem;
  font-family: 'Open Sans', sans-serif;
  color: #000; }

#boat-list-map .card-bottom hr,
#map-boats .card-bottom hr {
  margin-top: .25rem;
  margin-bottom: .25rem; }

#boat-list-map .card-bottom .price,
#map-boats .card-bottom .price {
  color: #0F1830;
  font-size: .8rem; }

#boat-list-map .card-bottom .price-num,
#map-boats .card-bottom .price-num {
  font-size: .6rem;
  font-family: 'Open Sans', sans-serif; }

#boat-list-map .card-bottom .price-currency,
#map-boats .card-bottom .price-currency {
  font-size: .5rem;
  font-family: 'Open Sans', sans-serif;
  text-transform: uppercase;
  font-weight: bold; }

/****************************************
  SLICK CAROUSEL
****************************************/
.slick-dots {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 1.5rem;
  padding-top: 1rem;
  width: 100%; }
  .slick-dots button {
    display: none; }
    .slick-dots button:focus-within, .slick-dots button:focus, .slick-dots button:focus-visible {
      border: none; }

li[role="presentation"] {
  cursor: pointer !important; }
  li[role="presentation"]::marker {
    color: #a1a1a1; }
  li.slick-active[role="presentation"]::marker {
    color: #21366C !important; }
