@media (max-width: 600px) {
    .business-grid {
        grid-template-columns: 1fr;
    }
}
/* =====================================================
   MOBILE
===================================================== */
@media (max-width: 768px) {
    .navbar {
        display: none;
        flex-direction: column;
        background: #003366;
        position: absolute;
        top: 60px;
        left: 0;
        width: 100%;
        padding: 10px 0;
    }
    .navbar.active {
        display: flex;
    }
    .menu-toggle {
        display: block;
    }
    .topbar {
        position: relative;
    }
    .navbar-top {
        flex-direction: column;
        align-items: center;
    }
    .guest-menu {
        width: 100%;
    }
    .cta {
        height: 360px;
        margin-bottom: 560px;
    }
    .cta-content {
        width: 92%;
        top: 42%;
        padding: 0 15px;
    }
    .cta-content h1 {
        font-size: 30px;
        line-height: 1.3;
    }
    .cta-content p {
        font-size: 15px;
        line-height: 1.5;
    }
    .booking-container {
        width: 95%;
        bottom: -510px;
    }
    .booking-form {
        display: flex;
        flex-direction: column;
    }
    .form-group {
        width: 100%;
    }
    .form-group input,
    .form-group select {
        width: 100%;
    }
    .btn-search {
        width: 100%;
    }
    .offers {
        padding: 70px 5%;
    }
    .section-title h2 {
        font-size: 32px;
    }
    .offers-grid {
        grid-template-columns: 1fr;
    }
    .offer-card img {
        height: 220px;
    }
    .travel-slide img {
        height: 280px;
    }
    .travel-header h2 {
        font-size: 30px;
    }
    .travel-content h3 {
        font-size: 24px;
    }
    .travel-content p {
        font-size: 15px;
    }
    .membership-content {
        flex-direction: column;
        align-items: flex-start;
        gap: 18px;
    }
    .member-btn {
        width: 100%;
        text-align: center;
    }
    .destinations {
        padding: 70px 5%;
    }
    .destination-header h2 {
        font-size: 30px;
    }
    .destination-grid {
        grid-template-columns: 1fr;
        gap: 40px;
    }
    .destination-column {
        text-align: center;
    }
    .destination-column a:hover {
        padding-left: 0;
    }
    .faq {
        padding: 70px 5%;
    }
    .faq-header h2 {
        font-size: 30px;
    }
    .faq-question {
        font-size: 17px;
    }
    .footer-container {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .social {
        justify-content: center;
    }
    .store {
        justify-content: center;
    }
    .footer-partners {
        gap: 20px;
    }
    .footer-partners img {
        height: 30px;
    }
    .season-grid {
        grid-template-columns: 1fr;
    }
    .america{
        padding:70px 20px;
    }
    .america-grid{
        grid-template-columns:1fr;
    }
    .hotel-grid {
        grid-template-columns: 1fr;
    }
    .luxury{
        padding:70px 20px;
    }
    .luxury-header h2{
        font-size:30px;
    }
    .luxury-item,
    .luxury-item.reverse{
        grid-template-columns:1fr;
        direction:ltr;
        gap:30px;
        margin-bottom:70px;
    }
    .luxury-image img{
        height:260px;
    }
    .luxury-content{
        text-align:center;
    }
    .luxury-content h3{
        font-size:26px;
    }
    .offers-hero {
        height: auto;
    }
    .offers-content {
        position: relative;
        padding: 90px 20px;
    }
    .offers-bg {
        position: absolute;
        inset: 0;
    }
    .offers-split {
        grid-template-columns: 1fr;
    }
    .offer-side {
        min-height: 260px;
    }
    .offer-side:first-child {
        border-right: none;
        border-bottom: 1px solid rgba(255, 255, 255, .4);
    }
    .offer-box {
        padding: 35px 20px;
    }
    .offer-box h2 {
        font-size: 72px;
    }
    .offer-box h3 {
        font-size: 26px;
    }
    .offer-box p {
        font-size: 18px;
    }
    .offer-action {
        flex-direction: column;
        gap: 18px;
    }
    .offer-card {
        flex-direction: column;
    }
    .offer-image,
    .offer-content {
        width: 100%;
    }
    .partner-container {
        flex-direction: column;
        text-align: center;
    }
    .partner-image img {
        max-width: 100%;
    }
    .event-section {
        padding: 50px 20px;
    }
    .event-text h2 {
        font-size: 26px;
    }
    .events-grid {
        grid-template-columns: 1fr;
    }
    .event-wrapper {
        flex-direction: column;
    }
    .event-left h2 {
        font-size: 26px;
    }
    .promo-card {
        flex-direction: column;
    }
    .promo-image,
    .promo-content {
        width: 100%;
    }
    .hero-brand{
        height:60vh;
    }
    .hero-brand-content{
        left:24px;
        right:24px;
    }
    .hero-brand-content h1{
        font-size:38px;
    }
    .hero-brand-content p{
        font-size:16px;
    }
    .hero-actions{
        flex-direction:column;
    }
    .brands-hero{
        padding:60px 0;
    }
    .brands-hero-container{
        width:90%;
    }
    .brands-hero h1{
        font-size:34px;
    }
    .brands-hero p{
        font-size:16px;
        line-height:1.7;
    }
    .brand-categories{
        padding:15px 0 30px;
    }
    .brand-categories-container{
        justify-content:flex-start;
        overflow-x:auto;
        flex-wrap:nowrap;
        gap:12px;
        padding-bottom:8px;
    }
    .brand-categories-container::-webkit-scrollbar{
        display:none;
    }
    .brand-category{
        white-space:nowrap;
        flex-shrink:0;
    }
    .luxury-section{
        padding:60px 20px;
    }
    .luxury-header{
        margin-bottom:50px;
    }
    .luxury-header h2{
        font-size:30px;
    }
    .luxury-header p{
        font-size:16px;
    }
    .luxury-content h3{
        font-size:26px;
    }
    .luxury-content p{
        font-size:15px;
    }
    .premium-header h2{
        font-size:32px;
    }
    .premium-header p{
        font-size:16px;
    }
    .premium-content{
        flex-direction:column;
        gap:25px;
    }
    .premium-left,
    .premium-right{
        flex:100%;
    }
    .premium-left h3{
        font-size:26px;
    }
    .premium-right p{
        font-size:15px;
    }
    .essentials-section {
        padding: 60px 20px;
    }
    .essentials-header {
        margin-bottom: 50px;
    }
    .essentials-header h2 {
        font-size: 32px;
    }
    .essentials-header p {
        font-size: 16px;
    }
    .essentials-content {
        flex-direction: column;
        gap: 25px;
    }
    .essentials-left,
    .essentials-right {
        flex: 100%;
    }
    .essentials-left h3 {
        font-size: 26px;
    }
    .essentials-right p {
        font-size: 15px;
    }
}

/* =====================================================
   TABLET
===================================================== */
@media(max-width:992px) {
    .cta {
        height: 55vh;
        margin-bottom: 300px;
    }
    .cta-content h1 {
        font-size: 38px;
    }
    .booking-form {
        display: grid;
        grid-template-columns: repeat(2, 1fr);
    }
    .btn-search {
        width: 100%;
    }
    .welcome-container {
        flex-direction: column-reverse;
    }
    .welcome-text {
        text-align: center;
    }
    .welcome-text h2 {
        font-size: 34px;
    }
    .offers-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .offers-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .download-container {
        grid-template-columns: 1fr;
        text-align: center;
    }
    .download-phone {
        max-width: 260px;
        margin: auto;
    }
    .download-qr {
        margin: auto;
    }
    .download-content h3 {
        font-size: 28px;
    }
    .membership-container {
        grid-template-columns: 1fr;
    }
    .membership-image {
        order: 1;
    }
    .membership-content {
        order: 2;
        text-align: center;
    }
    .member-list {
        grid-template-columns: 1fr;
    }
    .member-item {
        justify-content: center;
    }
    .destination-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .footer-container {
        grid-template-columns: repeat(2, 1fr);
    }
    .season {
        padding: 70px 20px;
    }
    .season-grid {
        grid-auto-columns: 1fr !important;
        gap: 24px;
    }
    .season-card {
        width: 100%;
    }
    .season-card img {
        height: 220px;
    }
    .america-grid{
        grid-template-columns:repeat(2,1fr);
    }
    .hotel-grid {
        grid-template-columns: repeat(2,1fr);
    }
    .luxury-item{
        gap:40px;
    }
    .luxury-content h3{
        font-size:30px;
    }
    .offers-hero {
        height: 850px;
    }
    .offers-content h1 {
        font-size: 42px;
    }
    .offers-split {
        width: 92%;
    }
    .offer-box h2 {
        font-size: 80px;
    }
    .offer-box h3 {
        font-size: 28px;
    }
}

@media (max-width: 1024px) {
    .business-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
