@media screen and (max-width: 500px) 
{
	#head-left
{
	width: auto !important;
	text-align: center;
}

	.table-overview
	{
		flex-direction: column;
		justify-content: center;
		gap: 0;
	}

	.table-overview-item-date, .table-overview-item-name, .table-overview-item-place
	{
		padding-bottom: 0.1rem !important;;
		text-align: center;
		width: auto !important;
	}

	.table-overview-item-button
	{
		height: 4rem !important;
		align-content: center;
	}

	.ws-content-grid
	{
	grid-auto-flow: row;	
	}
}

@media screen and (min-width: 900px) 
{
	.ws-content-grid
	{
	margin-top: 2rem;
	gap: 1%;
	grid-template-columns: 22% 77%;
	
	}
}

/*======================================================================*/

body
{
	font-family: arial;
	padding: 0;
	background-color:rgb(14,17,19);
	color:whitesmoke;
	margin-left: auto;
	margin-right: auto;
	max-width: 1440px;
}

/*======================================================================*/

header
{
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: center;
}

#head-left
{
	width: 30%;
}

#head-left img
{
	width: 80%;
	height: auto;
}


#head-middle
{
	text-align: center;
}

#logo-head-center
{
	margin-top: 1em;
	width: 60%;
	height: auto;
}

#head-right
{
	width: 30%;
}

#head-right::after
{
	content: " ";
}

header h3
{
	margin: 0;
	color: whitesmoke;
}


/* =============================================================================================== */

main
{
	padding: 1em;
}

.line-h
{
  	border-bottom: 1px solid silver;
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

.line-h-green
{
  	border-bottom: 1px solid rgb(5,98,53);
	margin-top: 0.5rem;
	margin-bottom: 0.5rem;
}

.link-green
{
	color: rgb(5,98,53);
	text-decoration: none;
}

.link-green:hover
{
	color: rgb(45,153,45);
	text-decoration: underline;
}

/* =============================================================================================== */

#navbar
{
	margin-top: 2em;
	padding: 1rem 0;
	border-top: 1px solid rgb(4,49,28);
	border-bottom: 1px solid rgb(4,49,28);
	text-align: center;
}

.navbar-button
{
	color: whitesmoke;
	text-decoration: none;
	display: inline-block;
	align-content: center;
	text-align: center;
	margin-right: 0.5rem;
	padding: 0.5rem 1rem;
	font-size: x-large;
	border: 1px solid transparent;
	border-radius: 7px;
}

.navbar-button-active
{
	/*color: rgb(5,98,53);*/
	color: whitesmoke;
	border: 1px solid transparent;
	text-decoration: none;
	display: inline-block;
	align-content: center;
	text-align: center;
	margin-right: 0.5rem;
	padding: 0.5rem 1rem;
	font-size: x-large;
	background-color: rgb(5,98,53);
	border-radius: 7px;
}

.navbar-button:hover, .navbar-button-active:hover
{
	border: 1px solid white;
	transition: border 0.2s linear;
}

/* =============================================================================================== */

.item-list
{
	list-style-type: none;
	padding: 0;
}

.item-list li
{
	margin-bottom: 1em;
}

.table-overview
{
	border: 1px solid whitesmoke;
	border-radius: 10px;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: center;
	justify-content: space-evenly;
}

.table-overview-item-date
{
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.table-overview-item-name
{
	width: 35%;
	padding-top: 1rem;
	padding-bottom: 1rem;
}

.table-overview-item-place
{
	width: 25%;
	padding-top: 1rem;
	padding-bottom: 1rem;
}


.table-overview-item-button
{
	min-width: 10%;
	height: 5rem;
	align-content: center;
}

.table-overview-button
{
	display: block;
	width: 100%;
	height: 85%;
	font-size: large;
	color: whitesmoke;
	border-radius: 7px;
	background-color: rgb(5,98,53);
	border: 1px solid rgb(5,98,53);
	align-content: center;
	text-align: center;
	text-decoration: none;
}

/* =============================================================================================== */

#marked
{
	color: rgb(5,98,53);
}

#ws-details-head
{
	font-size: clamp(1rem, 7vw, 3rem);
	color: rgb(5,98,53);
}

.ws-details-head-details
{
	display: flex;
	flex-wrap: wrap;
	margin:0;
	font-size: clamp(0.5rem, 7vw, 1.25rem);
}

.ws-details-head-details img
{
	height: 25px;
	margin-right: 0.33rem;
}

.ws-details-head-details-label
{
	width: 7rem;
	margin-bottom: 0.33rem;
	font-weight: bold;
	color: lightslategray;
}

.ws-details-head-details-value ul
{
	margin: 0;
	padding: 0;
}

.ws-details-head-details-value ul li
{
	list-style-type: none;
}

/* =============================================================================================== */

.ws-content-grid
{
	margin-top: 2rem;
	display: grid;
}

.ws-content-grid aside
{
	margin-top: 1.2rem;
}

.ws-content-grid article
{
	hyphens: auto;
}

.ws-content-aside
{
	margin-top: 0;
	list-style-type: none;
	padding-left: 0;
}

.ws-content-aside-sub
{
	list-style-type: none;
	padding-left: 0;
	padding-top: 0.5rem;
	padding-bottom: 0.5rem;
}

#participation
{
	margin-top: 1em;
	margin-bottom: 2em;
}

#contact-link
{
	color: rgb(180,180,180);
}

#contact-link:hover
{
	color: whitesmoke;
	transition: color 0.3s linear;
}

.ws-content-aside-label
{
	font-weight: bold;
	color: rgb(5,98,53);
	font-size: clamp(0.55rem, 7vw, 1.1rem);
	margin-bottom: 0.5rem;
}

.ws-content-aside-label2
{
	font-weight: bold;
	color: rgb(5,98,53);
	font-size: clamp(0.55rem, 7vw, 1.1rem);
	margin-bottom: 1rem;
}

.ws-text-bold-large
{
	font-weight: bold;
	color: limegreen;
	font-size: large;
	border: 1px solid lightslategray;
	padding: 0.4rem;
}

.ws-content-button-download
{
	height: 2em;
	background-color: rgb(5,98,53);
	border: 1px solid rgb(5,98,53);
	color: whitesmoke;
	border-radius: 5px;
	text-decoration: none;
	padding: 0.5rem;
}

.ws-content-button-submit
{
	background-color: rgb(5,98,53);
	border: 1px solid rgb(5,98,53);
	color: whitesmoke;
	border-radius: 5px;
	padding: 0.5rem;
	text-decoration: none;
}

.ws-content-button-submit-closed
{
	background-color: rgb(80,80,80);
	border: 1px solid rgb(80,80,80);
	color: darkgray;
	border-radius: 5px;
	padding: 0.5rem;
	text-align: center;
}

.ws-content-button-participate
{
	background-color: rgb(5,98,53);
	border: 1px solid rgb(5,98,53);
	color: whitesmoke;
	border-radius: 5px;
	padding: 1rem;
	text-decoration: none;
}

.ws-content-button-participate-closed
{
	background-color: rgb(80,80,80);
	border: 1px solid rgb(80,80,80);
	color: darkgray;
	border-radius: 5px;
	padding: 1rem;
	width: 10rem;
	text-align: center;
	margin: 0;
}

.ws-content-button-submit:hover, .table-overview-button:hover, .ws-form-submit-button:hover, .ws-content-button-download:hover, .ws-content-button-participate:hover
{
	background-color: rgb(7,157,67);
	border-color:  lightgray;
	transition: background-color 0.35s ease, border-color 0.35s ease;
	cursor: pointer;
}

.ws-detail
{
	margin-bottom: 0.75rem;
}

.ws-detail-date-flex
{
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	margin-bottom: 0.75rem;
}

.ws-detail-date-flex-label
{
	color: lightslategray;
	font-size: 97%;
	padding-top: 0.2rem;
}

.ws-detail-date-flex-value
{
	width: 100%;
}

.ws-detail-link
{
	margin-top: 1rem;
	margin-bottom: 1rem;
}

.ws-detail-link2
{
	margin-top: 0;
	margin-bottom: 1rem;
}

/* =============================================================================================== */

#message
{
	color:darkorange;
}

#ws-form-submit
{
	padding: 0;
}

#ws-form-submit-head-name
{
	color: rgb(50,130,50);
}

.form-item-text, .form-item-text-required
{
	display: flex;
	flex-basis: max-content;
	flex-wrap: wrap;
	margin-bottom: 1rem;
	font-size: 1.35rem;
}

.form-item-text label, .form-item-text-required label
{
	width: 15rem;
}

.form-item-text-required label::after
{
	content: "*";
	color:red;
}

.form-item-text input, .form-item-text-required input, .form-item-text textarea
{
	width: 18rem;
	background-color: gray;
	border: 1px solid lightgray;
	border-radius: 5px;
	padding: 0.2rem;
	font-size: large;
	color: whitesmoke;
}

.form-item-text input:focus, .form-item-text-required input:focus, .form-item-text textarea:focus
{
	outline: none;
	border: 1px solid lawngreen;
}

.ws-form-submit-button
{
	height: 3rem;
	width: 8rem;
	background-color: rgb(5,98,53);
	border: 1px solid rgb(5,98,53);
	color: whitesmoke;
	border-radius: 5px;
	font-size: larger;
}

.info-small
{
	font-size: small;
	color: grey;
}

/* =============================================================================================== */

footer
{
	color:slategray;
	display: grid;
	grid-template-columns: 50% 50%;
	margin-left: 2.5%;
	margin-right: 2.5%; 
	border-top: 1px solid slategray;
}

#footer-left
{
	margin: 0;		
	padding-top: 0.5rem;
}

#footer-right
{
	margin: 0;	
	text-align: right;
	padding-top: 0.5rem;
}

.footer-link
{
	text-decoration: none;
	color: slategray;
	margin-right: 1rem;
}

.footer-link:hover
{
	text-decoration: underline;
	color: white;
	transition: color 0.33s linear;
}
