/**
Theme Name: Shuttle Port of Miami Theme
Author: Oncemillon LLC
Author URI: http://wpastra.com/about/
Description: Astra is the fastest, fully customizable & beautiful theme suitable for blogs, personal portfolios and business websites. It is very lightweight (less than 50KB on frontend) and offers unparalleled speed. Built with SEO in mind, Astra comes with schema.org code integrated so search engines will love your site. Astra offers plenty of sidebar options and widget areas giving you a full control for customizations. Furthermore, we have included special features and templates so feel free to choose any of your favorite page builder plugin to create pages flexibly. Some of the other features: # WooCommerce Ready # Responsive # Compatible with major plugins # Translation Ready # Extendible with premium addons # Regularly updated # Designed, Developed, Maintained & Supported by Brainstorm Force. Looking for a perfect base theme? Look no further. Astra is fast, fully customizable and beautiful theme!
Version: 1.0.0
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: shuttle-port-of-miami-theme
Template: astra
*/

/* Botón azul estilo Montserrat centrado con bordes redondeados */
.blue-button {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    background-color: #2D4995;
    color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    font-size: 16px;
    padding: 0 16px;
    height: 60px;
    border: none;
    border-radius: 5px;
    cursor: pointer;
    box-sizing: border-box;
    transition: background-color 0.3s ease;
    list-style: none;
    text-transform: uppercase;
}
.blue-button:hover { background-color: #1f346a; }
.blue-button::-webkit-details-marker, .blue-button::marker { display: none; }
details { width: 100%; }

/* Woocommerce booking custom styles */
.wc-bookings-date-picker .ui-datepicker td.bookable-range .ui-state-default,
.wc-bookings-date-picker .ui-datepicker-header { background-color:#3892CB !important; }
.wc-bookings-date-picker .ui-datepicker td.bookable a{ background-color:#2d4995 !important; }
.wc-bookings-booking-form .block-picker li a.selected{ background-color:#3892CB !important; }
.wc-bookings-booking-form .block-picker li:nth-child(odd) a:hover,
.wc-bookings-booking-form .block-picker li:nth-child(even) a:hover{ background-color:#2d4995 !important; }
.product_title.entry-title{ display:none; }

/* Banner de producto: bordes inferiores redondeados */
.ast-single-entry-banner[data-post-type="product"][data-banner-background-type="featured"] {
    border-bottom-left-radius: 30px;
    border-bottom-right-radius: 30px;
    overflow: hidden;
}

/* === WooCommerce Add-ons: Datepicker === */
#ui-datepicker-div,
.ui-datepicker {
  position: absolute;
  z-index: 99999 !important;
  background: #fff !important;
  border: 1px solid #dbe2f0 !important;
  border-radius: 8px;
  box-shadow: 0 12px 24px rgba(0,0,0,.12);
  overflow: hidden !important;
  height: auto !important;
  min-width: 300px;
  max-width: 100%;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Montserrat', sans-serif;
}
.ui-datepicker .ui-datepicker-header {
  background: #2D4995;
  color: #fff;
  border: 0;
  padding: 12px 16px;
  line-height: 1.2;
  border-top-left-radius: 8px;
  border-top-right-radius: 8px;
}
.ui-datepicker .ui-datepicker-title {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  font-weight: 700;
}
.ui-datepicker .ui-datepicker-title select {
  min-width: 100px;
  padding: 6px 12px;
  font-size: 14px;
  font-weight: 700;
  border-radius: 6px;
  border: 1px solid rgba(255,255,255,.35);
  background: rgba(255,255,255,.12);
  color: #fff;
  text-align-last: center;
}
.ui-datepicker .ui-datepicker-title select option {
  color: #1f2937;
  background: #fff;
}
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-next {
  top: 50%;
  transform: translateY(-50%);
  width: 28px; height: 28px;
  cursor: pointer;
}
.ui-datepicker .ui-datepicker-prev span,
.ui-datepicker .ui-datepicker-next span { display: none; }
.ui-datepicker .ui-datepicker-prev::before,
.ui-datepicker .ui-datepicker-next::before {
  content:""; display:block; width:0; height:0; border-style:solid; margin:0 auto;
}
.ui-datepicker .ui-datepicker-prev::before { border-width:6px 8px 6px 0; border-color:transparent #fff transparent transparent; }
.ui-datepicker .ui-datepicker-next::before { border-width:6px 0 6px 8px; border-color:transparent transparent transparent #fff; }
.ui-datepicker table { width: 100%; table-layout: fixed; border-collapse: collapse; margin: 10px 12px 12px; font-size: 13px; }
.ui-datepicker th { padding: 6px 0; font-weight: 700; color: #2D4995; text-align: center; font-size: 12px; }
.ui-datepicker td { padding: 0; }
.ui-datepicker td a, .ui-datepicker td span {
  display: block;
  width: 100%;
  padding: 8px 0;
  text-align: center;
  text-decoration: none;
  color: #1f2937;
  background: transparent;
  border: 0;
  font-size: 14px !important;
}
.ui-datepicker td a:hover { background: #eef2ff; }
.ui-datepicker .ui-state-active,
.ui-datepicker .ui-state-highlight {
  background: #2D4995 !important;
  color: #fff !important;
  border-radius: 4px;
}

/* Aviso fijo arriba del selector de shuttle */
.shuttle-warning{
  background: #F2FDFF;
  color: #000;
  padding: 12px 14px;
  margin: 0 0 12px 0;
  font: 700 15px/1.4 'Montserrat', sans-serif;
  text-align: center;
  border-radius: 6px;
  border: 1px solid #2D4995;
}

/* ========================
   FacetWP – versión DESKTOP
   ======================== */
.boton_selector{ height: 80px !important; }
.facetwp-dropdown{
    height: 80px;
    width: 100%;
    border: 2px solid #2D4995 !important;
    color: #2D4995 !important;
    background-color: #fff;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-align: center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 12px 16px;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M0 0l5 6 5-6H0z' fill='%232D4995'/%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: calc(50% + 5ch) center;
    background-size: 10px 6px;
    cursor: pointer;
}
.facetwp-dropdown option{ text-align: center; }
.boton_selector, .facetwp-reset{
    display: block;
    width: 100%;
    font-family: 'Montserrat', sans-serif;
    font-weight: 700;
    text-align: center;
    background-color: #002B5C;
    color: #fff;
    padding: 14px 0;
    border: none;
    border-radius: 4px;
    cursor: pointer;
    font-size: 16px;
    text-transform: uppercase;
    transition: background-color 0.3s ease;
}

/* === Tarjetas del listado de shuttles === */
.facetwp-template .facet_shop_container{
  display: flex;
  flex-direction: column;
  gap: 12px;
  text-align: center;
  padding: 8px 6px;
}
.facetwp-template .facet_shop_image img{
  display: block;
  width: 100%;
  border-radius: 20px;
}
.facet_shop_title a {
    font-family: 'Montserrat', sans-serif !important;
    font-size: 18px !important;
    line-height:1.2;
    font-weight: 700 !important;
    color: #2D4995 !important;
    text-decoration: underline !important;
    display: inline-block;
    text-align: center;
    margin-top: 12px;
}
.facetwp-template .facet_shop_title a:hover{ color: #223a76; }
.facetwp-template .facet_shop_button a{
  display: inline-block;
  background-color: #2D4995;
  color: #fff;
  font-weight: 700;
  text-decoration: none;
  padding: 10px 18px;
  border-radius: 12px;
  transition: background-color .2s ease, transform .1s ease;
}
.facetwp-template .facet_shop_button a:hover{ background-color: #223a76; }
.facetwp-template .facet_shop_button a:active{ transform: translateY(1px); }
.facetwp-template .facet_shop_container{ margin-bottom: 18px; }

/* === Tarjetas del archivos de tags Cruceros === */
.term-description img{
    border-bottom-left-radius:30px;
    border-bottom-right-radius:30px;
}

/* ========================
   FacetWP – versión MÓVIL
   ======================== */
@media (max-width: 768px) {
  .ast-header-break-point #masthead .ast-mobile-header-wrap .ast-primary-header-bar {
    position: fixed;
    top: 0; left: 0; right: 0;
    z-index: 9999;
    background-color: #fff;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
  }
  body { padding-top: 70px; }
  .home .wp-block-columns .wp-block-column:not(:last-child){ margin-bottom:0px !important; }

  /* Selects */
  .home-filters-mobile .facetwp-facet{ margin: 5px 0 !important; }
  .home-filters-mobile .facetwp-dropdown{ font-size: 14px !important; height: 60px; }
  .home-filters-mobile .boton_selector{ height: 60px !important; font-size: 14px; }

  /* === GRID DE PRODUCTOS EN MÓVIL (2 columnas) === */
  .facetwp-template .fwpl-layout.grid,
  .fwp-template .fwpl-layout.grid {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 16px !important;
  }
  .fwpl-layout.grid .fwpl-result,
  .facetwp-template .fwpl-result {
    grid-column: auto !important;
    width: auto !important;
    margin: 0 !important;
    box-sizing: border-box;
  }
  .fwp-template .fwpl-row, .facetwp-template .fwpl-row { display: contents !important; }
  .fwp-template .fwpl-col, .facetwp-template .fwpl-col {
    width: auto !important;
    margin: 0 !important;
  }
}

/* También 2 columnas en <=480px */
@media (max-width: 480px) {
  .facetwp-template .fwpl-layout.grid,
  .fwp-template .fwpl-layout.grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}
