/* Responsive fixes for Kitawa public pages */

html,
body {
  max-width: 100%;
  overflow-x: hidden;
}

img,
video {
  max-width: 100%;
  height: auto;
}

.main {
  overflow-x: hidden;
}

@media (max-width: 991.98px) {
  .navbar .navbar-brand img {
    height: 40px !important;
  }

  .calendario_button {
    padding: 12px 16px;
    font-size: 14px;
    line-height: 1.2;
  }

  .footer iframe {
    height: 280px !important;
  }

  .img_form {
    height: 420px !important;
  }

  #luxury-exclusive .col-6 {
    flex: 0 0 100%;
    max-width: 100%;
  }

  #luxury-exclusive .img_le {
    height: 240px !important;
  }

  #luxury-exclusive .h1le {
    font-size: 2rem !important;
  }

  #luxury-exclusive .product-item .product-overlay,
  #luxury-exclusive .product-exclusive .product-exclusive_overlay {
    opacity: 1 !important;
    padding: 14px 12px !important;
    align-items: center !important;
    justify-content: center !important;
    background: linear-gradient(180deg, rgba(25, 25, 25, 0.36) 0%, rgba(25, 25, 25, 0.62) 100%) !important;
  }

  #luxury-exclusive .product-item .product-overlay p,
  #luxury-exclusive .product-exclusive .product-exclusive_overlay p {
    font-size: 0.95rem !important;
    padding: 0 !important;
    line-height: 1.35;
  }

  #luxury-exclusive .product-item .product-overlay a.btn,
  #luxury-exclusive .product-exclusive .product-exclusive_overlay a.btn {
    margin-top: 8px;
    font-size: 0.95rem;
    padding: 6px 14px;
  }

  #paseo_en_globo .display-2 {
    font-size: 2rem !important;
  }

  #paseo_en_globo .display-6 {
    font-size: 1.1rem !important;
    padding: 1rem !important;
  }

  #paseo_en_globo .product-video_overlay {
    padding-top: 0 !important;
    background: rgba(132, 67, 24, 0.55) !important;
  }

  #paseo_en_globo .product-video_overlay br {
    display: none;
  }

  .clientes {
    padding-top: 140px !important;
  }

  .bg_feed_insta .display-2,
  .clientes .display-2 {
    font-size: 2rem !important;
    line-height: 1.2;
  }

  .logo_portada {
    height: 72px !important;
  }

  .font_btn_send {
    font-size: 20px;
    padding: 2px 18px;
  }

  .fullscreen-wrapper .bg-video-wrapper {
    height: auto !important;
    min-height: 640px;
    padding: 0 !important;
  }

  .fullscreen-wrapper .bg-video-wrapper > .position-relative.container {
    padding-top: 36px;
    padding-bottom: 24px;
  }

  .fullscreen-wrapper .bg-video-wrapper video {
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    transform: none !important;
    object-fit: cover !important;
    object-position: center center !important;
  }

  .fullscreen-wrapper .custom-carousel-arrow {
    top: 52% !important;
    bottom: auto;
    width: 38px;
    height: 38px;
  }

  .fullscreen-wrapper #itinerarios h2 {
    font-size: 1.6rem !important;
    letter-spacing: 0.12em !important;
    margin-bottom: 1.5rem !important;
  }

  .fullscreen-wrapper .trip-image-wrapper-main {
    height: 260px !important;
  }

  .fullscreen-wrapper .trip-title-overlay-main {
    font-size: 1.5rem !important;
  }

  .fullscreen-wrapper .trip-info-main,
  .fullscreen-wrapper .trip-info-side {
    padding: 14px 12px 18px !important;
  }

  .fullscreen-wrapper .viajes-wrapper {
    height: auto !important;
    min-height: auto !important;
    padding: 1.5rem 0 !important;
  }

  .fullscreen-wrapper .viajes-wrapper h3,
  .fullscreen-wrapper .viajes-wrapper a {
    font-size: 1.7rem !important;
  }

  .fullscreen-wrapper .viajes-wrapper p {
    font-size: 1rem !important;
  }

  .copyright .picaporte-logo {
    height: 16px !important;
    width: auto;
    vertical-align: middle;
    margin-left: 4px;
  }

  .back-to-top {
    right: 14px !important;
    bottom: 14px !important;
  }
}

@media (max-width: 767.98px) {
  .fullscreen-wrapper .bg-video-wrapper {
    min-height: 600px;
  }

  .fullscreen-wrapper .bg-video-wrapper > .position-relative.container {
    padding-top: 28px;
    padding-bottom: 20px;
  }

  .fullscreen-wrapper .bg-video-wrapper video {
    transform: scale(1.16) !important;
    transform-origin: center center;
  }

  .box-cover-image {
    height: 70vh !important;
    min-height: 420px;
  }

  .banner-homepage7 .box-cover-image {
    height: 70vh !important;
  }

  .box-banner-info .text-68 {
    font-size: 2rem !important;
    line-height: 1.25 !important;
  }

  .box-gallery-instagram-type-5 {
    flex-direction: column;
    margin-top: 20px;
  }

  .gallery-1,
  .gallery-2 {
    width: 100% !important;
    padding: 0;
  }

  .gallery-1 {
    margin-bottom: 10px;
  }

  .gallery-2 a {
    width: 49% !important;
    margin-left: 0 !important;
    margin-right: 1%;
    margin-bottom: 1%;
  }

  .gallery-2 a:nth-child(2n) {
    margin-right: 0;
  }

  .gallery-1 img,
  .gallery-2 img {
    height: 220px;
    object-fit: cover;
  }

  .header .main-header {
    padding: 12px 0 !important;
  }

  .header .main-header .header-logo {
    min-width: 120px !important;
  }

  .mobile-header-wrapper-style {
    max-width: 100%;
  }

  .mobile-header-wrapper-style .mobile-header-wrapper-inner .mobile-header-content-area .mobile-menu-wrap nav .mobile-menu li {
    padding: 8px 0 14px;
  }

  .mobile-header-wrapper-style .mobile-header-wrapper-inner .mobile-header-content-area .mobile-menu-wrap nav .mobile-menu li.justify-content-start {
    align-items: center;
    justify-content: flex-start;
    gap: 8px;
    flex-wrap: wrap;
  }

  .mobile-header-wrapper-style .mobile-header-wrapper-inner .mobile-header-content-area .mobile-menu-wrap nav .mobile-menu li.justify-content-start h4 {
    width: 100%;
    margin: 0 0 8px;
  }

  #safarisCarousel .carousel-control-prev {
    left: 8px;
  }

  #safarisCarousel .carousel-control-next {
    right: 8px;
  }

  #safarisCarousel .custom-carousel-arrow span.arrow-icon {
    width: 36px;
    height: 36px;
    font-size: 22px;
    background: rgba(0, 0, 0, 0.56);
    border-color: rgba(255, 255, 255, 0.7);
  }

  #safarisCarousel .carousel-item .row {
    padding: 0 6px;
  }

  .box-list-products-shop-2 {
    margin-top: 20px;
  }

  .box-list-products-shop-2 .product-item {
    padding: 0 0 12px !important;
  }

  .cardProductStyle3 .cardInfo,
  .cardProduct .cardInfo {
    padding: 16px 12px !important;
  }

  .block-banner-shop {
    padding: 86px 0 42px !important;
  }

  .block-banner-shop .text-56-medium {
    font-size: 2rem;
    line-height: 1.15;
  }

  .nav-tab-product {
    justify-content: flex-start !important;
    flex-wrap: wrap !important;
    row-gap: 6px;
    overflow-x: visible;
  }

  .nav-tab-product .nav-item {
    padding: 0 10px 0 0 !important;
  }

  .box-product-info {
    padding-left: 0 !important;
    margin-top: 24px;
  }

  .box-product-info h1 {
    font-size: 1.75rem;
    line-height: 1.2;
  }

  .block-product-single .row .col-auto {
    padding-right: 8px;
    padding-left: 8px;
    margin-bottom: 8px;
  }

  .tour_detail_right_sidebar .row.justify-content-between {
    row-gap: 10px;
  }

  .tour_detail_right_sidebar .row.justify-content-between > .col-auto {
    flex: 0 0 calc(50% - 6px);
    max-width: calc(50% - 6px);
  }

  .tour_detail_right_sidebar .text-light {
    display: inline-flex;
    margin-right: 6px !important;
    margin-bottom: 6px !important;
  }

  .box-detail-product .tab-content {
    max-width: 100% !important;
  }

  .box-detail-product .tab-content table,
  .ranking.data-table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    white-space: nowrap;
  }

  .ranking.data-table td:first-child {
    white-space: normal;
  }

  #contacto .modal-footer {
    flex-direction: column;
    gap: 8px;
  }

  #contacto .modal-footer a {
    font-size: 14px;
    word-break: break-word;
  }

  .copyright .picaporte-logo {
    height: 13px !important;
  }
}

@media (max-width: 575.98px) {
  .gallery-2 a {
    width: 100% !important;
    margin-right: 0 !important;
  }

  .gallery-1 img,
  .gallery-2 img {
    height: 200px;
  }

  .trip-card-main .price,
  .trip-card-side .price {
    font-size: 0.95rem;
  }
}
