@media (max-width: 1100px) {
    .footer-inner {
        grid-template-columns: 1fr 1fr;
    }

    .home-paths {
        grid-template-columns: repeat(2, 1fr);
    }

    .home-ambience,
    .home-showcase,
    .spectacle-details,
    .info-grid,
    .arguments {
        grid-template-columns: 1fr;
    }

    .tarifs-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .reassurance,
    .home-blocks,
    .contact-wrapper {
        grid-template-columns: 1fr;
    }

    .hero {
        min-height: auto;
        padding: 54px 24px;
    }

    .page-hero {
        padding: 34px 22px;
    }
}

@media (max-width: 768px) {
    main {
        width: min(100% - 20px, var(--container));
        padding-top: 24px;
    }

    .header-inner {
        grid-template-columns: 1fr auto;
        gap: 14px;
    }

    .burger {
        display: inline-flex;
        align-items: center;
        justify-content: center;
    }

    .nav-right {
        display: none;
        grid-column: 1 / -1;
        width: 100%;
    }

    .nav-right.open {
        display: block;
    }

    .main-nav {
        justify-content: flex-start;
        flex-direction: column;
        align-items: stretch;
        gap: 6px;
        overflow: visible;
    }

    .main-nav a {
        padding: 13px 14px;
        border-radius: 16px;
        background: rgba(255,255,255,0.78);
    }

    .main-nav a.active::after {
        left: 14px;
        right: 14px;
        bottom: 7px;
    }

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

    .home-showcase-text,
    .home-showcase-visual,
    .home-poem,
    .path-card,
    .ambience-panel,
    .hero,
    .page-hero,
    .cta-section,
    .home-card,
    .block,
    .content-block,
    .detail-card,
    .tarif-card,
    .contact-info,
    .contact-box,
    .footer-col {
        border-radius: 22px;
    }

    .contact-form button {
        width: 100%;
        align-self: stretch;
    }
}

@media (max-width: 560px) {
    .home-showcase-text,
    .home-showcase-visual,
    .home-poem,
    .path-card,
    .ambience-panel,
    .hero,
    .page-hero,
    .cta-section,
    .home-card,
    .block,
    .content-block,
    .detail-card,
    .tarif-card,
    .contact-info,
    .contact-box,
    .footer-col {
        padding: 20px;
    }

    .toy-window {
        height: 250px;
    }

    .toy-window-card {
        width: 145px;
        min-height: 110px;
    }

    .toy-window-card-3 {
        left: 60px;
    }

    .logo a {
        font-size: 1rem;
    }

    .logo a::before {
        width: 38px;
        height: 38px;
    }
}
@media (max-width: 900px) {
    .content-intro,
    .content-grid-two {
        grid-template-columns: 1fr;
    }
}
@media (max-width: 900px) {
    .tarifs-page-grid {
        grid-template-columns: 1fr;
    }

    .tarif-row {
        flex-direction: column;
        gap: 6px;
    }

    .tarif-row strong {
        white-space: normal;
    }
}
@media (max-width: 900px) {
    .home-media {
        grid-template-columns: 1fr;
    }
}