/*
Theme Name: TSV Aistaig
Author: Sebastian Schwarz
Description: Eine stark modifizierte Version des GeneratePress Themes für den Turn- und Sportverein Aistaig 1906 e. V.
Version: 2025.1
Template: generatepress

This is the child theme for GeneratePress theme, generated with Generate Child Theme plugin by catchthemes.

(optional values you can add: Theme URI, Author URI, License, License URI, Tags, Text Domain)
*/

/*----------------------
 * WEB FONTS
 * ---------------------*/

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-black-webfont.woff2') format('woff2');
    font-weight: 900;
    font-style: normal;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-bold-webfont.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-bold-italic-webfont.woff2') format('woff2');
    font-weight: 900;
    font-style: italic;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-light-webfont.woff2') format('woff2');
    font-weight: 300;
    font-style: normal;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-light-italic-webfont.woff2') format('woff2');
    font-weight: 300;
    font-style: italic;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-black-italic-webfont.woff2') format('woff2');
    font-weight: 900;
    font-style: italic;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-italic-webfont.woff2') format('woff2');
    font-weight: normal;
    font-style: italic;
}

@font-face {
	font-display: swap;
    font-family: 'Freeroad';
    src: url('//static.tsvaistaig.de/webfonts/freeroad-regular-webfont.woff2') format('woff2');
    font-weight: normal;
    font-style: normal;
}

/* ibm-plex-sans-100 - 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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 100;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-100.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-100italic - 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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 100;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-100italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-200 - 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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 200;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-200.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-200italic - 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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 200;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-200italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 300;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-300.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 300;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-300italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 400;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 400;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-500 - 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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 500;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-500.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-500italic - 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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 500;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-500italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 600;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-600.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 600;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-600italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: normal;
  font-weight: 700;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-700.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* ibm-plex-sans-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: 'IBM Plex Sans';
  font-style: italic;
  font-weight: 700;
  src: url('//static.tsvaistaig.de/webfonts/ibm-plex-sans-v22-latin-700italic.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

p{
	margin-bottom: 1.15em;
}

/*-----------------
 * LAYOUT
--------------- */

/* Außenabstand vor Seiteninhalt entfernen */
.entry-content:not(:first-child), .entry-summary:not(:first-child), .page-content:not(:first-child) {
	margin-top: 10px !important;
}

/* underline titles */
.title, .entry-header .entry-title, .widget-title{
	position: relative;
}

.title:after, .entry-header .entry-title:after, .widget-title:after{
	content: "";
	position: absolute;
	height: 10px;
	border-radius: 0px;
	width: 128px;
	left: 0px;
}

.title:after, .entry-header .entry-title:after{
	bottom: -10px;
	background: linear-gradient(to right, var(--gold), var(--white));
}

.widget-title:after{
	bottom: -4px;
	background: linear-gradient(to right, var(--blue), var(--white));
}

/* Menüpunkte verzerren */
.main-navigation li {
	transform: skewX(-10deg);
}

.generate-back-to-top {
	border-radius: 0px !important;
}

/* Footer auf kurzen Seiten immer unten fixiert */
/*body { display: flex; flex-direction: column; align-items: stretch; height: 100vh; }
.site { flex-grow: 1;}*/

/* fixes */
/*body.admin-bar { height: calc(100vh - 35px); }
/*html { height: fit-content; }
/*.container.grid-container { width: 100%; }
/*nav#secondary-navigation {width: 100%;}*/

/*-----------------
 * FORMULARE
--------------- */

/* Felddesign */
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="month"], input[type="week"], input[type="time"], input[type="color"], select, textarea {
	width: 100% !important;
	border: 2px solid #212121 !important;
	border-radius: 0px !important;
	padding: 2px 4px;
}

/* Felddesign */
input[type="text"], input[type="email"], input[type="url"], input[type="password"], input[type="search"], input[type="number"], input[type="tel"], input[type="range"], input[type="month"], input[type="week"], input[type="time"], input[type="color"], input[type="date"], input[type="datetime"], input[type="datetime-local"], select{
	min-height: 36px !important;
}

/* date picker styling */
input[type="date"], input[type="datetime"], input[type="datetime-local"]{
	width: 100% !important;
	border: 2px solid var(--dark) !important;
	background: var(--gray) !important;
	border-radius: 0px !important;
	padding: 2px 4px;
	max-width: 100%;
}

input[type="date"]:focus, input[type="datetime"]:focus, input[type="datetime-local"]:focus,
input[type="date"]:active, input[type="datetime"]:active, input[type="datetime-local"]:active{
  color: var(--dark);
  background: var(--gold) !important;
}

/* upload styling */
input[type="file"]{
	color: var(--dark);
	background: var(--gray);
	border: 2px var(--dark) solid;
	padding: 10px 15px;
	width: 100%;
}

.elementor-button span,
.stratum-advanced-posts .stratum-advanced-posts__read-more a{
	font-family: "Freeroad" !important;
	text-transform: uppercase;
	font-style: italic;
}

/* CF7 - Margin entfernen */
.wpcf7-list-item {
	margin: 0;
}

/* CF7 - Checkboxen und Radio-Buttons */
span.wpcf7-list-item {
	display: block;
}

/* CF7 - Rahmen von besonderen Inhalten */
.form_extras {
  border: 2px solid var(--blue);
  border-radius: 0px;
  padding: 20px;
  margin-bottom: 25px;
  display: block;
}

/* CF7 - Multi Step Form */

.cf7mls-btns input[type="button"],
.cf7mls-btns button,
.cf7mls_back.action-button,
form.cf7mls input.wpcf7-form-control.wpcf7-submit {
	background-color: var(--blue) !important;
	border: none !important;
	color: var(--light) !important;
	font-weight: inherit !important;
	border-radius: 0px !important;
}

.cf7mls-btns input[type="button"]:hover,
.cf7mls-btns input[type="button"]:focus,
.cf7mls-btns input[type="button"]:active,
.cf7mls-btns button:hover,
.cf7mls-btns button:focus,
.cf7mls-btns button:active,
.cf7mls_back.action-button:hover,
.cf7mls_back.action-button:focus,
.cf7mls_back.action-button:active {
	background-color: var(--gold) !important;
	border: none !important;
	color: var(--dark) !important;
}

.cf7mls_progress_bar li .cf7mls_progress_bar_title {
	font-size: inherit !important;
	font-weight: normal;
	line-height: 1.5;
	margin: 1em 0;
	font-family: inherit !important;
}

#cf7mls-progress-bar .cf7mls_progress_bar li:nth-child(2) .cf7mls_progress_bar_title, .cf7mls_progress_bar li.current .cf7mls_progress_bar_title {
	font-weight: bold !important;
}

form.cf7mls input.wpcf7-form-control.wpcf7-submit {
	margin: 0 auto !important;
	float: unset !important;
	font-size: 1.5em !important;
}

.signature-pad canvas{
	border: 2px solid var(--dark) !important;
}

/*----------------------
 * TABLES
 * ---------------------*/

/* Tabellen horizontal scrollbar auf kleinen Displays */
table{
	overflow-x: scroll;
	width: 100%;
	display: block;
	border: none;
}

/* Erste Spalte und erste Zeile */
tr:first-child, tr td:first-child{
	background: var(--blue) !important;
	color: var(--white) !important;
}

/* Hover */
td:hover{
	background: var(--gold) !important;
}

/*----------------------
 * BILDERGALERIEN
 * ---------------------*/

.wp-block-gallery.has-nested-images > figure.wp-block-image {
flex-grow: inherit;
}

/*----------------------
 * BLOG
 * ---------------------*/

/* remove paddings */
.post{
  padding: 0px;
  border: 0px solid var(--dark);
  border-radius: 0px;
}

.stratum-advanced-posts.layout-list .stratum-advanced-posts__wrapper .stratum-advanced-posts__post-wrapper .stratum-advanced-posts__content-wrapper {
	justify-content: unset !important;
}

.post-image-below-header.post-image-aligned-center .inside-article .featured-image, .post-image-below-header.post-image-aligned-left .inside-article .featured-image, .post-image-below-header.post-image-aligned-left .inside-article .post-image, .post-image-below-header.post-image-aligned-right .inside-article .featured-image, .post-image-below-header.post-image-aligned-right .inside-article .post-image {
	margin-top: 0 !important;
	border: 2px solid var(--gold) !important;
}

.wp-block-image{
	border: 2px solid var(--blue) !important;
}

.wp-block-image:hover, .wp-block-image:active, .wp-block-image:focus {
	border: 2px solid var(--gold) !important;
}

/*----------------------
 * MISC
 * ---------------------*/

/* style horizontal rulers */
hr{
  background: var(--gold);
  border: none;
  display: block;
  margin: 20px 0;
  border-style: unset;
  border-width: 2px;
}

/*----------------------
 * MOBILE CUSTOMIZATIONS
 * ---------------------*/
@media (max-width: 769px){
	
	.post-image-below-header.post-image-aligned-left .inside-article .post-image{
		margin-top: 26px !important;
	}

	.entry-content:not(:first-child),
	.entry-summary:not(:first-child),
	.page-content:not(:first-child){
		margin-top: 10px !important;
	}
	
	.separate-containers .site-main {
		margin: 0px !important;
	}

}

/*----------------------
 * DESKTOP CUSTOMIZATIONS
 * ---------------------*/
@media (min-width: 769px){
	
	/* Animation Hauptmenü */
  	.main-navigation .menu > .menu-item > a {
		transition: all .25s;
	}
	
	/* back to top animation */
	.generate-back-to-top {
		transition: all .25s;
	}
	
}