:root {
  --primary-color: #838C4E;
  --primary-color-light: #A2A;
  --cream: #F5E9D3;
  --grey: #7C7C7C;
  --grey_text: #737373;
}

/* gloock-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: 'Gloock';
  font-style: normal;
  font-weight: 400;
  src: url('../webfonts/gloock-v8-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

/* simplo-300 - latin */
@font-face {
  font-display: swap;
  font-family: 'Simplo';
  font-style: normal;
  font-weight: 300;
  src: url('../webfonts/simplo-light.woff2') format('woff2');
}

/* simplo-300italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Simplo';
  font-style: italic;
  font-weight: 300;
  src: url('../webfonts/simplo-light-italic.woff2') format('woff2');
}

/* simplo-regular - latin */
@font-face {
  font-display: swap;
  font-family: 'Simplo';
  font-style: normal;
  font-weight: 400;
  src: url('../webfonts/simplo-regular.woff2') format('woff2');
}

/* simplo-italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Simplo';
  font-style: italic;
  font-weight: 400;
  src: url('../webfonts/simplo-italic.woff2') format('woff2');
}

/* simplo-500 - latin */
@font-face {
  font-display: swap;
  font-family: 'Simplo';
  font-style: normal;
  font-weight: 500;
  src: url('../webfonts/simplo-medium.woff2') format('woff2');
}

/* simplo-500italic - latin */
@font-face {
  font-display: swap;
  font-family: 'Simplo';
  font-style: italic;
  font-weight: 500;
  src: url('../webfonts/simplo-medium-italic.woff2') format('woff2');
}

/* Default Settings */

body {
	font-family: 'Simplo', sans-serif;	
	margin: 0;
	padding: 0;
}

/* Header */

header {
	background-color: var(--primary-color);
	position: relative;
	padding: 15px 0;
}

header::after {
	content: '';
	position: absolute;
	left: 0;
	top: 100%;
	width: 33.333%;
	height: 30px;
	pointer-events: none;
	background-color: var(--primary-color);

	--curve-w: 180px;
	--curve: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 30'%3E%3Cpath d='M0,0 H180 C140,0 40,30 0,30 Z' fill='%23000'/%3E%3C/svg%3E");

	-webkit-mask-image: var(--curve), linear-gradient(#000, #000);
	mask-image: var(--curve), linear-gradient(#000, #000);
	-webkit-mask-size: var(--curve-w) 100%, calc(100% - var(--curve-w) + 1px) 100%;
	mask-size: var(--curve-w) 100%, calc(100% - var(--curve-w) + 1px) 100%;
	-webkit-mask-position: right 0 top 0, left 0 top 0;
	mask-position: right 0 top 0, left 0 top 0;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

header .logo img {
	width: 150px;
	max-width: 100%;
}

header .navigation ul {
	margin: 0;
	padding: 0;
	display: flex;
	column-gap: 20px;
}

header .navigation ul li {
	display: inline-block;
	list-style: none;
}

header .navigation ul li:last-child {
	margin-left: auto;
}

header .navigation ul li a {
	color: #ffffff;
	font-weight: 500;
	font-size: 19px;
	line-height: 1;
	display: block;
	transition: all 0.3s;
	padding: 10px;
}

header .navigation ul li a:hover,
header .navigation ul li.current_page_item a {
	color: var(--cream);
	text-decoration: none;
}

header .navigation ul li.highlight a {
	background-color: #ffffff;
	color: var(--primary-color);
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
	position: relative;
}

header .navigation ul li.highlight a::before {
	position: absolute;
	content: '';
	background-color: #ffffff;
	width: 100%;
	height: 999px;
	bottom: 100%;
	left: 0;
	transition: all 0.3s;
}

header .navigation ul li.highlight a:hover,
header .navigation ul li.highlight a:hover::before,
header .navigation ul li.highlight.current_page_item a,
header .navigation ul li.highlight.current_page_item a::before {
	background-color: var(--cream);
	color: var(--primary-color)
}

header .mobile_nav_open {
	display: none;
}

header .mobile_nav_headline {
	display: none;
}

/* main */

main {
	min-height: 500px;
	background-color: var(--cream);
}

/* Footer */

footer {
	position: relative;
}

footer::before {
	content: '';
	position: absolute;
	right: 0;
	bottom: 100%;
	width: 33.333%;
	height: 30px;
	pointer-events: none;
	background-color: var(--primary-color);

	--curve-w: 180px;
	--curve: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 180 30'%3E%3Cpath d='M0,30 H180 V0 C140,0 40,30 0,30 Z' fill='%23000'/%3E%3C/svg%3E");

	-webkit-mask-image: var(--curve), linear-gradient(#000, #000);
	mask-image: var(--curve), linear-gradient(#000, #000);
	-webkit-mask-size: var(--curve-w) 100%, calc(100% - var(--curve-w) + 1px) 100%;
	mask-size: var(--curve-w) 100%, calc(100% - var(--curve-w) + 1px) 100%;
	-webkit-mask-position: left 0 top 0, right 0 top 0;
	mask-position: left 0 top 0, right 0 top 0;
	-webkit-mask-repeat: no-repeat;
	mask-repeat: no-repeat;
}

footer .footer_top {
	padding: 50px 0;
	background-color: var(--primary-color);
	color: #ffffff;
}

footer .footer_top .logo img {
	width: 250px;
	max-width: 100%;
	display: block;
	margin: auto;
}

footer .footer_top strong.headline {
	font-family: 'Gloock';
	display: block;
	line-height: 1.2;
	font-weight: normal;
	font-size: 20px;
}

footer .footer_bottom {
	background-color: #000000;
	color: #ffffff;
	font-weight: 300;
	padding: 10px 0;
	font-size: 14px;
}

footer .footer_bottom .backlink {
	text-align: right;
}

footer .footer_bottom .backlink a {
	color: #ffffff;
	transition: all 0.3s;
}

footer .footer_bottom .backlink a:hover {
	opacity: 0.8;
	text-decoration: none;
}