@media(max-width:1180px){
    .nav-container,
    .container,
    .footer-grid,
    .hero-content{
        width:94%;
    }

    .hero h1{
        max-width:760px;
    }

    .stats-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:1050px){
    .image-grid{
        grid-template-columns:repeat(2,1fr);
        gap:22px;
    }

    .filter-box{
        grid-template-columns:repeat(2,1fr);
    }

    .stats-grid{
        grid-template-columns:repeat(2,1fr);
    }

    .dashboard-layout{
        grid-template-columns:1fr;
    }

    .sidebar{
        position:relative;
        height:auto;
        border-radius:0 0 30px 30px;
    }

    .sidebar a{
        display:inline-flex;
        margin-right:8px;
    }

    .dashboard-main{
        padding:28px;
    }
}

@media(max-width:820px){
    .main-navbar{
        padding:14px 0;
    }

    .menu-btn{
        display:grid;
        place-items:center;
    }

    .nav-links{
        position:absolute;
        top:82px;
        left:4%;
        right:4%;
        background:rgba(38,7,16,.96);
        backdrop-filter:blur(30px);
        border:1px solid rgba(255,255,255,.14);
        border-radius:28px;
        padding:24px;
        flex-direction:column;
        align-items:flex-start;
        display:none;
        box-shadow:0 30px 80px rgba(0,0,0,.42);
    }

    .nav-links.active{
        display:flex;
        animation:menuDrop .35s ease;
    }

    @keyframes menuDrop{
        from{
            opacity:0;
            transform:translateY(-15px);
        }
        to{
            opacity:1;
            transform:translateY(0);
        }
    }

    .nav-links a{
        width:100%;
        padding:10px 0;
    }

    .nav-btn{
        width:100%;
        justify-content:center;
        text-align:center;
    }

    .hero{
        min-height:92vh;
    }

    .hero-bg{
        grid-template-columns:1fr;
    }

    .hero-bg img:nth-child(2),
    .hero-bg img:nth-child(3){
        display:none;
    }

    .hero-content{
        padding-top:110px;
    }

    .hero h1{
        font-size:clamp(44px,11vw,72px);
        max-width:100%;
    }

    .hero p{
        font-size:16px;
        max-width:95%;
    }

    .hero-actions{
        gap:12px;
    }

    .btn-primary,
    .btn-light,
    .btn-dark{
        padding:14px 22px;
    }

    .section{
        padding:82px 0;
    }

    .section-title{
        display:block;
        margin-bottom:34px;
    }

    .section-title p{
        margin-top:14px;
    }

    .footer-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

    .form-grid{
        grid-template-columns:1fr;
    }

    .bottom-booking-bar{
        display:none;
    }

    .floating-actions{
        bottom:24px;
    }

    .hero-stats{
        grid-template-columns:repeat(2,1fr);
        margin-top:34px;
    }

    .luxury-banner{
        min-height:430px;
        background-attachment:scroll;
    }
}

@media(max-width:620px){
    body{
        background:
        radial-gradient(circle at top left,rgba(129,27,57,.34),transparent 34%),
        radial-gradient(circle at bottom right,rgba(242,210,122,.12),transparent 40%),
        linear-gradient(135deg,#170006,#230712,#2a0710);
    }

    .brand-icon{
        width:46px;
        height:46px;
        border-radius:15px;
    }

    .brand b{
        font-size:18px;
    }

    .brand small{
        font-size:11px;
    }

    .hero{
        min-height:88vh;
    }

    .hero::after{
        width:420px;
        height:420px;
        right:-190px;
    }

    .hero h1{
        font-size:44px;
        letter-spacing:-1px;
    }

    .hero p{
        font-size:15px;
        line-height:1.7;
    }

    .hero-tag{
        font-size:12px;
        padding:9px 14px;
    }

    .hero-actions{
        flex-direction:column;
        align-items:flex-start;
    }

    .hero-actions a{
        width:100%;
    }

    .section{
        padding:68px 0;
    }

    .section-title h2{
        font-size:36px;
    }

    .image-grid,
    .filter-box,
    .stats-grid,
    .hero-stats{
        grid-template-columns:1fr;
    }

    .city-card img{
        height:350px;
    }

    .venue-card img,
    .package-card img{
        height:245px;
    }

    .card-body{
        padding:22px;
    }

    .card-body h3{
        font-size:21px;
    }

    .form-card{
        padding:24px;
        border-radius:26px;
    }

    .filter-box{
        padding:20px;
        border-radius:24px;
    }

    .dashboard-main{
        padding:20px;
    }

    .admin-topbar{
        display:block;
    }

    .admin-topbar a{
        margin-top:14px;
    }

    .sidebar{
        padding:24px 16px;
    }

    .sidebar h2{
        font-size:26px;
    }

    .sidebar a{
        width:100%;
        margin-right:0;
    }

    .stat-card{
        padding:24px;
    }

    .table-card{
        padding:18px;
        border-radius:24px;
    }

    th,td{
        padding:12px;
        font-size:13px;
    }

    .floating-actions{
        right:14px;
        bottom:18px;
    }

    .float-btn{
        width:48px;
        height:48px;
        font-size:19px;
    }
}

@media(max-width:420px){
    .hero h1{
        font-size:38px;
    }

    .section-title h2{
        font-size:31px;
    }

    .btn-primary,
    .btn-light,
    .btn-dark{
        width:100%;
        padding:14px 18px;
    }

    .city-card img{
        height:300px;
    }

    .hero-stat{
        padding:18px;
    }
}