/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  GeneratePress child theme
 Author:       Florian Tress
 Author URI:   https://tress-webdesign.de
 Template:     generatepress
 Version:      1.0
*/





/* ================================================
 * Google Fonts - Lora
 * ================================================ */

/* lora-regular - latin */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-regular.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-regular.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-regular.svg#Lora') format('svg'); /* Legacy iOS */
}

/* lora-700 - latin */
@font-face {
  font-family: 'Lora';
  font-style: normal;
  font-weight: 700;
  src: url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700.woff') format('woff'), /* Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700.svg#Lora') format('svg'); /* Legacy iOS */
}

/* lora-italic - latin */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 400;
  src: url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-italic.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-italic.svg#Lora') format('svg'); /* Legacy iOS */
}

/* lora-700italic - latin */
@font-face {
  font-family: 'Lora';
  font-style: italic;
  font-weight: 700;
  src: url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700italic.eot'); /* IE9 Compat Modes */
  src: local(''),
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700italic.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700italic.woff') format('woff'), /* Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/wp-content/themes/generatepress_child/fonts/lora-v15-latin-700italic.svg#Lora') format('svg'); /* Legacy iOS */
}

 /* ================================================
 * Google Fonts - Lora - Ende
 * ================================================ */


  /* ================================================
 * Google Fonts - Sorts Mill Goudy
 * ================================================ */

/* sorts-mill-goudy-regular - latin */
@font-face {
  font-family: 'Sorts Mill Goudy';
  font-style: normal;
  font-weight: 400;
  src: url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-regular.eot'); /* IE9 Compat Modes */
  src: local('Sorts Mill Goudy Regular'), local('SortsMillGoudy-Regular'),
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-regular.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-regular.woff') format('woff'), /* Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-regular.svg#SortsMillGoudy') format('svg'); /* Legacy iOS */
}

/* sorts-mill-goudy-italic - latin */
@font-face {
  font-family: 'Sorts Mill Goudy';
  font-style: italic;
  font-weight: 400;
  src: url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-italic.eot'); /* IE9 Compat Modes */
  src: local('Sorts Mill Goudy Italic'), local('SortsMillGoudy-Italic'),
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-italic.eot#iefix') format('embedded-opentype'), /* IE6-IE8 */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-italic.woff') format('woff'), /* Modern Browsers */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
       url('/wp-content/themes/generatepress_child/fonts/sorts-mill-goudy-v9-latin-italic.svg#SortsMillGoudy') format('svg'); /* Legacy iOS */
}

  /* ================================================
 * Google Fonts - Sorts Mill Goudy - Ende
 * ================================================ */




















/* ================================================
 * Mit diesem CSS wird GeneratePress voll barrierefrei - Siehe: https://wordpress.org/support/topic/accessibility-ready-tag-4/
 * ================================================ */

.entry-content a {
    text-decoration: underline;
}
.entry-content a:hover,
.entry-content a:focus {
    text-decoration: none;
}

/* ================================================
 * GeneratePress  Barrierefrei - Ende
 * ================================================ */




/* ================================================
 * Elementor Fix - Elementor blockiert sonst den Skip to Content Link
 * ================================================ */

.screen-reader-text:focus {
    top: auto;
}

/* ================================================
 * Elementor Fix - Ende
 * ================================================ */





 /* ================================================
 * Entfernt den den Margin des letzten p-tags in Elementor (Dave Foy)
 * ================================================ */

/* Removes bottom margin from the last paragraph in an Elementor text widget - add to Simple CSS plugin */
.elementor-text-editor p:last-child {
    margin-bottom: 0px;
}

/* ================================================
 * Entfernt den den Margin des letzten p-tags in Elementor - Ende
 * ================================================ */





 /* ================================================================================================
  * CSS aus Customizer
  * ================================================================================================ */


 /* ============================
 * Responsive Einstellungen
 * ============================ */


@media (max-width: 768px) {
    /* CSS in here for mobile only */
}
@media (min-width: 769px) and (max-width: 1024px) {
    /* CSS in here for tablet only */
}
@media (min-width: 1025px) {
    /* CSS in here for desktop only */
}

/* ============================
 * Responsive Einstellungen - Ende
 * ============================ */



/* ============================
 * Mobile Fix bis 768px Breite
 * ============================ */

.site-info {
  padding-left: 10px;
  padding-right: 10px;
}

.mobile-header-navigation {
  background-color: rgba(255,255,255,0.975);
  position: relative;
}

.mobile-header-navigation .inside-navigation {
  padding-left: 10px;
  padding-right: 10px;
}

@media (min-width: 375px) and (max-width: 679px) {

  .mobile-header-navigation .inside-navigation {
    padding-left: 10px;
    padding-right: 10px;
  }
  
}

@media (max-width: 679px) {

  body .navigation-branding {
    margin-left: 0;
  }
  body .main-navigation.has-sticky-branding.navigation-stick .menu-toggle,
  body .main-navigation.has-branding .menu-toggle {
    padding-right: 10px;
  }
  
}

@media (min-width: 768px) and (max-width: 768px) {

  body .navigation-branding {
    margin-left: 30px;
  }
  
}

@media (min-width: 769px) {

  body .navigation-branding {
    margin-left: 20px;
  }
  
}

@media (min-width: 680px) and (max-width: 768px) {

  .mobile-header-navigation .inside-navigation {
    padding-left: 0px;
    padding-right: 0px;
  }

  body:not(.home) #page .site-content {
    padding-left: 20px;
    padding-right: 20px;
  }
  
}

@media (min-width: 680px) {
  
  .site-info {
    padding-left: 40px;
    padding-right: 40px;
  }
  
}

@media (max-width: 679px) {
  
  .mobile-header-navigation .navigation-branding .main-title {
    margin-left: 0;
  }
  
  .main-navigation.has-branding .menu-toggle,
  .main-navigation.has-sticky-branding.navigation-stick .menu-toggle {
    padding-right: 10px;
  }
  
}

/* Bringt den Seitentitel für Tabletgroesse auf die Linie der Navigation */
@media (min-width: 769px) and (max-width: 1024px) {
  
  
  
}

/* ============================
 * Mobile Fix fuer 768px Breite - Ende
 * ============================ */



/* ============================
 * Off Canvas Menu
 * ============================ */

.slideout-navigation button.slideout-exit {
  color: #fff;
  font-weight: 700;
}

/* ============================
 * Off Canvas Menu - Ende
 * ============================ */



/* ============================
 * Hauptnavigation
 * ============================ */


.mobile-header-navigation .navigation-branding .main-title {
    margin-bottom: -2px;
  }
@media (min-width: 768px) {
  .mobile-header-navigation .navigation-branding .main-title {
    margin-bottom: -6px;
  }
}


@media (min-width: 769px) and  (max-width: 880px) {
  .main-title {
    font-size: 26px;
  }
  .site-description {
    text-align: center;
  }
  .site-branding {
    margin-bottom: 20px;
  }
}

@media (min-width: 1181px) {
  .main-navigation {
    top: 14px;
    top: 2px;
    position: relative;
  }
  
  .main-navigation ul li a {
    border-bottom: 1px solid #ffffff;
    margin-left: 10px;
    margin-right: 10px;
  }
  .main-navigation ul li a:hover,
  .main-navigation ul li a:focus,
  .main-navigation ul li.current-menu-item a {
    border-bottom: 1px solid #009A9C;
  }
  .main-navigation ul li.sfHover {
    z-index: 9999;
  }
  
  .main-navigation ul.sub-menu {
    margin-left: 10px;
    margin-top: -1px;
    box-shadow: 0 54px 71px 0 rgba(0,0,0,.09);
  }
  .main-navigation ul.sub-menu li a {
    border-bottom: 1px solid #ffffff;
    margin-left: 0px;
    margin-right: 0px;
  }
  .main-navigation ul.sub-menu li:last-child a {
    border-bottom: none;
  }
}

@media (max-width: 767px) {
  #sticky-navigation .inside-navigation {
    padding-left: 20px;
    padding-right: 10px;
  }
}

@media (min-width: 768px) and (max-width: 1260px) {
  #sticky-navigation .inside-navigation {
    padding-left: 40px;
    padding-right: 30px;
  }
}

#sticky-navigation {
  background-color: rgba(255,255,255,0.975);
}

#sticky-navigation li.menu-item-has-children a:hover {
    border-bottom: 1px solid #fff;
}
#sticky-navigation ul.sub-menu {
    margin-top: 0px;
}

/* SlideOut Navigation */

.slideout-navigation.do-overlay .menu-item-has-children .dropdown-menu-toggle {
    border-left: 1px solid #d1d0cc;
}

/* ============================
 * Hauptnavigation
 * ============================ */



/* ============================
 * Footer
 * ============================ */

.site-info .external-link-subfooter,
.site-info .external-link-subfooter:visited {
  text-decoration: underline;
}
.site-info .external-link-subfooter:hover,
.site-info .external-link-subfooter:focus {
  text-decoration: none;
  color: #606060;
}

.footer-bar a {
  text-decoration: underline;
}
.footer-bar a:hover,
.footer-bar a:focus {
  text-decoration: none;
}

/* Footer immer unten am Browserfenster */

@media (min-width: 768px) {
  body:not(.home) .site {
    min-height: calc( 100vh - 177px );
  }

  body.featured-image-active:not(.home) .site {
    min-height: calc( 100vh - 657px );
  }
}

/* ============================
 * Footer - Ende
 * ============================ */

.site-content {
  margin-top: 80px;
}
.home .site-content {
  margin-top: 0px;
}

@media (max-width: 767px) {
  .main-title {
    top: 2px;
    position: relative;
  }
}

@media (min-width: 768px) and (max-width: 768px) {
  .main-title {
    font-size: 26px;
  }
}

.main-title {
  letter-spacing: 0.5px;
}
.site-description {
  letter-spacing: 0.1px;
}

.menu-site-title {
    float: left;
    font-size: 20px;
    color: #202329;
    line-height: 41px;
}
.menu-site-title {
    display: none;
}
.navigation-stick .menu-site-title {
    display: block;
}

#sticky-navigation .current_page_item a {
  border: none;
}
#sticky-navigation .current_page_item a:hover,
#sticky-navigation .current_page_item a:focus {
  border-bottom: 1px solid #009A9C;
}



.accent p:after {
    content: ""; 
    display: block;  
    width: 90px;
    border-bottom: 1px solid #009A9C; 
}

.site-header {
  z-index: 9;
}

@media (min-width: 768px) and (max-width: 768px) {
  .home-header-section {
    top: -105px;
  }
}

@media (min-width: 769px) {
  .home-header-section {
    top: -87px;
  }
}

a.link-unterstrichen {
  display: inline-block;
  padding: 0 0 1px;
  border-bottom: 1px solid #DCDCDA;
  color: #202329;
  -webkit-transition: border-color 250ms ease-in-out,opacity 250ms ease-in-out;
  transition: border-color 250ms ease-in-out,opacity 250ms ease-in-out;
  font-weight: 700;
}
a.link-unterstrichen:hover,
a.link-unterstrichen:focus {
  border-bottom: 1px solid rgba(255,255,255,0);
  color: #202329;
  opacity: 0.6;
}

.schatten img,
.schatten a.elementor-button-link {
  box-shadow: 0 54px 71px 0 rgba(0,0,0,0.098);
}

.unsichtbar {
  display: none;
}

.home .inside-article a:visited, .home .paging-navigation a:visited, .home .comments-area a:visited, .home .page-header a:visited {
    color: #202329;
}

/* Unterseiten */

body:not(.home) blockquote cite {
  font-size: 0.875rem;
}

body:not(.home) .inside-article {
  max-width: 680px;
  margin: 0 auto;
}

body:not(.home) .entry-content .wp-block-image figcaption {
  font-style: italic;
  font-size: 80%;
  margin-top: 0;
}


body:not(.home) .featured-image img {
  max-height: 30rem;
  object-fit: cover;
  object-position: 50% 50%;
}
@media (min-width: 768px) and (max-width: 768px) {
  body:not(.home) .featured-image img {
  margin-top: 0px;
  }
}
@media (min-width: 769px) {
  body:not(.home) .featured-image img {
  margin-top:5px;
  }
}

body:not(.home) .entry-content ul {
  margin-left: 1em;
}

/* Tabellen */

body:not(.home) .tabelle-formatierung figcaption {
  font-size: 0.75rem;
}

body:not(.home) .tabelle-formatierung {
  margin-top: 2.5rem;
}

.ml-table {
  padding: 0 10px 0px 10px;
}

/* Externer Link */
/* https://webdesign.weisshart.de/externe_links.php */

body:not(.home) .inside-article a[href^="http"]:not([href*="ghostwriter-baehr.de"]),
.external-link-subfooter {  background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iOTVweCIgaGVpZ2h0PSI5NXB4IiB2aWV3Qm94PSIwIDAgOTUgOTUiIHZlcnNpb249IjEuMSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB4bWxuczp4bGluaz0iaHR0cDovL3d3dy53My5vcmcvMTk5OS94bGluayI+CiAgICA8IS0tIEdlbmVyYXRvcjogU2tldGNoIDYzLjEgKDkyNDUyKSAtIGh0dHBzOi8vc2tldGNoLmNvbSAtLT4KICAgIDx0aXRsZT5leHRlcm5hbC1saW5rLWljb248L3RpdGxlPgogICAgPGRlc2M+Q3JlYXRlZCB3aXRoIFNrZXRjaC48L2Rlc2M+CiAgICA8ZyBpZD0iUGFnZS0xIiBzdHJva2U9Im5vbmUiIHN0cm9rZS13aWR0aD0iMSIgZmlsbD0ibm9uZSIgZmlsbC1ydWxlPSJldmVub2RkIj4KICAgICAgICA8ZyBpZD0iZXh0ZXJuYWwtbGluay1pY29uIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3LjAwMDAwMCwgLTI1LjAwMDAwMCkiPgogICAgICAgICAgICA8cGF0aCBkPSJNODAsODAuNzE0Mjg1NyBMODAsMTA3Ljk1NTM1NyBDODAsMTEyLjQxMzA4NCA3OS40MTgyNzgsMTEzIDc1LDExMyBMNSwxMTMgQzAuNTgxNzIyMDAxLDExMyAwLDExMi40MTMwODQgMCwxMDcuOTU1MzU3IEwwLDM3LjMzMDM1NzEgQzAsMzIuODcyNjMwMiAwLjU4MTcyMjAwMSwzMi4yODU3MTQzIDUsMzIuMjg1NzE0MyBMMzIsMzIuMjg1NzE0MyIgaWQ9IlBhdGgiIHN0cm9rZT0iIzQwNDM0QSIgc3Ryb2tlLXdpZHRoPSIxNCI+PC9wYXRoPgogICAgICAgICAgICA8cG9seWdvbiBpZD0iVHJpYW5nbGUiIGZpbGw9IiM0MDQzNEEiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDc1LjAwMDAwMCwgMzcuOTQ1MzA3KSByb3RhdGUoNDUuMDAwMDAwKSB0cmFuc2xhdGUoLTc1LjAwMDAwMCwgLTM3Ljk0NTMwNykgIiBwb2ludHM9Ijc0Ljg0Mzc1IDIwLjI4OTA1NjkgMTEwLjE1NjI1IDU1LjYwMTU1NjkgMzkuODQzNzUgNTUuMjg5MDU2OSI+PC9wb2x5Z29uPgogICAgICAgICAgICA8bGluZSB4MT0iMzcuNTgzNjE2NyIgeTE9Ijc1LjI1NDk2MzQiIHgyPSI2OC41NzQ2MTE0IiB5Mj0iNDQuNzQ5ODYzNyIgaWQ9IkxpbmUtMiIgc3Ryb2tlPSIjNDA0MzRBIiBzdHJva2Utd2lkdGg9IjE5IiBzdHJva2UtbGluZWNhcD0ic3F1YXJlIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg1My4wNzkxMTQsIDYwLjAwMjQxNCkgcm90YXRlKC0xLjAwMDAwMCkgdHJhbnNsYXRlKC01My4wNzkxMTQsIC02MC4wMDI0MTQpICI+PC9saW5lPgogICAgICAgIDwvZz4KICAgIDwvZz4KPC9zdmc+') no-repeat;
  display: inline-block;
  padding-left: 1em;
  background-position: 0em .5em;
  background-size: 12px;
}
.external-link-subfooter {
  display: inline-block;
  padding-left: 0.938em;
  background-position: 0em .5em;
  background-size: 9px;
}

/* =======================
 * Leistungen Grid
 * ======================= */

.leistungen-grid {
  max-width: 100%;
  margin: 20px auto;
}
@media (min-width: 769px) {
  .leistungen-grid {
    max-width: 680px;
  }
}

@media (min-width: 680px) and (max-width: 768px) {
  .leistungen-grid {

  }
}

.leistungen-grid-inner-wrap {
  margin-left: -10px;
  margin-right: -10px;
  display: block;
  position: relative;
}

.leistungen-grid .child {
  margin-bottom: 20px;
}

.leistungen-grid .child a {
  background-color: #009A9C;
  min-height: 200px;
  display: flex;
  width: 100%;
  position: relative;
  box-shadow: 0 54px 71px 0 rgba(0,0,0,0.098);
}
.leistungen-grid .child a:hover,
.leistungen-grid .child a:focus {
  opacity: 0.85;
}

.leistungen-grid .block {
  padding: 10px 20px;
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
}
.leistungen-grid .block .title {
  font-size: 1.25rem;
  color: #fff;
  text-align: center;
  margin: 0;
}