html {
    font-family: 'Roboto Condensed', sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}
body {
    margin: 0
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
    display: block
}
audio,
canvas,
progress,
video {
    display: inline-block;
    vertical-align: baseline
}
audio:not([controls]) {
    display: none;
    height: 0
}
[hidden],
template {
    display: none
}
a {
    background-color: transparent
}
a:active,
a:hover {
    outline: 0
}
abbr[title] {
    border-bottom: 1px dotted
}
b,
strong {
    font-weight: 700
}
dfn {
    font-style: italic
}
h1 {
    font-size: 2em;
    margin: .67em 0
}
mark {
    background: #ff0;
    color: #000
}
small {
    font-size: 80%
}
sub,
sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align: baseline
}
sup {
    top: -.5em
}
sub {
    bottom: -.25em
}
img {
    border: 0
}
svg:not(:root) {
    overflow: hidden
}
figure {
    margin: 1em 40px
}
hr {
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    height: 0
}
pre {
    overflow: auto
}
code,
kbd,
pre,
samp {
    font-family: monospace, monospace;
    font-size: 1em
}
button,
input,
optgroup,
select,
textarea {
    color: inherit;
    font: inherit;
    margin: 0
}
button {
    overflow: visible
}
button,
select {
    text-transform: none
}
button,
html input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}
button[disabled],
html input[disabled] {
    cursor: default
}
button::-moz-focus-inner,
input::-moz-focus-inner {
    border: 0;
    padding: 0
}
input {
    line-height: normal
}
input[type=checkbox],
input[type=radio] {
    box-sizing: border-box;
    padding: 0
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    height: auto
}
input[type=search] {
    -webkit-appearance: textfield;
    -moz-box-sizing: content-box;
    -webkit-box-sizing: content-box;
    box-sizing: content-box
}
input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}
fieldset {
    border: 1px solid silver;
    margin: 0 2px;
    padding: .35em .625em .75em
}
legend {
    border: 0;
    padding: 0
}
textarea {
    overflow: auto
}
optgroup {
    font-weight: 700
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
td,
th {
    padding: 0
}
H1,
H2,
H3,
H4,
H5,
H6 {
    font-weight: 400;
    margin: 0;
    padding: 0;
    line-height: 1
}
OL,
UL {
    margin: 0;
    padding: 0
}
.centered {
    text-align: center
}
.ir {
    background-color: transparent;
    border: 0;
    overflow: hidden
}
.ir:before {
    content: "";
    display: block;
    width: 0;
    height: 150%
}
.hidden {
    display: none!important;
    visibility: hidden
}
.visuallyhidden {
    border: 0;
    clip: rect(0 0 0 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    width: 1px
}
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus {
    clip: auto;
    height: auto;
    margin: 0;
    overflow: visible;
    position: static;
    width: auto
}
.invisible {
    visibility: hidden
}
.clearfix:after,
.clearfix:before {
    content: " ";
    display: table
}
.clearfix:after {
    clear: both
}
.contact-info {
	text-align: center;
}
HTML {
    background-color: #f0f0f0;
    height: 100%
}
MAIN {
    padding-bottom: 2em;
    padding-top: 1em;
}
BODY {
    font-family: 'Roboto Condensed', sans-serif;
    font-weight: 300;
    height: 100%;
    color: #2b1a1a
}
A {
    color: #cb4154;
    text-decoration: none;
    border-bottom: 1px solid transparent;
    transition: border-bottom-color .75s;
    -webkit-transition: border-bottom-color 1s
}
A:hover {
    border-bottom-color: #cb4154
}
A[rel=external]:hover {
    text-decoration: underline
}
H3 {
    margin-top: 2em
}
#expertise SECTION {
    margin-bottom: 2em
}
#expertise P {
    line-height: 1.5;
    margin: 0 0 0 2.25em
}
#portfolio {
    padding-bottom: 3em
}
#portfolio SECTION {
    padding-bottom: 1.5em
    margin: auto;
    text-align: center
}
.github-callout {
    text-align: center
}
.github-callout .icon {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    padding-right: .5em
}
.github-callout P {
    margin: 0;
    padding: 0;
    display: table-cell;
    vertical-align: middle
}
#portfolio UL {
    margin-left: 0;
    list-style-type: none
}
#portfolio UL.bullet {
    list-style-type: square;
    margin-left: 1.25em
}
#portfolio LI {
    margin-bottom: .5em
}
#portfolio P {
    line-height: 1.4;
    margin-bottom: 1em
}
#best .intro {
    margin-bottom: 2em;
    padding-bottom: 2em;
    border-bottom: 1px solid #ccc
}
#best .item {
    margin-bottom: 3em
}
#best .item TIME {
    font-weight: 700
}
#best .item BLOCKQUOTE {
    font-family: Georgia, Times New Roman, serif;
    font-size: 1.25em;
    font-style: italic;
    line-height: 1.3
}
#best .item CODE {
    font-style: normal
}
#resume {
    padding-bottom: 2em
}
#resume SECTION {
    /*padding-bottom: .5em*/
}
#resume H1 {
    margin-bottom: 1em
}
#resume H2 {
    font-size: 1em;
    line-height: 1.3;
    margin-bottom: .5em
}
#resume UL {
    margin: 0 0 2em 1.25em;
    list-style-type: square
}
#resume UL LI {
    line-height: 1.3;
    margin-bottom: .5em
}
#use SECTION {
    padding-bottom: 2em
}
.subhead {
    font-size: 1.5em;
    margin-left: 1.4em;
    text-indent: -1.4em
}
#page-wrapper {
    padding: 0 1em;
    margin: auto
}
#masthead {
    padding: 1em 0 .5em;
    border-bottom: 1px solid #000
}
#who {
    font-size: .85em;
    padding: 1em 0
}
#who A {
    transition: none
}
#who A:hover {
    font-style: italic;
    text-decoration: none;
    border-bottom: 0
}
#who OL {
    margin-left: 1.25em
}
#who LI {
    line-height: 2.5
}
#masthead-name {
    text-align: center;
    font-size: 3em;
    color: #2b1a1a;
    margin-bottom: .25em;
    display: block;
    border-bottom: 0;
    text-decoration: none
}
#masthead NAV A {
    border-bottom: 0
}
#main-nav UL {
    text-transform: uppercase;
    font-size: 80%;
    text-align: center
}
#main-nav LI {
    display: inline;
    padding: 0 .25em
}
#main-nav .active {
    font-weight: 700;
    border-bottom: 0
}
H1 {
    font-size: 2em;
    margin-bottom: 1em;
    text-align: left;
    line-height: 1.2
}
#site-footer {
    text-align: center;
    font-size: .75em;
    padding-bottom: 1em
}
#site-footer UL {
    list-style-type: none
}
#site-footer LI {
    line-height: 3
}
#site-footer .icon {
    width: 1.5em;
    height: 1.5em;
    vertical-align: middle;
    padding-right: .25em
}
#contact .icon {
    width: 4em;
    height: 4em;
    padding-right: 1em;
    vertical-align: middle
}
#expertise .icon {
    width: 1em;
    height: 1em;
    vertical-align: middle;
    padding-right: .25em
}
#expertise .pos {
    fill: #4ab261
}
#expertise .caution {
    fill: #f4c633
}
#expertise .neg {
    fill: #ca0107
}

.grid-outer {
	width:100%;
	text-align:center;
	margin: auto; 
	display: inline-block;
}

.grid-inner {
	display:inline-block;
	margin: auto 0.2em; 
	padding-top: 0.2em;
	padding-bottom: 0.2em;
}

.skill-grid {
	width: 70px;
}

.skill-group {
	display: inline-block;
}

.port-block {
	display: inline-block;
}

.rounded-corners {
	border-radius: 22px; 
	-webkit-border-radius: 22px; 
	-moz-border-radius: 22px; 
	border: 2px solid #777;
	width:150px;
}

#contact SECTION {
    max-width: 600px;
    margin: auto
}

#main-nav-print {
	display: none;
}

@media only screen and (min-width: 40.063em) {
    #masthead {
        margin-bottom: 0
    }
    #who {
        padding: 0;
        font-size: .75em;
        margin-bottom: 2em
    }
    #who LI {
        line-height: 1.5
    }
    #masthead-name {
        float: left;
        text-align: left;
        margin-bottom: 0
    }
    #main-nav {
        float: right
    }
    #main-nav UL {
        padding-top: 2.5em
    }
    #main-nav LI {
        display: inline;
        padding: 0 0 0 1em
    }
    H1 {
        text-align: center;
        margin-bottom: 1.5em
    }
    #expertise {
        margin: auto;
        max-width: 900px
    }
    #portfolio SECTION {
        max-width: 900px;
        margin: auto
    }
    #portfolio .screenshot {
        float: right;
        margin-left: 2em
    }
    #resume {
        max-width: 900px;
        margin: auto
    }
    #best SECTION,
    #use SECTION {
        max-width: 900px;
        margin: auto
    }
    #contact SECTION {
        max-width: 600px;
        margin: auto
    }
    #site-footer {
        text-align: center;
        max-width: 990px;
        margin: -3.5em auto auto
    }
    #site-footer LI {
        display: inline;
        margin-right: 3em
    }
}
@media only screen and (min-width: 64.063em) {
    #page-container {
        min-height: 100%
    }
    #page-wrapper {
        padding-bottom: 2em;
        max-width: 990px;
        margin: auto
    }
    #contact SECTION {
        max-width: 600px;
        margin: auto
    }
    .rounded-corners {
	width:200px;
    }
    .skill-grid {
	width:120px;
    }	
    
}
@media print {

    A {
        color: #000;
        text-decoration: none
    }
    #main-nav {
		display: none;
	}
    #main-nav-print {
    	text-align: center;
		display: block;
	}
	UL, .print-div {
		page-break-inside: avoid;
	}
}