/* http://meyerweb.com/eric/tools/css/reset */
html, body, div, span,
object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address,
cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup,
var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption,
tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, figcaption,
figure, footer, header, hgroup, menu, nav, section, summary, time, mark,
audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    font: inherit;
    vertical-align: baseline
}

article, aside, details, figcaption, figure, footer, header, hgroup,
menu, nav, section {
    display: block
}

nav ul {
    list-style: none
}

blockquote, q {
    quotes: none
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none
}

a {
    margin: 0;
    padding: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none
}

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold
}

del {
    text-decoration: line-through
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted;
    cursor: help
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    margin: 1em 0;
    padding: 0
}

input, select {
    vertical-align: middle
}

/* yui fonts */
body {
    font: 13px/1.231 sans-serif;
    *font-size: small
}

select, input, textarea, button {
    font: 99% sans-serif
}

pre, code, kbd, samp {
    font-family: monospace, sans-serif
}

/* base */
body {
    background-color: #fff;
    color: #444;
    font-family: Verdana, Geneva, 'DejaVu Sans', 'Bitstream Vera Sans', sans-serif;
    line-height: 1.5;
}

html {
    overflow-y: scroll;
}

a {
    color: #111;
}

a:hover, a:active {
    outline: none;
}

a:link {
    -webkit-tap-highlight-color: #FFFF9E;
}

h1 {
    font-size: 1.7em;
}

h2 {
    font-size: 1.3em;
}

h3 {
    font-size: 1.1em;
}

h2.dateline {
    font-size: 1em;
}

h1 a {
    text-decoration: none;
}

h1 a:hover {
    text-decoration: underline;
}

h1, h2, h3, h4, h5, h6 {
    color: #222;
    clear: both;
    font-family: 'Helvetica Neue', Arial, Helvetica, 'Liberation Sans', 'Nimbus Sans L', 'FreeSans', sans-serif;
}

ul, ol {
    margin-left: 2em;
}

ul {
    list-style: square;
}

ol {
    list-style-type: decimal;
}

nav ul, nav li {
    margin: 0;
}

small {
    font-size: 85%;
}

strong, th {
    font-weight: bold;
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
}

sup {
    top: -0.5em;
}

sub {
    bottom: -0.25em;
}

pre {
    white-space: pre;
    white-space: pre-wrap;
    white-space: pre-line;
    word-wrap: break-word;
}

textarea {
    overflow: auto;
}

input[type="radio"] {
    vertical-align: text-bottom;
}

input[type="checkbox"] {
    vertical-align: bottom;
}

label, input[type="button"], input[type="submit"], input[type="image"],
button {
    cursor: pointer;
}

button, input, select, textarea {
    margin: 0;
}

button {
    width: auto;
    overflow: visible;
}

input:invalid, textarea:invalid {
    border-radius: 1px;
    -moz-box-shadow: 0 0 5px red;
    -webkit-box-shadow: 0 0 5px red;
    box-shadow: 0 0 5px red
}

.no-boxshadow input:invalid, .no-boxshadow textarea:invalid {
    background-color: #f0dddd
}

::-moz-selection {
    background: #FFFF9E;
    color: #000;
    text-shadow: none;
}

::selection {
    background: #FFFF9E;
    color: #000;
    text-shadow: none;
}

.hidden {
    display: none;
    visibility: hidden
}

.visuallyhidden {
    border: 0 !important;
    clip: rect(0 0 0 0);
    height: 1px !important;
    margin: -1px !important;
    overflow: hidden !important;
    padding: 0 !important;
    position: absolute !important;
    width: 1px !important
}

.invisible {
    visibility: hidden
}

.clearfix:before, .clearfix:after {
    content: "\0020";
    display: block;
    height: 0;
    visibility: hidden
}

.clearfix:after {
    clear: both
}

.clearfix {
    zoom: 1
}

/* simplest */
p, dl, hr, h1, h2, h3, h4, h5, h6, ol, ul, pre, table, address,
fieldset {
    margin-bottom: 1em;
}

li {
    margin: 0.5em 0 0 0;
}

dt {
    margin: 1em 0;
    font-weight: bold;
}

dd {
    margin: 0 1em;
    padding-left: 1em;
    border-left: 1px solid #ddd;
}

th, td {
    padding: 0.5em;
    border: 1px solid #ddd;
}

blockquote {
    margin: 0 1em;
    padding-left: 1em;
    border-left: 1px solid #ddd;
}

pre {
    font-family: 'Liberation Mono', 'Nimbus Mono L', 'DejaVu Mono', 'Bitstream Sans Mono', 'FreeMono', monospace;
    background: #f8f8ff;
    padding: 0.5em;
    overflow: auto;
}

sup, sub {
    height: 0;
    line-height: 1;
    vertical-align: baseline;
    position: relative;
    font-size: 10px;
}

sup {
    bottom: 1ex;
}

sub {
    top: 0.5ex;
}

.left {
    float: left;
}

.right {
    float: right;
}

.clear {
    clear: both;
}

body {
    padding: 60px 42px 0;
}

body, #main {
    margin: 0 auto;
    border: 0px;
}

abbr.dtstart, abbr.dtend {
    border: 0;
}

.citation, .vevent {
    list-style: square;
}

.experience .org, .vevent .org {
    font-weight: bold;
}

#resume-footer {
    margin-bottom: 1em;
    border-top: 1px solid #d9d9d9;
}

#resume-footer h6:after {
    content: ": " 
}

#resume-footer h6, #resume-footer ul, #resume-footer li {
    display: inline-block;
}

#resume-footer ul {
    display: inline-block;
    list-style: none;
    margin: 0;
    padding: 0;
}

#resume-footer li:after {
    content: "," 
}

#resume-footer li:last-child, #resume-footer li[class="last"]:after {
    content: "" 
}

#portrait {
    width: 100%;
}

#contact {
    float: right;
    width: 100px;
    font-size: 0.75em;
    margin-top: -80px;
    margin-left: 14px;
    margin-bottom: 14px;
    padding: 7px;
    border: 1px solid #ccc;
    background: #efefef;
}

#contact ul {
    margin: 0;
    list-style: none;
}

#contact ul li {
    margin: 0;
    text-align: left;
}

.tabs {
	position: relative;
}

.tab-menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
  border-bottom: 3px solid #000;
  /* #FECA0B */
}
.tab-menu li {
  display: inline-block;
  padding: 0;
  vertical-align: bottom;
}
.tab-menu li .active {
  color: #EAAA00;
  background: #000;
  border-bottom-color: #000;
}
/*

If you want the tabs to have different colors you could go this route:

.tab-menu li:nth-child(1) .active {
  color: #000;
  border-bottom-color: #FECA0B;
}
.tab-menu li:nth-child(2) .active {
  color: #000;
  border-bottom-color: #FECA0B;
}
.tab-menu li:nth-child(3) .active {
  color: #000;
  border-bottom-color: #FECA0B;
}
.tab-menu li:nth-child(4) .active {
  color: #000;
  border-bottom-color: #FECA0B;
}
.tab-menu li:nth-child(5) .active {
  color: #000;
  border-bottom-color: #FECA0B;
}
*/
.tab-menu a {
  display: inline-block;
  background: #EAAA00;
  color: #fff;
  text-decoration: none;
  padding: 0.5rem;
}
.tab-menu a.active {
  position: relative;
}
@media only screen and (max-width: 767px) {
  .tab-menu ul {
    border-bottom: 0;
    overflow: hidden;
    position: relative;
    background: #000;
    /* fallback */
    background: linear-gradient(#000, #222);
  }
  .tab-menu ul::after {
    content: "☰";
    position: absolute;
    color: #ccc;
    top: 8px;
    right: 15px;
    z-index: 2;
    pointer-events: none;
  }
  .tab-menu ul.open a {
    position: relative;
    display: block;
  }
  .tab-menu li {
    display: block;
  }
  .tab-menu a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }
  .tab-menu a.active {
    border: 0;
    z-index: 1;
    background: #000;
    /* fallback */
    background: linear-gradient(#000, #222);
  }
}

.tabs > section {
  display: none;
  padding-top: 1rem;
}

.tabs > section:nth-of-type(1) {
  background: #fff;
}

/*
again, if you want multi-colored themes
.tabs > section:nth-of-type(1) {
  background: #9b59b6;
}
.tabs > section:nth-of-type(2) {
  background: #3498db;
}
.tabs > section:nth-of-type(3) {
  background: #e67e22;
}
.tabs > section:nth-of-type(4) {
  background: #c0392b;
}
*/

.tabs > .active {
  display: block;
}

header + p {
	margin-bottom: 2.5em;
}

@media only screen and (max-width: 479px) {
    body > header {
        position: relative;
    }

    #contact {
        float: none;
        width: 100%;
        padding-left: 82px;
        margin: 0 0 1em 0;
        border: 0;
        background: white;
    }

    #name-title {
        padding-left: 80px;
    }

	header h1 {
		margin-bottom: 0;
	}

	header + p {
		margin-bottom: 1em;
	}

    #portrait {
        position: absolute;
        width: 75px;
        top: 0;
        left: 0;
    }
}

@media screen and (min-device-width: 1025px) {
    body {
        width: 640px;
    }
}

@media screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:portrait) {
    body {
        width: 640px;
    }
}

@media screen and (min-device-width: 481px) and (max-device-width: 1024px) and (orientation:landscape) {
    body {
        width: 600px;
        -webkit-text-size-adjust: 100%;
    }
}

@media only screen and (max-width: 767px) and (min-width: 480px) {
    body {
        width: 396px;
        -webkit-text-size-adjust: 100%;
    }
    
	header h1,
	header + p {
		margin-top: 0;
		margin-bottom: 0.5em;
	}
	header + p {    
		margin-bottom: 1.5em;	
	}
	
    #contact {
    	margin-top: -55px;
    }	
}

@media only screen and (max-width: 479px) {
    body {
        padding: 48px 46px 0;
        width: 228px;
        -webkit-text-size-adjust: 100%;
    }
}

@media only screen and (max-width: 479px) and (orientation:landscape) {
    body {
        width: 248px;
    }
}

@media print {
    * {
        background: transparent !important;
        color: black !important;
        text-shadow: none !important;
        filter: none !important;
        -ms-filter: none !important;
    }

    a, a:visited {
        color: #444 !important;
        text-decoration: underline;
    }

    a[href]:after {
        content: " (" attr(href) ")";
    }

    abbr[title]:after {
        content: " (" attr(title) ")";
    }

    .ir a:after, a[href^="javascript:"]:after, a[href^="#"]:after {
        content: "";
    }

    pre, blockquote {
        border: 1px solid #999;
        page-break-inside: avoid;
    }

    thead {
        display: table-header-group;
    }

    tr, img {
        page-break-inside: avoid;
    }

    @page {
        margin: 0.5cm;
    }

    p, h2, h3 {
        orphans: 3;
        widows: 3;
    }

    h2, h3 {
        page-break-after: avoid;
    }
}

