/* Na úzké obrazovce jsou jazyky nahoře vpravo a hlavní menu na dalším řádku. */
@media (max-width: 48rem) {
    html { scroll-padding-block-start: 12rem; }
    .desktop-header {
        grid-template-columns: auto minmax(0, 1fr);
        gap: var(--step-1) var(--step-2);
        --logo-desktop: 6.8rem;
        --language-gap: .25rem;
        --menu-gap: .75rem;
    }
    .desktop-header > nav:first-of-type { grid-column: 1 / -1; grid-row: 2; }
    .desktop-header > nav:last-of-type { grid-column: 2; grid-row: 1; }
    .desktop-header .page-links,
    .desktop-header .language-links { flex-wrap: wrap; }
    .desktop-header .page-links { justify-content: center; }
    .desktop-header .language-links { justify-content: flex-end; }
    .hero { min-block-size: 19rem; }
    .cards, .two-col, .media-row:has(picture) { grid-template-columns: 1fr; }
    .content { text-align: center; }
    .content p, .media-row picture { margin-inline: auto; }
    .card { text-align: start; }
    .card p { margin-inline: 0; }
    .booking { inline-size: 100%; }
    .site-footer { text-align: center; }
}
@media (max-width: 48rem) {
    .hero-copy { align-self: end; grid-template-columns: 1fr; padding-block: var(--step-4); }
    .hero h1 { grid-column: 1; }
    .hero-media { block-size: clamp(22rem, 110vw, 34rem); }
}

@media (max-width: 48rem) {
    .contact-content { text-align: start; }
    .contact-content p { margin-inline: 0; }
}

@media (max-width: 24rem) {
    html { scroll-padding-block-start: 14rem; }
}
