/* ===== RESPONSIVE STYLES ===== */

@media (max-width: 1200px) {
    .footer-grid { grid-template-columns: 1.5fr 1fr 1fr; }
    .footer-grid .footer-col:last-child { grid-column: span 3; border-top: 1px solid rgba(255,255,255,0.08); padding-top: 24px; }
}

@media (max-width: 1024px) {
    .hero-grid { grid-template-columns: 1fr; gap: 40px; }
    .hero-img { height: 360px; }
    .hero-stats { gap: 20px; }
    .article-grid { grid-template-columns: 1fr; }
    .sidebar { position: static; }
    .contact-grid { grid-template-columns: 1fr; }
    .newsletter-inner { grid-template-columns: 1fr; gap: 28px; }
    .stats-grid { grid-template-columns: repeat(2, 1fr); }
    .stat-item:nth-child(3)::before { display: none; }
    .grid-4 { grid-template-columns: repeat(2, 1fr); }
}

@media (max-width: 900px) {
    .main-nav, .header-cta { display: none; }
    .hamburger { display: flex; }
    .grid-3 { grid-template-columns: repeat(2, 1fr); }
    .footer-grid { grid-template-columns: 1fr 1fr; }
    .footer-grid .footer-col:last-child { grid-column: span 2; }
    .footer-grid .footer-brand { grid-column: span 2; }
    .key-numbers { grid-template-columns: repeat(2, 1fr); }
    .data-box { overflow-x: auto; }
    .form-row { grid-template-columns: 1fr; }
}

@media (max-width: 640px) {
    .section { padding: 52px 0; }
    .section--lg { padding: 64px 0; }
    .container { padding: 0 16px; }
    .hero { padding: 52px 0 48px; }
    .hero-stats { flex-direction: column; gap: 16px; }
    .hero-actions { flex-direction: column; }
    .hero-actions .btn { width: 100%; justify-content: center; }
    .grid-3, .grid-2, .grid-4 { grid-template-columns: 1fr; }
    .stats-grid { grid-template-columns: 1fr 1fr; }
    .footer-grid { grid-template-columns: 1fr; }
    .footer-grid .footer-brand,
    .footer-grid .footer-col:last-child { grid-column: span 1; }
    .footer-bottom { flex-direction: column; gap: 10px; text-align: center; }
    .newsletter-form { flex-direction: column; }
    .key-numbers { grid-template-columns: 1fr; }
    .sitemap-links { grid-template-columns: 1fr; }
    .bar-label { width: 80px; font-size: 0.7rem; }
    .hero-img { height: 240px; }
    .page-hero { padding: 36px 0 32px; }
    .error-page { padding: 60px 0; }
    .highlight-box { padding: 24px; }
    .team-card { padding: 20px 16px; }
}

@media (max-width: 400px) {
    .stats-grid { grid-template-columns: 1fr; }
    .stat-item + .stat-item::before { display: none; }
}

/* ===== PRINT ===== */
@media print {
    .site-header, .site-footer, .newsletter-section, .sidebar { display: none; }
    .article-grid { grid-template-columns: 1fr; }
    .container { max-width: 100%; }
}
