:root {
	--lgreen:#b1bf52;
	--green:#004920;
}

.group:after {
	content: "";
	display: table;
	clear: both;
}

* {
    padding:0;
    margin:0;
    box-sizing: border-box;
	color:inherit;
}

img {
	max-width:100%;
}

.wrap {
	position:relative;
	width:960px;
	margin:0 auto;
}

#burger,
#mobnav {
	display:none;
}

body {
    font-size:62.5%;
	font-family: 'Open Sans', sans-serif;
	color:#004920; /* green */
}

header {
    width:100%;
	float:left;
}

	.contactinfo {
		float:right;
		margin:1% 5% 1em 0;
	}
	
		.contactinfo p {
			float:left;
			font-size:1em;
			font-weight:700;
			margin-left:2em;
			letter-spacing: 0.05em;
		}
		
			.contactinfo p span {
				color:var(--lgreen);
			}
	
	#tagline {
		float:right;
		font-size:3em;
		font-weight:300;
		margin-bottom:0.5em;
		margin-right:2%;
		margin-top:1em;
	}
	
	#searchbox {
		float:right;
		clear:right;
		margin-right:5%;
		width:200px;
		border:1px solid #ddd;
		margin-top:3.5em;
		border-radius: 0.25em;
	}
	
		#searchbox input {
			margin-bottom:0;
			width:100%;
			border:none;
			padding:0.5em 0.8em;
		}
	
		.searchsubmit {
			display:none;
		}

    nav {
		float:right;
		clear:right;
		background-color:#e7e7e7;
		padding-right:5%;
    }

    	nav a:hover,
    	nav a:active,
    	nav a:focus,
    	nav a:focus-within,
    	nav a:visited {
    		border:none;
    		outline:none;
    	}
  
		#mainnav {
			  list-style: none;
			  float:left;
			  position:relative;
			  z-index:15;
		}
		
			#mainnav > li {
				float:left;
				margin:0 6px;
			}
			
				#mainnav li:first-of-type{
					margin-left:0;
				}
			
				#mainnav li a {
					float:left;
					text-decoration: none;
					font-size:1em;
					font-weight:700;
					letter-spacing: 0.1em;
					text-transform: uppercase;
					padding:1em 1.15em;
					/*border-right:1px solid #d4d4d4;*/
					position:relative;
					height:36px;
				}
				
					#mainnav li:hover a,
					#mainnav .active {
						background-color:#004920; /* green */
						color:#fff;
						z-index:20;
					}
					
					.slant {
						position:absolute;
					}
					
					.green-l,
					.grey-l{
						left:-12px;
						width:13px;
						height:36px;
						bottom:0;
					}
					
					.green-r,
					.grey-r{
						right:-12px;
						width:13px;
						height:36px;
						top:0;
					}
					
					.green-l,
					.green-r{
						display:none;
					}
					
					.active .green-l,
					.active .green-r,
					nav ul li:hover a .green-l,
					nav ul li:hover a .green-r{
						display:block;
					}
					
					.active .grey-l,
					.active .grey-r,
					nav ul li:hover a .grey-l,
					nav ul li:hover a .grey-r{
						display:none;
					}

				#mainnav ul {
					display:none;
					position:absolute;
					padding-top:3.6em;
					margin-left:-12px;
				}

					#mainnav ul li,
					#mainnav ul li a {
						display:block;
						float:left;
						clear:left;
						width:100%;
					}

					#mainnav ul li a:hover {
						background-color:var(--lgreen);

					}

					#mainnav li:hover ul {
						display:block;
					} 


    #logo {
		float:left;
		width:150px;
		margin:1em 0 0 5%;
    }
  
		#logo img {
			display:block;
		}

.flex {
	display:-webkit-flex;
	display:flex;
	-webkit-flex-direction:row;
	flex-direction:row;
	-webkit-flex-wrap:wrap;
	flex-wrap:wrap;
}

.fcw {
  float:left;
  clear:left;
  width:100%;
}

.main p,
.main li{
  line-height:1.6em;
  margin-bottom:1em;
}

.main ul,
.main ol {
  margin:2em;
}

  .main li {
    padding-left:1em;
  }

.align_left {
  float:left;
}

.align_right {
  float:right;
}

.align_center {
  text-align: center;
}

.left {
	float:left;
}

.right {
	float:right;
}

img.align_left,
figure.align_left{
  margin:0.5em 1em 1em 0;
  padding:1em;
  border:1px solid #eee;
}

img.align_right,
figure.align_right{
  margin:0.5em 0 1em 1em;
  padding:1em;
  border:1px solid #eee;
}

img.align_center,
figure.align_center{
  display:block;
  margin-left:auto;
  margin-right:auto;
  padding:1em;
  border:1px solid #eee;
}

figure {
	display:inline-block;
	padding:1em;
	border:1px solid #eee;
	margin-bottom:1em;
}
  
footer {
  clear:both;
  float:left;
  width:100%;
}

	.imgbar {
		padding:0 5%;
	}
	
		.imgbar img {
			position:relative;
			z-index:10;
			float:left;
			margin-right:1em;
			height:67px;
			margin-bottom:-29px;
		}
	
	.cbar {
		background-color:#e7e7e7;
		padding:2em 5%;
		color:#353535;
	}
	
		.cbar p {
			float:right;
			text-align: right;
		}

		.cookies {
			position:fixed;
			left:0;
			top:0;
			width:100%;
			height:100%;
			background-color:#0006;
			z-index:100;
		}
				
			.cookies .inner {
				position:absolute;
				bottom:0;
				width:100%;
				background-color:#fff;
				padding:2rem;
				border-top:1px solid var(--green);
				display:grid;
				grid-template-columns: 1fr 150px 150px;
				grid-gap:1rem;
			}
		
				.cookies .text {
					position:static;
					float:left;
				}
		
				.cookies .text h2 {
					font-size:2rem;
					margin-bottom:0;
				}
		
				.cookies .accept-btn {
					float:right;
					color:#fff;
					background-color:var(--green);
					text-decoration: none;
					font-size:1rem;
					padding:1rem 2rem;
					text-align: center;
				}

@media screen and (max-width:999px) {
	.cbar p {
		float:left;
		text-align: left;
		margin-top:2em;
	}
}
  
@media screen and (max-width:1059px) {
	
	nav {
		float:left;
		clear:left;
		width:100%;
		padding:0;
	}
	
  #burger{
    display:block;
  }
  
  #mainnav,
  .contactinfo,
  #tagline{
    display:none;
  }
  
  #logo {
	width:190px;
	margin:3% 0 3% 5%;
  }
  
  #burger {
    width:44px;
	float:right;
	margin:3% 5% 3% 0;
  }
  
    #burger img {
      max-width:100%;
      display:block;
    }
	
		#mobnav,
		#mobnav li{
			float:left;
			clear:left;
			width:100%;
			list-style: none;
		}
		
			#mobnav li a {
				float:left;
				clear:left;
				width:100%;
				font-size:1.3em;
				font-weight:700;
				text-transform: uppercase;
				letter-spacing: 0.1em;
				color:#666;
				padding:1em;
				text-align: center;
				text-decoration: none;
				border-bottom:1px solid #ccc;
			}
			
				#mobnav li a:hover {
					background-color:var(--lgreen);
				}
  
        #mobnav li a.tri {
          position:absolute;
          float:none;
          clear:none;
          right: 0;
          top: 0;
          width: 3em;
          height: 100%;
          border:none;
          padding:0;
        }
        
          .tri img {
            float:left;
            width:23px;
            margin-left:0.5em;
            margin-top:0.8em;
            height:11px;
            display:block;
          }
		
		#searchbox {
			display:none;
		}
		
		#searchboxm {
			float:left;
			clear:left;
			width:100%;
			border:1px solid #ddd;
		}
		
			#searchboxm input {
				margin-bottom:0;
				float:left;
				clear:left;
				width:100%;
				padding:1em;
			}
}

@media screen and (max-width:499px) {
	.imgbar img {
		height:35px;
	}

	.cookies .text,
	.cookies .pbtn {
		width:100%;
	}

	.cookies .text {
		margin-bottom:1em;
	}
}