/* CLEARFIX */
.cf:before,
.cf:after {
content: " "; /* 1 */
display: table; /* 2 */
}
.cf:after {
clear: both;
}

@font-face {
      font-family: 'fontelloform';
      src: url('../fonts/fontelloform.eot?19776053');
      src: url('../fonts/fontelloform.eot?19776053#iefix') format('embedded-opentype'),
           url('../fonts/fontelloform.woff?19776053') format('woff'),
           url('../fonts/fontelloform.ttf?19776053') format('truetype'),
           url('../fonts/fontelloform.svg?19776053#fontelloform') format('svg');
      font-weight: normal;
      font-style: normal;
    }

/* CSS variables */
:root {
	--Green: #58875B;
	/**--Darkgreen: #156019; */
	--Darkgreen: #1e4c20;
	--Brown: #572e0e;
	--Darkbrown: #2E231C;
	--Offwhite: #F9F9E6;
};


/* GLOBAL STYLES */
* {
	box-sizing: border-box;
	-webkit-text-size-adjust: none;
}
html {
	font-size: 100%;
	/*font-family: 'open sans', sans-serif;*/
	font-family: 'quicksand', sans-serif;
	color: #666;
}
body {
	/*background-color: #fff;*/
/*	background: url(../images/background.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	background-attachment: fixed;*/
}
a {
	text-decoration: none;
	outline: none;
	transition: color 0.25s;
}
.link-button {
	width: auto;
	cursor: pointer;
	background-color: var(--Green);
	color: white !important;
	border: 0;
	margin: 1.5em 0 0 0;
	transition: all .25s;
	display: inline-block !important;
	padding: 5px 10px;
	border-radius: 10px;
}
.link-button:hover {
	background-color: var(--Darkgreen);
}

/* MOBILE STYLES */
.width {
	width: 100%;
	max-width: 1200px;
	margin: 0 auto;
}





/* nav */
#home header {
	height: 100vh;
	background: url(../images/hero.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
#home div.opacitybox {
	/*background-color: rgba(88,135,91,0.1);*/
	background-color: rgba(0,0,0,0.2);
	height: 100%;
	width: 100%;
	position: relative;
}
#home .hero-text-box {
	width: 70%;
	position: relative;
	top: 40vh;
	margin: 0 auto;
	text-align: center;
	/*background-color: rgba(0,0,0,0.5);*/
	padding: .5em;
	border-radius: 20px;
}
#home div.hero-text-box h2 {
	color: white;
	font-size: 1.8em;
	animation: fadeIn 2s forwards;
	margin: 0 auto;
	line-height: 1.5em;
	text-shadow: 3px 3px 3px black;
	font-family: 'Bad Script';
	position: relative;
}
#home .hero-text-box .link-button {
	font-size: 1em;
	padding: 10px 20px;
	box-shadow: 3px 3px 3px rgba(0,0,0,0.5);
	font-weight: bold;
	animation: fadeIn 2s forwards;
}
#home .downarrow {
	display: block;
	color: white;
	font-weight: bold;
	text-shadow: 3px 3px 3px black;
	position: absolute;
	bottom: 50px;
	left: 50%;
	font-size: 3em;
	animation: fadeIn 2s forwards;
}
@keyframes fadeIn {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}
@keyframes slide {
	from {
		transform: translateX(-100%);
	}
	to {
		transform: translateX(0%);
	}
}
#home div.opacitybox p {
	/*color: white;
	position: relative;
	top: 52vh;
	text-align: center;
	font-size: 1em;
	opacity: 0;
	animation: fadeIn 2s forwards;*/
}
.subpage header {
	height: 40vh;
	background: url(../images/hero.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}
.subpage div.opacitybox {
	background-color: rgba(0,0,0,.2);
	height: 100%;
	width: 100%;
	position: relative;
}
.subpage div.opacitybox h2 {
	position: relative;
	top: 50%;
	text-align: center;
	color: white;
	font-size: 2em;
	text-shadow: 3px 3px 3px black;
	animation: fadeIn 2s forwards;
}
.subpage div.opacitybox p {
	color: white;
	position: relative;
	top: 52%;
	text-align: center;
	font-size: 1em;
}
.navbar {
	z-index:100;
	position: fixed;
	top: 0;
	width: 100%;
	background-color: var(--Green);
	height: 100px;
	transition: background-color 0.5s;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.navbar h1 {
	float: left;
	z-index:100000000000000;
	margin-left: 1em;
}
.navbar h1 a {
	background: url(../images/logo3.svg) no-repeat;
	background-size: cover;
	background-position: left center;
	display: block;
	font-size: 1.5em;
	height: 100px;
	width: 100px;
	line-height: 80px;
	/*text-indent: -9999px;*/
	color: rgba(0,0,0,0);
}
.navbar.sticky {
	background-color: #58875b;
	
}
.wrapper {
	float: right;
	z-index:10000000000000;
  overflow: hidden;
  position: absolute;
  top: 20px;
  right: -50px;
  width: 120px;
  cursor: pointer;
  -webkit-touch-callout: none;
  -webkit-user-select: none;
  -khtml-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.hamburger {
  list-style: none;
  float: left;
  margin: 0;
  padding: 10px 0;
  position: relative;
  top: 2px;
  left: 10px;
  -moz-transition: all 233ms cubic-bezier(0.5, 0, 0, 1);
  -o-transition: all 233ms cubic-bezier(0.5, 0, 0, 1);
  -webkit-transition: all 233ms cubic-bezier(0.5, 0, 0, 1);
  transition: all 233ms cubic-bezier(0.5, 0, 0, 1);
}
.hamburger li {
  width: 24px;
  height: 2px;
  background: #fff;
  margin: 4px 0 0;
  padding: 0;
  -moz-transform: translate3d(0, 0, 0);
  -ms-transform: translate3d(0, 0, 0);
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
  -moz-transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
  -o-transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
  -webkit-transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
  transition: all 333ms cubic-bezier(0.5, 0, 0, 1);
}

.checked .hamburger li.first {
  -moz-transform: rotate(-135deg) translateY(-8.5px);
  -ms-transform: rotate(-135deg) translateY(-8.5px);
  -webkit-transform: rotate(-135deg) translateY(-8.5px);
  transform: rotate(-135deg) translateY(-8.5px);
}
.checked .hamburger li.second {
  filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
  opacity: 0;
}
.checked .hamburger li.third {
  -moz-transform: rotate(135deg) translateY(8.5px);
  -ms-transform: rotate(135deg) translateY(8.5px);
  -webkit-transform: rotate(135deg) translateY(8.5px);
  transform: rotate(135deg) translateY(8.5px);
}

/* NO JS NAV */
html.nojs .navbar {
	position: relative;
}
html.nojs .wrapper,
html.nojs .hamburger {
	display: none;
}
html.nojs nav {
	position: relative;
	display: block;
	padding-top: 0px;
	width: 100%;
	height: auto;
	background-color: rgba(0,0,0,0);
}
html.nojs nav ul {
	float: right;
	height: 100px;
}
html.nojs nav ul li{
	float: left;
	display: block;
	margin: 0 1em;
}
html.nojs nav ul li a {
	font-size: 0.8em;
	padding: 0;
	line-height: 88px;
	height: 100px;
	padding: 0 1.1em;
	color: white;
	/**transition: all 0.25s;**/
}
html.nojs nav ul li a:hover {
	color: var(--Darkgreen);
}

nav {
	background-color: rgba(25,25,25,0.95);
	/*position: fixed;*/
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	top: 0px;
	padding-top: .6em;
	display: none;
	transition: all 0.25s;
}
nav ul li a {
	
}nav ul li a:hover {
	color: var(--Darkgreen);
}
nav ul li a.active {
	color: var(--Darkgreen);
	font-weight: 700;
}
nav ul .dropdown .dropdowntoggle {
	display: none;
}

.open {
	background-color: rgba(25,25,25,0.95);
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	top: 0px;
	padding-top: .6em;
	display: block;
}
.open ul li {
	padding: 0;
	margin: 0;
}
.open ul li a {
	font-weight: 300;
	position: relative;
	display: inline-block;
	padding: 0.75em 1.5em;
	font-size: 1.5em;
	color: white;
}
.open ul li .dropdowncontent a {
	display: block;
}
.open ul li a.current {
	color: black;
}
.open ul li a:hover {
	color: var(--Darkgreen);
}

/** hero section **/
.hero-image {
	height: 500px;
	background-image: url('../images/hero.avif');
}



/** footer **/
footer {
	height: 100px;
	background-color: var(--Darkbrown);
	box-shadow: 0px -8px 16px 0px rgba(0,0,0,0.2);
}
.footerstuff {
	height: 100px;
	padding: 0 1em;
}
.footerstuff p {
	line-height: 100px;
}
.footerstuff .copyright {
	float: right;
	margin: 0 1em;
}
.footerstuff .social {
	text-decoration: none;
	list-style: none;
}
.footerstuff .social li a {
	float: left;
	color: white;
	line-height: 100px;
}

/* Home page styles */
#home .content {
	padding: 2em 1em;
}
#home .content h2 {
	font-size: 2em;
	text-align: center;
}
#home .subpage .offwhitebox {
	background-color: var(--Offwhite);
	border-bottom: 3px solid #e2e2d0;
}
#home .offwhitebox {
	background-color: var(--Offwhite);
	border-bottom: 3px solid #e2e2d0;
}

/** supage styling **/
.subpage {

}
.subpage .whitebox {
	background-color: white;
	border-bottom: 3px solid #efefef;
	box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.whitebox {
	background-color: white;
	border-bottom: 3px solid #efefef;
}
.offwhitebox {
	background-color: var(--Offwhite);
	border-bottom: 3px solid #e2e2d0;
}
.subpage .content {
	padding: 2em 1em;
}
.subpage h2 {
	font-size: 1.5em;
	padding: 10px 0;
}
.subpage .content h2 {
	padding-bottom: 5px;
	margin-bottom: 10px;
	/*text-decoration: underline;*/
	/*border-bottom: 3px solid #666;*/
	display: inline-block;
}
.subpage .offwhitebox .content h2 {
	border-bottom: none;
}
.subpage .content h2.contacth2 {
	text-align: center;
	display: block;
}
.subpage h3 {
	font-size: 1.5em;
	padding: 10px 0;
}
.subpage h4 {
	font-size: 1em;
	padding: 10px 0;
}
.subpage .content {
	animation: fadeIn 1.5s forwards;
}
.subpage .content p {
	line-height: 2em;
	padding: 10px 0;
	font-size: 1em;
}
.subpage .content a {
	font-size: 1em;
	line-height: 2em;
	margin: 10px 0;
	color: var(--Green);
	font-weight: bold;
	display: block;
}
.subpage .content a:hover {
	color: var(--Darkgreen);
}
.subpage .contant ul {

}
.subpage .content ul li {
	list-style: number;
	line-height: 2em;
	padding: 10px;
	margin-left: 1em;
}

/** About Me Page **/
#aboutme {

}
#aboutme .portrait-container {
	display: block;
	width: 300px;
	height: 300px;
	/*border: 1px solid black;*/
	border-radius: 300px;
	margin: 1em auto;
	box-shadow: 3px 3px 3px 3px rgba(0,0,0,0.2);
}
#aboutme .portrait-container .portrait {
	width: 300px;
	height: 300px;
	border-radius: 50%
}

/* Gadgets page */
.subpage .content .gadget-list {

}
.subpage .content .gadget-list li {
	list-style: none;
	margin: 0;
	padding: 0;
}
.subpage .content .gadget-list li a {
	display: inline-block;
}

/* Links page */
#links .content ul li {
	list-style: none;
	padding: 0;
	margin: 0;
}
#links .content ul li a {
	display: inline-block;
}

/* doctors page */
#doctors .doctor-links a {
	margin: 0;
	display: inline-block;
}

/** Contact **/
form {
	/*outline: 1px solid black;*/
	width: 90%;
	margin: 0 auto;
	padding: 1em;
	max-width: 800px;
}
form ol,
form li{
	list-style-type: none;
	margin: 0;
	padding: 0;
}
form label,
form input,
form textarea {
	display: block;
	-webkit-appearance: none;
  	-webkit-border-radius: 0;
}
form label {
	padding: 0;
	float: left;
	margin: 0 0 1em 0;
}
form ol li:nth-child(1) label {
	padding-top: 0;
}
form input{
	padding: 1em 1em;
	border: 1px solid #ababab;
	margin: 0 0 1.5em 0;
	width: 100%;
	clear: both;
}
form textarea {
	width: 100%;
	height: 100px;
	margin: 0;
	border: 1px solid #ababab;
	clear: both;
	padding: 1em;
}
form p.errormessage {
	margin: 0 0 0 1em;
	padding: 0;
	color: red;
	font-weight: bold;
	float: left;
	font-size: 0.8em;
}
form input.button {
	width: auto;
	cursor: pointer;
	background-color: var(--Green);
	color: white;
	border: 0;
	margin: 1.5em 0 0 0;
	transition: all .25s;
	border-radius: 10px;
}
form input.button:hover {
	background-color: var(--Darkgreen);
}

/* tools page */
#tools {

}
#tools .toolimg {
	max-width: 100px;
	height: auto;
	display: block;
	margin-top: 50px;
}
#tools .gadget-list li {
	display: inline-block;
	width: 33%;
}

/************************ MEDIA QUERIES **************************/
@media only screen and (min-width: 500px){
	
}

@media only screen and (min-width: 820px){
	.navbar h1 {
		position: relative;
	}
	.navbar h1 a {
		width: 100px;
	}
	.wrapper {
		display: none;
	}
	.navbar {

	}
	.navbar.sticky {
		padding: 0;
	}

	/* desktop navbar */
	.desktop {
		position: relative;
		display: block;
		padding-top: 0px;
		width: 100%;
		height: auto;
		background-color: rgba(0,0,0,0);
	}
	.desktop ul {
		float: right;
		height: 88px;
	}
	.desktop ul li{
		float: left;
		display: block;
		margin: 0 1em;
	}
	.desktop ul li a {
		font-size: 0.8em;
		padding: 0;
		line-height: 100px;
		height: 100px;
		padding: 0 .5em;
		color: white;
		/**transition: all 0.25s;**/
	}
	.desktop ul li a:hover {
		color: var(--Darkgreen);
	}
	.desktop ul .dropdown {
		
	}
	.desktop ul .dropdown .dropdowntoggle {
		display: block;
	}
	.desktop ul .dropdown:hover .dropdowntoggle {
		color: var(--Darkgreen);
	}
	.desktop ul .dropdown:hover .dropdowncontent {
		display: block;
	}
	.desktop ul .dropdown .dropdowncontent {
		display: none;
		position: absolute;
		background-color: white;
		min-width: 100px;
		box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
	}
	.desktop ul .dropdown .dropdowncontent a {
		display: block;
		line-height: 50px;
		height: 50px;
		margin: 0;
		padding: 0 1em;
		color: #666;
	}
	.desktop ul .dropdown .dropdowncontent a:hover {
		background-color: var(--Green);
		color: white;
		transition: all 0.25s;
	}
	#aboutme .portrait-container {
		float: right;
		width: 400px;
		height: 400px;
		border-radius: 400px;
		margin: 1em;
	}
	#aboutme .portrait-container .portrait {
		width: 400px;
		height: 400px;
	}
	#home .hero-text-box {
		top: 45vh;
		width: 60%;
	}
	#home div.hero-text-box h2 {
		font-size: 3em;
	}
	.subpage div.opacitybox h2 {
		font-size: 2.5em;
	}
	.subpage .content h2 {
		font-size: 2em;
		margin-bottom: 20px;
	}
	.subpage header {
		height: 50vh;
	}
	#home .hero-text-box .link-button {
		font-size: 1em;
	}

@media only screen and (min-width: 1200px){

}
@media only screen and (min-width: 1300px){

}
