@media (max-width: 1180px) {
    .hero-layout,
    .split-layout,
    .about-grid,
    .contact-grid,
    .project-hero-shell,
    .page-header-shell,
    .project-info-grid {
        grid-template-columns: 1fr;
    }

    .services-grid,
    .timeline,
    .video-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .stats-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .footer-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .hero-main-media {
        min-height: 460px;
    }

    .hero-luxury-frame {
        padding: 12px;
        border-radius: 34px;
    }
}

@media (max-width: 992px) {
    .desktop-nav {
        display: none;
    }

    .hamburger {
        display: inline-flex;
    }

    .hero-points,
    .gallery-mosaic,
    .project-gallery {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page-header-shell,
    .project-hero-shell,
    .hero-layout,
    .about-grid,
    .contact-grid,
    .project-info-grid {
        gap: 1.25rem;
    }

    .footer-bottom {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 768px) {
    .container {
        width: min(100% - 24px, 100%);
    }

    .section {
        padding: 4rem 0;
    }

    .navbar-inner {
        padding: 0.65rem 0.8rem 0.65rem 1rem;
    }

    .logo-img {
        width: 58px;
        height: 58px;
    }

    .logo-name {
        font-size: 1.1rem;
    }

    .hero {
        padding: 1rem 0 3rem;
    }

    .hero-points,
    .services-grid,
    .portfolio-grid,
    .timeline,
    .video-grid,
    .stats-grid,
    .footer-grid,
    .project-meta {
        grid-template-columns: 1fr;
    }

    .image-stack,
    .hero-side-stack,
    .gallery-mosaic,
    .project-gallery {
        grid-template-columns: 1fr;
    }

    .gallery-card--wide,
    .gallery-card--tall,
    .image-card--tall {
        grid-column: auto;
        grid-row: auto;
    }

    .page-header-shell,
    .project-hero-overlay,
    .contact-info,
    .contact-form,
    .service-body,
    .timeline-content,
    .testimonial-card {
        padding: 1.25rem;
    }

    .page-header-media,
    .project-hero-media,
    .hero-main-media {
        min-height: 420px;
    }

    .portfolio-item {
        min-height: 300px;
    }

    .page-header h1 {
        font-size: 2.45rem;
    }

    .hero-buttons {
        flex-direction: column;
        align-items: stretch;
    }

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

    .mobile-menu-panel {
        padding: 1.1rem;
    }

    .hero-slideshow-dots {
        bottom: 20px;
        padding: 0.65rem 0.9rem;
    }
}

@media (max-width: 576px) {
    body {
        font-size: 14px;
    }

    .container {
        width: calc(100% - 20px);
    }

    .navbar {
        padding: 0.6rem 0;
    }

    .navbar-inner {
        gap: 0.7rem;
        padding: 0.55rem 0.65rem 0.55rem 0.8rem;
    }

    .logo-copy {
        gap: 0.05rem;
    }

    .logo-kicker {
        font-size: 0.68rem;
        letter-spacing: 0.1em;
    }

    .logo-name {
        font-size: 0.95rem;
    }

    .section-title {
        font-size: 1.95rem;
    }

    .page-header h1 {
        font-size: 2rem;
    }

    .hero-description,
    .section-description,
    .page-header p {
        font-size: 0.95rem;
    }

    .hero-main-media,
    .page-header-media,
    .project-hero-media {
        min-height: 320px;
        border-radius: 22px;
    }

    .hero-luxury-frame {
        padding: 8px;
        border-radius: 26px;
    }

    .hero-slideshow-dots {
        left: 50%;
        bottom: 12px;
        gap: 0.4rem;
        padding: 0.5rem 0.7rem;
    }

    .hero-slideshow-dot {
        width: 10px;
        height: 10px;
    }

    .hero-slideshow-dot.is-active {
        width: 24px;
    }

    .media-label {
        left: 12px;
        bottom: 12px;
        min-height: 34px;
        max-width: calc(100% - 24px);
        padding: 0.5rem 0.75rem;
        font-size: 0.72rem;
    }

    .image-card img,
    .gallery-card img,
    .project-gallery img {
        min-height: 200px;
    }

    .service-card,
    .testimonial-card,
    .timeline-content,
    .contact-form,
    .contact-panel,
    .project-info-grid > div,
    .page-header-shell,
    .project-hero-overlay {
        border-radius: 22px;
    }

    .page-header-shell,
    .project-hero-shell,
    .hero-layout,
    .hero-visual,
    .about-grid,
    .contact-grid,
    .project-info-grid,
    .services-grid,
    .portfolio-grid,
    .timeline,
    .video-grid,
    .stats-grid,
    .footer-grid,
    .gallery-mosaic,
    .project-gallery {
        gap: 0.9rem;
    }

    .project-meta-item,
    .hero-point {
        padding: 0.9rem;
    }

    .footer-bottom-links {
        flex-wrap: wrap;
    }

    .floating-actions {
        right: 12px;
        bottom: 12px;
    }

    .floating-action {
        width: 46px;
        height: 46px;
    }
}
