/*
 Theme Name:   GeneratePress Child
 Theme URI:    https://generatepress.com
 Description:  Default GeneratePress child theme
 Author:       WebWork Beate Bodendorf
 Author URI:   https://tomusborne.com
 Template:     generatepress
 Version:      0.1
*/

html {box-sizing: border-box;}
*, ::before, ::after {box-sizing: inherit;}

/*Video*/

.elastic-video {
    position: relative;
    padding-bottom: 55%;
    padding-top: 15px;
    height: 0;
    overflow: hidden;}

.elastic-video iframe, .elastic-video .video-extern {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;}

div.elastic-video {margin-bottom: 1em;}

/*Zusätzliche Klassen */

.uppercase, #primary-menu a, #block-3 a, .site-footer {text-transform: uppercase !important;}

.hyphens {hyphens: auto;}

.no-paddingbottom-mobile .gb-inside-container {padding-bottom: 0 !important;}
.no-paddingtop-mobile .gb-inside-container {padding-top: 0 !important;}

.margin-top {margin-top: 1em;}
.small {font-size: 80%;}

.blocks-gallery-grid .blocks-gallery-item figure {margin-bottom: 0.5em;}

@media screen and (max-width:768px) {

    .inside-header, .footer-widgets-container {
        padding-right: 20px;
        padding-left: 20px;}
    
	.gb-grid-wrapper .gb-grid-column {margin-bottom: 1em;} /*bei Generate Blocks*/
	.gb-grid-wrapper .gb-grid-column:last-child {margin-bottom: 0;}    
    
    figure.wp-block-image {
        margin-left: auto;
        margin-right: auto;
        /*max-width: 450px;*/}
}

@media screen and (min-width:768px) {

    .counter {padding: 20px;}
    .counter1, .counter2, .counter3, .counter4 {border-right: 1px solid #fff;;}

    .zahlenwrap1, .zahlenwrap2, .zahlenwrap4, .zahlenwrap5 {border-right: 2px solid white;}
    .zahlenwrap {padding: 20px 40px;margin-bottom: 40px;}

    .zahlen hr {margin-right: 40px;margin-left:20px;}

}


/*Allgemeines Layout*/

body {font-family: 'Lato',sans-serif !important;}

.container.grid-container {width: 100%;} /*Full Width*/

#primary ul, #primary ol {margin-left: 20px;}
p, #content ul, #content ol {margin-bottom: 1.2em;}
p.margin-smaller {margin-bottom: 0.5em;} 
#content ul li, #content ol li {margin-bottom: 0.5em;}
#primary ul.wp-block-post-template {margin-left: 0;}
#primary ul.blocks-gallery-grid {margin-left: 0;}

.sub-menu li:first-child a {padding-top: 20px !important;}
.sub-menu li:last-child a {padding-bottom: 20px !important;}

.gp-icon {font-size: 1.3rem;}

.huastart h1, .huastart h2, .huastart h3, .huastart p {font-weight: bold;}

/*#content a:link, #content a:visited, .site-footer a:link, .site-footer a:visited {text-decoration: none;}
#content a:hover, #content a:focus {text-decoration: underline;}*/

.loop-aktuelles a:link, .loop-aktuelles a:link, .sidebar a, .site-footer a, a.prev, a.page-numbers, a.below {text-decoration: none;} 

.wp-block-table table, .wp-block-table table td, .wp-block-table table tr {border: 0;}
.wp-block-table table td {padding: 0 0 0.3em 0;}

/*Counter*/

.counter p {margin-bottom: 0;}

/*Zahlen*/

.zahlen hr {
  border: none;              /* Standard-Border entfernen (wichtig für Firefox) */
  height: 2px;               /* gewünschte Höhe */
  background-color: #fff;    /* weiße Linie */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;}

/*Slider*/

.slides h2 {font-weight: 900;margin-bottom: 40px;}
.slides {margin-left: 0 !important;}
.slides div {margin-top: 50px;}

.metaslider .flexslider .slides p {

    /*color: #222;*/
    padding: 15px;
    background-color: rgba(0, 0, 0, 0.5);
}

/*Skyline*/

.sockel {margin-top: -3px;}

.skyline figure {margin-left: auto;margin-right: auto;}

.skyline .gb-grid-column {display: flex;
    flex-direction: column;
    justify-content: flex-end;}

@media screen and (max-width:1919px) {
    div.gb-container-3a6e1eae {padding-top: 0px;}
    .skyline .gb-grid-column {padding-top: 20px;}
}

@media screen and (min-width:1920px) {

    .skyline .gb-grid-column {width: 10% !important;}

    .bremen figure {width: 50%;}
    .greifswald figure {width: 60%;}
    .michel figure {width: 65%;}
    .elphi figure {width: 65%;}
    .kiel figure {width: 70%;}
    .luebeck figure {width: 60%;}
    .oldenburg figure {width: 80%;}

}

@media screen and (min-width:701px) and (max-width:1919px) {

    .skyline .gb-grid-column {width: 20% !important;}

    .bremen figure {width: 50%;}
    .greifswald figure {width: 60%;}
    .michel figure {width: 65%;}
    .elphi figure {width: 70%;}
    .kiel figure {width: 70%;}
    .luebeck figure {width: 60%;}
    .oldenburg figure {width: 80%;}

}

@media screen and (max-width: 700px) {

    .skyline .gb-grid-column:nth-child(8) {
        width: 33.33% !important;
        order: 1;}

    .skyline .gb-grid-column:nth-child(2) {
        width: 33.33% !important;
        order: 2;}
        
    .skyline .gb-grid-column:nth-child(10) {
        width: 33.33% !important;
        order: 3;}
        
    .skyline .gb-grid-column:nth-child(4) {
        width: 33.33% !important;
        order: 4;}
        
    .skyline .gb-grid-column:nth-child(5) {
        width: 33.33% !important;
        order: 5;}
        
    .skyline .gb-grid-column:nth-child(6) {
        width: 33.33% !important;
        order: 6;}
        
    .skyline .gb-grid-column:nth-child(3) {
        width: 50% !important;
        order: 7;}
        
    .skyline .gb-grid-column:nth-child(9) {
        width: 50% !important;
        order: 8;}

    .skyline .gb-grid-column:nth-child(7) {
        width: 50% !important;
        order: 9;}

    .skyline .gb-grid-column:nth-child(1) {
        width: 50% !important;
        order: 10;}

    .bremen figure {width: 60%;}
    .greifswald figure {width: 65%;}
    .michel figure {width: 60%;}
    .elphi figure {width: 80%;}
    .kiel figure {width: 70%;}
    .luebeck figure {width: 60%;}
    .lueneburg figure {width: 80%;}
    .oldenburg figure {width: 60%;}
    .rostock figure {width: 80%;}
    .groningen figure {width: 90%;}

    div.gb-container-50875c2a {padding-top: 0;}
    
    .sockel {height: 15px !important;}

}

@media screen and (max-width: 768px) {
    .skyline .gb-grid-column {
        margin-bottom: 0 !important;}
}

/*Timeline*/

.timeline-content .story-time p {font-weight: 600 !important;}

div.cool-vertical-timeline-body {
    margin: 0;
    max-width: none;
    padding: 0;
}

.cool-vertical-timeline-body.ctlb-wrapper:before {
    background: linear-gradient(to bottom,hsla(0,0%,90%,0) 0,var(--ctlb-line-color) 10%,var(--ctlb-line-color) 90%,hsla(0,0%,90%,0) 100%);
    width: var(--ctlb-middle-line-size)
}

.cool-vertical-timeline-body {
    --ctlb-line-color: #888888; /* mittelgrau */
}

.cool-timeline-block-list figure {margin-bottom: 20px;}

/*Mitglieder*/
.margin-spalten > .gb-grid-column {margin-bottom: 40px;}
/*Logos*/
.uni-logos img {width: 100%;height: auto;}
.grau img {filter: grayscale(100%);}
.uni-logos > .gb-grid-column {margin-bottom: 20px;}

@media screen and (max-width:1200px) {
    .uni-logos > .gb-grid-column {width: 33.33% !important;}    
}

@media screen and (max-width:767px) {
    .uni-logos > .gb-grid-column {width: 50% !important;}
    .uni-logos > .gb-grid-column {padding-left: 15px !important;} 
    .uni-logos {padding-left: 30px !important;}
    
    div.gb-container-fefd6e01 {
        padding-left: 0;
        padding-right: 30px;}
    
div.gb-container-25984a64 {
        padding-left: 0;
        padding-right: 50px;}    

    div.gb-container-8a3d1295, div.gb-container-18f11d60 {
        padding-left: 10px;
        padding-right: 60px;}    
}



/*Elemente verstecken*/

.elementtohide {
	position: absolute;
	top: -9999px;
	left: -9999px;
	width: 0;
	height: 0;
	font-size: 0;
	line-height: 0;}

/*Galerie*/

.wp-block-gallery.has-nested-images figure.wp-block-image:has(figcaption):before {max-height: 20%;}

/*BU*/

.featured-image, .post-image, #content .gb-block-image {
    position: relative;}

.wp-caption, #content figcaption {
    position: absolute;
    top: 0;
    right: 0;
    font-weight: 300;
    writing-mode: vertical-rl;
    transform: rotate(180deg);
    background-color: rgba(0, 0, 0, 0.5);
    color: #fff !important;
    padding: 6px 0;
    z-index: 10;}

#content figure.wp-lightbox-container figcaption, #content figure.custom-gallery figcaption {
    position: static;
    top: auto;
    right: auto;
    writing-mode: horizontal-tb;
    transform: none;
    background-color: transparent;
    color: inherit !important;
    padding: 0;
    font-size: inherit;
    z-index: auto;
}

.featured-image .wp-caption {padding: 10px;} /*Single*/

.featured-image .post-image {padding: 5px;} /*archive*/

.wp-block-gallery.has-nested-images figure.wp-block-image figcaption {
    text-shadow: none;
}

/*Tabs*/

div.gb-tabs__items {
     border-top-right-radius: 8px;
    border-bottom-right-radius: 8px;
    border-bottom-left-radius: 8px;
    background: #f0f0f0;}

@media screen and (min-width:830px) and (max-width:950px) {
    div.gb-tabs .gb-button {
        padding: 10px 15px;
        font-size: 1rem;}
}

@media screen and (min-width:768px) and (max-width:829px) {
    div.gb-tabs .gb-button {
        padding: 5px 10px;
        font-size: 1rem;}
}

@media screen and (min-width:641px) and (max-width:767px) {
    div.gb-tabs .gb-button {
        padding: 2px 3px;
        font-size: 0.9rem;}
}

@media screen and (max-width:640px) {
    div.gb-tabs .gb-button {
        padding: 5px 6px;
        max-width: 20%;
        hyphens: auto;
        font-size: 0.8rem;}
}

/*GB Accordion*/

.gb-accordion button.gb-button {
    background: #fff;
    color: #4f4e4d;
    border-bottom: 1px solid #4f4e4d !important;}

.gb-accordion button.gb-button:hover, .gb-accordion button.gb-button:active, .gb-accordion button.gb-block-is-current{
    background: #27348b !important;
    color: #fff !important;}

.gb-accordion .gb-accordion__content {
    background: #fff !important;}

.gb-accordion .gb-button-text {font-weight: bold;}

/*GP Buttons und Download Buttons*/

a.gb-button {
    border-radius: 5px !important;
    padding: 8px 25px !important;}

/*a.gb-button:link, a.gb-button:visited, .wp-block-file a:link, .wp-block-file a:visited {
    background: #aaa;
    border: 1px solid #aaa;    
    color: #fff;
    text-decoration: none !important;
    border-radius: 2px;
    padding: 10px 15px;}

a.gb-button:hover, a.gb-button:active, .wp-block-file a:hover, .wp-block-file a:active  {
    background: #fff !important;
    color: #aaa !important;}*/

.menu-bar-items a.gb-button:link, .menu-bar-items a.gb-button:visited, .site-footer a.gb-button:link, .site-footer a.gb-button:visited {
    background: #fff !important;
    color: #aaa !important;
    border: none;
    padding: 0;}

.menu-bar-items a.gb-button:hover, .menu-bar-items a.gb-button:active, .site-footer a.gb-button:hover, .site-footer a.gb-button:active {
    background: #fff !important;
    color: #aaa !important;}

.wp-block-file {font-size: inherit !important;}

.wp-block-file__button {float: right;}

div.wp-block-file {margin-bottom: 3em;}

div.wp-block-file {margin-bottom: 3em;}

@media screen and (max-width:550px) {
    div.wp-block-file {margin-bottom: 5em;}
}


/*Sticky Footer*/

#page {flex: 1 1 auto;}

body {
    display: flex;
    flex-direction: column;
    min-height: 100vh;}

.footer-widgets .widget {margin-bottom: 15px;}

footer.entry-meta, #nav-below {padding-top: 1.5em;padding-bottom:1.5em;}

/*Form*/

form select, input[type=text], input[type=tel], input[type=number], input[type=email], textarea {
    margin-bottom: 1.5em;
}

input[type=checkbox] {margin-bottom: 0 !important;}

input[type=text], input[type=tel], input[type=email], select {width: 100%;}

select, input[type="text"], input[type="password"], input[type="date"], input[type="datetime"], input[type="email"], input[type="number"], input[type="search"], input[type="tel"], input[type="time"], input[type="url"], input:not([type]), textarea {
   width: 100%;
   border: 1px solid #3c3c3c;
border-radius: 3px;}

/*span.wpcf7-list-item {margin:0 !important;}*/
span.wpcf7-list-item {margin-left: 0 !important;}
span.wpcf7-list-item.last {margin-left: 10px !important;}

/*Blog*/

.one-container .site-content {
    padding: 40px 20px 40px 20px;
}

/*ab 1025px*/

@media screen and (min-width: 1025px) {
	
    .nav-links a.prev, .nav-links a.page-numbers, .nav-links span {margin-right: 10px;}
    
    .flex-form, .flex-form-2 {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;}
    
    .flex-form div {
        flex: 0 1 48%;}

    .flex-form-2 div {
        flex: 0 1 32.5%;}
        
    .karte-hoch {display: none;}
    
}

@media screen and (max-width: 767px) {
    
    #right-sidebar {margin-top: 40px;margin-bottom: 60px;}
    
    #kontakt figure.gb-block-image, #organisation figure.gb-block-image {max-width: 500px !important;}

    .metaslider, .metaslider .flexslider, .metaslider .slides, .metaslider .slides li, .metaslider img {
        min-height: 450px !important;
        height: auto !important;}

    #zahlen-fakten .gb-grid-wrapper > .gb-grid-column, #zahlen-fakten2 .gb-grid-wrapper > .gb-grid-column {width: 50%;}
    #zahlen-fakten .gb-grid-wrapper > .gb-grid-column-3b153205 {width: 100%;}

    #zahlen-fakten2 hr {display: none;}

    .zahlenwrap1, .zahlenwrap3, .zahlenwrap5 {border-right: 2px solid white;}

    .gb-grid-column-e88fef18, .gb-grid-column-d86c3b69, .gb-grid-column-f83061f7 {padding-left: 0 !important;}
    
  
}

@media screen and (min-width:767px) and (max-width:1024px) {

    .gb-accordion__item button {min-height: 180px;}
    
    #organisation figcaption {font-size: 0.7rem;}
    
    #footer-widgets aside {padding-left: 10px;}

    .metaslider, .metaslider .flexslider, .metaslider .slides, .metaslider .slides li, .metaslider img {
        min-height: 400px !important; /* gewünschte Mindesthöhe in Pixel */
        height: auto !important;}

}


/*Small*/

@media screen and (max-width: 1024px) {
	
    /*#primary-menu a, .menu-toggle {text-align: center;} /*prüfen*/
    #primary-menu a {font-size: 1.1rem;}
	body, blockquote {font-size: 1rem;}
    /*#right-sidebar a {font-size: 0.9rem !important;}*/
	h1 {font-size: 1.8rem;}
	h2 {font-size: 1.4rem;}
    .huastart p {font-size: 1.2rem;}
    .loop-aktuelles h2, h2.entry-title {font-size: 1.1rem !important;}
    h3 {font-size: 1.1rem;}
    h4, h5 {font-size: 1rem;}
    .timeline-content p {font-size: 1rem !important;}
    .wp-block-boldblocks-counting-number {font-size: 1.4rem !important;} 
    .counter p {font-size: 1.1rem !important;}  
    .metaslider .flexslider .slides p {font-size: 0.9rem !important;}
    #zahlen-fakten2 p {font-size: 1.2rem;}
    .wp-caption, #content figcaption {font-size: 0.7rem;}       
    
    /*.main-navigation, .menu-toggle {background-color: #fff !important;}*/
	
    .paging-navigation .nav-links>* {
        padding: 8px 20px;
        border: 1px solid #222;
        margin-right: 10px;}
	
	table, table td, table th, table tr {display: block;}
	.wp-block-table tr {margin-bottom: 1.2em;}
    
    .site-header .header-image {width: 250px;}

    .zahlenwrap .gb-container {width: 70px;}

    .metaslider img {
        object-fit: cover; /* schneidet ggf. das Bild passend zu */
        width: 100%;}

    .karte-breit {display: none;}
    
	/*.site-footer a {display: block;}*/
	/*.site-footer a:first-child {margin-bottom: 10px;}*/
	
}

/* Medium */
@media screen and (min-width:1025px) and (max-width:1499px) {
	
    #primary-menu a {font-size: 1.2rem;}
	body, blockquote {font-size: 1.1rem;}
    /*#right-sidebar a {font-size: 1rem !important;}*/
	body  {font-size: 1.1rem;}
	h1 {font-size: 2rem;}
	h2 {font-size: 1.6rem;}
    .huastart p {font-size: 1.4rem;}
    .loop-aktuelles h2, h2.entry-title {font-size: 1.2rem !important;}
    h3 {font-size: 1.3rem;}
	h4, h5 {font-size: 1.1rem;}
    .timeline-content p {font-size: 1.1rem !important;}
    .wp-block-boldblocks-counting-number {font-size: 1.8rem !important;} 
    .counter p {font-size: 1.4rem !important;}
    .metaslider .flexslider .slides p {font-size: 1rem !important;}
    #zahlen-fakten2 p {font-size: 1.3rem;}
    .wp-caption, #content figcaption {font-size: 0.8rem;}    
    
    .metaslider, .metaslider .flexslider, .metaslider .slides, .metaslider .slides li, .metaslider img {
        min-height: 500px !important; /* gewünschte Mindesthöhe in Pixel */
        height: auto !important;}
    
    /*.sidebar {margin-top: 60px;}*/
    
    .site-header .header-image {width: 350px;}
    
    .gb-accordion__item button {min-height: 150px;}
    
}

/* Large */
@media screen and (min-width:1500px) {

	#primary-menu a {font-size: 1.3rem;} 
	body, blockquote {font-size: 1.2rem;}
    /*#right-sidebar a {font-size: 1.2rem !important;}*/
	h1 {font-size: 2.2rem;}
	h2 {font-size: 1.8rem;}
    .huastart p {font-size: 1.6rem;} 
    .loop-aktuelles h2, h2.entry-title {font-size: 1.3rem !important;}
    .timeline-content p {font-size: 1.2rem !important;}
    .wp-block-boldblocks-counting-number {font-size: 2rem !important;} 
    .counter p {font-size: 1.6rem !important;}
    .metaslider .flexslider .slides p {font-size: 1.1rem !important;}
    #zahlen-fakten2 p {font-size: 1.4rem;}
    .wp-caption, #content figcaption {font-size: 0.9rem;} 
    
    h3 {font-size: 1.4rem;}
	h4, h5 {font-size: 1.2rem;}

    .metaslider, .metaslider .flexslider, .metaslider .slides, .metaslider .slides li, .metaslider img {
        min-height: 500px !important;
        height: auto !important;}
    
    /*.sidebar {margin-top: 60px;}*/
    
    input[type=checkbox], input[type=radio] {
	/* Double-sized Checkboxes */
	-ms-transform: scale(1.5); /* IE */
	-moz-transform: scale(1.5); /* FF */
	-webkit-transform: scale(1.5); /* Safari and Chrome */
	-o-transform: scale(1.5); /* Opera */
	transform: scale(1.5);
	padding: 10px;
	margin-left: 5px;
	margin-right: 10px;}
    
    .gb-accordion__item button {min-height: 100px;}

}


@media print {
	.search-item, .menu-toggle, .site-info, .no-print, .mobile-menu, #site-navigation, p.cta, #sticky-navigation, #right-sidebar, .paging-navigation, .wp-block-buttons .wp-block-button, form {display: none;}
	
	.sticky-enabled .main-navigation.is_stuck {height: 0;box-shadow: none;}
    
    .gb-button, .menu-toggle .gp-icon {display: none !important;}
	
	.menu-toggle:before {content: "";}
	
	#main img {width: 400px;}
    
    .footer-widgets, .footer-widgets a {color: #222 !important;}
}

/* lato-300 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  src: url('/fonts/lato-v24-latin-300.woff2') format('woff2'); 
}
/* lato-300italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: italic;
  font-weight: 300;
  src: url('/fonts/lato-v24-latin-300italic.woff2') format('woff2'); 
}
/* lato-regular - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/lato-v24-latin-regular.woff2') format('woff2'); 
}
/* lato-italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: italic;
  font-weight: 400;
  src: url('/fonts/lato-v24-latin-italic.woff2') format('woff2'); 
}
/* lato-700 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/lato-v24-latin-700.woff2') format('woff2'); 
}
/* lato-700italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: italic;
  font-weight: 700;
  src: url('/fonts/lato-v24-latin-700italic.woff2') format('woff2'); 
}
/* lato-900 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  src: url('/fonts/lato-v24-latin-900.woff2') format('woff2'); 
}
/* lato-900italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Lato';
  font-style: italic;
  font-weight: 900;
  src: url('/fonts/lato-v24-latin-900italic.woff2') format('woff2'); 
}
