:root {
	--theme-color1: #ffae00;
	--theme-color2: var(--theme-color1);
	--theme-color-light: oklch(from var(--theme-color1) calc(l + 0.05) c h);
	--calendar-accent-color: var(--theme-color1);
}

/*
Theme Name: Lucid
Theme URI: http://www.elegantthemes.com/gallery/
Version: 2.5
Description: 2 Column theme from Elegant Themes
Author: Elegant Themes
Author URI: http://www.elegantthemes.com
*/

html { -webkit-font-smoothing: antialiased; }

body {
	font-family: 'Open Sans', Arial, sans-serif;
	font-size: 16px;
	color: #4c4c4c;
	background-color: white;
}

a { text-decoration: none; }

a:hover { text-decoration: underline; }

h1, h2, h3, h4, h5, h6 {
	padding-bottom: 5px;
	color: #111;
	line-height: 1em;
	font-weight: normal;
}

h1 { font-size: 30px; }

h2 { font-size: 24px; }

h3 { font-size: 22px; }

h4 { font-size: 18px; }

h5 { font-size: 16px; }

h6 { font-size: 14px; }

p { line-height: 24px; }

strong {
	font-weight: bold;
	color: #1c1c1c;
}

blockquote  {
	margin: 1.5em;
	padding: 1em;
	color: #666666;
	background: #e6e6e6;
	font-style: italic;
	border: 1px solid #dcdcdc;
}

blockquote p { padding-bottom: 0px; }

header {
	background-color: #f9f9f9;
	border-bottom: thin solid #eeeeee;
	position: relative;
}

header::before {
	content: '';
	position: absolute;
	height: 7px;
	bottom: -7px;
	left: 0;
	background: url(shadow.png) no-repeat top center;
	width: 100%;
}

header + .container { text-align: center; }

#identity-container {
	display: inline-flex;
	padding: 1em;
}

#logo img, #title img { max-height: 400px; }

@media screen and (max-width: 767px) {
	#logo img, #title img { max-height: 50vw; }
}

.container {
	text-align: left;
	margin: 0 auto;
	max-width: 960px;
	position: relative;
}

#account-menu {
	float: left;
	border-left: 1px solid #e5e5e5;
	border-right: 1px solid #e5e5e5;
	padding: 23px 32px 19px;
}

#site-identity .slogan { display: none; }

#title {
	font-size: 70px;
	text-transform: uppercase;
}

#title:hover { text-decoration: none; }

#secondary-menu {
	border-top: 1px solid #eeeeee;
	border-bottom: 1px solid #eeeeee;
	position: relative;
}

#secondary-menu::before {
	content: '';
	position: absolute;
	height: 7px;
	bottom: -7px;
	left: 0;
	background: url(shadow.png) no-repeat top center;
	width: 100%;
	z-index: 1;
}

#main-area {
	background-color: #f9f9f9;
	border-bottom: 1px solid #eeeeee;
	padding: 0 20px;
}

#featured_section {
	margin: 0 0 56px;
	clear: both;
}

#featured { position: relative; }

.page::before, #secondary-menu::before, header::before {
	content: '';
	position: absolute;
	height: 8px;
	bottom: -8px;
	left: 0;
	background: url(middle-shadow.png) no-repeat top center;
	width: 100%;
}

#all_socialmedia, #searchbar, #account_menu {
	display: inline-block;
	height: 59px;
	line-height: 59px;
	padding: 0 25px;
}

#all_socialmedia { border-right: thin solid #e5e5e5; }

#searchbar {
	border-left: thin solid white;
	border-right: thin solid #e5e5e5;
	position: relative;
}

#searchbar input {
	border-radius: 10px;
	padding: 10px 30px 10px 10px;
}

#searchbar input:focus { border-color: #c5c5c5 !important; }

#searchbar button {
	position: relative;
	left: -35px;
	top: 2px;
	--btn-bg: transparent;
	--btn-text: gray;
	--btn-hover-text: black;	
	border: none !important;
	box-shadow: none !important;
}

#account_menu { border-left: thin solid white; }

.page { width: 100%; }

.has-sidebar .page { width: 64%; }

/*------------------------------------------------*/
/*---------------------[FOOTER]-------------------*/
/*------------------------------------------------*/

footer { border-bottom: thin solid #eeeeee; border-top: thin solid #eeeeee; position: relative; padding: 10px; }
footer::before { content: ''; position: absolute; height: 7px; bottom: -7px; left: 0; background: url(shadow.png) no-repeat top center; width: 100%; }
#copyright { font-size:12px; color:#4b4b4b; margin-top: -4px; text-align: right; }
#copyright a { color:#4b4b4b; font-weight: bold; }

/*------------------------------------------------*/
/*--------------------[SIDEBAR]-------------------*/
/*------------------------------------------------*/

.sidebar { float: right; clear: right; width: 33%; margin-left: 3%; border: thin solid #e5e5e5; background-color: white; position: relative; margin-bottom: 1em; }
.sidebar::after { content: ''; position: absolute; height: 7px; bottom: -7px; left: 0; background: url(shadow2.png) no-repeat top center; width: 100%; }
.sidebar h1, .page h1 { text-shadow: 1px 1px 0 white; color: #4c4c4c; font-size: 16px; background-color: #f9f9f9; padding: 21px; border: thin solid white; border-bottom: thin solid #e5e5e5; }
.sidebar li { border-bottom: thin solid #f7f7f7; margin: 0; font-size: 16px; transition: all .3s; }
.sidebar li a { text-decoration: none; padding: 20px; display: block; color: #4c4c4c; }
.sidebar li:hover { background-color: #f9f9f9; box-shadow: inset 1px 1px 0 white; }
.sidebar li:hover a { color: #4c4c4c; }

/*------------------------------------------------*/
/*---------------[DEFAULT DROPDOWN SETTINGS]---*/
/*------------------------------------------------*/

.mobile_nav {
	display: none;
	padding: 22px 28px;
	color: #4b4b4b;
	font-size: 14px;
	position: relative;
	cursor: pointer;
}

.mobile_nav .active::before { transform: rotate(180deg); }

.mobile_nav .nav_arrow {
	font-size: 1.8em;
	vertical-align: middle;
}

nav { text-align: center; }

nav ul ul { position: relative; }

nav ul li {
	display: inline-block;
	list-style: none;
}

nav ul li a,
.mobile_nav .active::before { transition: all .3s; }

nav ul li a {
	display: block;
	font-size: 14px;
	padding: 18px 14px;
}

nav > ul > li:hover {
	background-color: var(--theme-color1);
	box-shadow: inset 0 0 10px oklch(from var(--theme-color1) calc(l - 0.15) c h);
}

nav > ul > li:hover > a {
	color: white;
	transform: translateY(-5px);
}

nav ul li.current > a { font-weight: bold; }

nav ul li a:hover { text-decoration: none; }

nav ul ul {
	display: none;
	position: absolute;
	background-color: var(--theme-color1);
	z-index: 9999;
}

nav ul ul ul {
	left: 250px;
	top: 0;
}

nav ul ul li {
	display: block;
	width: 250px;
}

nav ul ul li:hover { background-color: var(--theme-color-light) !important; }

nav ul ul a {
	color: white;
	text-align: left;
	padding: 15px;
	border-bottom: 1px solid var(--theme-color-light);
}

nav ul ul li:last-of-type a { border-bottom: none; }

nav ul li:hover > ul { display: block; }

nav > ul > li > a::before {
    font-family: 'Material Design Icons';
    font-size: 1.7em;
    vertical-align: middle;
    content: '\F035D'; /* menu-down */
	font-weight: 300;
}

nav ul ul li > a::before {
    font-family: 'Material Design Icons';
    font-size: 1.7em;
    vertical-align: middle;
    content: '\F035F'; /* menu-right */
	font-weight: 300;
	margin-left: -10px;
}

nav > ul > li > a:only-child::before,
nav ul ul li > a:only-child::before {
    content: '';
    margin: 0;
}

/*------------------------------------------------*/
/*-------------------[PAGE NAVI]------------------*/
/*------------------------------------------------*/

.container .header_banner { text-align: left !important; }
.container .header_banner #top_banner { float: right; margin-top: 20px; }

html#ie7 ul.nav li:hover a span.main_text { color: #fff !important; }
html#ie7 header, html#ie7 #secondary-menu { z-index: 2; }
html#ie7 #main-area, html#ie7 #main-area .container { z-index: 1; }

@media only screen and ( min-width: 768px ) {
	.home .sidebar {
		float: none;
		margin: 0 .5% 0 0;
		display: inline-block;
		vertical-align: top;
	}
}

@media only screen and ( min-width: 768px ) and ( max-width: 960px ) {
	#top-menu { padding-right: 8px; }

	.sidebar::after { background-size: contain; }

	.slogan { font-size: 14px; }

	.sidebar li a { padding-right: 30px; }

	#copyright {
		text-align: center;
		margin-bottom: 25px;
	}
}

@media only screen and ( max-width: 767px ) {

	#title { font-size: 45px; }

	nav > ul > .dropdown > a { pointer-events: none; }

	nav > ul > .dropdown { cursor: pointer; }

	#top-menu, nav, span.post-meta, #switcher .meta-info { display: none; }

	#featured_section { margin-bottom: 30px; }

	.sidebar::after { background-size: contain; }

	.slogan { font-size: 14px; }

	#copyright  { text-align: center; margin: 30px 0; }

	/*-------------------------------------------------*/
	/*-------------------[MOBILE NAV]------------------*/
	/*-------------------------------------------------*/

	.mobile_nav { display: block; }

	nav {
		margin: auto;
		text-align: left;
		position: absolute;
		z-index: 9999;
		width: 300px;
		left: calc(50% - 150px);
		background-color: white;
	}

	nav ul li.dropdown a { pointer-events: none; }

	nav ul li {
		display: block;
		cursor: pointer;
	}

	nav > ul > li:hover {
		background-color: white;
		box-shadow: none;
	}

	nav > ul > li:hover > a { color: inherit; }

	nav > ul > li:hover > a::before { color: var(--theme-color1); }

	nav ul li:hover ul { display: none; }

	nav ul ul,
	nav ul ul ul { position: static; }

	nav ul ul ul {
		display: block !important;
		border-bottom: 1px solid #e5e5e5;
	}

	nav ul ul ul li a { padding: 5px 60px; }

	nav ul ul li { width: 100%; }

	nav ul ul li a { padding: 5px 30px; }

	nav ul li:hover a { transform: none; }

	nav ul ul li a::before { color: white; }

	nav ul li a {
		padding: 5px;
		border-bottom: 1px solid #e5e5e5;
	}

	nav ul li a::before  {
		color: var(--theme-color1);
		content: '\F035F'; /* menu-right */
	}

	nav ul li a:only-child::before  { margin-left: 23px; }

	nav > ul > li > a::before {
		transition: all .3s;
	}

	nav > ul > li.clickable a::before,
	nav ul ul li a::before {
		display: inline-block;
		transform: rotate(90deg);
	}

	/*-----------------------------------------------------*/
	/*-------------------[END MOBILE NAV]------------------*/
	/*-----------------------------------------------------*/

	#secondary-menu .container { text-align: center; }

	.page { width: 100% !important; }

	.sidebar { display: block; width: 100%; margin-left: 0; margin-top: 30px !important; }

	.sidebar::after { background-image: url(middle-shadow.png); }

	.sidebar iframe { width: 100%; }

	#account-menu {
		border-left: none;
		text-align: center;
		float: none;
	}
}

@media only screen and ( max-width: 479px ) {
	#all_socialmedia, #searchbar {
		border-left: none;
		border-right: none;
	}

	header .container { width: auto !important; }

	#top-menu, .nivo-caption { display: none !important; }

	#featured_section { margin-bottom: 30px; }

	.sidebar::after { background-size: contain; }

	.slogan { font-size: 14px; }

	#copyright  { text-align: center; margin: 30px 0; }

	header .container { text-align: center; }
}

.sidebar { padding: .5em; }

.sidebar ul {
	padding-left: 0;
	list-style-type: none;
}

.sidebar li a::before {
	font-family: 'Material Design Icons';
	font-size: 1.2em;
	display: inline-block;
	vertical-align: middle;
	content: '\F035F'; /* menu-right */
	color: var(--theme-color1);
}

.sidebar ul ul { padding-left: 1em; }

.page {
	float: left;
	border: thin solid #e5e5e5;
	background-color: white;
	border: thin solid #e5e5e5;
	padding: 20px;
}

.page h1 { margin: -20px -20px 20px; }

.clickable a { pointer-events: auto !important; }

.clickable::before { transform: rotate(90deg); }

footer { background-color: white; }

.slogan {
	float: left;
	font-family: 'Open Sans Condensed', Arial, sans-serif;
	font-size: 16px;
	text-transform: uppercase;
	color: white;
	background-color: var(--theme-color2);
	text-shadow: -1px -1px 0 rgba(0,0,0,0.2);
	padding: 8px 11px;
	margin: 20px 0;
}

.marquee {
	float: right;
	font-weight: bold;
	margin: 20px 0;
}

#featured + #content-area { padding-top: 15px; }

.page { clear: right; }

.page a, .sidebar a { color: var(--theme-color1); }

blockquote {
	background-color: #f9f9f9;
	border: thin solid #ececec;
	padding: 20px;
}

blockquote {
	padding: 10px 20px;
	margin: 0 0 20px;
	font-size: 17.5px;
}

.custom_button {
	--btn-bg: var(--theme-color2);
	border-radius: 9999px;
	padding: .5em 1em;
	display: inline-block;
	font-size: unset;
	text-transform: none;
	font-weight: unset;
	border: none !important;
}

.home .sidebar:last-of-type { margin: 0; }

.sidebar h1 {
	margin-top: -0.5em;
	margin-left: -0.5em;
	margin-right: -0.5em;
}

footer .container {
	display: table;
	width: 100%;
}
footer .container > div {
	display: table-cell;
	vertical-align: middle;
	width: 33.33%;
}

#footer_contact { text-align: center; }

#footer_contact .site_contact { display: block; }

#footer_contact .site_contact_cell { display: inline; }

@media screen and (max-width: 768px) {
	footer .container {
		text-align: center;
		width: auto;
	}

	footer .container > div {
		display: block;
		margin: 10px auto;
		text-align: center;
		width: auto;
	}
}
