* {
  transition: 0.4s;
  font-family: 'Francois One', sans-serif; }

body {
  position: relative;
  box-sizing: border-box; }

.row {
  padding: 60px 0 40px;
  width: auto; }

h1, h2 {
  padding-bottom: 6px;
  margin-bottom: 36px;
  font-weight: bolder;
  letter-spacing: 0; }

[class*='col-'] {
  padding: 0; }

.item-wrapper {
  display: inline-block;
  margin: 24px auto; }

p {
  font-size: 14px; }

.img-thumbnail {
  padding: 0;
  border: 8px solid white; }

.header nav {
  -webkit-box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2) !important;
  -moz-box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2) !important;
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.2) !important;
  height: 72px;
  background-color: #223843;
  padding: 0;
  margin-bottom: 0; }
  .header nav a.navbar-brand {
    font-family: 'Montserrat', sans-serif;
    color: #d4e6b5; }
  .header nav div.collapse.navbar-collapse {
    font-size: 20px; }
  .header nav button {
    border: none;
    margin-right: 10px; }
  .header nav div.collapsing {
    transition: height 0.02s linear; }
  .header nav ul {
    margin-right: 6%; }
  .header nav div.collapse.navbar-collapse.show {
    transition: 0s;
    font-size: 16px; }
    .header nav div.collapse.navbar-collapse.show .nav.navbar-nav {
      margin-top: 235px;
      padding-right: 0; }
    .header nav div.collapse.navbar-collapse.show .navbar-nav .nav-item {
      margin: 0;
      padding-left: 20px;
      border-bottom: 1px solid #223843;
      background-color: #afc97e; }
      .header nav div.collapse.navbar-collapse.show .navbar-nav .nav-item a.nav-link {
        color: #223843; }

/**********ABOUT***************************************************************/
.about {
  background-color: #ffdf64; }
  .about .row {
    padding-top: 100px;
    padding-bottom: 100px; }
    .about .row h5 {
      padding-top: 30px; }
    .about .row p {
      margin: 36px auto;
      max-width: 400px;
      line-height: 2;
      font-size: 19px; }

/**********SKILLS***************************************************************/
.skills {
  background-color: #db504a; }
  .skills .card {
    -webkit-box-shadow: 5px 7px 4px 0 rgba(0, 0, 0, 0.2) !important;
    -moz-box-shadow: 5px 7px 4px 0 rgba(0, 0, 0, 0.2) !important;
    box-shadow: 5px 7px 4px 0 rgba(0, 0, 0, 0.4) !important;
    background-color: rgba(245, 255, 245, 0.9); }
    .skills .card .card-text {
      line-height: 2; }
    .skills .card .devicon {
      display: inline-block;
      margin: 5px; }
      .skills .card .devicon i {
        font-size: 40px;
        margin: auto; }
      .skills .card .devicon span {
        font-size: 20px;
        margin: 5px; }

/**********PROJECTS************************************************************/
.work {
  background-color: #afc97e; }
  .work .card {
    background-color: #f7f7f7;
    padding: 10px;
    height: 290px;
    border: none;
    border-radius: 0;
    -webkit-box-shadow: 5px 7px 4px rgba(0, 0, 0, 0.2) !important;
    -moz-box-shadow: 5px 7px 4px rgba(0, 0, 0, 0.2) !important;
    box-shadow: 5px 7px 4px 0 rgba(0, 0, 0, 0.4) !important; }
  .work .card img {
    opacity: 1;
    height: 100%; }
  .work .card-wrapper:hover .card-block {
    opacity: 1; }
  .work .card-wrapper .card-block {
    color: #2b2b2b;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: inherit;
    background-color: #f7f7f7;
    opacity: 0;
    padding: 11% 10px 0; }
    .work .card-wrapper .card-block hr {
      margin: 10px auto; }
    .work .card-wrapper .card-block .card-title {
      color: #FF5722;
      margin-bottom: 1rem;
      font-size: 22px; }
    .work .card-wrapper .card-block .small-text {
      margin-bottom: 10px;
      position: absolute;
      width: 100%;
      left: 0;
      bottom: 14%; }
      .work .card-wrapper .card-block .small-text small {
        color: #ff9800;
        font-weight: bold;
        letter-spacing: 2.6px; }
    .work .card-wrapper .card-block .footer-text {
      position: absolute;
      width: 100%;
      left: 0;
      bottom: 6%; }
    .work .card-wrapper .card-block a.code-link {
      margin-left: 69%; }

/**********FOOTER**************************************************************/
.contact {
  background-color: #d4e6b5;
  -webkit-box-shadow: 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
  -moz-box-shadow: 0 -px 5px 0 rgba(0, 0, 0, 0.2);
  box-shadow: 0 -1px 5px 0 rgba(0, 0, 0, 0.2); }
  .contact .row {
    padding-top: 50px; }
    .contact .row .contact-title {
      padding-bottom: 8px; }
    .contact .row i {
      height: 56px;
      width: 58px;
      margin-right: 16px;
      margin-left: 16px;
      padding: 12px;
      border: 1px solid;
      border-radius: 50%;
      color: white; }
    .contact .row i.icon-github {
      border-color: #d3102a;
      background-color: #d3102a; }
    .contact .row i.icon-envelope {
      border-color: #3993dd;
      background-color: #3993dd; }
    .contact .row i.icon-linkedin {
      border-color: #f9a03f;
      background-color: #f9a03f; }

/**********MOBILE&UP************************************************************/
@media (min-width: 320px) {
  button {
    position: absolute;
    right: 0; }
  a.navbar-brand {
    font-size: 24px;
    margin-left: 10px;
    position: absolute; }
  .card {
    margin-bottom: 12px; }
  [class*='col-'] {
    padding: 0 6px; }
  .card-wrapper {
    padding: 12px; }
  .row {
    padding: 100px 0; }
  h1 {
    margin-bottom: 0;
    text-align: center; }
  .about .row p {
    text-align: center; }
  .about .row h5 {
    padding-top: 15px;
    text-align: center; }
  .work .card {
    text-align: center; }
  .work .small-text {
    text-align: center;
    padding: 15px; } }

/**********SMALL&UP***********************************************************/
@media (min-width: 576px) {
  a.navbar-brand {
    font-size: 29px; }
  .work p {
    font-size: 16px; } }

/**********MEDIUM&UP***********************************************************/
@media (min-width: 768px) {
  a.navbar-brand {
    margin-left: 37px; }
  .item-wrapper {
    width: 85%;
    margin: 0 auto; }
  h1 {
    margin-bottom: 25px;
    text-align: center; }
  .about .row {
    height: 100vh; } }

/**********LARGE&UP************************************************************/
@media (min-width: 992px) {
  ul.nav.navbar-nav.pull-sm-right.container {
    margin-right: 120px; }
  #bio p,
  #skills p {
    margin: 24px auto; } }

/**********EXTRA*LARGE&UP******************************************************/
@media (min-width: 1200px) {
  .card-wrapper .card-block {
    padding-top: 16%; }
  .card-block hr {
    margin: 24px auto; }
  .container {
    max-width: 940px; } }
