/* Mobile Styles */
@media screen and (max-width: 768px) {
    /* Allgemeine Anpassungen */
    body {
        font-size: 16px;
        line-height: 1.5;
    }

    /* Header Anpassungen */
    .header {
        padding: 10px;
    }

    .nav-menu {
        display: none;
    }

    .mobile-menu-button {
        display: block;
    }

    /* Content Anpassungen */
    .content {
        padding: 15px;
    }

    h1 {
        font-size: 24px;
    }

    h2 {
        font-size: 20px;
    }

    h3 {
        font-size: 18px;
    }

    p {
        font-size: 16px;
        line-height: 1.6;
    }

    /* Bildanpassungen */
    img {
        max-width: 100%;
        height: auto;
    }

    /* Formularanpassungen */
    input, textarea, select {
        width: 100%;
        margin-bottom: 10px;
    }

    /* Grid und Layout Anpassungen */
    .grid-container {
        grid-template-columns: 1fr;
    }

    .flex-container {
        flex-direction: column;
    }

    /* Button Anpassungen */
    .button {
        width: 100%;
        margin: 5px 0;
    }
}

/* Tablet Styles */
@media screen and (min-width: 769px) and (max-width: 1024px) {
    body {
        font-size: 17px;
    }

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

/* Kleine Mobile Geräte */
@media screen and (max-width: 480px) {
    body {
        font-size: 15px;
    }

    .header {
        padding: 5px;
    }

    .content {
        padding: 10px;
    }
}

@media (max-width: 991px) {
    .navbar-brand img {
        width: 80px;
        height: auto;
    }

    .hero-content {
        height: 40vh;
    }

    .hero {
        height: 65vh;
    }

    .hero-background  {
        height: 60vh;
    }

    .hero-overlay {
        height: 60vh;
    }

    .hero-title {
        font-size: 36px;
        line-height: 1.2;
    }

    .hero-slogan {
        font-size: 22px;
        line-height: 1.4;
    }

    /* Verbesserte Textformatierung */
    .content {
        text-rendering: optimizeLegibility;
        -webkit-font-smoothing: antialiased;
    }

    .content p {
        white-space: pre-line;
        word-spacing: normal;
        line-height: 1.5;
        margin-bottom: 1em;
        text-align: justify;
    }

    .content br {
        content: " ";
        display: block;
        margin: 0.5em 0;
    }

    /* Spezifische Anpassung für den Leistungstext */
    .content p:first-of-type {
        white-space: normal;
        word-spacing: normal;
    }
} 