/*
Theme Name: Fieldsets
Version: 2.3 2023
*/


/* fonts */

@font-face {
	font-family: 'Jost';
	src: url('assets/fonts/Jost-VariableFont_wght.ttf') format('truetype supports variations'), url('assets/fonts/Jost-VariableFont_wght.ttf') format('truetype-variations'), url('assets/fonts/Jost-VariableFont_wght.ttf') format('truetype');
	font-weight: 100 900;
}



/* basics / resets */

html {
	position: relative;
	margin: 0;
	padding: 0;
	height: 100%;
	font-size: 20px;
	
	--light-green: #cadfa8;
	--green: #4fac3b;
	--text-green: #334b28;
	
	--light-blue: #d2e8ee;
	--text-blue: #273e48;
	
}
@media (max-width: 1299px) {
	html { font-size: 19px; }
}
@media (max-width: 1199px) {
	html { font-size: 18px; }
}
@media (max-width: 1099px) {
	html { font-size: 17px; }
}
@media (max-width: 1049px) {
	html { font-size: 16px; }
}
@media (max-width: 999px) {
	html { font-size: 20px; }
}
@media (max-width: 719px) {
	html { font-size: 18px; }
}
@media (max-width: 511px) {
	html { font-size: 3.5vw; }
}


body {
	margin: 0;
	padding: 0;
	min-height: 100%;
	font-family: 'Jost', sans-serif;
	font-size: 1em;
	background-color: white;
	color: var(--text-green);
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

* {
	-webkit-tap-highlight-color: transparent;
}


::-moz-selection {
	background: #333;
	color: #fff;
	text-shadow: none;
}
::selection {
	background: #333;
	color: #fff;
	text-shadow: none;
}

form {
	margin: 0;
	padding: 0;
}

table, td, input, textarea, select {
	font-family: inherit;
	font-size: 1em;
}

img, iframe {
	border: 0;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration: none;
	transition: color 0.3s ease;
}




/* page */

#page {
    display: -webkit-flex;
    display: flex;
    -webkit-flex-direction: column;
    flex-direction: column;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: stretch;
    align-items: stretch;
	
	min-height: 100vh;
	box-sizing: border-box;
}

main {
	-webkit-flex: 1 0 auto;
    -ms-flex: 1 0 auto;
    flex: 1 0 auto;
	padding-top: 6em;
	box-sizing: border-box;
}

@media (max-width: 999px) {
	main {
		padding-top: 4.5em;
	}

}

#intro .image-wrap {
	min-height: 32em;
}


/* header */

header {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	box-sizing: border-box;
	background-color: white;
	box-shadow: 0 1px 2px #0002;
	z-index: 1000;
	transition: transform 0.25s ease, opacity 0.25s ease, box-shadow 0.25s ease;
}
header > .wrap {
	position: relative;
	margin: 0 auto;
	max-width: 62em;
	box-sizing: border-box;
	padding: 3em 2em 1.75em 2em;
}

.ready body:not(.at-top):not(.scroll-up) header {
	transform: translateY(-100%);
	opacity: 0;
	pointer-events: none;
}

.burger-menu-open header {
	box-shadow: none;
}


body:not(.home) #spenden-button  {
	display: none;
}
#spenden-button {
	position: fixed;
	bottom: 3em;
	right: 2em;
	z-index: 800;
	filter: drop-shadow(0px 0px 2px white);
	transition: opacity 0.25s ease;
}

body.at-end #spenden-button {
	opacity: 0;
	pointer-events: none;
}


#logo {
	position: absolute;
	left: 2em;
	top: 1.25em;
	display: block;
	width: 7em;
	height: auto;
}


.hellgruen {
	background-color: var(--light-green);
}
.hellblau {
	background-color: var(--light-blue);
	color: var(--text-blue);
}

h1 strong {
	font-size: 1.25em;
	font-weight: 425;
}

.column > .content + .content {
	margin-top: 2.5em;
}



@media (min-width: 1000px) {
	#projekte .accordion-content > div  {
		display: flex;
		flex-direction: row;
		flex-wrap: nowrap;
		justify-content: space-between;
		align-items: flex-start;
	}
	#projekte .accordion-content > div > div  {
		width: 100%;
	}
	#projekte .accordion-content .content-text {
		flex: 1 1 auto;
	}
	#projekte .accordion-content .content-slider {
		flex: 0.8 1.25 auto;
		margin-left: 4em;
	}

}

@media (max-width: 999px) {
	#projekte .accordion-content .content-slider {
		margin-top: 1em;
	}
}


#projekte.show-all #show-all-projects {
	display: none;
}

#projekte:not(.show-all) .accordions > :nth-child(10) ~ div {
	display: none;
}



/* footer */

footer {
	position: relative;
	background-color: var(--light-green);
	color: var(--text-green);
	text-align: right;
}
footer > .wrap {
	position: relative;
	margin: -1px auto 0 auto;
	max-width: 62em;
	box-sizing: border-box;
	padding: 0.5em 2em 2em 2em;
}
body:not(.home) footer > .wrap {
	padding-top: 2em;
}

footer ul,
footer li {
	margin: 0;
	padding: 0;
	display: inline;
	list-style-type: none;
}
footer li + li {
	padding-left: 1.5em;
}
footer nav a {
	text-transform: uppercase;
	letter-spacing: 0.025em;
	font-weight: 500;
	font-size: 0.8em;
}


/* breakpoints */

.mobile-only {
	display: none;
}

@media (max-width: 999px) {
	.desktop-only {
		display: none;
	}
	.mobile-only {
		display: block;
	}
}



#social {
	position: absolute;
	top: 0.85em;
	right: 2em;
}

#social a {
	display: inline-block;
	width: 1.5em;
	height: 1.5em;
}
#social a + a {
	margin-left: 1em;
}

@media (max-width: 999px) {
	#social {
		position: absolute;
		top: 1.65em;
		right: 6em;
	}

}