
/*******************************
/ PAGE STRUCTURE
/******************************/
html, body {
	padding:0;
	margin:0;
}

html {
	min-height:100%;
}

body {
	font-size: 0.875em;
	font-family: Calibri, Verdana, san-serif;
	font-weight: normal;
	color: #fff;
	background: #666666;
	min-height: 100%;
}

header, footer, section, main {
	box-sizing: border-box;
}

#page {
	background-color: white;
	color: #111;
	min-width: 200px;
	max-width: 1400px;
	margin: 0 auto;
	position: relative;
	width: 100%;
	height: 100%;
	
	/*display: -webkit-box;*/      /* OLD - iOS 6-, Safari 3.1-6 */
	display: -moz-box;         /* OLD - Firefox 19- (buggy but mostly works) */
	display: -ms-flexbox;      /* TWEENER - IE 10 */
	display: -webkit-flex;     /* NEW - Chrome */
	display: -ms-flex;
	display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
	
	-webkit-box-orient: vertical;
	-ms-box-orient: vertical;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-flow: column nowrap;
	
	-webkit-align-content: stretch;
	-ms-flex-line-pack: stretch;
	align-content: stretch;
}

#page > * {
	/*
	display: block;
	width: 100%;
	*/
}

.sticky {
    position: -webkit-sticky;
    position: sticky;
    top: 0;
}

/*******************************
/ HEADINGS
/******************************/

h1 {
	font: bold 24px Calibri, Verdana;
	letter-spacing: -0.3px;
	word-spacing: -1px;
	color: #5b503c;
	margin: 0 0 16px 0;
}
h2 {
	font: bold 120% Calibri, Verdana;
	letter-spacing: 0;
	word-spacing: -1px;
	color: #1b1b1b;
	margin: 20px 0 2px 0;
}
h3 {
	font: bold 100% Calibri, Verdana;
	color: #1b1b1b;
	margin: 0;
}
h4 {
	font: bold 8pt Calibri, Verdana;
	margin: 0;
}
h5 {
	font: bold 8pt Calibri, Verdana;
}

/*******************************
/ GLOBAL BITS AND PIECES
/******************************/

ul, ol {
	margin-left: 0;
	padding-left: 1.1em;
}
ol {
	padding-left: 1.5em;
}
.videoWrapper {
	position: relative;
	padding-bottom: 56.25%; /* 16:9 */
	padding-top: 25px;
	height: 0;
}
.videoWrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.content img {
	max-width: 100% !important;
}
.legal {
	margin: 16px 0; 
	outline: 1px solid silver; 
	padding: 10px;
	font-size: 9px;
}
.bright_table {
	border: 1px solid silver;
	border-collapse: collapse;
}
.bright_table th {
	background-color: #7fc6e7;
}
.bright_table thead th {
	background-color: #0095da;
}
.bright_table thead th * {
	color: white !important;
}
/*******************************
/ HEADER
/******************************/

header {
	background: #3f3d40;
	color: white;
	position: relative;
	border-bottom: 2px solid white;
	width: 100%;
	/*margin-top: 42px;*/
}
#main_logo {
	position: relative;
	max-width: 55%;
	display: table-cell;
	vertical-align: middle;
	text-decoration: none;
}
#main_logo > img {
	max-width: 100%;
}
#main_logo > p { /*taglines*/
	font: normal 11px Calibri;
	color: white;
	margin: -30px 0 30px 25px;
}

.cta_buttons {
	color: white;
	position: sticky;
	top: 0;
	background-color: #222;
	text-align: center;
	padding: 5px;
	width: 100%;
	min-width: 200px;
	max-width: 1400px;
	box-sizing: border-box;
	z-index: 100;
	min-height: 42px;
}
.cta_buttons a {
	margin-top: 0;
	font-size: 16px;
	box-sizing: border-box;
}


/*******************************
/ MAIN MENU
/******************************/

#main_menu {
	max-width: 50%;
	padding: 14px 0;
	display: inline-block;
	text-align: center;
	display: table-cell;
	vertical-align: middle;
}

#main_menu a {
	color: #dadbdd;
	font: normal 14px Calibri, Arial;
	text-transform: uppercase;
	text-decoration: none;
	display: inline-block;
	padding: 2px 6px;
}
#main_menu a:hover {
	color: white;
}

/* Responsive Mobile Menu */
a.menu-trigger {
	color: white;
	text-transform: uppercase;
	text-decoration: none;
	display: none;
	vertical-align: middle;
	text-align: right;
	padding: 20px 25px 20px 0px;
	min-width: 60px;
	font-size: 14px;
	font-weight: normal;
}
#mobile_menu_wrapper {
	position: absolute;
	top: 0;
	width: 76%;
	z-index: 1000;
	box-shadow: 0px 0px 10px 0 black;
	background: white;
}
#mobile_menu {
	
}
#mobile_menu a {
	font: normal 1.1em Calibri, Arial;
	color: #555;
	text-transform: uppercase;
	text-decoration: none;
	display: block;
	width: 100%;
	padding: 9px 18px 9px 48px;
	box-sizing: border-box;
	border-bottom: 1px solid #ddd;
	background: white none no-repeat scroll 10px center;
}
#mobile_menu a span {
	vertical-align: middle;
	display: block;
}
#mobile_menu a.contact { background-image: url('/images/icons/contact.png'); background-color:#0095d9; color:white; }
#mobile_menu a.investing { background-image: url('/images/icons/investing.png'); background-position: 12px center; }
#mobile_menu a.buying { background-image: url('/images/icons/buying.png'); }
#mobile_menu a.portfolio { background-image: url('/images/icons/portfolio.png'); }
#mobile_menu a.vendors { background-image: url('/images/icons/vendors.png'); }
#mobile_menu a.overseas { background-image: url('/images/icons/overseas.png'); }
#mobile_menu a.smsf { background-image: url('/images/icons/smsf.png'); background-position: 12px center; }
#mobile_menu a.approach { background-image: url('/images/icons/approach.png'); background-position: 8px center; }
#mobile_menu a.about { background-image: url('/images/icons/about.png'); }
#mobile_menu a.independence { background-image: url('/images/icons/independence.png'); background-position: 16px center; }
#mobile_menu a.clients { background-image: url('/images/icons/clients.png'); }
#mobile_menu a.pif { background-image: url('/images/icons/pif.png'); }
#mobile_menu a.partner { background-image: url('/images/icons/partner.png'); }
#mobile_menu a.news { background-image: url('/images/icons/news.png'); }
#mobile_menu a.blog { background-image: url('/images/icons/blog.png'); }
#mobile_menu a.videos { background-image: url('/images/icons/videos.png'); }

.cke_shared.cke_detached {
	/*position: sticky;*/
}
/*******************************
/ INLINE MESSAGES: display messages at top of page
/******************************/

#inline_messages {
	clear: both;
	color: black;
	background-color: #fdfdff;
	box-sizing: border-box;
	width: 100%;
}

/*******************************
/ MAIN CONTENT
/******************************/

main {
	display: flex;             /* NEW, Spec - Opera 12.1, Firefox 20+ */
	flex-direction: row;
	align-items: stretch;
	height: 100%
	flex: 1;
	
	padding: 0;
	border-top: 2px solid silver;
	max-width: 100%;
	min-height: 400px;
	/*overflow: hidden;*/
	position: relative;
	background-color: white;
}

/*******************************
/ SIDEBAR
/******************************/

.sidebar_panel {
	display: flex;
	min-width: 200px;
	max-width: 350px;
	flex: 0 1 25%;
	box-sizing: border-box;
	background-color: #dfdbce;
	flex-direction: column;
}
.sidebar_panel h2
{
	margin: 10px auto;
	text-align: center;
}

nav#sidebar_menu {
	background-color: #555557;
	height: 335px;
}

nav#sidebar_menu a {
	display: block;
	text-decoration: none;
	font: normal 13px Calibri, Arial;
	text-transform: uppercase;
	color: #dadbdd;
	padding: 10px 16px;
	height: 16px; 
	border-bottom: 1px solid silver;
}
nav#sidebar_menu a:last-child {
	border-bottom: 0;
}
nav#sidebar_menu a:hover
{
	color: white;
	background: #666666 url("/images/icons/left_menu_arrow-trans.png") no-repeat right center;
}

nav#sidebar_blog {
	padding: 30px 0 30px 0;
}
.button_wrap {
	padding: 0px 16px 8px 16px;
}
a.bloglink
{
	display: block;
	max-width: 400px;
	text-align: center;
	text-decoration: none;
	color: white !important;
	margin: 0 auto;
	background-color: #0095da;
	padding: 8px 4px;
	border-radius: 7px;
}
a.bloglink.red {
	background-color: #D51E1E;
}
.sidebar_panel nav.links a,
.vidbar_panel nav.links a {
	font: normal 13px Calibri, Arial;
	color: #0095d9;
	display: block;
	text-decoration: none;
	padding: 6px 16px;
	border-bottom: 1px solid silver;
	-webkit-box-sizing: border-box;
	-ms-box-sizing: border-box;
	box-sizing: border-box;
}

.sidebar_panel nav.links a:hover,
.vidbar_panel nav.links a:hover {
	color: #444444;
	border-bottom-color: #bab194;
}


/*******************************
/ MAIN PANEL
/******************************/

main.sidebar section.main_panel {
	width: 75%;
	-webkit-flex: 1 0 75%;
	-ms-flex: 1 0 75%;
	flex: 1 0 75%;
	float: left; /* IE8 */
	
	position: relative;
	display: flex;
	display: -ms-flex;
	display: -webkit-flex;
	
	-webkit-flex-direction: row;
	-webkit-flex-wrap: wrap;
	flex-direction: row;
	flex-wrap: wrap;
	
	align-content: flex-start;
	align-items: stretch;
}

/*******************************
/ CONTENT PANEL
/******************************/

.content_panel {
	/*padding: 24px 35px 35px 35px;*/
	padding: 30px;
	
	-ms-box-sizing: border-box;
	box-sizing: border-box;
	
	min-height: 400px;
	flex: 2;
}

main.rightbar .content_panel {
	
	width: 70%;
	-webkit-flex: 1 0 75%;
	flex: 1 0 auto;
	-ms-flex: 1 70%;
}

.content_panel p
{
	margin-bottom: 1.0em;
}
.content_panel a, .content_panel a:visited
{
	color: #0095d9;
}

/* CMS CONTENT: area holding client HTML from DB */

.padded_content {
	/*padding: 24px 35px 35px 35px;*/
	padding: 30px;
}
.content_panel .padded_content {
	padding: 0;
}

/*******************************
/ MEDIA/GALLERY PANEL
/******************************/

.media_panel,
.gallery_panel {
	width: 0;
	min-width: 100%;
	max-width: 100%;
	flex: 1 0 100%;
	-ms-flex: 1 0 100%;
	height: 335px;
}
.media_panel img,
.fotorama > div {
	max-width: none !important;
	height: 335px;
}


/*******************************
/ RIGHT PANEL
/******************************/

.right_panel {
	width: 30%;
	box-sizing: border-box;
	-ms-box-sizing: border-box;
	-webkit-flex: 1 0 20%;
	flex: 1 0 20%;
	-ms-flex: 1 0 20%;
	/*color: white;*/
	/*background-color: #dfdbce;*/
	background-color: #efebde;
	/*float: left;  IE8 */
	/*padding: 30px 15px;*/
}

/*******************************
/ VIDBAR
/******************************/
.vidbar_panel
{
	position: relative;
	overflow: hidden;
	padding-top: 24px;
}
.vidbar_panel h2
{
	margin: 10px auto;
	text-align: center;
}
.vidbar_panel nav.links {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
}
.vidbar_panel nav.links a {
	flex: 1 1 250px;
	/*float: left;  IE8 */
}
.vidbar_panel nav.links img {
	max-height: 80px;
	width: 20%;
	float: left;
	margin-right: 3%;
}
.vidbar_panel nav.links h3 {
	float: left;
	width: 70%;
}

/*******************************
/ FOOTER
/******************************/

footer {
	/*position: fixed;*/
	box-sizing: border-box;
	bottom: 0;
	width: 100%;
	min-width: 200px;
	max-width: 1400px;
	padding: 5px 15px;
	background-color: #333;
	color: white;
	font: normal 13px Calibri, Arial;
	border-top:1px solid #000;
}
footer h2 {
	color: #BBB;
	font-size: 14px;
	margin: 0;
}
footer .footer_links {
	width: 100%;
}
footer .footer_links td {
	vertical-align: top;
	padding: 2px 4px;
}
footer .footer_links p {
	margin: 0;
}
footer .footer_links a {
	text-decoration: none;
}
footer .footer_map {
	display: inline-block;
	text-align: right;
	overflow: hidden;
	height: 200px;
}
footer .footer_map_copyright {
	text-align:right; 
	font-size: 9px;
}
footer a, footer a:visited {
	color: white;
}

/*******************************
/ HOMEPAGE
/******************************/

.eventblock {
	background:#61AFD0;
	font-size:15px;
	position:relative;
	margin: 10px 0;
}

.eventblock-img {
	float:left;
	margin:0 10px 0 0;
	width: 120px;
}
.eventblock-img img {
	/*
	height:110px !important;
	width:auto !important;
	*/
	max-width: 100%;
	margin-right: 10px;
}

.eventblock-title {
	background:#4C8DC4;
	color:#fff;
	font-size:16px;
	padding:7px 0 7px 125px;
	margin:0;
}

.eventblock-desc {
	padding:7px 10px 30px 125px;
	margin: 0;
	color:#fff;
}

.eventblock-date {
	position:absolute;
	bottom:0;
	right:0;
	font-size:14px;
	text-align: center;
	padding:5px 15px;
	background:#ddd;
	color:#111;
	font-weight:bold;
}
#block_eventblock_date,
#block_content_eventblock_date.block_content,
#block_eventblock_date2,
#block_content_eventblock_date2.block_content {
	display: inline-block;
}
.eventblock-title a, #eventblock-desc a {color:#fff !important; font-weight:inherit; text-decoration:none !important;}
.eventblock-date a {color:#111 !important; font-weight:bold; text-decoration:none !important;}

/*******************************
/ PRODUCTS
/******************************/



/*******************************
/ ORDERS
/******************************/


/*******************************
/ CONTACT
/******************************/

/*****************************************
/	BLOG                                                   
/****************************************/	

.area_blog article {
	padding: 10px 0 !important;
}
.area_blog article img {
	padding:1px;
	border:1px solid #ccc;
	width:200px;
	height:auto;
}

.area_blog article h2 {
	font-size:1.3em;
	margin-bottom: 1px;
	margin-top:0;
}
.area_blog article p {
	margin-top:10px;
	margin-bottom:0;
}
.area_blog article h2 a,
.area_blog article h2 a:visited {
	text-decoration:none;
	color: #5b503c;
}
.area_blog article h2 a:hover {
	text-decoration: underline;
	color: #0086C6;
}

/*******************************************************************************************
/	RESPONSIVE                                                   
/******************************************************************************************/	

/*******************************  Non-Small Displays Only *******************************/
@media only screen and (min-width: 640px) {
	#mobile_menu a {display: none;}
	
} /* End */

		
/*******************************  Desktop Large (.dl) *******************************/
@media only screen and (min-width: 860px) {
	.vidbar_panel nav.links a {
		/*min-width: 100%;*/
	}
} /* End */


/*******************************  Desktop Small (.ds) (DEFAULT)  *******************************/
@media only screen and (min-width: 980px) and (max-width: 1170px) {

} /* End */


/*******************************  Tablet Portrait (.tp) *******************************/
@media only screen and (min-width: 768px) and (max-width: 979px) {

}/* End */


/*******************************  Mobile Landscape (.ml) *******************************/
@media only screen and (max-width: 940px) {
	.cta_buttons b {
		display: none;
	}
	#main_logo > p { /*taglines*/
		margin-left: 10%;
	}
	footer {
		font-size: 12px;
	}
	footer td:nth-child(5) {
		display: none;
	}
}

@media only screen and (max-width: 800px) {
	.cta_buttons a {
		margin-top: 4px;
		font-size: 12px;
	}
	nav#sidebar_menu a {
		font-size: 12px;
	}
	main.sidebar .main_panel {
		
	}
	.right_panel,
	main.sidebar .right_panel {
		/*
		width: 100% !important;
		*/
		flex: 0 0 100%;		
	}

}/* End */


/*******************************  Mobile Portrait (.mp) *******************************/
@media only screen and (max-width: 640px) {
	.cta_buttons a {
		width: 100%;
	}
	#main_logo > p { /*taglines*/
		margin: -20px 0 20px 5%;
	}
	#page {
		margin: 0;
		display: block;
		float: none;
	}
	footer, section, main {
		width:auto !important;
		max-width: 100% !important;
		min-width: 0 !important;
		float: none;
	}
	main {
		flex-wrap: wrap;
	}
	main .sidebar_panel {
		width: 100%;
		order: 10;
		max-width: 100%;
		min-width: 100%;
	}
	main.sidebar .gallery_panel,
	main.sidebar .media_panel {
		height: auto;
	}
	main .media_panel,
	main .gallery_panel {
		display: none;
	}
	#sidebar_menu {
		display: none;
	}
	main.sidebar .main_panel,
	main.sidebar .right_panel {
		/*width: 100% !important;*/
	}
	main .content_panel {
		padding: 8px;
	}
	.vidbar_panel nav.links a {
		width: 100%;
	}
	.vidbar_panel nav.links a:nth-child(6),
	.vidbar_panel nav.links a:nth-child(7),
	.vidbar_panel nav.links a:nth-child(8),
	.vidbar_panel nav.links a:nth-child(9),
	.vidbar_panel nav.links a:nth-child(10) {
		display: none !important;
	}
	.sidebar_panel nav.links a:nth-child(9),
	.sidebar_panel nav.links a:nth-child(10),
	.sidebar_panel nav.links a:nth-child(11),
	.sidebar_panel nav.links a:nth-child(12),
	.sidebar_panel nav.links a:nth-child(13),
	.sidebar_panel nav.links a:nth-child(14),
	.sidebar_panel nav.links a:nth-child(15),
	.sidebar_panel nav.links a:nth-child(16),
	.sidebar_panel nav.links a:nth-child(17),
	.sidebar_panel nav.links a:nth-child(18),
	.sidebar_panel nav.links a:nth-child(19),
	.sidebar_panel nav.links a:nth-child(20) {
		display: none !important;
	}	
	#main_menu {display: none;}
	#main_logo img {max-width: 60%;}
	a.menu-trigger {display:table-cell;}
	
	#mobile_menu a,
	.vidbar_panel nav.links a {
		/*flex: 0 0 100% !important;*/
	}
	
	#eventblock-date {
		position: relative;
		width: auto;
		font-size: 1.2em;
	}
	
	/* FOOTER */
	
	footer td:nth-child(2), footer td:nth-child(3) {
		display: none;
	}
} /* End */