/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ html { line-height: 1.15; -webkit-text-size-adjust: 100%; } body { margin: 0; } h1 { font-size: 2em; margin: .67em 0; } hr { box-sizing: content-box; height: 0; overflow: visible; } pre { font-family: monospace, monospace; font-size: 1em; } a { background-color: transparent; } abbr[title] { border-bottom: 0; text-decoration: underline; text-decoration: underline dotted; } b, strong { font-weight: bolder; } code, kbd, samp { font-family: monospace, monospace; font-size: 1em; } small { font-size: 80%; } sub, sup { font-size: 75%; line-height: 0; position: relative; vertical-align: baseline; } sub { bottom: -0.25em; } sup { top: -0.5em; } img { border-style: none; } button, input, optgroup, select, textarea { font-family: inherit; font-size: 100%; line-height: 1.15; margin: 0; } button, input { overflow: visible; } button, select { text-transform: none; } button, [type="button"], [type="reset"], [type="submit"] { -webkit-appearance: button; } button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner { border-style: none; padding: 0; } button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring { outline: 1px dotted ButtonText; } fieldset { padding: .35em .75em .625em; } legend { box-sizing: border-box; color: inherit; display: table; max-width: 100%; padding: 0; white-space: normal; } progress { vertical-align: baseline; } textarea { overflow: auto; } [type="checkbox"], [type="radio"] { box-sizing: border-box; padding: 0; } [type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button { height: auto; } [type="search"] { -webkit-appearance: textfield; outline-offset: -2px; } [type="search"]::-webkit-search-decoration { -webkit-appearance: none; } ::-webkit-file-upload-button { -webkit-appearance: button; font: inherit; } details { display: block; } summary { display: list-item; } template { display: none; } [hidden] { display: none; } /*! Open Sans Light | Apache License 2.0 | fonts.google.com/specimen/Open+Sans */ @font-face { font-family: "Open Sans"; font-style: normal; font-weight: 300; src: url("fonts/open-sans-light.eot"); src: local("Open Sans Light"), local("OpenSans-Light"), url("fonts/open-sans-light.eot?#iefix") format("embedded-opentype"), url("fonts/open-sans-light.woff2") format("woff2"), url("fonts/open-sans-light.woff") format("woff"), url("fonts/open-sans-light.ttf") format("truetype"), url("fonts/open-sans-light.svg#OpenSans") format("svg"); } /*! JJ CSS */ body { display: table; width: 100%; height: 100%; color: #1a1a1a; font-family: "Open Sans", sans-serif; font-weight: 300; font-size: 24px; line-height: 1.5; } div#container { display: table-cell; vertical-align: middle; width: 100%; height: 100%; margin: 0 auto; padding: 10%; } img#me { float: right; margin: 0 0 12px 12px; padding: 4px; border: 1px solid #dddddd; width: 140px; height: 140px; } a { text-decoration: none; border-bottom: 1px dashed transparent; transition: border-color 0.2s linear; -moz-transition: border-color 0.2s linear; -webkit-transition: border-color 0.2s linear; -o-transition: border-color 0.2s linear; } h1 { margin: 0 0 20px 0; font-size: 150%; line-height: 1; } h2 { margin: 20px 0; font-size: 120%; } p { margin: 20px 0; } sup { vertical-align: middle; font-size: 50%; } @media screen and (max-width: 800px) { body { font-size: 18px; } img#me { width: 80px; height: 80px; } h1 { font-size: 130%; } h2 { font-size: 100%; } } a#boston { color: #008349; } a#boston:hover { border-color: #008349; } a#y2k { color: #ffcd47; } a#y2k:hover { border-color: #ffcd47; } span#shh { color: #cccccc; } span#fairy { color: #fd5da8; } span#fairy:hover { cursor: url(data:image/svg+xml;utf8;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMCIgaGVpZ2h0PSIyMiIgc3R5bGU9ImZvbnQtc2l6ZToxNnB4Ij48dGV4dCB5PSIxOCI+8J+nmjwvdGV4dD48L3N2Zz4=), default !important; } a#javascript { color: #f48024; } a#javascript:hover { border-color: #f48024; } a#node { color: #6fbc4e; } a#node:hover { border-color: #6fbc4e; } a#react { color: #61dafb; } a#react:hover { border-color: #61dafb; } a#angular { color: #c3002f; } a#angular:hover { border-color: #c3002f; } a#java { color: #ab6311; } a#java:hover { border-color: #ab6311; } a#cpp { color: #865fc5; } a#cpp:hover { border-color: #865fc5; } a#php { color: #8892bf; } a#php:hover { border-color: #8892bf; } a#ruby { color: #d34135; } a#ruby:hover { border-color: #d34135; } a#github { color: #7290a4; } a#github:hover { border-color: #7290a4; } a#linkedin { color: #0073b1; } a#linkedin:hover { border-color: #0073b1; } a#facebook { color: #4267b2; } a#facebook:hover { border-color: #4267b2; } a.twitter { color: #00acee; } a.twitter:hover { border-color: #00acee; } a#instagram { color: #a37754; } a#instagram:hover { border-color: #a37754; } a#news-1 { color: #e23838; } a#news-1:hover { border-color: #e23838; } a#news-2 { color: #f78200; } a#news-2:hover { border-color: #f78200; } a#news-3 { color: #ffb900; } a#news-3:hover { border-color: #ffb900; } a#news-4 { color: #5ebd3e; } a#news-4:hover { border-color: #5ebd3e; } a#news-5 { color: #009cdf; } a#news-5:hover { border-color: #009cdf; } a#news-6 { color: #3e49bb; } a#news-6:hover { border-color: #3e49bb; } a#news-7 { color: #973999; } a#news-7:hover { border-color: #973999; } a#udacity { color: #02b3e4; } a#udacity:hover { border-color: #02b3e4; } a#pluralsight { color: #e80c87; } a#pluralsight:hover { border-color: #e80c87; } a#infosec { color: #ed1c24; } a#infosec:hover { border-color: #ed1c24; } a#serverless { color: #ff9900; } a#serverless:hover { border-color: #ff9900; } a#containerization { color: #3bb878; } a#containerization:hover { border-color: #3bb878; } a#resume { color: #c30b15; } a#resume:hover { border-color: #c30b15; } a#email { color: #d54b3d; } a#email:hover { border-color: #d54b3d; } a#pgp { color: #999999; margin: 0 4px; } a#pgp:hover { border-color: #999999; } a#sms { color: #93d841; } a#sms:hover { border-color: #93d841; } p#copyright { margin: 40px 0 0 0; font-size: 12px; color: #999999; } p#copyright a { color: #999999; } p#copyright a#source { border-bottom: 1px solid #dddddd; } p#copyright span { margin: 0 5px; }