:root {
	--primary-color: #9F4218;
	--secondary-color: #FF0000;
	--complementary-color: #88BFB5;
	--contrast-color: #F2E527;
	--light-color: #EF8040;
	--home-bg-color: #F2F3EE;
	--menu-color: #F2F2F2;
	--menu-bg-color: #242526c0;
	--hover-bg-color: #FFFFFF80;
	--text-color: #616161;
	--border-color: #709680;
	--heading-color: #346039;
	--box-shadow-color: #B5B5AC;
	--box-shadow: 0px 0px 5px 7px var(--box-shadow-color);
	--border-radius: 30px 5px;
	--spinner-color: #ff0000;
}

/* Zeichen für Menü öffnen "&equiv;", "≡" (U+2261) oder "☰" (U+2630) ...oder der Burger "🍔" (U1F354) */
/* Achtung: U+2630 funktioniert nicht mit Chrome... */
.menu-char::before {
	content: "\2261";
}

/* Zeichen für Menü schließen "❌" (U+274C) oder "✖" (U+2716) */
.close-char::before {
	content: "\274C";
}

/* "Page loading"-Spinner */
#load-spinner {
	border: 12px solid #00000000;
	border-radius: 50%;
	border-top: 12px solid var(--spinner-color);
	width: 70px;
	height: 70px;
	position: absolute;
	top: 10em;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	animation: loading-spinner 1s linear infinite;
}

@keyframes loading-spinner {
	100% {
		transform: rotate(360deg);
	}
}

body,
html {
	color: var(--text-color);
	background-color: var(--home-bg-color);
	font-size: medium;
}

strong {
	font-size: larger;
}
header {
	text-align: center;
	margin: 0 auto;
}

header div{
margin: 0 auto;
	width: 80%;
}

svg.logo{
	background-color: var(--border-color);
	width: min(140px, 40%);
	vertical-align: middle;
}

svg.logotext {
width: min(600px, 90%);
}

#star {
	fill: rgb(159,66,24);
	height: 100px;
}

.animated #star {
	animation: ani 14s linear infinite;
}

@keyframes ani {
	50% { transform: rotateY(180deg); }
}


header img {
	width: min(600px, 90%);
}

header {
	margin: 1em auto;
	font-family: "eurofurence", "Helvetica", sans-serif;
	font-weight: 550;
	font-size: 1.3rem;
}

main {
	margin: 1em auto;
	font-family: "eurofurence", "Helvetica", sans-serif;
	font-weight: normal;
	font-size: 1.3rem;
}

main article {
	margin: 2em 3em;
	padding: 2em 3em 1em;
	border-style: solid;
	box-shadow: var(--box-shadow);
}

main article img{
	float: right;
	padding: 1em;
}

main article p{
	min-width: 10em;
}

main article > p::first-letter {
	font-size: 2em;
	font-weight: bold;
	color: var(--heading-color);
}

main article div {
	display: inline-block;
}

details p::first-letter {
	font-size: 2em;
	font-weight: bold;
	color: var(--heading-color);
}

details summary::marker {
	content: "👉";
	font-size: 2em;
}

input {
	width: 60px;
	height: 40px;
}

td, th {
	vertical-align: top;
}

@media screen and (max-width: 690px) {
	main article {
		padding: 0;
		margin: 0;
		border: none;
		box-shadow: none;
	}
}

.spinner {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  background: 
    radial-gradient(farthest-side, var(--spinner-color) 94%,#0000) top/8px 8px no-repeat,
    conic-gradient(#0000 30%, var(--spinner-color));
  -webkit-mask: radial-gradient(farthest-side,#0000 calc(100% - 8px),#000 0);
  animation: spin 1s infinite linear;
}

@keyframes spin{ 
	100% {transform: rotate(1turn)
	}
}

/* Definitionen für die Termin-Kacheln */
.item-container{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
/*	align-items: center;*/
}

.item-wrapper {
	background: #ffffff;
	border-radius: 2rem;
	margin: 1rem;
	padding: 1rem;
	width: 30rem;
}

.item-title {
	font-size: 1.5rem;
	text-align: center;
}

.item-title > p {
	text-align: center;
}

.item-img img {
	border-radius: 1.5rem;
	width: 20rem;
	text-align: center;
	display: flex;
	margin-left: auto;
	margin-right: auto;
}

.item-content {
}

.item-button {
}

.item-footer {
	text-align: center;
	font-size: 0.9rem;
	font-weight: normal;
}

/* Basis sind die 690 (siehe oben) aber es könnte sinnvoller sein, schon ab einer größeren Breite unzuschalten */
@media (max-width: 790px) {
.item-wrapper {
    flex: 100%;
  }
}


