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

audio, canvas, video {
  display: inline-block; }

audio:not([controls]) {
  display: none;
  height: 0; }

[hidden] {
  display: none; }

html {
  font-family: sans-serif;
  -webkit-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%; }

a:focus {
  outline: thin dotted; }

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


a.inline-link {
  transition: .25s linear;}

a.inline-link:hover {
  color:#FFEBD3;
  text-decoration-line: underline;
}

h1 {
  font-size: 2em; }

abbr[title] {
  border-bottom: 1px dotted; }

b, strong {
  font-weight: 700; }

dfn {
  font-style: italic; }

mark {
  background: #ff0;
  color: #000; }

code, kbd, pre, samp {
  font-family: monospace, serif;
  font-size: 1em; }

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

q {
  quotes: \201C \201D \2018 \2019; }

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; }

fieldset {
  border: 1px solid silver;
  margin: 0 2px;
  padding: .35em .625em .75em; }

button, input, select, textarea {
  font-family: inherit;
  font-size: 100%;
  margin: 0; }

button, input {
  line-height: normal; }

button, html input[type=button], input[type=reset], input[type=submit] {
  -webkit-appearance: button;
  cursor: pointer; }

button[disabled], input[disabled] {
  cursor: default; }

input[type=checkbox], input[type=radio] {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 0; }

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; }

textarea {
  overflow: auto;
  vertical-align: top; }

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

body, figure {
  margin: 0; }

legend, button::-moz-focus-inner, input::-moz-focus-inner {
  border: 0;
  padding: 0; }

.clearfix:after {
  visibility: hidden;
  display: block;
  font-size: 0;
  content: '';
  clear: both;
  height: 0; }

* {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  font-size: 125%;
  line-height: 1.6; }

h1,
h2,
p,
ul,
li,
section,
input,
label,
fieldset {
  padding: 0;
  margin: 0; }

.skipLink {
  position: absolute;
  left: -1000px;
  top: 5px;
  z-index: 999;
  background: white;
  color: black; }

.skipLink:focus {
  left: 0; }

.visuallyHidden:not(:focus):not(:active) {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  padding: 0;
  white-space: nowrap;
  -webkit-clip-path: inset(100%);
  clip-path: inset(100%);
  clip: rect(0 0 0 0);
  overflow: hidden; }

.wrapper {
  max-width: 1280px;
  width: 90%;
  margin: 0 auto; }

body {
  font-family: "Open Sans", Helvetica, Arial, sans-serif;
  color: #010101; }

h1 {
  font-family: "Quicksand", Helvetica, Arial, sans-serif;
  font-weight: 700; }

h2 {
  font-family: "Raleway", Helvetica, Arial, sans-serif; }

a {
  display: inline-block;
  text-decoration: none;
  color: inherit; }

ul {
  list-style: none; }

img {
  width: 100%;
  display: block; }

.navTop {
  position: fixed;
  right: 1vh;
  bottom: 2vh;
  font-size: 1.5rem;
  color: #264E70;
  z-index: 100;
  width: auto; }

.sectionHeading {
  text-align: center;
  text-transform: uppercase;
  font-size: 2.5rem;
  padding-bottom: 20px; }

.topHeaderBar {
  width: 100%;
  background: #FFEBD3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  .topHeaderBar ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 10px 0; }
  .topHeaderBar li {
    margin: 0 5px; }
  .topHeaderBar li a {
    padding: 1px 20px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    position: relative; }

input[type="checkbox"] {
  opacity: 0;
  position: absolute; }

label > svg {
  fill: #fff;
  height: 50px;
  width: 50px;
  display: none;
  position: fixed;
  top: -5px;
  right: 1vh;
  background: rgba(38, 78, 112, 0.5); }

svg g {
  -webkit-transition: all .5s ease;
  -o-transition: all .5s ease;
  transition: all .5s ease; }

nav li > a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background: #fff;
  visibility: hidden;
  border-radius: 5px;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: .25s linear;
  -o-transition: .25s linear;
  transition: .25s linear; }

nav li > a:hover:before,
nav li > a:focus:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1); }

nav li > a:active {
  color: #FFB4AC; }

header {
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #FFB4AC), color-stop(50%, #ffaba2));
  background: -webkit-linear-gradient(left, #FFB4AC 50%, #ffaba2 50%);
  background: -o-linear-gradient(left, #FFB4AC 50%, #ffaba2 50%);
  background: linear-gradient(to right, #FFB4AC 50%, #ffaba2 50%);
  height: 95vh;
  position: relative;
  color: #264E70; }

header::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-top-color: #ffaba2;
  border-bottom: 0;
  border-left: 0;
  margin-right: -10px;
  margin-bottom: -20px; }

header::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 50%;
  width: 0;
  height: 0;
  border: 20px solid transparent;
  border-top-color: #FFB4AC;
  border-bottom: 0;
  border-right: 0;
  margin-left: -10px;
  margin-bottom: -20px; }

h1 {
  text-transform: uppercase;
  font-size: 4rem;
  margin: 20px 0;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  line-height: 1; }

.intro {
  display: block;
  -webkit-text-emphasis: left;
  text-emphasis: left; }

.headerContent {
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  text-align: center;
  padding-top: 30vh; }

.headerSocialLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 40px 0; }
  .headerSocialLinks li a {
    padding: 1px 20px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out; }
  .headerSocialLinks li a:hover,
  .headerSocialLinks li a:focus,
  .headerSocialLinks li a:active {
    color: #FFEBD3; }

.fab {
  font-size: 1.5rem; }

.about {
  background: -webkit-gradient(linear, right top, left top, color-stop(50%, #61887e), color-stop(50%, #5c8278));
  background: -webkit-linear-gradient(right, #61887e 50%, #5c8278 50%);
  background: -o-linear-gradient(right, #61887e 50%, #5c8278 50%);
  background: linear-gradient(to left, #61887e 50%, #5c8278 50%);
  padding: 50px 0;
  min-height: 100vh; }

.aboutContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; 
  align-items: center;}

.leftAbout,
.rightAbout {
  width: calc(50% - 20px); }

.leftAbout {
  margin-right: 20px;
  padding: 0 20px; }
  .leftAbout p {
    margin-top: 25px;
    color: #010101; }

.leftAbout p:first-of-type {
  margin-top: 0; }

.rightAbout {
  margin-left: 20px;
  padding-top: 120px; }

.aboutPicContainer {
  width: 60%;
  margin: 0 auto;
  padding: 20px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #FFEBD3), color-stop(50%, bisque));
  background: -webkit-linear-gradient(top, #FFEBD3 50%, bisque 50%);
  background: -o-linear-gradient(top, #FFEBD3 50%, bisque 50%);
  background: linear-gradient(to bottom, #FFEBD3 50%, bisque 50%); }

.portfolio {
  padding: 100px 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #fff), color-stop(50%, #f7f7f7));
  background: -webkit-linear-gradient(left, #fff 50%, #f7f7f7 50%);
  background: -o-linear-gradient(left, #fff 50%, #f7f7f7 50%);
  background: linear-gradient(to right, #fff 50%, #f7f7f7 50%); }

.portfolioImage,
.portfolioCopy {
  width: calc(50% - 30px);
  margin: 0 30px;
  position: relative; }

.portfolioItemContainer {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  margin: 100px 0; }

.portfolioItemContainer:first-of-type {
  margin-top: 50px; }

.portfolioItemContainer .portfolioImage {
  margin: auto 20px auto 10px;
  background: -webkit-gradient(linear, right top, left top, color-stop(50%, #264E70), color-stop(50%, #20415d));
  background: -webkit-linear-gradient(right, #264E70 50%, #20415d 50%);
  background: -o-linear-gradient(right, #264E70 50%, #20415d 50%);
  background: linear-gradient(to left, #264E70 50%, #20415d 50%);
  padding: 1em;
  z-index: 10; }

.portfolioItemContainer:nth-of-type(2n) {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
  -ms-flex-direction: row-reverse;
  flex-direction: row-reverse; }

.portfolioItemContainer:nth-of-type(2n) .portfolioImage {
  margin: auto 10px auto 20px;
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #264E70), color-stop(50%, #20415d));
  background: -webkit-linear-gradient(left, #264E70 50%, #20415d 50%);
  background: -o-linear-gradient(left, #264E70 50%, #20415d 50%);
  background: linear-gradient(to right, #264E70 50%, #20415d 50%);
  z-index: 10; }

.portfolioItemContainer .portfolioImage::after {
  content: "";
  position: absolute;
  bottom: -.7em;
  left: 50%;
  width: 0;
  height: 0;
  border: 1em solid transparent;
  border-bottom-color: #264E70;
  border-top: 0;
  border-left: 0;
  margin-right: 0;
  margin-top: -1em;
  z-index: 10; }

.portfolioItemContainer .portfolioImage::before {
  content: "";
  position: absolute;
  bottom: -.7em;
  right: 50%;
  width: 0;
  height: 0;
  border: 1em solid transparent;
  border-bottom-color: #20415d;
  border-top: 0;
  border-right: 0;
  margin-left: 0;
  margin-top: -1em;
  z-index: 10; }

.portfolioItemContainer:nth-of-type(2n) .portfolioImage::after {
  border-bottom-color: #20415d; }

.portfolioItemContainer:nth-of-type(2n) .portfolioImage::before {
  border-bottom-color: #264E70; }

.portfolioItemContainer p {
  padding: 20px 0; }

.portfolioItemSkills {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  padding: 10px 0;
  text-transform: uppercase;
  font-size: .8rem; }
  .portfolioItemSkills li {
    padding-right: 10px; }

.codeLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; }

.portfolioCopy li > a {
  position: relative;
  margin-right: 30px;
  -webkit-transition: all .3s ease-in-out;
  -o-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  background: #264E70;
  color: #FFEBD3;
  font-family: "Raleway", Helvetica, Arial, sans-serif;
  font-weight: 300;
  padding: 10px;
  letter-spacing: 1px; }

.portfolioCopy li > a:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background: #679186;
  visibility: hidden;
  border-radius: 5px;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: .25s linear;
  -o-transition: .25s linear;
  transition: .25s linear; }

.portfolioCopy li > a:hover:before,
.portfolioCopy li > a:focus:before {
  visibility: visible;
  -webkit-transform: scaleX(1);
  -ms-transform: scaleX(1);
  transform: scaleX(1); }

.portfolioCopy li > a:active {
  color: #FFB4AC; }

.portfolioCopy h2 {
  font-weight: 300;
  border-bottom: 0.5px solid #679186; }

.left-bar,
.right-bar {
  position: absolute;
  width: 60px;
  height: 20px;
  background: pink;
  -webkit-transition: all 3s;
  -o-transition: all 3s;
  transition: all 3s; }

.left-bar {
  left: 0; }

.right-bar {
  right: 0; }

.skills {
  background: #679186;
  padding: 50px 0;
  color: #264E70; }
  .skills ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-line-pack: center;
    align-content: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding-bottom: 20px; }
  .skills li {
    background: #FFEBD3;
    padding: 14px;
    margin: 5px 10px;
    height: 140px;
    width: 110px; }

.techIcon {
  font-size: 4rem;
  color: #264E70; }

.skills li p {
  text-align: center;
  color: #264E70; }

svg {
  width: 80px;
  height: 80px;
  fill: #264E70;
  margin: 0 auto; }

.contact {
  background: -webkit-gradient(linear, right top, left top, color-stop(50%, #FFB4AC), color-stop(50%, #ffaba2));
  background: -webkit-linear-gradient(right, #FFB4AC 50%, #ffaba2 50%);
  background: -o-linear-gradient(right, #FFB4AC 50%, #ffaba2 50%);
  background: linear-gradient(to left, #FFB4AC 50%, #ffaba2 50%);
  padding: 50px 0;
  color: #264E70; }
  .contact h2 {
    padding-bottom: 10px; }

form {
  border: none;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row; }

.contactLeft {
  width: calc(50% - 20px);
  margin-right: 20px; }

.contactRight {
  width: calc(50% - 20px);
  margin-left: 20px; }

input,
textarea,
button {
  width: 100%;
  padding: 5px 20px;
  background: #FFEBD3;
  border: 1px solid transparent;
  color: #264E70;
  font-family: "Open Sans", Helvetica, Arial, sans-serif; }

input:active,
textarea:active,
button:active {
  background: #ffdfba; }

form input:last-of-type {
  margin: 10px 0; }

input:hover,
textarea:hover,
button:hover,
input:focus,
textarea:focus,
button:focus {
  border: 1px solid #679186; }

textarea {
  margin-bottom: 10px; }

.email {
  text-align: center;
  display: block;
  padding-bottom: 10px;
  position: relative;
  opacity: 1;
  transition: .25s linear; }

.email:before {
  content: "";
  position: absolute;
  width: 100%;
  height: 3px;
  bottom: 0;
  left: 0;
  background: #fff;
  visibility: hidden;
  border-radius: 5px;
  -webkit-transform: scaleX(0);
  -ms-transform: scaleX(0);
  transform: scaleX(0);
  -webkit-transition: .25s linear;
  -o-transition: .25s linear;
  transition: .25s linear; }

.email:hover {
  color: #FFEBD3; }

.email:active {
  color: #679186; }

.footerSocialLinks {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin: 10px 0 40px 0; }
  .footerSocialLinks li a {
    padding: 1px 20px;
    -webkit-transition: all .3s ease-in-out;
    -o-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out; }
  .footerSocialLinks li a:hover,
  .footerSocialLinks li a:focus,
  .footerSocialLinks li a:active {
    color: #FFEBD3; }

footer {
  text-align: center;
  background: #264E70;
  color: #fff;
  font-weight: 300;
  font-size: .8rem; }

@media (max-width: 1000px) {
  .aboutPicContainer {
    width: 100%; } }

@media (max-width: 820px) {
  form {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; }
  .contactLeft,
  .contactRight {
    width: 100%;
    margin: 0; }
  .aboutContainer {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
    -ms-flex-direction: column-reverse;
    flex-direction: column-reverse; }
  .leftAbout,
  .rightAbout {
    width: 100%;
    margin: 0; }
  .rightAbout {
    padding-top: 0;
    padding-bottom: 20px; }
  .aboutPicContainer {
    width: 60%;
    margin: 0 auto; }
  .portfolioItemContainer,
  .portfolioItemContainer:nth-of-type(2n) {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column; }
  .portfolioItemContainer:nth-of-type(2n) .portfolioImage,
  .portfolioItemContainer .portfolioImage {
    margin: 0; }
  .portfolioImage,
  .portfolioCopy {
    width: 100%;
    margin: 30px 0; }
  .codeLink {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center; } }

@media (max-width: 650px) {
  .topHeaderBar {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }
  .topHeaderBar label {
    z-index: 1000; }
  label svg {
    display: block;
    right: 1vh; }
  .topHeaderBar nav ul {
    display: none; }
  #responsiveNav:checked ~ nav ul {
    display: block;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    background: rgba(255, 235, 211, 0.9);
    width: 95%;
    top: 0;
    right: 0;
    bottom: 0;
    position: absolute;
    z-index: 30;
    text-align: center;
    padding-top: 20vh;
    position: fixed; }
    #responsiveNav:checked ~ nav ul a {
      font-size: 2rem;
      margin-bottom: 20px; }
  #responsiveNav:focus ~ label svg {
    border: 1px solid #FFB4AC; }
  #responsiveNav:checked ~ label > svg g:nth-of-type(2) {
    opacity: 0; }
  #responsiveNav:checked ~ label > svg g:nth-of-type(1) {
    -webkit-transform: rotate(45deg) translate(100px, -155px);
    -ms-transform: rotate(45deg) translate(100px, -155px);
    transform: rotate(45deg) translate(100px, -155px); }
  #responsiveNav:checked ~ label > svg g:nth-of-type(3) {
    -webkit-transform: rotate(-45deg) translate(-280px, 10px);
    -ms-transform: rotate(-45deg) translate(-280px, 10px);
    transform: rotate(-45deg) translate(-280px, 10px); } }

@media (max-width: 600px) {
  h1 {
    font-size: 3rem; } }

@media (max-width: 400px) {
  h1 {
    font-size: 2.5rem; }
  .headerContent h2 {
    font-size: 1.2rem; }
  .aboutPicContainer {
    width: 80%; } }

@media (max-width: 350px) {
  h1 {
    font-size: 2rem; }
  .headerContent h2 {
    font-size: 1rem; } }
