/* ===== RESPONSIVE DESIGN — K-GHIS Construction BTP ===== */

@media (min-width: 1200px) {
    .container { max-width: 1140px; }
}

@media (max-width: 1199px) {
    .container { max-width: 960px; }
    h1 { font-size: 3rem; }
    h2 { font-size: 2.25rem; }
    .hero-title { font-size: 3.5rem; }
}

@media (max-width: 991px) {
    .container { max-width: 720px; }

    /* Navigation mobile */
    .nav-links {
        position: fixed;
        top: 80px; left: 0; right: 0;
        background: var(--color-primary-dark);
        flex-direction: column;
        padding: var(--spacing-xl);
        gap: var(--spacing-md);
        display: none;
        box-shadow: var(--shadow-lg);
        z-index: var(--z-fixed);
    }
    .nav-links.show { display: flex; }
    .nav-links li { width: 100%; }
    .nav-link { width: 100%; padding: var(--spacing-md); border-bottom: 1px solid rgba(255,255,255,0.1); }
    .nav-link:last-child { border-bottom: none; }
    .nav-link::after { display: none; }
    .mobile-menu-btn { display: block; }

    .hero-title { font-size: 2.5rem; }
    .hero-subtitle { font-size: 1.125rem; }
    .hero-buttons { flex-direction: column; align-items: center; }
    .hero-buttons .btn { width: 100%; max-width: 300px; }

    .section-title { font-size: 2rem; }
    .services-grid, .projects-grid, .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .footer-content { grid-template-columns: repeat(2, 1fr); }
    .footer-bottom { flex-direction: column; text-align: center; gap: var(--spacing-md); }
    .contact-grid { grid-template-columns: 1fr; gap: var(--spacing-2xl); }
}

@media (max-width: 767px) {
    .container { max-width: 540px; padding: 0 var(--spacing-lg); }
    h1 { font-size: 2.5rem; }
    h2 { font-size: 2rem; }
    h3 { font-size: 1.5rem; }
    .hero-title { font-size: 2rem; }
    .page-hero-title { font-size: 2.5rem; }
    .section { padding: var(--spacing-2xl) 0; }
    .services-grid, .projects-grid, .stats-grid { grid-template-columns: 1fr; }
    .hero-stats { gap: var(--spacing-xl); }
    .stat-number { font-size: 2.5rem; }
    .filter-buttons { flex-direction: column; align-items: stretch; }
    .filter-btn { justify-content: center; }
    .filter-stats { flex-direction: column; gap: var(--spacing-lg); }
    .process-timeline::before { left: 25px; }
    .step-number { width: 50px; height: 50px; font-size: 1.25rem; }
    .project-details { grid-template-columns: 1fr; }
    .footer-content { grid-template-columns: 1fr; }
    .form-row { grid-template-columns: 1fr; }
}

@media (max-width: 575px) {
    .container { padding: 0 var(--spacing-md); }
    h1 { font-size: 2rem; }
    h2 { font-size: 1.75rem; }
    .hero-title { font-size: 1.75rem; }
    .hero-subtitle, .page-hero-subtitle { font-size: 1rem; }
    .section-title { font-size: 1.75rem; }
    .btn { padding: var(--spacing-md) var(--spacing-lg); width: 100%; max-width: 300px; }
    .hero-buttons .btn { width: 100%; }
    .cta-buttons { flex-direction: column; }
    .cta-buttons .btn { width: 100%; }
    .service-card, .project-card { padding: var(--spacing-lg); }
    .project-meta { flex-direction: column; gap: var(--spacing-md); }
    .meta-item { display: flex; align-items: center; gap: var(--spacing-md); text-align: left; }
    .meta-item i { margin-bottom: 0; }
    .footer-legal { flex-direction: column; gap: var(--spacing-md); text-align: center; }
}

@media (max-width: 400px) {
    .logo-text { font-size: 1.25rem; }
    .logo-icon { font-size: 1.5rem; }
    .hero-title { font-size: 1.5rem; }
    .stat-number { font-size: 2rem; }
    .section-title { font-size: 1.5rem; }
}

@media print {
    .main-header, .hero-scroll-indicator, .social-links, .footer-legal, .btn { display: none !important; }
    body { font-size: 12pt; line-height: 1.5; padding-top: 0; }
    .container { max-width: 100%; padding: 0; }
    .section { padding: 1cm 0; break-inside: avoid; }
    a { color: #000 !important; text-decoration: none !important; }
    .text-gradient { -webkit-text-fill-color: #000 !important; background: none !important; }
}