/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       Tom Usborne
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/


/* titillium-web-300 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: normal;
  font-weight: 300;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-300italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: italic;
  font-weight: 300;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: normal;
  font-weight: 400;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: italic;
  font-weight: 400;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-600 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: normal;
  font-weight: 600;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-600italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: italic;
  font-weight: 600;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-700 - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: normal;
  font-weight: 700;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* titillium-web-700italic - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'herne';
  font-style: italic;
  font-weight: 700;
  src: url('../generatepress_child/fonts/titillium-web-v18-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}


/* #######################################################
 * Linien neben Main Container
 * #######################################################*/
.site.container, .main-navigation {
    border: 2px;
    box-shadow: 6px 0 0px #F2F2F2, -6px 0 0px #F2F2F2;
    max-width: 930px;
    margin: auto;
}


/* #######################################################
/* Gravity Forms Absenden-Buttone: Hover Effekt */
/* #######################################################*/
body .gform_wrapper .gform_footer input[type="submit"]:hover {
    background-color: #DCE7EB !important; 
	color: #356C7C !important;
	border: 2px solid #356C7C !important;
}


/* #######################################################
/* Gravity Forms Absenden-Buttone: Focus Effekt */
/* #######################################################*/
body .gform_wrapper .gform_footer input[type="submit"]:focus {
    background-color: #DCE7EB !important; 
	color: #356C7C !important;
	border: 2px solid #356C7C !important;
}


/* #######################################################
/* Gravity Forms Bestätigungsnachricht für Nutzer nach Absenden*/
/* #######################################################*/
#gform_confirmation_message_1 {
    background-color: #f8f8f8;
    border: none;
   margin: 10px auto;
   padding: 30px 10px;
   color: #000000;
   text-align: center
	}


/* #######################################################
/* Gravity Forms: Formulartitel ausblenden
/* #######################################################*/
body .gform_wrapper h2.gform_title {
    display: none !important;
}





body .leaflet-pane.leaflet-tooltip-pane {
	display: none;
}


/* #######################################################
/* Weißer Rand um jedes Menu Item auf Desktop
/* #######################################################*/
@media (min-width: 931px) {
	.main-navigation li { 
		border: 1px solid #fff; 
}
}

/* #######################################################
/* Jedes Menu Item fixe Breite 132px
/* #######################################################*/
@media (min-width: 931px) {
  /* Jedes Item exakt 113.8 inkl. weißem Rand */
  .main-navigation .main-nav > ul > li {
    box-sizing: border-box;
    flex: 0 0 116.2px;
    width: 116.2px;
    border: 1px solid #fff;
    margin: 0;
  }

  /* Link innen mittig, ohne GP-Padding */
  .main-navigation .main-nav > ul > li > a {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    width: 100%;
    height: 44px;   /* Höhe nach Wunsch anpassen */
    line-height: 1; /* vermeidet zusätzliche Höhe */
    text-align: center;
  }
}


/* #######################################################
/* Search Modal Button in Primary Menu integrieren
/* #######################################################*/
@media (min-width:769px) {
    .main-navigation .main-nav ul li.nav-button a {
        background-color: #ffffff;
        border: 2px solid #000000;
        color: #000000;
        line-height: 30px; /*this number will likely need to be adjusted*/
    }
}


@media (min-width: 931px) {
  /* nur der GB-Button mit Klasse nav-button */
  .main-navigation .menu-bar-items .nav-button {
    border: 1px solid #fff;        /* der gewünschte weiße Rand */
  }
}


/* #######################################################
/* Barrierefreiheit der Sidebar-Überschriften
/* #######################################################*/
.visually-hidden {
  position: absolute !important;
  width: 1px; height: 1px;
  margin: -1px; padding: 0;
  border: 0; clip: rect(0 0 0 0);
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}


/* #######################################################
/* Top-Bar (Gap) nur ab 931px anzeigen
/* #######################################################*/
@media (max-width: 930px) {
  .top-bar {
    display: none !important;
  }
}


/* #######################################################
/* Tablet & Mobile: Suche links, Menü (Hamburger) rechts
/* #######################################################*/
@media (max-width: 930px) {
  /* Suche (menu-bar-items) nach links */
  .main-navigation .menu-bar-items {
    order: 1;
    margin-right: auto; /* schiebt den Rest nach rechts */
  }

  /* Hamburger-Button nach rechts */
  .main-navigation .menu-toggle {
    order: 2;
    margin-left: auto;
  }
}


/* #######################################################
/* Search Modal aus dem Customizer ausblenden
/* #######################################################*/
.main-navigation .menu-bar-items a[aria-label="Suche öffnen"] {
  display: none !important;
}


/* #######################################################
/* Search Modal Eingabefeld für Mobile optimieren
/* #######################################################*/
@media (max-width: 767px) {
  /* die Formularhülle mittig mit fixer Max-Breite */
  #gp-search .search-modal-form {
    width: min(92vw, 420px);
    margin: 0 auto;
  }
}


/* #######################################################
/* Primary Nav Farben für Tastaturfokus anpassen; Anzeige der aktuellen Seite nach Abbruch einer Suche optimieren
/* #######################################################*/
/* AKTUELLER MENÜPUNKT (Startseite etc.) */
.main-navigation .main-nav > ul > li.current-menu-item > a,
.main-navigation .main-nav > ul > li.current_page_item > a {
  background-color: #356C7C; /* aktiv */
  color: #DCE7EB;            /* aktiv: Schrift */
}

/* HOVER = FOKUS (Tastatur) – identische Farben */
.main-navigation .main-nav > ul > li > a:hover,
.main-navigation .main-nav > ul > li > a:focus-visible {
  background-color: #4D8595; 
  color: #ffffff;           
  text-decoration: none;
  outline: 2px solid transparent; 
}

/* (Fallback für Browser ohne :focus-visible) */
.main-navigation .main-nav > ul > li > a:focus {
  background-color: #4D8595;
  color: #ffffff;
}


/* #######################################################
/* Grauer Rand am Footer für Tablet anpassen
/* #######################################################*/
@media (max-width: 935px) {
  .gb-container-688a0a9a {
    border-left: none !important;
    border-right: none !important;
  }
}


/* #######################################################
/* Back-to-Top-Button am Footer positionieren 
/* #######################################################*/
.site-footer { position: relative; }

/* Back-to-top zentriert am oberen Fußerrand */
.footer-back-to-top-wrap {
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%); /* exakt mittig */
  padding-top: 8px;            /* Abstand nach unten */
  display: flex;
  justify-content: center;
}


/* #######################################################
/* Smooth Scrolling für alle Anchor Links
/* #######################################################*/
html { scroll-behavior: smooth; }


/* #######################################################
/* Tabellen: Zeilenfarbe aus Weiß setzen
/* #######################################################*/
.wp-block-table.is-style-stripes tbody tr:nth-child(2n+1) {
  background-color: #f6f6f6;
}


/* #######################################################
/* Tabellen: Border außen wegmachen
/* #######################################################*/
/* alle Zell-Borders aus */
.wp-block-table td,
.wp-block-table th {
  border: none !important;
}


/* Border am <table>/<figure> selbst entfernen */
.wp-block-table,
.wp-block-table table {
  border: 0 !important;
  box-shadow: none !important;
}


/* keine Border in erster/letzter Spalte */
.wp-block-table.is-style-stripes tbody tr > *:first-child,
.wp-block-table.is-style-stripes thead tr > *:first-child {
  border-left: none !important;
}
.wp-block-table.is-style-stripes tbody tr > *:last-child,
.wp-block-table.is-style-stripes thead tr > *:last-child {
  border-right: none !important;
}


/* #######################################################
/* Tabellen: Linie unter erster Zeile in CD-Farbe
/* #######################################################*/
.wp-block-table thead th {
  border-bottom: 3px solid #87aeb9 !important;
}


/* #######################################################
/* Tabellen: Automatische Silbenumbrücke auf kleineren Screens
/* #######################################################*/
.wp-block-table td, 
.wp-block-table th {
  hyphens: auto;      
  word-break: normal;
}


/* #######################################################
/* Able Player an Containergröße anpassen
/* #######################################################*/
.gb-container .able-wrapper,
.gb-container .able,
.gb-container .able-vidcap-container,
.gb-container .able-media-container {
  max-width: 100% !important; 
  width: 100% !important;
}

/* Responsive Video-Anzeige */
.gb-container .able video,
.gb-container .able iframe {
  width: 100% !important;
  height: auto !important;
  max-width: 100%;
}


/* #######################################################
/* Schatten des Able Player deaktivieren
/* #######################################################*/
.able-skin-2020 .able,
.able-skin-2020 iframe {
  box-shadow: none !important;
}


/* #######################################################
/* Schriftart im Able Player anpassen
/* #######################################################*/
.able-player,
.able-player * {
  font-family: "herne", sans-serif !important;
}


/* #######################################################
/* Farne der Steuerleiste des Able Player anpassen
/* #######################################################*/
.able-skin-2020 .able-controller {
  background-color: #356C7C !important; 
}


/* #######################################################
/* Weiter-/Zurück-Button in News links und rechts positionieren
/* #######################################################*/
/* Nur "Nächste Seite" → rechts */
.gb-query-loop-pagination:has(.naechste-seite:only-child) {
  justify-content: flex-end;
}

/* Nur "Vorherige Seite" → links */
.gb-query-loop-pagination:has(.vorherige-seite:only-child) {
  justify-content: flex-start;
}


/* #######################################################
/* Search Button auf 404 abrunden
/* #######################################################*/
.wp-block-search__button {
  border-radius: 6px;
  margin-left: 5px; /* etwas Abstand zum Feld */
}

/* Hover-Effekt */
.wp-block-search__button:hover {
  background-color: #356C7C;   /* dunkler als normal */
  color: #fff;                 /* Schriftfarbe anpassen */
  cursor: pointer;
}

/* Fokus-Effekt (für Tastaturnutzer) */
.wp-block-search__button:focus,
.wp-block-search__button:focus-visible {
  outline: 2px solid #356C7C;   /* sichtbare Umrandung */
  outline-offset: 2px;
}


/* #######################################################
/* Interaktive Karte vorerst ausblenden
/* #######################################################*/
.map-iframe-wrap {
  display: none;
}


/* #######################################################
/* Neues-Fenster-Icon bei Social Media Icons ausblenden
/* #######################################################*/
.gb-button .anww-external-link-icon {
  display: none !important;
}


/* #######################################################
/* Hand-Icon in Beiträgen größer machen
/* #######################################################*/
.gb-headline .gb-icon svg {
    width: 40px !important;  
    height: 40px !important; 
    flex-shrink: 0;          
}
