﻿/*
Theme Name: Gemeinschaft wendisch / sorbischer Spreewaldfischer Burg und Umgebung e.V.
Theme URI: https://www.spreewaldfischer-burg.de/
Description: Theme für Gemeinschaft wendisch / sorbischer Spreewaldfischer Burg und Umgebung e.V.
Version: 1.2
Author: Red Aqua Media
Author URI: https://www.red-aqua-media.de/
Tags: customized, Cinza Slider included
*/


:root {
	--gruen: #93a743;
	--blau: #1c75b2;
	--weiss: #fff;
	--schatten: #697f19;
	--welle: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 82 8'%3E%3Cpath fill='%23fff' d='M77.5 3.8c-.4.3-.8.4-1.4.1l-5.4-2.8c-.5-.3-.9-.6-1.4-.2l-4 2.9c-.4.3-1 .4-1.5 0L58.5 1c-.5-.2-1-.5-1.5 0l-4 2.9c-.5.3-1 .4-1.6 0L46.1 1c-.5-.2-1-.5-1.5-.1L40 4h-1l-5.5-3c-.4-.2-.9-.5-1.3-.1l-4 2.9c-.5.3-1 .4-1.5 0L21.4 1c-.4-.2-1-.5-1.4 0l-4 2.9c-.5.3-1 .4-1.5 0L9 1C8.6.8 8 .5 7.5 1L.9 5.5v1.8l3.5-2.5c.4-.3 1 0 1.5.2l5.3 2.8c.6.3 1 .2 1.5 0l4-3c.5-.3 1.2 0 1.5.2l5.4 2.8c.6.3 1 .2 1.4 0l4-3c.5-.3 1.2 0 1.6.2L36 7.8c.5.3 1 .2 1.4 0l4.3-3c.4-.2.9 0 1.2.2l5.4 2.8c.6.3 1 .2 1.4 0l4.1-3c.4-.3 1.1 0 1.5.2l5.3 2.8c.6.3 1.1.2 1.5 0l4-3c.5-.3 1.2 0 1.6.2L73 7.8c.6.3 1 .2 1.4 0L81.1 3V1.4l-3.6 2.4Z'/%3E%3C/svg%3E");
}

@font-face {
	font-family: 'metropolis';
	font-weight: normal;
	font-style: normal;
	src: url('metropolis-300.woff2') format('woff2'), url('metropolis-300.woff') format('woff');
	font-display: swap;
}

@font-face {
	font-family: 'metropolis';
	font-weight: bold;
	font-style: normal;
	src: url('metropolis-600.woff2') format('woff2'), url('metropolis-600.woff') format('woff');
	font-display: swap;
}

@font-face {
	font-family: 'metropolis';
	font-weight: normal;
	font-style: italic;
	src: url('metropolis-300-italic.woff2') format('woff2'), url('metropolis-300-italic.woff') format('woff');
	font-display: swap;
}

body {
	margin: 0;
	background-color: var(--gruen);
	color: var(--weiss);
	font: 12pt metropolis, sans-serif;
	line-height: 1.5;
}

body:before { /* background-image width opacity */
	content: '';
	background: url('logo-weiss.webp') center/contain no-repeat;
	position: fixed;
	top: 5%;
	left: 5%;
	right: 5%;
	bottom: 5%;
	opacity: .06;
	z-index: -1;
}

a {
	color: inherit;
}


/* HEADER & CINZA SLIDER */

header {
	display: block;
	position: relative;
	z-index: 1;
	height: 600px;
	max-height: 50vh;
}

.cinza-slider {
	height: 100% !important;
}

.cinza-slider div {
	height: 100% !important;
}


/* LOGO */

#logo {
	position: absolute;
	left: calc(50% - 100px);
	margin-top: -140px;
	width: 200px;
	max-width: 50%;
	height: auto;
	z-index: 3;
	transition: all 500ms ease;
}

#logo.sticky {
	position: fixed;
	top: 6px;
	margin-top: 0;
	left: 12px;
	width: 100px;
}


/* NAVICON & NAV */

#navicon-checkbox {
	display: none;
}

#navicon {
	position: absolute;
	right: 20px;
	margin-top: -80px;
	width: 80px;
	height: 80px;
	width: clamp(40px, 80px, 18vw);
	height: clamp(40px, 80px, 18vw);
	background-image: var(--welle), var(--welle), var(--welle);
	background-repeat: no-repeat;
	background-position-y: 25%, 50%, 75%;
	cursor: pointer;
	z-index: 4;
	transition: background-position-y 200ms ease;
}

#navicon:hover {
	background-position-y: 20%, 50%, 80%;
}

#navicon.sticky {
	position: fixed;
	top: 0;
	margin-top: 0;
}

nav {
	display: block;
	position: sticky;
	top: 0;
	margin-top: -80px;
	height: 80px;
	overflow: hidden;
	background-color: rgba(28,117,178,.7);
	backdrop-filter: blur(2.5px);
	z-index: 2;
	transition: height 500ms ease;
}

nav ul {
	list-style: none;
	padding: 1em;
	margin-top: 140px;
	text-align: center;
}

nav a {
	display: block;
	text-decoration: none;
	font-size: 5vw;
	padding: .2em;
	transition: letter-spacing 200ms ease;
}

nav a:hover {
	letter-spacing: 1px;
	font-weight: bold;
}

nav a[aria-current="page"] {
	font-weight: bold;
}

#navicon-checkbox:checked ~ nav {
	height: 100vh;
}


/* MAIN */

main {
	display: block;
	margin: auto;
	max-width: 1000px;
	margin-top: 50px;
	padding: 1em;
	margin-bottom: 2em;
	text-align: justify;
	hyphens: auto;
	z-index: 1;
}

h1 {
	font-weight: normal;
	text-align: center;
	line-height: 1.2;
}

h1:after {
	content: " ";
	display: block;
	margin: auto;
	transform: scaleX(250%);
}

hr {
	border: 0;
	margin: 2.5em auto;
	transform: scaleX(150%);
}

h1:after, hr {
	width: 40%;
	height: 1em;
	background: var(--welle) center/58px auto no-repeat;
	filter: drop-shadow(0px 3px 3px var(--schatten));
}

h2 {
	margin-top: 2em;
	text-decoration: underline;
	text-align: center;
}

main img {
	max-width: 100%;
	height: auto;
	box-shadow: 4px 4px 12px var(--schatten);
	border: 1px solid rgba(255,255,255,.7);
}

table {
	margin: auto;
	text-align: center;
}

tr:nth-child(even) {
	background-color: rgba(0,0,0,.06);
}

tr:nth-child(odd) {
	background-color: rgba(0,0,0,.16);
}

th, td {
	padding: .3em;
}

li {
	margin-bottom: .4em;
}


/* SEARCH */

#search {
	display: block;
	font-size: 1.25em;
	text-align: center;
	margin-bottom: 1em;
}

#search input {
	font-size: 1em;
	color: #000;
	padding: .25em 1em;
	border: 0;
	background-color: rgba(255,255,255,.8);
	background-repeat: no-repeat;
	background-position-x: 98%;
	border-radius: 1em;
	vertical-align: middle;
	max-width: 90%;
	box-sizing: border-box;
}

header #search input {
	width: 180px;
	transition: width 400ms ease;
}

header #search input:focus {
	width: 300px;
}

#search button {
	width: 1em;
	height: 1em;
	font-size: 1.2em;
	vertical-align: middle;
	background: transparent url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath stroke='none' d='M0 0h24v24H0z' fill='none' /%3E%3Cpath d='M10 10m-7 0a7 7 0 1 0 14 0a7 7 0 1 0 -14 0' /%3E%3Cpath d='M21 21l-6 -6' /%3E%3C/svg%3E") center/cover no-repeat;
	border: 0;
	margin-left: -1.2em;
	cursor: pointer;
}

header #search {
	position: absolute;
	top: 1em;
	left: 0;
	right: 0;
}

#search-results {
	display: inline-block;
	text-align: left;
	padding-left: 20px;
}

#search-results li {
	margin-top: .5em;
}

#search-results li span {
	font-style: italic;
	text-align: right;
}

#next-prev {
	text-align: center;
}

#next-prev button {
	display: inline-block;
	background-color: var(--blau);
	color: inherit;
	padding: .5em;
	margin: .5em;
	font-size: 1.2em;
	text-decoration: none !important;
	border: 0;
	cursor: pointer;
}

/* FOOTER */

footer {
	display: block;
	position: relative;
	background: var(--blau) url('blurry-pic.webp') center/cover;
	padding: 1em;
	font-size: .9em;
	text-align: center;
	clear: both;
}

footer > div > div {
	padding: .8em;
}

footer a {
	white-space: nowrap;
}

#footer__logo {
	width: 148px;
	height: auto;
}


/* WP STYLES */

.meta {
	text-align: right;
	font-style: italic;
	font-size: .85em;
}

.has-text-align-center {
	text-align: center;
}

.wp-block-image {
	display: block;
	position: relative;
	margin: 1em 0;
	text-align: center;
	padding-top: .01px;
}

.wp-block-image figcaption {
	font-style: italic;
	font-size: .9em;
}

.wp-block-gallery {
	margin: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.wp-block-gallery .wp-block-image {
	left: unset;
	transform: unset;
	width: 33%;
	align-self: center;
	padding: 1%;
	box-sizing: border-box;
	text-align: center;
}

.wp-block-buttons {
	padding: 1em 0;
	text-align: center;
	display: flex;
	justify-content: center;
}

.wp-block-button__link {
	display: block;
	background-color: var(--blau);
	padding: 1em;
	font-size: 1.2em;
	text-decoration: none;
	transition: letter-spacing 200ms ease;
}

.wp-block-button__link:hover {
	letter-spacing: 1px;
	font-weight: bold;
}

.wp-block-columns {
	display: flex;
	justify-content: space-evenly;
	flex-wrap: wrap;
	margin: 1em 0;
}

.wp-block-column {
	background-color: rgba(0,0,0,.16);
	border-radius: 8px;
	margin: .5em;
	padding: 0 1em;
}

.wp-block-table {
	margin: 0;
	overflow-x: auto;
}


/* NINJA FORMS */

.nf-form-cont {
	margin: 1em auto;
	max-width: 600px;
}

.nf-field {
	margin-top: 1em;
}

.nf-field-label {
	margin: 0 !important;
}

.nf-field-label label {
	font-weight: normal !important;
}

.nf-element {
	font: inherit;
	color: inherit !important;
	padding: .6em;
	width: 100% !important;
	background-color: rgba(0,0,0,.16) !important;
	border: 0;
}

.nf-response-msg {
	margin: 2em;
	border: 2px dashed;
	text-align: center;
	font-weight: bold;
}

.nf-error-msg {
	color: #fff !important;
	background-color: #900;
	padding: .25em;
	width: 100%;
}


/*  - - - RESPONSIVE - - -  */

@media (min-width: 800px) {

	/* LOGO */

	#logo.sticky {
		top: -2px;
		margin-top: 0;
		left: calc(50% - 60px);
		width: 120px;
	}


	/* NAVICON & NAV */

	#navicon {
		display: none;
	}

	nav ul {
		display: flex;
		height: 80px;
		display: flex;
		justify-content: center;
		align-items: center;
		margin: 0;
		padding: 0;
		justify-content: space-evenly;
	}

	nav li {
		transition: margin 1500ms ease;
	}

	nav li:nth-child(3) {
		margin-right: 226px;
	}

	nav.sticky li:nth-child(3) {
		margin-right: 115px;
	}

	nav a {
		font-size: 1.8vw; /* Fallback */
		font-size: clamp(5pt, 1.8vw, 18pt);
		padding: .2em .5em;
	}

	#navicon-checkbox:checked ~ nav {
		height: 80px;
	}


	/* FOOTER */

	footer > div {
		display: flex;
		text-align: left;
		justify-content: space-around;
		max-width: 1200px;
		margin: auto;
	}

	footer div div {
		align-self: center;
	}

	
	/* WP STYLES */

	.alignright {
		float: right;
	}
}