@import url(https://fonts.googleapis.com/css?family=Roboto:400,300,300italic,400italic,500,500italic,700italic,700);

/* Column Structure */

html
	{
	background-color: #F0F0F0;
	background-image:
		linear-gradient(rgba(230, 230, 230, .5) 1px, transparent 1px),
		linear-gradient(90deg, rgba(230, 230, 230, .5) 1px, transparent 1px);
	background-position: -1px;
	color: #212121;
	font-family: Roboto, serif;
	min-width: 240px;
	overflow-x: hidden;
	overflow-y: scroll;
	}
	
div#columns
	{
	border: 1px solid #5692D6;
	box-shadow: 1px 1px 3px #C8C8C8;
	display: table;
	margin: auto;
	max-width: 1200px;
	width: 100%;
	}
	
div#columns > div
	{
	display: table-cell;
	overflow: hidden;
	vertical-align: top;
	}
	
div#columns > div#column_1
	{
	background-color: #5692D6;
	}
	
div#columns > div#column_2
	{
	background-color: #FAFAFA;
	width: 100%;
	}
	
/* Basic Elements */

*
	{
	box-sizing: border-box;
	text-overflow: ellipsis;
	}
	
a
	{
	color: #27609F;
	}
	
a:hover
	{
	color: red;
	cursor: pointer;
	}
	
a:hover img
	{
	opacity: 0.90;
	filter: alpha(opacity=90);
	}
	
a span.stButton
	{
	display: none !important; /* Hide the JavaScript-loaded ShareThis span and img. */
	}
	
button,
input,
select,
textarea
	{
	margin: 0;
	padding: 0;  
	}
	
button:focus,	
input:focus,
select:focus,
textarea:focus
	{
    outline: none;
	}
	
article,
footer,
header,
img
	{
	display: block;
	}
	
/* General Classes */

.border_bottom_radius
	{
	border-bottom-left-radius: 4px;
	border-bottom-right-radius: 4px;
	}
	
.border_left_radius
	{
	border-bottom-left-radius: 4px;
	border-top-left-radius: 4px;
	}
	
.border_right_radius
	{
	border-bottom-right-radius: 4px;
	border-top-right-radius: 4px;
	}
	
.border_top_radius
	{
	border-top-left-radius: 4px;
	border-top-right-radius: 4px;
	}
	
.row,
.row > * > *
	{
	display: table;
	}
	
.row img
	{
	height: auto;
	width: 100%;
	}
	
/* Responsive Classes */

.border_radius,
.border_radius_mobile,
.border_radius_screen
	{
	border-radius: 4px;
	}
	
.font_weight_1,
.font_weight_1_mobile,
.font_weight_1_screen
	{
	font-weight: 300;
	}
	
.font_weight_2,
.font_weight_2_mobile,
.font_weight_2_screen
	{
	font-weight: 400;
	}
	
.font_weight_3,
.font_weight_3_mobile,
.font_weight_3_screen
	{
	font-weight: 500;
	}
	
.font_weight_4,
.font_weight_4_mobile,
.font_weight_4_screen
	{
	font-weight: 700;
	}
	
.text_shadow_1,
.text_shadow_1_mobile,
.text_shadow_1_screen
	{
	text-shadow: 1px 1px #3279C8;
	}
	
.text_shadow_2,
.text_shadow_2_mobile,
.text_shadow_2_screen
	{
	text-shadow: 1px 1px #E1E1E1;
	}
	
/* Form Controls */

input
	{
	color: black;
	padding-bottom: 1px;
	}
	
input[type=password],
input[type=text],
textarea
	{
	background-color: #F6FAFE;
	border: 1px solid #A6C6EA;
	display: block;
	}
	
input[type=password]:focus,
input[type=password].error,
input[type=text]:focus,
input[type=text].error,
textarea:focus,
textarea.error
	{
	background-color: #FFF5F5;
	border-color: #FF9191;
	}
	
input[type=password]:-moz-placeholder,
input[type=text]:-moz-placeholder
	{
	color: #2861A0;
	}
	
input[type=password]::-moz-placeholder,
input[type=text]::-moz-placeholder
	{
	color: #2861A0;
	}
	
input[type=password]::-ms-clear,
input[type=text]::-ms-clear
	{
    display: none; /* Removes the clear button in Internet Explorer 10 and greater. */
	}
	
input[type=password]:-ms-input-placeholder,
input[type=text]:-ms-input-placeholder
	{
	color: #7EACE0;
	}
	
input[type=password]::-webkit-input-placeholder,
input[type=text]::-webkit-input-placeholder
	{
	color: #7EACE0;
	}
	
input[type=password]:focus:-moz-placeholder,
input[type=text]:focus:-moz-placeholder
	{
	color: #C80000;
	}
	
input[type=password]:focus::-moz-placeholder,
input[type=text]:focus::-moz-placeholder
	{
	color: #C80000;
	}
	
input[type=password]:focus:-ms-input-placeholder,
input[type=text]:focus:-ms-input-placeholder
	{
	color: #FF5F5F;
	}
	
input[type=password]:focus::-webkit-input-placeholder,
input[type=text]:focus::-webkit-input-placeholder
	{
	color: #FF5F5F;
	}
	
input[type=reset],
input[type=submit]
	{
	background-color: #7EACE0;
	border: 1px solid #A6C6EA;
	color: white;
	display: inline-block;
	text-align: center;
	}
	
input[type=reset]:hover,	
input[type=submit]:hover
	{
	background-color: #FF5F5F;
	border-color: #FF9191;
	color: yellow;
	}
	
input.border_left_radius
	{
	border-right: none;
	}
	
label
	{
	display: block;
	font-weight: 500;
	white-space: nowrap;
	}
	
label + input[type=checkbox]
	{
	display: none;
	}
	
select
	{
	background-color: #E1E1E1;
	border: none;
	font-family: Arial, sans-serif; /* The Roboto font just doesn't behave well in select boxes. */
	padding-bottom: 1px;
	}
	
select:focus
	{
	background-color: #CEE0F4;
	}
	
select:focus:not(:hover)
	{
	background-color: #E1E1E1;
	}
	
textarea
	{
	resize: none;
	}
	
/* Sidebar Section */

aside#sidebar
	{
	color: #F6FAFE;
	}
	
aside#sidebar a
	{
	color: #F6FAFE;
	text-align: center;
	}
	
aside#sidebar a:not(:hover)
	{
	text-decoration: none;
	}
	
aside#sidebar div#search input
	{
	float: left;
	}
	
aside#sidebar div#search input[type=text]
	{
	width: 75%;
	}
	
aside#sidebar div#search input[type=submit]
	{
	width: 25%;
	}
	
aside#sidebar div#search input:focus + input
	{
	border-left-color: #FF9191; /* The text and submit search inputs share a border. */
	}
	
aside#sidebar nav#sidebar_menu
	{
	border: 1px solid #A6C6EA;
	overflow: hidden;
	}

aside#sidebar nav#sidebar_menu a
	{
	background-color: #7EACE0;
	display: block;
	}
	
aside#sidebar nav#sidebar_menu a:hover,
aside#sidebar nav#sidebar_menu li.child > a
	{
	background-color: #8EB6E4;
	color: #FAF700;
	}
	
aside#sidebar nav#sidebar_menu li:not(:first-child) a
	{
	border-top: 1px solid #A6C6EA;
	}
	
aside#sidebar nav#sidebar_menu li:not(.parent) ul,
aside#sidebar nav#sidebar_menu ul ul ul
	{
	display: none;
	}
	
aside#sidebar nav#sidebar_menu li:last-child.parent ul
	{
	padding-bottom: 0;
	}
	
aside#sidebar nav#sidebar_menu li:not(:last-child) ul li:last-child a
	{
	border-bottom: 1px solid #A6C6EA;
	}
	
aside#sidebar div.connect
	{
	position: relative;
	}
	
aside#sidebar div.connect div
	{
	position: absolute;
	}
	
aside#sidebar div.connect div:first-child
	{
	height: 100%;
	z-index: 2;
	}
	
aside#sidebar div.connect div:last-child
	{
	background-color: #7EACE0;
	border: 1px solid #A6C6EA;
	right: 0;
	text-align: right;
	width: 100%;
	z-index: 1;
	}
	
aside#sidebar div.connect:hover div:last-child
	{
	background-color: #8EB6E4;
	color: yellow;
	text-decoration: underline;
	}
	
aside#sidebar div.connect span
	{
	display: block;
	}
	
aside#sidebar div.connect img
	{
	height: 100%;
	}
	
aside#sidebar div#testimonials
	{
	background-color: #7EACE0;
	border: 1px solid #A6C6EA;
	text-align: center;
	text-overflow: ellipsis;
	}
	
aside#sidebar div#testimonials p.quotation
	{
	font-style: italic;
	}
	
aside#sidebar div#description
	{
	text-align: center;
	text-overflow: ellipsis;
	}
	
aside#sidebar div#description a:hover
	{
	color: yellow;
	}
	
/* Header Section */

header#header
	{
	background-color: #D9E3F3;
	background: linear-gradient(#D9E3F3, #F0F0F0, #F0F0F0, #D9E3F3);
	border-bottom: 1px solid #5692D6;
	}
	
header#header > div
	{
	display: table;
	width: 100%;
	}
	
header#header > div > div
	{
	display: table-cell;
	vertical-align: top;
	}
	
header#header div#top div#logo img
	{
	height: 100%;
	width: 100%;
	}
	
header#header div#top div#logo a:hover img
	{
	opacity: 1;
	filter: alpha(opacity=100);
	}
	
/* Content Section */

article#content header#title > div
	{
	display: table;
	width: 100%;
	}
	
article#content header#title > div > div
	{
	border-bottom: 1px dotted black;
	display: table-cell;
	vertical-align: top;
	}
	
article#content header#title > div > div > *
	{
	height: inherit;
	}
	
article#content header#title div#page h1
	{
	margin-left: -1px;
	}
	
article#content header#title div#menu a > div,
article#content header#title div#menu select
	{
	float: right;
	}
	
article#content header#title div#menu select
	{
	display: none;
	}
	
article#content header#title ~ div,
article#content header#title ~ div > div
	{
	padding-top: 0 !important; /* Overrides "article#content div > div" padding in queries.css. */
	}
	
article#content div#text form
	{
	background-color: #E6EFFA;
	border: 1px solid #A6C6EA;
	}
	
article#content div#text > div > img
	{
	margin: auto;
	}
	
/* Footer Section */

footer#footer,
footer#footer a:not(:hover)
	{
	color: #2861A0;
	}
	
footer#footer
	{
	background-color: #D9E3F3;
	background: linear-gradient(#D9E3F3, #F0F0F0, #F0F0F0, #D9E3F3);
	border-top: 1px solid #5692D6;
	overflow: hidden;
	width: 100%;
	}
	
footer#footer a:not(:hover)
	{
	text-decoration: none;
	}
	
footer#footer div
	{
	text-align: center;
	white-space: nowrap;
	}

footer#footer div#menu div#footer_menu
	{
	display: table;
	margin: auto;
	}
	
footer#footer div#menu div#footer_menu a
	{
	display: block;
	}
	
footer#footer div#menu div#footer_menu li,
footer#footer div#menu div#footer_menu span
	{
	display: table-cell;
	}
	
/* Miscellaneous Content */

article#content div#text .error
	{
	color: red;
	}
	
article#content div#text .large
	{
	color: #636363;
	font-weight: 500;
	}
	
article#content div#text .medium
	{
	color: #424242;
	font-weight: 400;
	}
	
article#content div#text .subtitle
	{
	color: #212121;
	text-align: left;
	}
	
article#content div#text .title
	{
	background-color: #E6E6E6;
	border: 1px solid #C8C8C8;
	border-bottom: none;
	}
	
article#content div#text .title *
	{
	text-align: center;
	}
	
article#content div#text .title a:not(:hover)
	{
	color: #212121;
	text-decoration: none;
	}
	
article#content div#text div.case_studies div.image a:hover,
article#content div#text div.services div.image a:hover
	{
	background-color: red;
	}
	
article#content div#text div.case_studies div.image a:hover img,
article#content div#text div.services div.image a:hover img
	{
	opacity: 0.90;
	filter: alpha(opacity=90);
	}
	
article#content div#text div#client_list
	{
	text-align:center;
	}
	
article#content div#text div#client_list div
	{
	display: inline-block;
	padding-right: 0;
	padding-top: 0;
	vertical-align: middle;
	}
	
article#content div#text div#client_list div:first-child
	{
	padding-left: 0;
	}
	
article#content div#text div#client_list img
	{
	max-height: 100px;
	max-width: 100% !important;
	}
	
article#content div#text div.contact_us div.image div
	{
	display: table;
	height: auto;
	position: relative;
	}
	
article#content div#text div.contact_us div.image img:not(:last-child)
	{
	background-color: white;
	height: 35px;
	padding: 5px;
	position: absolute;
	width: auto;
	}
	
article#content div#text div.contact_us div.image img:nth-child(1)
	{
	bottom: 84%;
	right: 57%;
	}
	
article#content div#text div.contact_us div.image img:nth-child(2)
	{
	bottom: 0;
	right: 0;
	}
	
article#content div#text div.divider
	{
	border-bottom: 1px dotted #5692D6;
	height: 1px;
	}
	
article#content div#text div#search_form form
	{
	border: none !important; /* Overrides any default Google Custom Search styles. */
	display: table;
	width: 100%;
	}	
	
article#content div#text div#search_form input
	{
	display: table-cell;
	}
	
article#content div#text div#search_form input[type=text]
	{
	width: 75%;
	}
	
article#content div#text div#search_form input[type=submit]
	{
	width: 25%;
	}
	
article#content div#text div#search_results
	{
	background-color: #F9F5FF;
	border: 1px solid #B891FF;
	}
	
article#content div#text div#search_results a:hover
	{
	text-decoration: underline;
	}
	
article#content div#text div#search_results b
	{
	font-weight: bold !important;
	}
	
article#content div#text div#search_results div.gsc-control-cse,
article#content div#text div#search_results div.gsc-control-cse-en
	{
	padding: 0 !important;
	}
	
article#content div#text div#search_results div.gsc-above-wrapper-area
	{
	padding-top: 0 !important;
	}
	
article#content div#text div#search_results div.gsc-result-info
	{
	margin-top: 0 !important;
	padding-left: 0 !important;
	}
	
article#content div#text div#search_results div.gsc-inline-block
	{
	min-width: 79px !important;
	}
	
article#content div#text div#search_results div.gsc-adBlockVertical,
article#content div#text div#search_results div.gsc-adBlock
	{
	margin-top: 24px !important;
	}
	
article#content div#text div#search_results div.gsc-wrapper
	{
	margin-left: -6px !important;
	margin-right: -6px !important;
	}
	
article#content div#text div#search_results div.gsc-resultsbox-visible
	{
	margin-left: -2px !important;
	margin-right: -2px !important;
	}
	
article#content div#text div#search_results div.gsc-results
	{
	padding-bottom: 0 !important;
	}
	
article#content div#text div#search_results div.gsc-url-bottom
	{
	display: none !important;
	}
	
article#content div#text div#search_results div.gcsc-branding
	{
	margin-bottom: -5px !important;
	padding: 0 6px !important;
	}
	
article#content div#text div#search_results div.gcsc-branding-text,
article#content div#text div#search_results td.gcsc-branding-text
	{
	margin: 1px !important;
	}
	
article#content div#text div.contact_us,
article#content div#text div.service,
article#content div#text p.contact_us,
article#content div#text p.service
	{
	padding-bottom: 0;
	padding-right: 0;
	padding-top: 0;
	}
	
article#content div#text div.services
	{
	background-color: #F0F0F0;
	border: 1px solid #C8C8C8;
	border-top-left-radius: 0;
	margin-top: 0;
	overflow: hidden;
	}
	
article#content div#text div.services div.paragraphs p
	{
	color: #171717;
	}
	
article#content div#text div#site_home > section > div,
article#content div#text div#who_we_are > section > div
	{
	height: 100%;
	}
	
article#content div#text div#site_home > section > div
	{
	background-color: #F0F0F0;
	border: 1px solid #C8C8C8;
	}
	
article#content div#text div#site_home header a
	{
	text-decoration: none;
	}
	
article#content div#text div#site_home header a div
	{
	background-color: #969696;
	border-bottom: 1px solid #C8C8C8;
	overflow: hidden;
	}
	
article#content div#text div#site_home header a:hover div
	{
	background-color: #A0A0A0;
	}
	
article#content div#text div#site_home header a img
	{
	border-bottom: 2px solid white;
	border-top: 2px solid white;
	}
	
article#content div#text div#site_home header a:hover img
	{
	opacity: 0.90;
	filter: alpha(opacity=90);
	}
	
article#content div#text div#site_home header a h2
	{
	color: white;
	font-weight: 500;
	text-align: center;
	text-shadow: 1px 1px #7D7D7D;
	}
	
article#content div#text div#site_home header a:hover p
	{
	color: yellow;
	text-decoration: underline;
	}
	
article#content div#text div#site_home header a ~ div
	{
	border-top: 1px solid #C8C8C8;
	}
	
article#content div#text div#site_home p,
article#content div#text div#who_we_are p
	{
	color: #171717;
	}
	
article#content div#text div#site_home p
	{
	text-align: center;
	}
	
article#content div#text div#who_we_are p
	{
	text-align: left;
	}
	
article#content div#text div#who_we_are > section > div
	{
	background-color: #F0F0F0;
	border: 1px solid #C8C8C8;;
	}
	
article#content div#text div#who_we_are  h2
	{
	text-align: center;
	}
	
article#content div#text div#who_we_are img
	{
	padding-bottom: 0;
	padding-top: 0;
	}
	
article#content div#text nav#site_menu a
	{
	display: block;
	}
	
article#content div#text p.service span,
article#content div#text p.who_we_are span:not(.font_weight_3)
	{
	display: list-item;
	font-style: italic;
	list-style: disc outside none;
	margin-left: 1em;
	text-shadow: 1px 1px #F0F0F0;
	}
	
article#content div#text p.service span
	{
	color: #171717;
	}
	
article#content div#text p.who_we_are span:not(.font_weight_3)
	{
	color: #0D0D0D;
	}
	
/**/