:root { 
  --background-color: #ffffff; /* Background color for the entire website, including individual sections */
  --default-color: #212529; /* Default color used for the majority of the text content across the entire website */
  --heading-color: #427AA1; /* Color for headings, subheadings and title throughout the website */
  --accent-color: #679436; /* Accent color that represents your brand on the website. It's used for buttons, links, and other elements that need to stand out */
  --surface-color: #EBF2FA; /* The surface color is used as a background of boxed elements within sections, such as cards, icon boxes, or other elements that require a visual separation from the global background. */
  --contrast-color: #ffffff; /* Contrast color for text, ensuring readability against backgrounds of accent, heading, or default colors. */
}

/* Nav Menu Colors - The following color variables are used specifically for the navigation menu. They are separate from the global colors to allow for more customization options */
:root {
  --nav-color: #3a3939;  /* The default color of the main navmenu links */
  --nav-hover-color: #679436; /* Applied to main navmenu links when they are hovered over or active */
  --nav-mobile-background-color: #ffffff; /* Used as the background color for mobile navigation menu */
  --nav-dropdown-background-color: #ffffff; /* Used as the background color for dropdown items that appear when hovering over primary navigation items */
  --nav-dropdown-color: #3a3939; /* Used for navigation links of the dropdown items in the navigation menu. */
  --nav-dropdown-hover-color: #679436; /* Similar to --nav-hover-color, this color is applied to dropdown navigation links when they are hovered over. */
}

/* Color Presets - These classes override global colors when applied to any section or element, providing reuse of the sam color scheme. */

.light-background {
  --background-color: #EBF2FA;
  --surface-color: #ffffff;
}

.dark-background {
  --background-color: #060606;
  --default-color: #ffffff;
  --heading-color: #ffffff;
  --surface-color: #252525;
  --contrast-color: #ffffff;
}

#hero.hero img {
    object-position: left;
}

#faq h5 {
	margin-top: 3rem;
	margin-bottom: 1rem;
}

#faq p,
#faq ul {
	margin-left: 28px;
}

#about img.headshot {
	float: right;
	width: 250px;
	height: auto;
	margin: 0 0 20px 20px;
}

img.shadow {
	box-shadow: 0 0 10px rgba(0, 0, 0, .15) !important
}

section.light-background img.shadow {
	box-shadow: 0 0 10px rgba(0, 0, 0, .3) !important
}

footer#footer {
	padding-bottom: 0;
}

footer#footer  .copyright {
	margin-top: 0 !important;
}

@media screen and (max-width: 1199px) {
	
	.mobile-nav-active .mobile-nav-toggle {
		color: var(--nav-color);
		font-size: 36px;
		top: 17px;
		right: 19px;
	}

	.mobile-nav-active .navmenu#navmenu {
		background: var(--surface-color);
	}

	.mobile-nav-active .navmenu#navmenu ul {
		background: transparent;
		height: auto;
		min-height: 0;
		inset: auto;
		margin: 60px 40px;
		width: calc(100% - 80px);
        margin-top: calc(50vh - 60px);
        transform: translateY(-50%);
		padding: 40px 20px;
		box-shadow: none;
	}
	
	.mobile-nav-active .navmenu#navmenu ul li,
	.mobile-nav-active .navmenu#navmenu ul li a {
		text-align: center;
		width: 100%;
	}
	
	.mobile-nav-active .navmenu#navmenu ul li a {
		justify-content: center;
		font-size: 2rem;
		font-weight: 400;
	}

}

@media screen and (max-width: 991px) {
	
	#hero.hero {
		min-height: 70vh !important;
	}
	
	#info img {
		margin: 1rem 0 2rem 0;
	}
	
}


@media screen and (max-width: 599px) {
	
	#about img.headshot {
		width: 200px;
	}

}


@media screen and (max-width: 499px) {
	
	#about img.headshot {
		width: 200px;
		display: block;
		float: none;
		margin: 0 auto 20px auto;
	}

}


