/* source-sans-pro-300 - latin */
/* cairo-300 - latin */
@font-face {
  font-family: 'Cairo';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/cairo-v5-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Cairo Light'), local('Cairo-Light'),
       url('../fonts/cairo-v5-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/cairo-v5-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/cairo-v5-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/cairo-v5-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/cairo-v5-latin-300.svg#Cairo') format('svg'); /* Legacy iOS */
}
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 300;
  src: url('../fonts/source-sans-pro-v12-latin-300.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Light'), local('SourceSansPro-Light'),
       url('../fonts/source-sans-pro-v12-latin-300.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v12-latin-300.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v12-latin-300.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v12-latin-300.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v12-latin-300.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}
/* source-sans-pro-regular - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 400;
  src: url('../fonts/source-sans-pro-v12-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Regular'), local('SourceSansPro-Regular'),
       url('../fonts/source-sans-pro-v12-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v12-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v12-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v12-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v12-latin-regular.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}
/* source-sans-pro-700 - latin */
@font-face {
  font-family: 'Source Sans Pro';
  font-style: normal;
  font-weight: 700;
  src: url('../fonts/source-sans-pro-v12-latin-700.eot'); /* IE9 Compat Modes */
  src: local('Source Sans Pro Bold'), local('SourceSansPro-Bold'),
       url('../fonts/source-sans-pro-v12-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/source-sans-pro-v12-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/source-sans-pro-v12-latin-700.woff') format('woff'), /* Modern Browsers */
       url('../fonts/source-sans-pro-v12-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/source-sans-pro-v12-latin-700.svg#SourceSansPro') format('svg'); /* Legacy iOS */
}

/* playfair-display-italic - latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 400;
  src: url('../fonts/playfair-display-v14-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Playfair Display Italic'), local('PlayfairDisplay-Italic'),
       url('../fonts/playfair-display-v14-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/playfair-display-v14-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/playfair-display-v14-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/playfair-display-v14-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/playfair-display-v14-latin-italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}
/* playfair-display-700italic - latin */
@font-face {
  font-family: 'Playfair Display';
  font-style: italic;
  font-weight: 700;
  src: url('../fonts/playfair-display-v14-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local('Playfair Display Bold Italic'), local('PlayfairDisplay-BoldItalic'),
       url('../fonts/playfair-display-v14-latin-700italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('../fonts/playfair-display-v14-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('../fonts/playfair-display-v14-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('../fonts/playfair-display-v14-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('../fonts/playfair-display-v14-latin-700italic.svg#PlayfairDisplay') format('svg'); /* Legacy iOS */
}

.rs-background-video-layer iframe {
visibility:inherit !important;
}

.ce_revolutionslider .tp-bannertimer {

    top: auto;
    bottom: 0;
    height: 5px;
    visibility:hidden !important;
}
#top_link a {
    position: relative;
    display: block;
    transition: All 0.6s ease;
    -webkit-transition: All 0.6s ease;
    float: left;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.3);
    text-align: center;
    line-height: inherit;
    border-radius: 100%;
    box-shadow: 0 0 25px 0 rgba(0,0,0,0.04);
    border: 1px solid rgba(255,255,255,0.3);
    font-size: 12px;
    line-height: 41px;
    cursor: pointer;
}

#footer .totop::before {
    font-family: "FontAwesome";
    content: '\f102';
    background: #252525);
    width: 40px;
    height: 40px;
    display: block;
    text-align: center;
    line-height: 40px;
    font-size: 21px;
    border-radius: 100%;
    visibility : hidden;
}

.mod_portfoliolist_v5 .item .image::after {
    content: '';
    width: 100%;
    height: 100%;
    display: block;
    background: rgba(69,69,69,0.7);
    opacity: 0;
    transition: opacity 0.3s ease;
    -webkit-transition: opacity 0.3s ease;
}

.ce_text_extented.font-style-quote p {
    border-left: 1px solid rgb(69, 69, 69);
    padding-left: 20px;
    position: relative;
}
/* Schriftgröße im Cookie-Banner */
.cookiebar_slim .content,
.mod_cookiebar_optin_medium .content {
    font-size: 0.7rem; /* Standard: 1rem = 16px, anpassen nach Bedarf */
    line-height: 1.5; /* Zeilenabstand für bessere Lesbarkeit */
}
/* Schriftgröße der Buttons (Zustimmen/Nicht zustimmen) */
.cookiebar_slim .cookiebar_button a,
.mod_cookiebar_optin_medium .cookiebar_button a {
    font-size: 0.7rem; /* Etwas kleiner als der Fließtext */
    min-width: 120px; /* Breite der Buttons anpassen */
}
/* Tablet-Menü: Standard-Schriftfarbe (weiß) */
.smartmenu-content .mod_navigation a {
    color: #ffffff !important; /* Weiß */
    font-weight: 300 !important; /* Leicht */
}

/* Tablet-Menü: Hover-Zustand (minimal dunkler, z. B. hellgrau) */
.smartmenu-content .mod_navigation a:hover {
    color: #e0e0e0 !important; /* Sehr helles Grau */
    background: transparent !important;
}

/* Tablet-Menü: Aktiver Menüpunkt (weiß) */
.smartmenu-content .mod_navigation a.active,
.smartmenu-content .mod_navigation a.trail {
    color: #ffffff !important; /* Weiß */
    background: transparent !important;
}

/* Hintergrund des Tablet-Menüs (dunkel) */
.smartmenu-content {
    background: rgba(0, 0, 0, 0.8) !important; /* 80% Schwarz */
}

/* Hauptmenü: Schriftstärke 300 und Zeilenabstand */
.mainmenu ul li a {
    font-weight: 300 !important; /* Leicht */
    line-height: 2.2 !important; /* Zeilenabstand vergrößern */
    font-size: 1rem !important; /* Schriftgröße */
}

/* Mobile Menü: Abstand vom linken Rand und bessere Ausrichtung */
body .mm-menu .mm-listview > li > a {
    font-weight: 300 !important;
    font-size: 1.1rem !important;
    text-transform: uppercase !important;
    line-height: 2.2 !important;
    padding: 10px 20px !important; /* Abstand links/rechts */
    text-align: left !important; /* Text linksbündig */
}

/* Mobile Menü: Aktiver Menüpunkt */
body .mm-menu .mm-listview > li.mm-selected > a:not(.mm-next),
body .mm-menu .mm-listview > li.trail > a {
    font-weight: 300 !important;
    color: #000000 !important;
    padding: 10px 20px !important; /* Gleicher Abstand */
}

/* Mobile Menü: Hover-Zustand */
body .mm-menu .mm-listview > li:hover > a:not(.mm-next) {
    font-weight: 300 !important;
    color: #555555 !important;
    padding: 10px 20px !important; /* Gleicher Abstand */
}

/* Optional: Menüpunkte zentrieren (falls gewünscht) */
body .mm-menu .mm-listview > li {
    text-align: center !important; /* Zentriert die Menüpunkte */
    padding: 0 10px !important; /* Optional: Seitlicher Abstand */
}