.container {
    padding-left: 1rem;
    padding-right: 1rem;
}

@media (max-width: 980px) {
    .hero {
        min-height: auto;
        padding: 4rem 0 3rem;
    }

    .hero-inner,
    .contact-cta-inner,
    .service-grid,
    .product-grid,
    .portfolio-grid,
    .blog-grid,
    .testimonial-grid {
        grid-template-columns: 1fr;
    }

    .hero-copy {
        text-align: center;
    }

    .hero-buttons {
        justify-content: center;
    }
}

@media (max-width: 640px) {
    .header-inner {
        flex-direction: column;
        align-items: flex-start;
    }

    .hero-copy h1 {
        font-size: clamp(2rem, 9vw, 2.8rem);
    }

    .hero-text {
        font-size: 1rem;
    }

    .btn,
    .btn-primary,
    .btn-secondary {
        width: 100%;
    }

    .hero-buttons {
        flex-direction: column;
    }

    .footer-inner,
    .footer-columns,
    .footer-bottom-inner {
        grid-template-columns: 1fr;
    }
}
