/*
 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;}

/*Morphing Gradient*/

.gradient-background {
  background: linear-gradient(316deg,#a84afc,#bc3c47,#f6e1c2,#22fa10);
  background-size: 240% 240%;
  animation: gradient-animation 20s ease infinite;
}

@keyframes gradient-animation {
  0% {
    background-position: 0% 50%;
  }
  50% {
    background-position: 100% 50%;
  }
  100% {
    background-position: 0% 50%;
  }
}

/*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 {text-transform: uppercase !important;} 

.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;*/}
}

/*Allgemeines Layout*/

#primary-menu a, .site-info {font-weight: 500;}
#content a {font-weight: 600;}

.container.grid-container {width: 100%;} /*Full Width*/

#primary ul, #primary ol {margin-left: 20px;}
p, #content ul, #content ol {margin-bottom: 1.2em;}
#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;}

#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;}

.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;}

.rechner {padding: 20px;}

/*Elemente verstecken*/

.elementtohide {
	position: absolute;
	top: -9999px;
	left: -9999px;
	width: 0;
	height: 0;
	font-size: 0;
	line-height: 0;}

/*Link auf Container*/

.stretch-link{
	position: relative;
}

.stretch-link a::after{
	content: '';
	position: absolute;
	inset: 0;
}

.stretch-link a:is(:focus-visible)::after{
	outline: 2px solid;
}

.stretch-link a:is(:hover, :focus){
	outline: none;
}

/*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: #c3c563 !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:link, a.gb-button:visited, .wp-block-file a:link, .wp-block-file a:visited {
    background: #67bd9e;
    border: 1px solid #67bd9e;    
    color: #000;
    text-decoration: none !important;
    border-radius: 2px;
    padding: 4px 15px;}

a.gb-button:hover, a.gb-button:active, .wp-block-file a:hover, .wp-block-file a:active  {
    background: transparent !important;
    color: #67bd9e !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;
    font-family: 'Open Sans',sans-serif !important;}

#footer-widgets .widget {
    margin-bottom: 10px;
}

/*Form*/

input[type=checkbox] {margin-bottom: 0 !important;}

input[type=text], input[type=tel], input[type=email] {width: 100%;}

span.wpcf7-list-item {margin:0 !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 {
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;}
    
    .flex-form div {
        flex: 0 1 48%;}
    
}

/*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.3rem;}
    h3 {font-size: 1.1rem;}
    h4, h5 {font-size: 1rem;}
    
    .main-navigation, .menu-toggle {background-color: #fff !important;}
	
    .paging-navigation .nav-links>* {
        padding: 8px 20px;
        border: 1px solid #000;
        margin-right: 10px;}
	
	table, table td, table th, table tr {display: block;}
	.wp-block-table tr {margin-bottom: 1.2em;}
	
	/*.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;}
    h3 {font-size: 1.3rem;}
	h4, h5 {font-size: 1.1rem;}
	
}

/* 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.1rem !important;}
	h1 {font-size: 2.4rem;}
	h2 {font-size: 1.8rem;}
    h3 {font-size: 1.4rem;}
	h4, h5 {font-size: 1.2rem;}
    
    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;}

}


@media print {
	.nodruck, .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;}
}

/* open-sans-regular - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 400;
  src: url('/fonts/open-sans-v44-latin-regular.woff2') format('woff2'); 
}
/* open-sans-italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 400;
  src: url('/fonts/open-sans-v44-latin-italic.woff2') format('woff2'); 
}
/* open-sans-500 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 500;
  src: url('/fonts/open-sans-v44-latin-500.woff2') format('woff2'); 
}
/* open-sans-500italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 500;
  src: url('/fonts/open-sans-v44-latin-500italic.woff2') format('woff2'); 
}
/* open-sans-600 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 600;
  src: url('/fonts/open-sans-v44-latin-600.woff2') format('woff2'); 
}
/* open-sans-600italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 600;
  src: url('/fonts/open-sans-v44-latin-600italic.woff2') format('woff2'); 
}
/* open-sans-700 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 700;
  src: url('/fonts/open-sans-v44-latin-700.woff2') format('woff2'); 
}
/* open-sans-700italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 700;
  src: url('/fonts/open-sans-v44-latin-700italic.woff2') format('woff2'); 
}
/* open-sans-800 - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: normal;
  font-weight: 800;
  src: url('/fonts/open-sans-v44-latin-800.woff2') format('woff2'); 
}
/* open-sans-800italic - latin */
@font-face {
  font-display: swap; 
  font-family: 'Open Sans';
  font-style: italic;
  font-weight: 800;
  src: url('/fonts/open-sans-v44-latin-800italic.woff2') format('woff2'); 
}