/* ===== Tablet View (768px - 1024px) ===== */
@media only screen and (min-width: 768px) and (max-width: 1024px) {

    /* ---- Details ---- */
    .hook-details .details-wrap {flex-direction: column;}
    .hook-details .sidebar {position: static; padding-top: 0; width: 100%;}
    .onscroll .hook-details .sidebar {padding-top: 0;}
    .hook-details .gallery img {width: 32%; height: 140px;}
    .hook-details .capacity-list {grid-template-columns: repeat(2, 1fr);}
    .site-map {max-width: 100%;}

    /* ---- Checkout ---- */
    .hook-checkout .checkout-container {flex-direction: column;}
    .hook-checkout .checkout-right {position: static; width: 100%; min-width: 0;}
    .onscroll .hook-checkout .checkout-right {top: 0;}
    .cc-row {gap: 12px;}

    /* ---- Cart ---- */
    .hook-cart .cart-item {flex-direction: column;}
    .hook-cart .summary {position: static; width: 100%; margin-top: 0;}
    .hook-cart .item-price-breakdown {min-width: 150px;}

    /* ---- Addon ---- */
    .hook-addon .addons-grid {grid-template-columns: repeat(2, 1fr);}
    .hook-addon .cart-summary {flex-direction: column; gap: 15px; align-items: flex-start;}

    /* ---- Map ---- */
    .hook-listing-section .listing-grid .site-map {width: 100%;}
    .hook-listing-section .listing-grid .filters {max-width: 100%; border-right: none; border-bottom: 1px solid #e6e5e5; padding: 30px 0; display: flex; flex-wrap: wrap; gap: 15px;}
    .hook-listing-section .listing-grid .filter-group {flex: 1; min-width: 200px; margin-top: 0;}

    /* ---- Listing Banner ---- */
    .hook-listing-banner {padding: 60px 20px 40px;}
    .hook-listing-banner .heading {font-size: 26px;}
    .hook-listing-banner p {font-size: 16px; margin: 5px 0 15px;}
    .listing-search-wrap {max-width: 100%;}
    .listing-search-bar {flex-wrap: wrap; gap: 0; padding: 12px; margin: 0 0 15px;}
    .listing-search-bar .input-group {flex: 0 0 50%; max-width: 50%; padding: 5px;}
    .listing-search-bar .button-wrap.input-group {flex: 0 0 100%; max-width: 100%; padding: 5px;}
    .listing-search-bar button {font-size: 15px; padding: 10px;}
    .listing-search-bar .input-wrapper input {font-size: 13px;}
    .listing-search-bar .input-group label {font-size: 12px;}

    /* ---- Listing Grid ---- */
    .hook-listing-section .filters {max-width: 100%; border-right: none; border-bottom: 1px solid #e6e5e5; padding: 30px 0; display: flex; flex-wrap: wrap; gap: 15px;}
    .hook-listing-section .filter-header {flex: 0 0 100%;}
    .hook-listing-section .filter-group {flex: 1; min-width: 200px; margin-top: 0;}
    .hook-listing-section .search-filter-view-map {margin-bottom: 0; flex: 0 0 100%;}
    .hook-listing-section .sites {padding: 30px 0;}

    /* Site Cards */
    .hook-listing-section .site-card {min-height: auto;}
    .hook-listing-section .site-image {width: 200px; flex: 0 0 200px;}
    .hook-listing-section .site-price {min-width: 130px;}
    .hook-listing-section .new-price {font-size: 22px;}
    .hook-listing-section .total-price {font-size: 22px;}
    .hook-listing-section .price-wrap {justify-content: flex-end; flex-wrap: wrap;}

    /* Promoted Filters */
    .hook-listing-section .search-results-promoted-filters-content {flex-wrap: wrap;}
    .hook-listing-section .search-results-promoted-filters-item {width: 33.333%;}

    /* Equipment Filter */
    .upper_filter.equipment_lenght_filter {flex-wrap: wrap; gap: 15px;}
    .equipment_lenght_filter select#rvFilterTypes {width: 180px;}
    .equipment_lenght_filter input#rvFilterLength {width: 100px;}
}

/* ===== Mobile View (max-width: 767px) ===== */
@media only screen and (max-width: 767px) {
    /* Login */
    .page-select-date .date-inputs {flex-direction: column;}
    .hook-login .row {flex-direction: column-reverse;}
    .hook-login .row .col-sm-6{flex: 0 0 100%;max-width: 100%;}
    .page-login .form-section {margin: 0 15px;}
    .section.hook-login .et_pb_row_0.et_pb_row{margin-right: 0px !important;}
    .skip-btn {margin: 0 30px 0 0;}

    /* ---- Details ---- */
    .hook-details {padding: 50px 0;}
    .hook-details .details-wrap {flex-direction: column;}
    .hook-details .heading {font-size: 24px;}
    .hook-details .subheading {font-size: 18px;}
    .hook-details .sidebar {position: static; padding-top: 0; width: 100%;}
    .onscroll .hook-details .sidebar {padding-top: 0;}
    .hook-details .gallery {flex-wrap: wrap;}
    .hook-details .gallery img {width: 48%; height: 120px;}
    .hook-details .capacity-list {grid-template-columns: 1fr;}
    .hook-details .details-loaction-site-details-item {flex-direction: column; gap: 15px;}
    .hook-details .details-loaction-site-details-item .site-number {text-align: left; width: 100%;}
    .hook-details .details-loaction-site-details-item .site-number button {width: 100%;}
    .hook-details .maxlength-list-wrap {flex-direction: column; gap: 5px;}
    .hook-details .details-loaction-site-title-wrap {flex-wrap: wrap;}
    .site-map {max-width: 100%;}
    #sync1 .item img {height: 250px;}
    #sync2 .item img {height: 60px;}

    /* ---- Checkout ---- */
    .hook-checkout {padding: 30px 0;}
    .hook-checkout .heading {font-size: 24px;}
    .hook-checkout .checkout-container {flex-direction: column;}
    .hook-checkout .checkout-right {position: static; width: 100%; min-width: 0;}
    .onscroll .hook-checkout .checkout-right {top: 0;}
    .hook-checkout .checkout-grid-box {padding: 18px;}
    .cc-row {flex-direction: column; gap: 0;}
    .hook-checkout .order-summary li {flex-direction: column; gap: 3px;}
    .hook-checkout .order-summary li span:last-child {font-weight: 700;}

    /* ---- Cart ---- */
    .hook-cart {padding: 30px 0;}
    .hook-cart .heading {font-size: 24px;}
    .hook-cart .cart-item {flex-direction: column;}
    .hook-cart .cart-box {padding: 16px;}
    .hook-cart .summary {position: static; width: 100%; min-width: 0; margin-top: 0;}
    .hook-cart .item-info {flex-direction: column;}
    .hook-cart .item-text-wrap {flex-direction: column;}
    .hook-cart .item-info img {width: 100%; height: 180px; border-radius: 8px;}
    .hook-cart .item-price-breakdown {min-width: 0; width: 100%; text-align: left;}
    .hook-cart .item-price-breakdown .item-price-row {justify-content: space-between;}
    .hook-cart .group-booking {flex-direction: column; gap: 12px; align-items: flex-start;}

    /* ---- Addon ---- */
    .hook-addon {padding: 50px 0;}
    .hook-addon .heading {font-size: 24px;}
    .hook-addon .addons-grid {grid-template-columns: 1fr;}
    .hook-addon .cart-summary {flex-direction: column; gap: 15px; align-items: flex-start;}
    .hook-addon .subheading {height: auto; margin-bottom: 10px;}

    /* ---- Map ---- */
    .hook-listing-section .listing-grid .site-map {width: 100%;}
    .hook-listing-section .listing-grid .filters {max-width: 100%; border-right: none; border-bottom: 1px solid #e6e5e5; padding: 20px 0;}
    .hook-listing-section .listing-grid .filter-group {margin-top: 0;}
    .hook-listing-section .listing-grid {flex-direction: column; gap: 0;}

    /* ---- Listing Banner ---- */
    .hook-listing-banner {padding: 50px 15px 30px;}
    .hook-listing-banner .heading {font-size: 22px;}
    .hook-listing-banner p {font-size: 14px; margin: 5px 0 15px;}
    .listing-search-bar {flex-direction: column; padding: 12px; margin: 0 0 15px;}
    .listing-search-bar .input-group {flex: 0 0 100%; max-width: 100%; padding: 4px 0; margin-bottom: 0;}
    .listing-search-bar .button-wrap.input-group {padding: 4px 0;}
    .listing-search-bar button {font-size: 15px; padding: 10px;}
    .listing-search-bar .input-wrapper input {font-size: 13px;}
    .listing-search-bar .input-group label {font-size: 12px;}
    .guest-display {font-size: 13px;}

    /* ---- Listing Grid ---- */
    .hook-listing-section .listing-grid {flex-direction: column;}
    .hook-listing-section .filters {max-width: 100%; border-right: none; border-bottom: 1px solid #e6e5e5; padding: 20px 0;}
    .hook-listing-section .search-filter-view-map {height: 140px; margin-bottom: 20px;}
    .hook-listing-section .sites {padding: 20px 0;}

    /* Site Cards */
    .hook-listing-section .site-card {flex-direction: column; padding: 15px;}
    .hook-listing-section .site-image {margin: -15px -15px 10px -15px; width: calc(100% + 30px); flex: none; height: 200px;}
    .hook-listing-section .site-image img {border-radius: 8px 8px 0 0; position: relative; height: 200px;}
    .hook-listing-section .site-details {padding: 0;}
    .hook-listing-section .site-price {text-align: left; min-width: 100%; padding: 10px 0 0; flex: 1;}
    .hook-listing-section .price-wrap {width: 50%; float: left; min-height: 74px; justify-content: flex-start;}
    .hook-listing-section .new-price {font-size: 22px;}
    .hook-listing-section .total-price {font-size: 22px;}
    .hook-listing-section .free-cancel {clear: both; padding-top: 5px;}

    /* Promoted Filters */
    .hook-listing-section .search-results-promoted-filters-content {flex-wrap: wrap;}
    .hook-listing-section .search-results-promoted-filters-item {width: 50%;}

    /* Equipment Filter */
    .upper_filter.equipment_lenght_filter {flex-wrap: wrap; gap: 10px; margin-top: 25px;}
    .equipment_lenght_filter select#rvFilterTypes, .equipment_lenght_filter input#rvFilterLength {width: 140px;}
    .equipment_lenght_filter_item_btn button {padding: 0 5px; min-width: unset;}
}