/* Allgemeine Stile */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

body, html {
    height: 100%;
    font-family: Helvetica, sans-serif;
	color: #555555; /* Dunkelgraue Farbe */
	line-height: 1.2; /* Zeilenabstand */

}

/* Container */
.container {
    display: flex;
    height: 100vh;
    width: 100%;
    /*padding: 20px;*/
}

/* Linke Seite - Bild */
.left-side {
    width: 50%;
    position: relative;
}

.left-side img {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

/* Rechte Seite - Inhalt */
.right-side {
    width: 50%;
    overflow-y: auto;
    position: relative;
    padding: 40px 60px;
    padding-top: 70px; /* Verhindert, dass der Inhalt unter die Navigation rutscht */
    background-color: #f7f7f7;
}

/* Fixierte Navigation (für Desktop) */
.fixed-header {
    position: fixed;
    top: 0;
    right: 0;
    width: 50%; /* Auf Desktop nur die Hälfte */
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px;
    background-color: white;
    z-index: 1000;
    border-bottom: 1px solid #ddd;
	height: 60px;
}

.logo img {
    height: 50px;
    margin-left: 20px;
}

.hamburger {
    font-size: 30px;
    cursor: pointer;
    margin-right: 20px;
}

/* Mobile Navigation im Fullscreen */
.mobile-nav {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.mobile-nav a {
    color: #00BF93;
    font-size: 30px;
    text-decoration: none;
    margin: 20px 0;
}

.close {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 50px;
    color: white;
    cursor: pointer;
}

/* Überschriften */
h1 {
    font-size: 1.8em;
    margin-top: 40px;
	margin-bottom: 40px;
	color: black;
}

h2 {
    font-size: 1.4em;
    margin-bottom: 10px;
    margin-top: 20px; /* Fügt Abstand vor den h2-Titeln hinzu */
	color: black;
}

/* Icons und Titel vertikal zentriert und in einer Zeile */
.expertise h2, .offerings h2 {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
}

.expertise-icon {
    color: #00BF93;
    margin-right: 10px;
    font-size: 1.5em;
}

/* Absätze */
p {
    margin-bottom: 20px; /* Fügt Abstand nach den Absätzen hinzu */
}

/* Expertise und Angebote nebeneinander */
.expertise-offerings {
    display: flex;
    justify-content: space-between;
    margin-bottom: 20px;
}

.expertise, .offerings {
    width: 48%;
}

/* Aufzählungsliste mit hängendem Einzug und bündigem Start */
ul {
    list-style-type: disc;
    padding-left: 20px; /* Hängt vom Icon und Titel ab */
}

ul li {
    margin-bottom: 10px;
    padding-left: 20px; /* Platz für das Aufzählungszeichen und Text */
    list-style-position: outside; /* Aufzählungszeichen außerhalb des Textblocks */
}
/* Linkfarben festlegen */
a, a:visited {
    color: #00BF93; /* Gleiche Farbe wie die Icons */
    text-decoration: none; /* Entfernt die Unterstreichung */
}

a:hover, a:focus {
    color: #00BF93; /* Beibehaltung der Farbe beim Hover/Fokus */
    text-decoration: underline; /* Unterstreichen bei Hover/Fokus */
}

a:active {
    color: #00BF93; /* Gleiche Farbe auch bei aktiven Links */
}

/* Hervorhebung von Wörtern */
.bold-green {
    font-weight: bold;
    color: #00BF93;
}

/* Anpassungen für mobile Geräte */
@media only screen and (max-width: 768px) {
    .container {
        flex-direction: column; /* Spalten untereinander statt nebeneinander */
        height: auto; /* Höhe nicht beschränken */
    }

    /* Navigation bleibt ganz oben und nimmt die volle Breite ein */
    .fixed-header {
        width: 100%; /* Navigation nimmt volle Breite auf mobilen Geräten */
        left: 0;
    }

    /* Zuerst das Bild, dann der Text */
    .left-side {
        order: 1; /* Bild kommt zuerst */
        width: 100%; /* Volle Breite des Bildes */
        height: auto; /* Höhe des Bildes anpassen */
		padding-top: 60px;
    }

    .left-side img {
        width: 100%;
        height: auto; /* Bildgröße für mobile Geräte anpassen */
		margin: 0;
    }

    .right-side {
        order: 2; /* Text kommt nach dem Bild */
        width: 100%;
        padding: 20px; /* Weniger Padding für mobile Geräte */
    }

    /* Expertise und Angebote untereinander statt nebeneinander */
    .expertise-offerings {
        flex-direction: column; /* Inhalte untereinander anordnen */
    }

    .expertise, .offerings {
        width: 100%; /* Volle Breite für jedes Element */
        margin-bottom: 20px; /* Abstand zwischen den beiden Sektionen */
    }
	.calendly-inline-widget {
        min-width: 100%; /* Nimmt die volle Breite des Bildschirms ein */
        width: 100%; /* Maximale Breite 100% des Containers */
        height: 600px; /* Optional: Höhe anpassen für mobile Bildschirme */
    }

    .calendly-popup {
        padding: 20px; /* Platz um das Widget, damit es nicht direkt am Rand klebt */
		padding-top: 80px;
    }
}

/* Link zum Öffnen des Calendly-Popups */
.calendly-link {
    color: #00BF93;
    text-decoration: none; /* Entfernt Unterstreichung */
    font-weight: bold;
    cursor: pointer;
}

.calendly-link:hover {
    text-decoration: underline; /* Unterstreichung bei Hover */
}

/* Calendly-Popup-Styles */
.calendly-popup {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.9);
    z-index: 1000;
    justify-content: center;
    align-items: center;
    text-align: center;
}

.calendly-popup .close-calendly {
    position: absolute;
    top: 20px;
    right: 30px;
    font-size: 50px;
    color: white;
    cursor: pointer;
}

/* Standard-Desktop-Anzeige */
.calendly-inline-widget {
    width: 1020px; /* Standardbreite für größere Bildschirme */
    height: 750px;
}

/* Fußzeile */
.footer {
    padding: 20px;
    background-color: #f7f7f7;
    text-align: center;
    margin-top: 50px;
}

/* Social Icons */
.social-icons {
    display: flex;
    justify-content: center;
    gap: 20px; /* Abstand zwischen den Icons */
}

.social-link {
    color: #00BF93; /* Gleiche Farbe wie die anderen Icons */
    font-size: 24px; /* Größe der Icons */
    text-decoration: none; /* Keine Unterstreichung */
    transition: color 0.3s ease; /* Smooth hover transition */
}

.social-link:hover {
    color: #007B73; /* Optionale dunklere Farbe bei Hover */
}
