@media (max-width: 768px) {
    .header {
        flex-direction: row;
    }

    .menu-toggle {
        display: block;
    }

    .header nav {
        position: absolute;
        top: 75px;
        left: 5%;
        right: 5%;
        display: none;
        flex-direction: column;
        text-align: center;
        padding: 22px;
        border-radius: 24px;
        background: rgba(16, 16, 26, 0.96);
        border: 1px solid rgba(255,255,255,0.12);
    }

    .header nav.active {
        display: flex;
    }

    .btn-outline {
        margin-left: 0;
        margin-top: 14px;
    }

    .identity-tags span {
        width: 100%;
        max-width: 280px;
    }
}

@media (max-width: 1100px) {
    .agenda-list-columns {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 900px) {
    .header {
        flex-direction: column;
        gap: 14px;
    }

    .header nav {
        flex-wrap: wrap;
        justify-content: center;
        gap: 14px;
    }

    .hero {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .hero-text p {
        margin-left: auto;
        margin-right: auto;
    }

    .hero-photo {
        max-width: 430px;
        margin: 0 auto;
    }

    .hero-photo img {
        max-height: 480px;
    }

    .hero-photo.is-empty {
        height: 480px;
    }

    .agenda-grid,
    .agenda-card-featured,
    .agenda-card-wide {
        grid-template-columns: 1fr;
        grid-column: auto;
    }
}

@media (max-width: 600px) {
    .header {
        padding: 14px 5%;
    }

    .header h1 {
        font-size: 1.4rem;
    }

    .header nav a {
        font-size: 0.82rem;
    }

    .hero {
        padding: 170px 6% 70px;
    }

    .hero-photo {
        max-width: 100%;
    }

    .hero-photo img {
        max-height: 390px;
    }

    .hero-photo.is-empty {
        height: 390px;
    }

    .section {
        padding: 80px 6%;
    }

    .section h2 {
        font-size: 2.1rem;
    }

    .agenda-card {
        padding: 22px;
    }

    .agenda-card-header {
        display: grid;
        gap: 8px;
    }

    .agenda-card-header strong {
        text-align: left;
    }

    .agenda-list li {
        grid-template-columns: 1fr;
        gap: 6px;
    }

    .certificate-note {
        font-size: 0.82rem;
        line-height: 1.45;
    }
}
