@import url('https://fonts.googleapis.com/css2?family=Sofia+Sans:wght@400;500;600;700&family=Sofia+Sans+Condensed:wght@300;400;600;700;800&display=swap');

/* === Wort-Klassen für einzelne Teile einer Headline === */
.sofia        { font-family: 'Sofia Sans', sans-serif !important; }
.sofia-bold   { font-family: 'Sofia Sans', sans-serif !important; font-weight: 700 !important; }
.sofia-cond   { font-family: 'Sofia Sans Condensed', sans-serif !important; }
.sofia-cond-xb{ font-family: 'Sofia Sans Condensed', sans-serif !important; font-weight: 800 !important; }
.dosis        { font-family: 'Dosis', sans-serif !important; }
.cyan         { color: #43BCCC !important; }

/* === H2 grundsätzlich in Sofia Sans (ohne !important, damit Spans gewinnen) === */
h2, .vc_custom_heading h2 {
    font-family: 'Sofia Sans', sans-serif;
    font-weight: 600;
}

/* === Page-Title & Breadcrumb === */
.present-container h1.page_title {
    color: #ffffff;
    opacity: 0;
    font-size: 50px;
    font-family: 'Dosis', 'Arial', 'sans-serif';
    font-weight: 600;
    margin-top: 0px;
}
.alma_breadcrumbs, .alma_breadcrumbs a, .alma_breadcrumbs span {
    font-family: 'Dosis', 'Arial', 'sans-serif';
    font-weight: 500;
    color: #bfbfbf;
    opacity: 0;
    font-size: 11px;
}

/* === Footer-Kontakt-Widget === */
.widget-contact-info-content {
    white-space: initial;
    margin-bottom: 20px;
    padding-left: 0;
    font-family: 'Open Sans', 'Arial', 'sans-serif';
    font-weight: normal;
    font-size: 15px;
}
.widget-contact-info-content {
    white-space: initial;
    margin-bottom: 20px;
    padding-left: 0;
    font-family: 'Open Sans', 'Arial', 'sans-serif';
    font-weight: normal;
    font-size: 15px;
}

h2, .vc_custom_heading h2 {
    font-family: 'Sofia Sans', sans-serif !important;
    font-weight: 600;
}

.real-akzent {
    font-family: 'Sofia Sans Condensed', sans-serif !important;
    font-weight: 800 !important;
    font-size: 1.15em !important;
    line-height: 1 !important;
}

h1 {
    letter-spacing: -0.5px;
    line-height: 0.95;
    margin: 0;
}

h1 {
    letter-spacing: -0.5px;
    line-height: 0.9;
    margin-top: 0 !important;
    margin-bottom: 0 !important;
    font-weight: 600;
}

#primary_footer {
    background: linear-gradient(135deg, #000000 0%, #00454d 100%) !important;
}