/* $Id: layout.css 699 2024-01-25 15:24:29Z chrisl $ */

html {
	font-size: 16px; /* determines rem sizing on everything */
}

body {
	margin: 0;
	padding: 0;
	background-color: #4d4f53;
	font-family: 'Muli', Arial, Helvetica, sans-serif;
}

.container {
	padding-top: 3rem;
	padding-bottom: 3rem;
}

img.logo {
	width: 100%;
	max-width: 17rem;
}


/******************************************/
/* navigation defintions                  */
/******************************************/

NAV.navbar {
	background: linear-gradient(to left, #647f53 4.7rem, #faf7f3 4.7rem);
	padding-top: 1rem;
	padding-bottom: 1rem;
}

@media (min-width: 768px) {
	NAV.navbar {
		padding-top: 1.25rem;
		padding-bottom: 1.25rem;
	}
}

@media (min-width: 1200px) {
	NAV.navbar {
		background: linear-gradient(to left, #647f53 6.2rem, #faf7f3 6.2rem);
		padding-top: 1.7rem;
		padding-bottom: 1.7rem;
		font-size: 1.125rem;
	}
}

/* begin logo */
NAV.navbar .navbar-header {
	position: absolute;
	top: 0;
	margin-left: .5rem;
	padding: .5rem 1.5rem;
	background-color: #fff;
	border-radius: 0 0 .5rem .5rem;
}
NAV.navbar .navbar-header .navbar-brand {
	margin-right: 0;
}
NAV.navbar .navbar-header .logo {
	width: 9rem;
}

@media (min-width: 768px) {
	NAV.navbar .navbar-header {
		margin-left: 1rem;
		padding: 1rem 1.5rem;
	}
}

@media (min-width: 1200px) {
	NAV.navbar .navbar-header {
		margin-left: 2rem;
		padding: 1.5rem 2rem;
	}
}
/* end logo */

@media (max-width: 767px) {
	NAV.navbar {
		padding-right: .5rem;
	}
}
NAV.navbar .navbar-toggler {
	border-color: transparent;
}

NAV.navbar .navbar-nav .nav-link {
	font-family: 'Oswald SemiBold', Arial, Helvetica, sans-serif;
	text-transform: uppercase;
}
@media (min-width: 768px) {
	NAV.navbar .navbar-nav .nav-link {
		padding-left: .875rem;
		padding-right: .875rem;
	}
}

NAV.navbar .navbar-nav .nav-link:link,
NAV.navbar .navbar-nav .nav-link:active,
NAV.navbar .navbar-nav .nav-link:visited,
NAV.navbar .navbar-nav .nav-link:hover {
	color: #5f7a4e;
}

NAV.navbar .navbar-nav .dropdown-item:active,
NAV.navbar .navbar-nav .dropdown-item:focus {
	background-color: transparent;
}

NAV.navbar .nav-item {
	position: relative;
}
@media (max-width: 767px) {
	NAV.navbar .nav-item {
		border-bottom: 1px solid #555;
		padding-top: .5rem;
		padding-bottom: .5rem;
	}
}

@media (min-width: 768px) {
	NAV.navbar .nav-item.icon-menu {
		margin-left: 2rem;
		margin-right: -.25rem;
		font-size: 1.5rem;
		line-height: 1;
	}
	NAV.navbar .nav-item.icon-menu .nav-link:link,
	NAV.navbar .nav-item.icon-menu .nav-link:active,
	NAV.navbar .nav-item.icon-menu .nav-link:visited,
	NAV.navbar .nav-item.icon-menu .nav-link:hover {
		color: #333;
	}

	NAV.navbar .dropdown-toggle:after {
		display: none;
	}
}

@media (min-width: 1200px) {
	NAV.navbar .nav-item.icon-menu {
		margin-top: -4px;
		margin-left: 3rem;
		margin-right: 0;
		padding-right: .5rem;
		font-size: 1.75rem;
		line-height: 1.2;
	}
	NAV.navbar .nav-item.icon-menu .nav-link:link,
	NAV.navbar .nav-item.icon-menu .nav-link:active,
	NAV.navbar .nav-item.icon-menu .nav-link:visited,
	NAV.navbar .nav-item.icon-menu .nav-link:hover {
		color: #333;
	}

	NAV.navbar .dropdown-toggle:after {
		display: none;
	}
}

NAV.navbar .nav-item DIV.sectionIndicator {
	display: none;
	position: absolute;
	bottom: -1.25rem;
	left: 1px;
	width: 100%;
	height: .5rem;
	background-color: #1d1d1d;
	z-index: 1000;
}

@media (min-width: 768px) {
	NAV.navbar .nav-item.dropdown.show DIV.sectionIndicator,
	NAV.navbar .nav-item.active DIV.sectionIndicator {
		display: block;
	}
	NAV.navbar .nav-item.open-menu DIV.sectionIndicator {
		display: block !important;
	}
	NAV.navbar .nav-item.dropdown.show DIV.sectionIndicator,
	NAV.navbar .nav-item.dropdown.open-menu DIV.sectionIndicator {
		height: .6rem;
		margin-bottom: -.1rem;
	}
	NAV.navbar .nav-item.open-menu .dropdown-menu {
		display: block;
	}
}

/* begin dropdown menu */
NAV.navbar .dropdown-menu {
	padding: 1.5rem .5rem;
	background-color: #1d1d1d;
	width: auto;
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	z-index: 1040;
}
NAV.navbar .navbar-nav .dropdown-item {
	padding-top: .5rem;
	padding-bottom: .5rem;
}

NAV.navbar .navbar-nav .dropdown-item:link,
NAV.navbar .navbar-nav .dropdown-item:active,
NAV.navbar .navbar-nav .dropdown-item:visited {
	color: #fff;
}
NAV.navbar .dropdown-menu .dropdown-item:hover {
	background-color: transparent;
}

@media (min-width: 768px) {
	NAV.navbar .dropdown-menu {
		top: 3.75rem;
		border-radius: 0 0 .5rem .5rem;
		width: calc(100% + 6rem);
	}

	NAV.navbar .icon-menu .dropdown-menu {
		right: -1rem;
		padding: .5rem .5rem;
		width: 3rem;
	}
	
	NAV.navbar .navbar-nav .dropdown-item {
		transition: background-image 1s, padding-left .25s;
	}
	NAV.navbar .dropdown-menu .dropdown-item:hover {
		background-image: url('/assets/site/img/icons/star-gold.png');
		background-repeat: no-repeat;
		background-position: 1.5rem center;
		padding-left: 2.75rem;
		color: #ffd700;
	}
}

@media (min-width: 1200px) {
	NAV.navbar .dropdown-menu {
		top: 4.35rem;
	}
	NAV.navbar .nav-item DIV.sectionIndicator {
		bottom: -1.7rem;
	}
	NAV.navbar .icon-menu .dropdown-menu {
		top: 4.6rem;
	}
}

@media (max-width: 767px) {
	NAV.navbar .dropdown-menu {
		padding: 0 0 1rem 0;
		border-color: transparent;
		font-family: 'Oswald Light', Arial, Helvetica, sans-serif;
	}

	NAV.navbar .navbar-nav .dropdown-item {
		padding-top: .5rem;
		padding-bottom: .5rem;
	}
}
/* end dropdown menu */

@media (max-width: 767px) {
	.navbar-collapse {
		position: fixed;
		z-index: 1000;
		top: 0;
		left: 0;
		width: calc(100% - 71px);
		height: 100% !important;
		padding-top: 1rem;
		padding-left: 2rem;
		padding-right: 2rem;
		background-color: #1d1d1d;
	}
	.navbar-collapse.collapsing {
		left: -75%;
		transition: height 0s ease;
	}
	.navbar-collapse.show {
		left: 0;
		transition: left 0.15s ease-in-out;
	}
	.navbar-toggler.collapsed ~ .navbar-collapse {
		transition: left 0.25s ease-in-out;
	}

	.navbar-toggler .navbar-toggler-icon {
		display: none;
	}
	.navbar-toggler .navbar-close-icon {
		display: inline-block;
		font-size: 1.5rem;
		padding-right: .4rem;
		padding-bottom: 3px;
		padding-top: 3px;
	}
	.navbar-toggler.collapsed .navbar-toggler-icon {
		display: inline-block;
	}
	.navbar-toggler.collapsed .navbar-close-icon {
		display: none;
	}

	NAV.navbar .navbar-nav .nav-link:link,
	NAV.navbar .navbar-nav .nav-link:active,
	NAV.navbar .navbar-nav .nav-link:visited,
	NAV.navbar .navbar-nav .nav-link:hover,
	NAV.navbar .navbar-nav .dropdown-item:link,
	NAV.navbar .navbar-nav .dropdown-item:active,
	NAV.navbar .navbar-nav .dropdown-item:visited,
	NAV.navbar .navbar-nav .dropdown-item:hover {
		color: #fff;
	}
}


/******************************************/
/* main page sections                     */
/******************************************/

#main_content {
	background-color: #fff;
}

.brandbg {
	background-color: #647f53;
	color: #fff;
}
.secondarybg {
	background-color: #e6ce84;
}
.brightbg {
	background-color: #fff;
}
.lightbg {
	background-color: #faf7f3;
}
.greybg {
	background-color: #ddd;
}
.darkbg {
	background-color: #333;
	color: #fff;
}


/******************************************/
/* icon bar nav                           */
/******************************************/

.suggestion-container,
.suggestion-form {
	position: fixed;
	top: 50%;
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	transform: translateY(-50%);
}

.suggestion-container {
	right: 0;
	height: 8rem;
}

.suggestion-form {
	right: -25rem;
	max-width: 25rem;

	padding: 2rem;
	border: 1px solid #ccc;
	border-radius: .5rem 0 0 .5rem;
	box-shadow: -8px -5px 18px rgba(51, 51, 51, 0.25);
	z-index: 995;

	transition: right 0.5s ease;
}

.suggestion-form.show {
	right: 0;
	transition: right 0.5s ease;
}

.suggestion-container .suggestion-form-icon {
	position: absolute;
	top: 0;
	left: -2.6rem;
	height: 3rem;
	width: 3rem;
	padding: .8rem;
	border-radius: 2rem;
	box-shadow: -8px -5px 18px rgba(51, 51, 51, 0.25);
	font-size: 1.25rem;
	z-index: 990;
	text-align: center;
}
.suggestion-container .suggestion-form-icon svg {
	margin-right: 2px;
	vertical-align: initial;
}

.suggestion-form-title {
	position: absolute;
	top: 4rem;	/* +4 of form-icon value */
	left: calc(-4.1rem);

	padding: .25rem 1.7rem .4rem 1rem;
	border-radius: .5rem .5rem 0 0;
	box-shadow: -8px -5px 18px rgba(51, 51, 51, 0.25);

	transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	-moz-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg);
	
	z-index: 895;
}

.suggestion-form-title a {
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
}
.suggestion-form-title a:hover {
	text-decoration: none;
}



/******************************************/
/* footer definitions                     */
/******************************************/

FOOTER .brandbg,
FOOTER .brandbg a:link,
FOOTER .brandbg a:visited {
	color: #333;
}
FOOTER .darkbg,
FOOTER .darkbg a:link,
FOOTER .darkbg a:visited {
	color: #fff;
}

FOOTER .logo {
	margin-left: -.125rem;
}

FOOTER img.logo {
	padding-bottom: .5rem;
	width: 10rem;
}

FOOTER .links {
	margin-top: 1rem;
	font-family: 'Oswald', Arial, Helvetica, sans-serif;
	font-size: 1.125rem;
	text-transform: uppercase;
}
FOOTER .links a:not(:first-child) {
	margin-left: 1.5rem;
}
FOOTER .links a:hover {
	text-decoration: none;
	color: #fff;
}

FOOTER .social-icons {
	margin-top: 1.5rem;
}
FOOTER .social-icons a {
	display: inline-block;
	width: 40px;
	height: 40px;
	
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 100% auto;
	-webkit-background-size: 100% auto;
	-moz-background-size: 100% auto;
	-o-background-size: 100% auto;
}
FOOTER .social-icons a:not(:first-child) {
	margin-left: .5rem;
}

FOOTER .social-icons #fb_ico {
	background-image: url('/assets/site/img/icons/footer_fb.png');
}
FOOTER .social-icons #tw_ico {
	background-image: url('/assets/site/img/icons/footer_tw-x.png');
}
FOOTER .social-icons #li_ico {
	background-image: url('/assets/site/img/icons/footer_li.png');
}

FOOTER .social-icons a:hover {
	text-decoration: none;
}
FOOTER .social-icons #fb_ico:hover {
	background-image: url('/assets/site/img/icons/footer_fb_white.png');
}
FOOTER .social-icons #tw_ico:hover {
	background-image: url('/assets/site/img/icons/footer_tw-x_white.png');
}
FOOTER .social-icons #li_ico:hover {
	background-image: url('/assets/site/img/icons/footer_li_white.png');
}

FOOTER .copyright {
	margin-top: .5rem;
}

#footer-padding {
	height: 80px;
}
#cookie-banner {
	position: fixed;
	z-index: 10000;
	left: 0;
	bottom: 0;
	border-top: solid 1px #CCC;
	background-color: #EEE;
	padding: 2rem;
	width: 100%;
}
#cookie-banner .container {
	padding-top: 0;
	padding-bottom: 0;
}