/* 
* Royalproject - Architecture & Design Website
* Responsive Stylesheet
*/

/* Tablet Styles */
@media screen and (max-width: 992px) {
    h1 {
        font-size: 2rem;
    }
    
    h2 {
        font-size: 1.8rem;
    }
    
    h3 {
        font-size: 1.3rem;
    }
    
    .hero {
        height: 60vh;
    }
    
    .hero h1 {
        font-size: 2.8rem;
    }
    
    .hero p {
        font-size: 1.3rem;
    }
    
    .about-content {
        flex-direction: column;
    }
    
    .about-text, .about-image {
        flex: none;
        width: 100%;
    }
    
    .projects-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .services-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .process-steps {
        flex-wrap: wrap;
    }
    
    .process-step {
        flex-basis: 50%;
        margin-bottom: 40px;
    }
    
    .process-step:not(:last-child)::after {
        display: none;
    }
    
    .contact-content {
        flex-direction: column;
    }
    
    .footer-content {
        flex-wrap: wrap;
    }
    
    .footer-logo, .footer-contact, .footer-social {
        flex-basis: 50%;
        margin-bottom: 30px;
    }
}

/* Mobile Styles */
@media screen and (max-width: 768px) {
    .main-menu ul {
        display: none;
        position: absolute;
        top: 80px;
        left: 0;
        width: 100%;
        background-color: white;
        flex-direction: column;
        padding: 20px;
        box-shadow: var(--shadow);
    }
    
    .main-menu.active ul {
        display: flex;
    }
    
    .main-menu li {
        margin: 10px 0;
    }
    
    .mobile-menu-toggle {
        display: block;
    }
    
    .hero {
        height: auto;
        padding: 80px 0;
    }
    
    .hero h1 {
        font-size: 2.2rem;
    }
    
    .projects-grid, .services-grid {
        grid-template-columns: 1fr;
    }
    
    .process-step {
        flex-basis: 100%;
    }
    
    .footer-logo, .footer-contact, .footer-social {
        flex-basis: 100%;
    }
    
    .footer-bottom {
        flex-direction: column;
        text-align: center;
    }
    
    .footer-links {
        margin-top: 15px;
    }
}

/* Small Mobile Styles */
@media screen and (max-width: 576px) {
    .btn {
        padding: 10px 20px;
        font-size: 0.9rem;
    }
    
    .hero h1 {
        font-size: 1.8rem;
    }
    
    .hero p {
        font-size: 1.1rem;
    }
    
    .about, .featured-projects, .projects, .services, .process, .contact {
        padding: 60px 0;
    }
    
    .page-header {
        height: 200px;
    }
    
    .projects-filter {
        flex-wrap: wrap;
    }
    
    .filter-btn {
        margin-bottom: 10px;
    }
}
