/***************************************
 * Layout
 * Copyright 2010-2015 Mark Eschbach
 ***************************************/
html {
	background: silver;
	padding: 0;
	margin: 0;
	font-size: 10pt;
	min-height: 100%;
	min-height: 100vh;
}

body {
	min-height: 100%;
	min-height: 100vh;
}

/***************************************
 * Inset the display
 ***************************************/
header, footer {
    padding-left: 1em;
}

#container {
	padding: 0;
}

/***************************************
 * Page sizing
 ***************************************/
body {
	padding: 0;
	margin: 0;
}

/***************************************
 * Page vertical layout
 ***************************************/
body {
	display: -webkit-flex;
	display: flex;
	-webkit-flex-direction: column;
	flex-direction: column;
}

header, footer, #site_nav, #secondary_nav {
	-webkit-flex-grow: 0;
	flex-grow: 0;
	-webkit-flex-shrink: 0;
	flex-shrink: 0;
}

#container {
	-webkit-flex-grow: 1;
	flex-grow: 1;
	-webkit-flex-shrink: 1;
}

/***************************************
 * Pure structural
 ***************************************/
#container, header, #site_nav {
	display: -webkit-flex;
	display: flex;
	margin: 0;
}

footer {
	line-height: 2em;
	padding: 0.25em 0.25em 0.25em 2.5em;
}

#container {
	margin: 0em 1em 2.5em 1em;
}

#center_container {
	flex-grow: 1;
	margin-bottom: 1em;
	margin-right: 1em;
	max-width: 67%;
	min-width: 65%;
	width: 66%;
}
#right_container {
	flex-grow: 0;
	flex-shrink: 0;
	min-width: 32%;
	max-width: 34%;
	width: 33%;
	margin-bottom: 1em;
}

footer {
	clear:	both;
	display: -webkit-flex;
	display: flex;
}

footer>.foot {
	-webkit-flex-grow: 1;
	-webkit-flex-shrink: 1;
	flex-grow: 1;
	flex-shrink: 1;
}

#copy_notice {
	display: inline-block;
	padding: 0;
	margin: 0;
	font-size: 10pt;
	color: silver;
}

/***************************************
 * Header
 ***************************************/
header {
	background-image: url("/styles/x/header2.jpeg");
	background-color: black;
	padding-top: 2.5em;
	padding-bottom: 2.5em;
	color:white;
}
header #head_info {
	margin-top: 0;
	padding-top: 0;
}
header a {
	color: white;
	text-decoration: none;
}

header #head_info h1 {
	margin-top: .3em;
	margin-bottom: .2em;
	padding: 0;
}

header #head_info p {
	margin: 0;
	padding-bottom: 1em 0;
}

#site_nav {
	clear: both;
	font-size: 10pt;
}

/***************************************
 * Site navgiation
 ***************************************/
#site_nav {
	background: black;
	padding-bottom: 0;
	margin-bottom: 0;
	font-size: 1em;
	padding-top:.5em;
}
#site_nav li{
	display: inline;
	margin:0;
	padding-bottom: .25em;
	font-size: 10pt;
	padding-right: 1.5em;
}

#site_nav li.current{
	background-image: url('/styles/x/tbg-xp.png');
	border-top-left-radius: 1em;
	border-top-right-radius: 1em;
}

#site_nav li a:link, footer ul.foot li a:link {
	color: white;
}
#site_nav li a:visited, footer ul.foot li a:visited {
	color: lightgray;
}

#site_nav li a.current, footer ul.foot li a.current {
	text-decoration: none;
}

#site_nav img.nav_icon {
	width: 32px;
	height: 32px;
	padding-right: 1em;
}

#secondary_nav {
	background: darkgray;
	background-image: url('/styles/x/tbg-xp.png');
	padding-bottom: .5em;
	margin-top:0;
	margin-bottom: 0;
	font-size: 1em;
	padding-top:.5em;
	color: lightgray;
}
#secondary_nav li{
	display: inline;
	margin:0;
	font-size: 10pt;
	padding-right: .5em;
}
#secondary_nav li::after {
	color: white;
	padding-left: .5em;
	content: '>>';
	font-size: .75em;
}
#secondary_nav li:last-child::after {
	content: '';
}
#secondary_nav li>a{
	color: inherit;
}

/***************************************
 * Primary content containers
 ***************************************/
#container {
}

section,.section {
	background: white;
  padding-bottom: 1em;
	border: 1px solid black;
	box-shadow: black 5px 5px 3em;
	margin-top: 2em;

	border-bottom-left-radius: 1em;
	border-bottom-right-radius: 1em;
}

/***************************************
 * Section insets
 ***************************************/
section>*,.section>* {
  margin-left: 0.75em;
  margin-right: 0.75em;
}


/***************************************
 * Footer
 ***************************************/
footer {
	background: black;
	color: white;
}

footer ul.foot {
	margin: 0;
	padding: .5em 0 0 0;
	font-size: 8pt;
}

footer ul.foot li {
	display: inline;
	padding-right: 1em;
}

/***************************************
 * Just for the sake of beauty
 ***************************************/
pre {
	overflow: auto;
	padding: 0.2em 0 0 0.5em;
	border: 1px solid black;
	color: white;
	background: black;
}

/***************************************
 * Forms
 ***************************************/
form p {
	clear: both;
	padding: 1em;
	font-size: 10pt;
}

form ul {
	list-style-type: none;
}

form fieldset {
	padding: 0;
	margin: 0;
	margin-top: 1em;
}

form fieldset legend {
	margin-left: 2.5em;
	font-size: 12pt;
	padding: 0 1em;
	font-style: italic;
	border: 1px solid black;
	background: yellow;
	background-image: url('/styles/x/table-bg-xp.png');
}

form p, form ul li {
	padding: 0;
	margin: 1.5em 0;
}

form p label, form ul li label {
	font-weight: bold;
	width: 10em;
	min-width: 7.5em;
	max-width: 30%;
	float: left;
	text-align: right;
	padding-right: 1em;
	vertical-align: bottom;

	height: 1.5em;
}
form p input, form ul li input, form p textarea, form ul li textarea {
	min-width: 70%;
	max-width: 99%;
	width: 80%;
	color: black;
	border: 1px solid black;
	margin: 0;
	padding: 0;
	font-size: 12pt;
}

form p input[type='submit'], form ul li input[type='submit'] {
	font-size: 14pt;
	padding: 0;
	margin: 0;
	width: 90%;
	height: 2em;
	background-image: url('/styles/x/tbg-xp.png');
	color: white;
}

input[type='submit']:hover {
	color: black;
	background-image: url('/styles/x/table-bg-xp.png');
}

/***************************************
 * Revert the link styling
 ***************************************/
.hidden_link {
	color: black;
	text-decoration: none;
}


/***************************************
 * Headers
 ***************************************/
h2.section_header, h2.title, h3.section_header, h3.title, h4.section_header, h4.title, section>h5.title, section>h6.title {
	color: white;
	background: black;
	background-image: url('/styles/x/tbg-xp.png');
	text-align: center;
	padding-top: .5em;
	padding-bottom: .5em;
	margin: 0;
}

.section_header a:link {
	color:white;
}

.section_header a:visited {
	color: lightgray;
}

/***************************************
 * Paragraph indentation
 ***************************************/
p {
	text-indent: 1.5em;
}

/***************************************
 * Table styling
 ***************************************/
table {
	border: 1px solid black;
	border-collapse: collapse;
	width: 95%;
	min-width: 60%;
	max-width: 99%;
	margin-left: 2.5%;
	margin-right: 2.5%;
}

table thead th, table tfoot th, table tfoot td, table tfoot tr td, table tfoot tr th {
	text-align: center;
	font-weight: bold;
	padding: 0.25em 0.5em;
	background: silver;
	background-image: url('/styles/x/table-bg-xp.png');
	border: 1px solid black;
}

table tbody td {
	padding: 0.25em .5em;
	border: 1px solid black;
}

/***************************************
 * Typography
 ***************************************/
html {
	font-family: 'Helvetica', 'sans-serif';
}

h1, h2, h3, h4 {
	font-family: 'Papyrus','Palatino Linotype', 'Book Antiqua', Palatino, 'Times New Roman', Times, serif; /* Really good for headers */
}

/***************************************
 * Row group titles
 ***************************************/
.row_group_title {
	background-color: #ADD8E6;
}
div.soc-tags h6{display:inline}div.soc-tags ul{display:inline;list-style:none}div.soc-tags ul li{display:inline}#social-contact .symbol-icon{padding-left:.25em}@media (max-width: 768px){html{width:100%;overflow-x:hidden}nav{overflow-x:scroll}#site_nav{padding-left:1em}#center_container,#right_container{min-width:inherit;max-width:inherit;width:inherit}}
/*# sourceMappingURL=scss-output.css.map */
/*******************************************************************************
 * Copyright 2011-2014 Mark Eschbach
 *
 * Base CSS file for the meschbach.com website
 ******************************************************************************/

/*******************************************************************************
 * Cross browser fixes
 ******************************************************************************/
/*
 * This file contanis basic CSS rules to provide a consisntent look and feel across all browsers
 */
img {
	border: none;
}

/*******************************************************************************
 * Background image scaling
 ******************************************************************************/
/*
 * The horiz_bg_img class may be applied to block elements to stretch the
 * background image to 100% of the width.  The hieght will automatically be
 * clipped.
 */
.vert_bg_img, .horiz_bg_img {
	/*
	 * CSS 3
	 */
	background-size: cover;
	background-repeat: no-repeat;
	background-attachment: scroll;
	background-position: center top;
	background-origin: border-box;
	-moz-background-size: cover;
	-o-background-size: cover;
}

/*******************************************************************************
 * Home Panel
 ******************************************************************************/
.home_panel {
	background-color: #ADD8E6;
	min-height: 526px;
	height: 526px;
	text-align:center;
}

.home_light {
	color: black;
	text-decoration: none;
}

.home_dark {
	color: white;
	text-decoration: none;
}

/*******************************************************************************
 * Consulting Panel
 ******************************************************************************/
.consulting_panel {
	background-color: #ADD8E6;
	min-height: 526px;
	height: 526px;
	text-align:center;
}

.consulting_light {
	color: black;
	text-decoration: none;
	vertical-align: middle;
}

/*******************************************************************************
 * Most Recent articles
 ******************************************************************************/
#most_recent_articles ul {
  list-style: square;
	list-style-position: inside;
  padding: 0;
  margin: 0;
  margin-left: 1em;
}

#most_recent_articles h5 {
	display: inline;
  padding: 0;
  margin: 0;
}

/*******************************************************************************
 * Small device compatability
 ******************************************************************************/
@media( max-width: 1000px ) {

#container {
	display: block;
}

#right_container {
	min-width: inherit;
	max-width: inherit;
	margin-right: 1em;
}

}

/*******************************************************************************
 * Hidden links
 ******************************************************************************/
a.hidden-link {
	text-decoration: none;
	color: inherit;
}

/*******************************************************************************
 * Social contact information
 ******************************************************************************/
 #social-contact ul {
	display: table;
	width: 100%;
 }
 #social-contact ul li {
	display: table-row;
 }

 #social-contact ul li a {
	display: table-cell;
	vertical-align: middle;
	padding: .25em;
 }

 #social-contact .symbol-icon {
	display:inline-block;
	font-size: 32px;
 }

 #social-contact li:nth-child(even) {
 	background: lightblue;
 }

/*******************************************************************************
 * Itemized yet undecorated lists
 ******************************************************************************/
.unitemized {
	list-style:none;
	padding:0;
	margin:0;
}
/*
 * The following are the rules to establish a 4x4 matrix of content.
 */
.p4_container * {
	padding: 0;
	margin: 0;
}

.p4_container { 
	border: 1px solid black; 
	display: block;
	position: relative;
}

.p4_item {
	position: relative;
	float: left;
	left: 100%;
	width: 50%;
	height: 100%;
}

.p4_right {
	margin-left:  -50%;
}

.p4_left {
	margin-left:  -100%;
}

.p4_cell {
	height: 50%;
	text-align: center;
}

.p4_top {
}

.p4_bottom {
}

.p4_container a {
	display: block;
	height: 100%;
	text-decoration: none;
}

.p4_container a:hover {
	background: url('/res/alpha40.png');
}

.p4_canvas {
	width: 100%;
	height: 100%;
}

.panel_icon {
	padding-right: 1em;
	padding-top: 1em;
}
#platforms {
	display: flex;
	padding:0;
	margin: 0;
	justify-content: center;
	border-bottom: 1px dotted silver;
}
#platforms>li {
	padding: 1em;
	display: inline-block;
	list-style-type: none;
	border-right: 1px dotted silver;
	width: 33%;
}
#platforms>li:last-child {
	border-right: none;
}

/*******************************************************************************
 * Content within separator
 ******************************************************************************/
#platforms>li>h3{
	text-align: center;
}

#platforms>li>p {
	text-indent: 0;
}
