/* Core Stuff */
:root {
/*	--menu-color: blue;    #c43b3b;    default menu color */
	
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

body {
    font-size: 1rem;
    line-height: 1.7;
    color: #606d6e;
    background-color: #eee;
	margin: 0;
	height:inherit; 
}

h1,
h2,
h3,
h4,
h5,
h6 {
    color: #454B4D;
}

a {
    color: #1F8CD6;
    text-decoration: none;
}

a:hover {
    color: #175E91;
}

pre {
    background: #F0F0F0;
    margin: 1rem 0;
    border-radius: 2px;
}

blockquote {
    border-left: 10px solid #eee;
    margin: 0;
    padding: 0 2rem;
}

.clearfix {
    overflow: auto;
}

/* Content Styling */
#header {
	max-width:1280px;
	width: 100%;
	margin: auto;
}

#top {
	position: relative;  
/*	left: 1em; */
	width: 100%;   
	height: 4em;         
/*	margin: 2em auto 0;  */
}

#logo {
	position: absolute;
	top: 1em;	
	left: 4em;
	max-width: 100%;
    z-index: 10;
}

#logo a {
	font-size: 2em;
    text-transform: uppercase;
}

#search {
	position: absolute;
	top: 4em;
	right: 0;
	width: 16em;
	margin: auto 0;
	z-index: 11;
}

#menu {
}

#tabs {
	position: relative;
	top: 0; 
	bottom: 0;  
	left: 0; 
	right: 0;  
}	

#nav {
	position: relative;
	background-color: var(--menu-color); 
/*  color: #eee;  
    height: 4em; */
    width: 100%;    
    margin: 0 auto;
    padding: 0.5em 0;  
    
    border-radius: 2px;
}

#sb {
}

#body {
	position: relative;
	max-width:1280px;
	width: 100%;    
	margin: 0 auto;
}

.body-part {
	background-color: #fff;
	padding: 2em 4em;
	margin-bottom: 2em;
	border-radius: 2px;
}

.search-item {
	padding-bottom: 2em;
	margin-left: 0px;
}

#footer {
	max-width:1280px;
	width: 100%;
	margin: 0 auto;
	border-radius: 2px;
    background-color: #ddd;
    text-align: center;
    padding: 0.1em 0;
}

.title {
	font-weight: bold;
}

/* Tabs */
.tab-nav ul {
    text-align: center;
    letter-spacing: -1em;
    margin: 0;
    padding: 0;
}

.tab-nav ul li {
    display: inline-block;
    letter-spacing: normal;
}

.tab-nav ul li a {
    position: relative;
    display: block;
    line-height: 2em;
    background-color: var(--menu-color);
    color: #fff;
    padding: 0 20px;
    white-space: nowrap;
    border-radius: 5px 5px 0 0;
}
/*
.tab-nav ul li:last-of-type a {
	background-color: #8ab44b;
}	*/

/* Menu Settings */
.main-nav ul {
    text-align: center;
    letter-spacing: -1em;
    margin: 0;
    padding: 0;
}

.main-nav ul li {
    display: inline-block;
    letter-spacing: normal;
}

.main-nav ul li a {
    position: relative;
    display: block;
    line-height: 2em;
	background-color: var(--menu-color);
    color: #fff;
    padding: 0 1em;
/*    white-space: nowrap; */
    border-radius: 5px;
	border: 1px solid var(--menu-color); 
}

.main-nav ul li:hover > a {
	border-top: 1px solid rgba(255, 255, 255, 0.5);
	border-left: 1px solid rgba(255, 255, 255, 0.5);
	border-bottom-color: rgba(0, 0, 0, 0.5);
	border-right-color: rgba(0, 0, 0, 0.5);
}

.main-nav ul li.selected > a {

	border-top-color: rgba(0, 0, 0, 0.5);
	border-left-color: rgba(0, 0, 0, 0.5);
	border-bottom-color: rgba(255, 255, 255, 0.5);
	border-right-color: rgba(255, 255, 255, 0.5);
}

/* Dropdown Menu */
.main-nav ul li {
	position: relative;
}

.main-nav ul li ul {
    position: absolute;
    background-color: var(--menu-color);
    border-radius: 2px;
    min-width: 100%;
    text-align: left;
    z-index: 999;
    padding: 2px;
    display: none;
}
.main-nav ul li ul li {
    display: block;
}

.main-nav ul li ul ul {
    left: 100%;
    top: 0;
}

.main-nav li:hover > ul {
    display: block;
}

.main-nav .has-children > a {
    padding-right: 30px;
}
.main-nav .has-children > a:after {
    font-family: FontAwesome;
    content: '\f107';
    position: absolute;
    display: inline-block;
    right: 8px;
    top: 0;
}

.main-nav .has-children .has-children > a:after {
    content: '\f105';
}


@media (max-width:1279px){
	#top{
		height:auto;
		padding-left:1em;		
	}
	.body-part{
		padding:1em;
	}
	#logo{
		position:static;
	}
	#search{
		position:static;
	}
	#menu{
		padding-left:1em;
	}
    #tabs, #nav{
        visibility:hidden;
		padding:0;
		height:0;
    }
	#sb{
		padding-left:1em;
		background-color:#ddd;
		margin-bottom:0.5em;		
	}	
}
@media (min-width:1280px){
    #tabs, #nav{
        visibility: visible;
    }
	#sb{
        visibility:hidden;		
		height: 0;
	}
}

/*
@media (max-width:480px){
}
@media (min-width:481px){
}
@media (min-width:768px){
}
@media (min-width:992px){
}
@media (min-width:1200px){
}
*/

/* Main Menu */
.sb-menu { /* Apply to <ul> or <ol>. */
	padding: 0;
	margin: 0;
	list-style-type: none;
}

.sb-menu li {
	width: 100%;
	padding: 0;
	margin: 0;
	border-top: 1px solid rgba(255, 255, 255, 0.1); /* Will lighten any background colour you set. */
	border-bottom: 1px solid rgba(0, 0, 0, 0.1); /* Will darken any background colour you set. */
}

.sb-menu > li:first-child {
	border-top: none; /* Removes top border from first list item.. */
}

.sb-menu > li:last-child {
	border-bottom: none; /* Removed bottom border from last list item. */
}

.sb-menu li item {
	width: 100%; /* Makes links full width. */
    display: inline-block;
	padding: 1em; /* Creates an even padding the same size as your font. */
	color: #f2f2f2;
}

.sb-menu li item:hover {
	text-decoration: none;
	background-color: rgba(255, 255, 255, 0.05); /* Will lighten any background colour you set. */
	color: rgba(255, 255, 255, 0.5); 
}

item a {
	color: var(--menu-color);
}

/* Borders */
div[off-canvas*='left'] .sb-menu li item {
	border-left: 3px solid transparent;
}

div[off-canvas*='left'] .sb-menu li item:hover {
	border-left: 3px solid; /* Removes transparent colour, so border colour will be the same as link hover colour. */
}

div[off-canvas*='left'] .sb-menu .selected:not(.has-children) > item {
	border-left: 3px solid; /* Removes transparent colour, so border colour will be the same as link hover colour. */
}

/* Submenus */
.sb-submenu {
	display: none;
	padding: 0;
	margin: 0;
	list-style-type: none;
	background-color: rgba(255, 255, 255, 0.05); /* Submenu background colour. */
}

/* Caret */
span.sb-caret {
	width: 0;
	height: 0;
	display: inline-block;
	margin: 0 5px;
	border: 5px solid transparent;
}

span.sb-caret { /* Caret Down */
	border-top: 5px solid;
	border-bottom: 0px solid transparent;
}

.sb-submenu-active > span.sb-caret { /* Caret Up */
	border-top: 0px solid transparent;
	border-bottom: 5px solid;
}

item > .sb-toggle-submenu {
	position: absolute;
	right: 5px;
}