/* ===========================
   Tablet / schmale Desktops ≤ 1100px
   =========================== */
@media (max-width: 1100px) {
    .page--home {
        padding: 0 2rem 0;
    }

    .bottom-nav {
        padding: 1.5rem 2rem;
    }

    .page--sub {
        padding: 0 2rem 0;
    }

    .site-brand {
        top: clamp(4.25rem, 9vh, 6rem);
        padding: 0 2rem;
    }

    .site-logo {
        width: clamp(3.5rem, 8vw, 5.5rem);
    }

    .site-brand-title {
        font-size: clamp(1.55rem, 5.2vw, 2.8rem);
        letter-spacing: 0.04em;
    }

    .site-brand-tags {
        gap: clamp(1rem, 2vw, 2rem);
        font-size: clamp(0.62rem, 1vw, 0.78rem);
        letter-spacing: 0.12em;
    }

    .page-content {
        margin-top: 30vh;
    }

    .page--home .page-content {
        margin-top: 48vh;
    }

    .content-column--home-intro {
        grid-column: 2;
    }

    .content-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 2.5rem 2rem;
    }

    .content-column {
        justify-self: start;
    }
}

/* ===========================
   Mobil / sehr schmale Fenster ≤ 700px
   =========================== */
@media (max-width: 700px) {
    #brush-canvas {
        display: none;
    }

    .page--home {
        padding: 0 1.5rem 0;
    }

    .bottom-nav {
        padding: 1.2rem 1.5rem 3rem;
        gap: 0.5rem;
    }

    .bottom-nav a {
        font-size: 0.75rem;
    }

    /* Unterseiten */
    .page--sub {
        padding: 0 1.5rem 0;
    }

    .site-brand {
        top: 4.5rem;
        padding: 0 1.5rem;
    }

    .site-logo {
        width: 3.5rem;
    }

    .site-brand-title {
        font-size: clamp(1.3rem, 6.2vw, 1.8rem);
        letter-spacing: 0.03em;
    }

    .site-brand-tags {
        margin-top: 0.55rem;
        gap: 1rem;
        font-size: 0.6rem;
        letter-spacing: 0.06em;
    }

    .page-content {
        margin-top: 11.5rem;
    }

    .page--home .page-content {
        margin-top: 50vh;
    }

    .text-block.home-description {
        font-size: 0.9rem;
    }

    .content-column--home-intro {
        grid-column: auto;
    }

    .content-grid {
        grid-template-columns: 1fr;
        gap: 2rem;
    }

    .page-content--split {
        overflow-y: auto;
    }

    .page-content--split .content-grid,
    .page-content--split .content-column {
        height: auto;
    }

    .scroll-panel {
        height: auto;
        overflow: visible;
        padding-right: 0;
    }

    .team-member {
        flex-direction: column;
        gap: 1rem;
    }

    .team-member img {
        width: 150px;
        height: 150px;
    }
}
