/* Responsive Design Styles */

/* Large Desktop */
@media (min-width: 1400px) {
    .container {
        max-width: 1500px;
    }
    h1 {
        font-size: 4.5rem;
    }
    .hero-content h1 {
        font-size: 5rem;
    }
}


/* Desktop */
@media (max-width: 1200px) {
    .container {
        max-width: 960px;
    }
    .hero-content h1 {
        font-size: 3.5rem;
    }
    .services-grid {
        grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    }
    .features-grid {
        grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    }
}

/* Tablet & Mobile */
@media (max-width: 768px) {
    .container {
        max-width: 720px;
        padding: 0 15px;
    }
	.about-text{
		text-align:center;
	}

    /* Header */
    .header-top {
        padding: 5px 0;
    }
    .header-top .container {
        flex-direction: row;
        gap: 6px;
        padding: 5px;
    }
    .contact-info {
        flex-direction: column;
        gap: 5px;
        text-align: center;
        font-size: 12px;
    }
    .contact-info span {
        font-size: 0.7rem;
    }
    .social-links {
        font-size: 9.5px;
		display:flex;
    }

    /* Navigation */
    .navbar {
        padding: 10px 0;
    }
    .logo img {
/*         max-height: 40px; */
    }
    .nav-menu {
        position: fixed;
        top: 0;
        right: -100%;
        width: 80%;
        max-width: 300px;
        height: 100vh;
        background: #fff;
        flex-direction: column;
        align-items: flex-start;
        padding: 20px;
        box-shadow: -5px 0 15px rgba(0,0,0,0.1);
        transition: 0.3s;
        z-index: 1000;
    }
    .nav-menu.active {
        right: 0;
    }
    .nav-link {
        padding: 12px 0;
        display: block;
        width: 100%;
    }
    .dropdown-menu {
        position: static;
        box-shadow: none;
        display: none;
        padding-left: 15px;
    }
    .dropdown.active .dropdown-menu {
        display: block;
    }
    .hamburger {
        display: flex;
    }

    /* Hero Section */
    .hero-content h1 {
        font-size: 2.5rem;
    }
    .hero-content p {
        font-size: 1rem;
    }
    .hero-buttons {
        flex-direction: column;
        gap: 15px;
    }
    .hero-buttons .btn {
        width: 100%;
        max-width: 170px;
    }
    .hero-features {
        padding: 15px 0;
    }

    /* Features Grid */
    .features-grid {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }
    .feature-item {
        padding: 10px;
    }

    /* About Section */
    .about-content {
        flex-direction: column;
        gap: 40px;
    }
    .about-text, .about-image {
        width: 100%;
    }
    .about-image {
        margin-top: 20px;
    }
    .about-stats {
        grid-template-columns: 1fr 1fr;
        gap: 20px;
    }

    /* Services Grid */
    .services-grid {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    /* General Typography */
    h1 { font-size: 2.5rem; }
    h2 { font-size: 2rem; }
    h3 { font-size: 1.5rem; }
    .section-header h2 { font-size: 24px; }
    .section-header p { font-size: 14px; }

    /* Section Padding */
    section { padding: 60px 0; }
    .section-header { margin-bottom: 40px; }

    /* Wedding section */
    .wedding-content {
        flex-direction: column;
    }
    .wedding-text, .wedding-gallery {
        width: 100%;
    }
    .wedding-gallery {
        margin-top: 20px;
    }
    .gallery-grid {
        grid-template-columns: 1fr 1fr;
    }

    /* Rooms section */
    .rooms-grid {
        grid-template-columns: 1fr;
    }

    /* Dining section */
    .dining-content {
        flex-direction: column;
    }
    .dining-text, .dining-gallery {
        width: 100%;
    }

    /* Gallery section */
    .gallery-filters {
        flex-wrap: wrap;
    }
    .filter-btn {
               margin: 0px;
        padding: 5px 8px;
        font-size: 12px;
    }
    .gallery-grid {
        grid-template-columns: 1fr 1fr;
    }

    /* Video section */
    .video-grid {
        grid-template-columns: 1fr;
    }

    /* Contact section */
    .contact-content {
        flex-direction: column;
    }
    .contact-info, .contact-form {
        width: 100%;
    }
    .contact-form {
        margin-top: 30px;
    }

    /* Footer */
    .footer-content {
        grid-template-columns: 1fr;
        gap: 30px;
    }

    /* Modal */
    .modal-content {
        width: 90%;
    }
}

/* Mobile */
@media (max-width: 480px) {
    .container {
        max-width: 100%;
        padding: 0 10px;
    }

    /* Hero */
    .hero-content h1 { font-size: 2rem; }
    .hero-content p { font-size: 0.9rem; }
    .hero-buttons .btn {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
	.slide {
		flex: 0 0 calc(100% / 1);}
	.blog-slider-header {
    text-align: center;
    margin-bottom: 0px;
}
	
	.story-text h2 {
    
		text-align:center;

}
	.story-text .subtitle {
		text-align:center;
	}


    /* Features & Stats */
    .features-grid { grid-template-columns: 1fr; gap: 15px; }
    .feature-item { padding: 20px 15px; }
    .feature-item i { font-size: 2rem; }
    .about-stats { grid-template-columns: 1fr; gap: 15px; }
    .stat-item { padding: 20px 15px; }
    .stat-item h3 { font-size: 2rem; }

    /* Typography */
    h1 { font-size: 2rem; }
    h2 { font-size: 1.8rem; }
    h3 { font-size: 1.3rem; }

    /* Section Padding */
    section { padding: 40px 0; }
    .section-header { margin-bottom: 30px; }

    /* Services */
    .service-card { padding: 30px 20px; }
    .service-icon { width: 60px; height: 60px; }
    .service-icon i { font-size: 1.5rem; }
}

/* Extra Small Mobile */
@media (max-width: 360px) {
    .hero-content h1 { font-size: 1.8rem; }
    .hero-content p { font-size: 0.8rem; }
    .feature-item { padding: 15px 10px; }
    .service-card { padding: 25px 15px; }
    .stat-item { padding: 15px 10px; }
    .stat-item h3 { font-size: 1.8rem; }
}

/* Landscape Mobile */
@media (max-height: 500px) and (orientation: landscape) {
    .hero { height: 100vh; }
    .hero-content h1 { font-size: 2rem; margin-bottom: 0.5rem; }
    .hero-content p { font-size: 0.9rem; margin-bottom: 1rem; }
    .hero-buttons { gap: 10px; }
    .hero-buttons .btn { padding: 8px 20px; font-size: 0.8rem; }
}

/* High DPI Displays */
@media (-webkit-min-device-pixel-ratio: 2), (min-resolution: 192dpi) {
    .logo img {
        image-rendering: -webkit-optimize-contrast;
        image-rendering: crisp-edges;
    }
}

/* Print Styles */
@media print {
    .header,
    .hero-features,
    .nav-buttons,
    .hamburger,
    .rose-petals-container {
        display: none !important;
    }
    .hero {
        height: auto;
        min-height: 300px;
    }
    .hero-content {
        position: static;
        transform: none;
        color: var(--text-dark);
    }
    section {
        padding: 20px 0;
    }
    .btn {
        border: 1px solid var(--text-dark);
        color: var(--text-dark);
        background: none;
    }
}
