/* Objexx Engineering, Inc. Web CSS Style Sheet */

/* Reset */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
/*	font: inherit;*/
	font-size: 100%;
	vertical-align: baseline;
}
sub, sup {
	margin: 0;
	padding: 0;
	border: 0;
	vertical-align: baseline;
	position: relative;
	top: -0.4em;
}
sub { top: 0.4em; }
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1.0;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
/*
p:first-of-type {
	margin-top: 0;
}
p:last-of-type {
	margin-bottom: 0;
}
*/
body {
	font:16px sans-serif;
	line-height:18px;
	margin:0;
	padding:0;
	color:black;
	background-color:#212121;
}
*, *:before, *:after {
  -webkit-box-sizing: border-box;
	 -moz-box-sizing: border-box;
		  box-sizing: border-box;
}
b, strong { font-weight:bold }
em { font-style:italic }
pre { font-family: Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono, Bitstream Vera Sans Mono,Courier New,monospace }

/* Type */

a { text-decoration:none; }
a:link, a:visited { color:#992634; }
a:hover { color:#D04253; }

h1 { font:bold 22px Lato,Arial,Helvetica,sans-serif; color:#555; margin:0 0 13px; padding:0; }
h2 { font:bold 20px Lato,Arial,Helvetica,sans-serif; color:#555; margin:20px 0 10px; padding:0; }
h3 { font:bold 17px Lato,Arial,Helvetica,sans-serif; color:#555; margin:15px 0 9px; padding:0; }
h4 { font:bold 16px Lato,Arial,Helvetica,sans-serif; color:#555; margin:13px 0 8px; padding:0; }
h5 { font:bold 15px Lato,Arial,Helvetica,sans-serif; color:#555; margin:10px 0 7px; padding:0; }

p { margin-top:5px; }

ul {
	list-style:square outside none;
	margin-left:1.1em;
}

table.bare { border:0; border-spacing:0; }
table.bare tr td { padding:0; }

/* Class */

.nobreak { white-space:nowrap; }

/* Header */
.hdr {
	position:relative;
	height:80px;
	padding:5px;
	color:#333;
	background-color:white;
	border-bottom:1.5px solid #D04253;
	border-bottom:2.5px solid #666;
}

/* Top Nav Bar */
.tnav {
	font-weight:bold;
	font-size:1.0vw;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	-webkit-flex-direction:row;
	-webkit-flex-wrap:nowrap;
	display:flex;
	flex-direction:row;
	flex-wrap:nowrap;
	justify-content:center;
	align-content:center;
	float:left;
	width:50vw;
	position:absolute;
	left:275px;
	bottom:12px;
}
.tnav_item {
	max-height:35x;
	max-width:140px;
	-ms-flex:1;
	-webkit-flex:1 0 auto;
	flex:1 0 auto;
	padding:0 0 6px;
	text-align:center;
}
.tnav_item:hover {
	background:url(../img/nav.hover.svg) no-repeat bottom center / auto 9px;
}
.tnav_img {
	max-height:18px;
}

/* Footer 1 */
.ftr1 {
	margin:0;
	padding:10px 15% 10px 18%;
	background-color:#403F3F;
	width:100%;
	list-style:none;
}
.ftr1 ul {
	margin:0;
	padding:0;
	list-style-type:none;
	display:block;
}
.ftr1 ul li {
	margin:0 5% 25px 5%;
	padding:12px;
	width:14.3%;
	display:inline-block;
	vertical-align:top;
	font:14px Open Sans,Arial,Helvetica,sans-serif;
	color:#CCC;
}
.ftr1 ul li h2 {
	padding:0 0 15px 0;
	font:18px Open Sans,Arial,Helvetica,sans-serif;
	color:#EEE;
}
.ftr1 ul li p {
	height:30px;
	line-height:30px;
	align-items:left top;
}
.ftr1 ul li a {
	color:#CCC;
}
.in {
	width:146px;
	height:30px;
	line-height:30px;
	display:block;
	background:transparent url(../img/in.png) no-repeat left / auto 28px;
	background-position:0px;
	text-align:center;
}
.gh {
	width:134px;
	height:30px;
	line-height:30px;
	display:block;
	background:transparent url(../img/gh.png) no-repeat left / auto 28px;
	background-position:0px;
	text-align:center;
}
.contact_email {
	width:200px;
	height:16px;
	line-height:16px;
	display:block;
	background:transparent url(../img/email.png) no-repeat left / auto 16px;
	text-align:center;
}
.contact_phone {
	width:195px;
	height:16px;
	line-height:16px;
	display:block;
	background:transparent url(../img/phone.png) no-repeat left / auto 16px;
	text-align:center;
}

/* Footer */
.ftr {
	background-color:#212121;
	height:100%;
	width:100%;
	list-style:none;
}
.ftr ul {
	margin:0;
	padding:10px 0 10px 1%;
	list-style-type:none;
	display:block;
}
.ftr ul li {
	margin:0 22% 0 0;
	padding:12px;
	display:inline-block;
	font:13px Open Sans,Arial,Helvetica,sans-serif;
	color:#BBB;
}

.ctr_col {
	width:100%;
	margin:0;
}
.ctr_col_main {
	width:100%;
	margin:15px 0;
}
.ctr_text {
	padding:25px;
	border-radius:2px;
	background-color:#FAF9F7;
	font:16px Open Sans,Arial,Helvetica,sans-serif;
}
.main_pnls {
	width:100%;
	height:auto;
	padding:0;
	margin:0;
	border:solid 1px #CCC;
}
.main_tabs {
	width:20%;
	height:auto;
	padding:0;
	margin:0;
	border:0;
	cursor:pointer;
	background-color:rgb(255,255,255);
}
.main_tabs:hover {
	background-color:rgb(220,210,210);
}
.main_tabs:focus {
	background-color:rgb(230,225,225);
	outline:0;
}

.HolyGrail-body {
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	-webkit-flex-direction:row;
	-webkit-flex:1;
	display:flex;
	flex-direction:row;
	flex:1;
	padding:50px 0 50px 0;
	background-color:#FAF9F7;
	min-height:600px;
}
.HolyGrail-content {
	-webkit-flex:1;
	flex:1;
	margin:0;
	padding:0;
}
.HolyGrail-sidebar {
	-webkit-flex:0 0 25vw;
	flex:0 0 25vw;
	margin:0 2% 0 2%;
	padding:0 2%;
}
.HolyGrail-sidebar-main {
	-webkit-flex:0 0 20vw;
	flex:0 0 20vw;
	margin:15px 2% 0 2%;
	padding:0 2%;
}

.article_labs {
	margin:0;
	padding:0 25px 0 25px;
	font:16px Open Sans,Arial,Helvetica,sans-serif;
}

/* ID */

/* Search */

input {
	outline:none;
}
input[type=search] {
	-webkit-appearance:textfield;
	-webkit-box-sizing:content-box;
	font-family:inherit;
	font-size:100%;
}
input::-webkit-search-decoration,
input::-webkit-search-cancel-button {
	display:none;
}
input[type=search] {
	background:#f8f8f8 url(../img/search.svg) no-repeat 8px center;
	background-size:14px;
	border:solid 1px #ccc;

	-webkit-border-radius:25px;
	-moz-border-radius:25px;
	border-radius:25px;

	-webkit-transition:all .25s;
	-moz-transition:all .25s;
	transition:all .25s;
}
input[type=search]:focus {
	background-color:#fff;
	border-color:#66CC75;

	-webkit-box-shadow:0 0 5px rgba(109,207,246,.5);
	-moz-box-shadow:0 0 5px rgba(109,207,246,.5);
	box-shadow:0 0 5px rgba(109,207,246,.5);
}
input::-webkit-input-placeholder {
	color:#999;
}

#search {
	float:right;
	margin:24px 5px 0 0;
}
#search input[type=search] {
	width:30px;
	height:30px;
	color:transparent;
	cursor:pointer;
}
#search input[type=search]:hover {
	background-color:#fff;
}
#search input[type=search]:focus {
	width:200px;
	padding-left:32px;
	color:#000;
	background-color:#fff;
	cursor:auto;
}
#search input::-webkit-input-placeholder {
	color:transparent;
}

/* News Sidebar */
#news {
	margin:0;
	padding:0;
	width:100%;
	list-style:none;
}
#news h3 {
	font-size:14px;
	line-height:1.2;
	font-weight:bold;
	color:#FFF;
	background-color:#333;
	background: -webkit-linear-gradient(right, #333, #333, #777);
	background: -o-linear-gradient(right, #333, #333, #777);
	background: -moz-linear-gradient(right, #333, #333, #777);
	background: linear-gradient(to right, #333, #333, #777);
	padding:6px 6px 6px 7px;
	margin:0;
}
#news li {
	border-left:12px solid #ccc;
	padding:0 0 4px 0;
	margin:0 0 25px 0;
	display:block;
	line-height:.8vw;
}
#news li a {
	display:block;
	margin:0;
	width:100%;
	height:100%;
}
#news li p {
	padding:3px 6px 1px 7px;
	margin:0;
	width:64%;
	color:black;
	font:12.5px Open Sans,Arial,Helvetica,sans-serif;
}
#news li:hover {
	border-left:12px solid #D96870;
}

/* SVG Fix for SVG-Embedded Bitmaps not Loading on Some Webkit Browsers (Konqueror, rekonq, Safari) */
#svgfix {
	width:0;
	height:0;
	position:absolute;
	visibility:hidden;
	overflow:hidden;
}

/* main_blurb */
.main_blurb {
	margin:80px 0 50px 0;
	padding:18px 10px 15px 10px;
	border:1px solid #888;
	background-color:rgba(249,250,250,0.97);
	text-align: center;
}
.main_blurb h1 {
	font-size:24px;
	padding:0;
}
.main_blurb p {
	margin:0.45em 0 0 0;
	font:20px Open Sans,Arial,Helvetica,sans-serif;
	color:#333;
}

/* highlights */
.highlights {
	margin:0;
	padding:60px 0 60px 0;
	width:100%;
	background-color:#F4F3F1;
	list-style:none;
}
.highlights ul {
	margin:0;
	padding:0;
	width:100%;
	height:250px;
	list-style-type:none;
	text-align:center;
	display:block;
}
.highlights ul li {
	margin:0 45px 0 45px;
	font:14px Lato,Arial,Helvetica,sans-serif;
	width:12%;
	height:260px;
	display:inline-block;
	vertical-align:top;
}
.highlights ul li h2 {
	margin:150px 0 15px 0;
	font:bold 22px Lato,Arial,Helvetica,sans-serif;
}
.highlights ul li a {
	margin:0 0 25px 0;
	padding:8px;
	color:black;
	display:block;
}
.highlights ul li.design {
	transition:background-image 0.3s;
	background:url(../img/design_circle.svg) no-repeat center 15px / 125px;
}
.highlights ul li.design:hover {
	background:rgb(238,236,233) url(../img/design_dark.svg) no-repeat center 15px / 125px;
}
.highlights ul li.develop {
	transition:background-image 0.3s;
	background:url(../img/develop_circle.svg) no-repeat center 15px / 125px;
}
.highlights ul li.develop:hover {
	background:rgb(238,236,233) url(../img/develop_dark.svg) no-repeat center 15px / 125px;
}
.highlights ul li.reengineer {
	transition:background-image 0.3s;
	background:url(../img/reengineer_circle.svg) no-repeat center 15px / 125px;
}
.highlights ul li.reengineer:hover {
	background:rgb(238,236,233) url(../img/reengineer_dark.svg) no-repeat center 15px / 125px;
}
.highlights ul li.accelerate {
	transition:background-image 0.3s;
	background:url(../img/accelerate_circle.svg) no-repeat center 15px / 125px;
}
.highlights ul li.accelerate:hover {
	background:rgb(238,236,233) url(../img/accelerate_dark.svg) no-repeat center 15px / 125px;
}

.source {
	font-family:Consolas,Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace;
}

/* Responsive Overrides for Narrow Screen */

@media (min-width:1201px) and (max-width:1500px) {
.tnav {
	font-size:.95vw;
}
#news h3 {
	font-size:.9vw;
}
#news li p {
	font-size:.8vw;
}
}

@media (min-width:801px) and (max-width:1200px) {
.tnav {
	font-size:1.2vw;
}
#news h3 {
	font-size:1.1vw;
}
#news li {
	line-height:1.5vw;
}
#news li p {
	font-size:1.0vw;
}
}

@media (max-width:800px) {
.HolyGrail-body {
	-webkit-flex-direction:column;
	-webkit-flex:1;
	flex-direction:column;
	flex:1;
}
.HolyGrail-content {
	-webkit-flex:1;
	flex:1;
	order:-1;
}
.HolyGrail-sidebar {
	-webkit-flex:0 0 20vw;
	flex:0 0 20vw;
}
.HolyGrail-sidebar-main {
	-webkit-flex:0 0 20vw;
	flex:0 0 20vw;
}
.tnav {
	font-size:1.5vw;
	left:200px;
}
#search input[type=search]:focus {
	width:80px;
}
.main_text h1, .ctr_text h1 {
	font-size:3vw;
}
.main_text h2, .ctr_text h2 {
	font-size:2.8vw;
}
.main_text h3, .ctr_text h3 {
	font-size:2.7vw;
}
.main_text p, .ctr_text p,
.main_text li, .ctr_text li
{
	font-size:2.5vw;
	line-height:3.2vw;
}
#news h3 {
	font-size:2.3vw;
}
#news li {
	line-height:2.3vw;
}
#news li p {
	font-size:1.9vw;
}
.highlights ul {
	height:auto;
}
.highlights ul li {
	margin:0 9% 20px 9%;
	width:30%;
	font-size:18px;
}
.ftr1 ul li {
	margin:0 4% 25px 4%;
	width:40%;
	font-size:18px;
}
.ftr1 ul li h2 {
	font-size:22px;
}
.ftr1 ul li p {
	height:32px;
	line-height:32px;
}
.ftr ul li {
	padding:12px;
	font-size:16px;
}
}

/* Mobile Format */
@media only screen and (orientation: portrait) and (max-device-width:1080px) {
.HolyGrail-body {
	-webkit-flex-direction:column;
	-webkit-flex:1;
	flex-direction:column;
	flex:1;
}
.HolyGrail-content {
	-webkit-flex:1;
	flex:1;
	order:-1;
}
.HolyGrail-sidebar {
	-webkit-flex:0 0 20vw;
	flex:0 0 20vw;
}
.HolyGrail-sidebar-main {
	-webkit-flex:0 0 20vw;
	flex:0 0 20vw;
}
.tnav {
	font-size:1.5vw;
	left:200px;
}
#search input[type=search]:focus {
	width:80px;
}
.main_text h1, .ctr_text h1 {
	font-size:3vw;
}
.main_text h2, .ctr_text h2 {
	font-size:2.8vw;
}
.main_text h3, .ctr_text h3 {
	font-size:2.7vw;
}
.main_text p, .ctr_text p,
.main_text li, .ctr_text li
{
	font-size:2.5vw;
	line-height:3.2vw;
}
#news h3 {
	font-size:2.3vw;
}
#news li {
	line-height:2.3vw;
}
#news li p {
	font-size:1.9vw;
}
.highlights ul {
	height:auto;
}
.highlights ul li {
	margin:0 9% 20px 9%;
	width:30%;
	font-size:18px;
}
.ftr1 ul li {
	margin:0 4% 25px 4%;
	width:40%;
	font-size:18px;
}
.ftr1 ul li h2 {
	font-size:22px;
}
.ftr1 ul li p {
	height:32px;
	line-height:32px;
}
.ftr ul li {
	padding:12px;
	font-size:16px;
}
}
