/* ========================================== 
             CSS Reset
   http://meyerweb.com/eric/tools/css/reset/
   v2.0 | 20110126
   License: none (public domain)
============================================= */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* ================================= 
          End of CSS Reset
==================================== */
html {
  box-sizing: border-box;
}
*, *:before, *:after {
  box-sizing: inherit;
}
h1 {
  font-size: 3em;
  margin: 0 auto;
}
a {
  text-decoration: none;
}

/* ================================= 
            Landing
==================================== */

.landing {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 100vh;
  width: 100%;
  background: url(images/background.jpg) no-repeat center fixed;
  background-position: top;
  overflow: hidden;
}
.title-container {
  font-size: 2em;
  margin-top: -140px;
}
.title-container h1{
  font-family: 'Flamenco', cursive;
  font-weight: 300;
  margin-bottom: 10px;
}
.title-container h3{
  font-family: 'Chaparral Pro', 'Times New Roman';
  font-style: italic;
}

/* ================================= 
              Rover
==================================== */

.rover {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 80%;
  margin: 50px auto;
}
.rover-image {  
  float: left;
  text-align: center;
  padding: 5px;
}
.rover-image h4{  
  font-size: 1.6em;
  font-family: 'PT Mono', monospace;
}
.rover-image img {
  height: 175px;
  border-radius: 50%;
  margin: 40px 10px 45px;
}
.rover-image img:hover {
  height: 185px;
  margin: 35px 5px 40px;
}
.rover-text {
  font-family: 'Chaparral Pro', 'Times New Roman';
  text-align: center;
  font-size: 1.35em;
  line-height: 1.4em;
  padding: 50px;
  margin-left: 40px;
  float: left;
}
.rover-text p.small-text {
  margin-top: 25px;
  font-size: 0.8em;
  line-height: 1.2em;
}
.rover-text button {
  font-family: 'Chaparral Pro', 'Times New Roman';
  font-size: 1.1em;
  margin-top: 50px;
  color: #486470;
  background: #fff;
  padding: 10px 20px 10px 20px;
  border: none;
  outline: none;
  text-decoration: none;
}
.rover-text button:hover {
  background: #F2F1F6;
  text-decoration: none;
}

/* ================================= 
          Pre-blocks
==================================== */

.pre-block {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; 
  -webkit-box-pack: center; 
      -ms-flex-pack: center; 
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 400px;
  width: 100%;
  background: url(images/background.jpg) no-repeat center;
  background-position: 0 -47px;
  font-family: 'Chaparral Pro', 'Times New Roman';
  overflow: hidden;
}
.pre-block h1 {
  font-size: 3.5em;
  margin-bottom: -100px;
}
.pre-block-4 {
  height: 300px;
}

/* ================================= 
          Skills
==================================== */
h5 {
  margin-top: 5px;
}

.skills-container {
  margin-top: 40px;
  margin-bottom: 105px;
}

/* Main Skills*/

.main-skills-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: 'PT Mono', monospace;
  font-size: 1.2em;
}
.main-skills {
  text-align: center;
  padding: 5px;
  margin: 20px 30px 5px;
}
.main-skills img {
  height: 115px;
  width: 115px;
  margin: 10px;
}
.main-skills img:hover {
  height: 125px;
  width: 125px;
  margin: 5px;
}

/* Other Skills */

.other-skills-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 70%;
  margin: 0 auto 40px;
  font-family: 'Chaparral Pro', 'Times New Roman';
}
.other-skills {
  text-align: center;
  margin:21px 0 0;
  width: 25%;
}
.other-skills img {
  height: 95px;
  width: 95px;
  margin: 5px;
}
.other-skills img:hover {
  height: 105px;
  width: 105px;
  margin: 0px;
}

/* ================================= 
              Blog
==================================== */

.blog {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; 
  margin: 30px auto 55px;
  width: 90%;
}
.blog-image {  
  float: left;
  margin-top: 50px;
  height: 300px;
  width: 45%;
}
.blog-image img {
  margin-top: 20px;
  margin-left: 20px;
  height: 250px;
  border-radius: 15px;
}
.blog-text {
  text-align: center;
  font-family: 'Chaparral Pro', 'Times New Roman';
  padding: 50px 50px 0;
  width: 55%;
  font-size: 1.2em;
  line-height: 1.3em;
  float: left;
}
.blog-text h2 {
  font-size: 1.5em;
  line-height: 1.2em;
  margin-bottom: 10px;
}
.blog-text p {
  margin-bottom: 10px;
}
.blog-text span {
  color: #008CFA;
}
.blog-text button {
  font-family: 'Chaparral Pro', 'Times New Roman';
  font-size: 1.2em;
  color: #486470;
  margin-bottom: 10px;
  background: #fff;
  padding: 10px 20px 10px 20px;
  border: none;
  outline: none;
  text-decoration: none;
}
.blog-text button:hover {
  background: #F2F1F6;
  text-decoration: none;
}

/* ================================= 
              Bio
==================================== */

.bio {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex; 
  margin: 25px auto 0;
  width: 90%;
  padding: 20px;
}
.bio-image {  
  float: left;
  height: 300px;
}
.bio-text {
  font-family: 'Chaparral Pro', 'Times New Roman';
  padding: 50px;
  line-height: 1.4em;
  float: left;
}
.firstcharacter {
  color: #903;
  float: left;
  font-family: Georgia;
  font-size: 75px;
  line-height: 60px;
  padding-top: 4px;
  padding-right: 8px;
  padding-left: 3px;
}
.bio-text p {
  font-size: 1.3em;
  text-align: left;
  margin-bottom: 20px;
}
.bio-text p:nth-child(4) {
  margin-bottom: 60px;
}
.bio-text .quote {
  font-style: italic;
  text-align: center;
  font-size: 1.2em;
  width: 65%;
  margin: 40px auto 40px;
}

.bio-text .author {
  margin-left: 15%;
}

/* ================================= 
              Footer
==================================== */

.social-container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 20px 0 5px;
}
.social img {
  height: 40px;
  margin: 10px 10px; 
}
.social img:hover {
  height: 50px;
  margin: 5px 5px; 
}

.social-tooltip {
  visibility: hidden;
  width: 55px;
  background-color: white;
  color: #6a6767;
  text-align: center;
  border-radius: 6px;
  padding: 5px 0;

  /* Position the tooltip */
  position: absolute;
  z-index: 1;
  margin-left: -55px;
  margin-top: 55px;
  font-family: 'Flamenco', cursive;
}
.social:hover .social-tooltip {
    visibility: visible;
}
.credit-container {
  text-align: right;
  margin: 5px;
  font-family: 'Flamenco', cursive;
}

/* ================================= 
            Media Queries
==================================== */


@media (max-width: 1170px) {

  /* Blog */
  .blog {
    width: 100%;
  } 
}

@media (max-width: 1060px) {

  /* Blog */
  .blog {
    -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;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }
  .blog-image {
    width: 100%; 
    text-align: center;
    margin: 10px 0 5px;  
  }
  .blog-image img {
    margin-left: 0;
  }
  .blog-text {
    width: 65%;
    padding: 0;
  }
  
}

@media (max-width: 960px) {

  /* Rover */
  .rover {
    -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;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin: 0 auto;
  }
  .rover-image {
    text-align: center;
    margin: 10px 0 20px;   
  }
  .rover-image img {
    margin-top: 25px;
    margin-bottom: 40px;
  }
  .rover-image img:hover {
    margin-top: 20px;
    margin-bottom: 35px;
  }
  .rover-text {
    width: 65%;
    margin-left: 0;
    padding: 0;
  }
  .rover-text button {
    margin-top: 40px;
  }
  
  /* Footer */
  .credit-container {
  text-align: center;
  font-size: 0.9em;
  margin: 10px auto; 
}
  
}

@media (max-width: 860px) {

  /* Skills */
  .other-skills-container {
    width: 100%;
  }
}

@media (max-width: 650px) {
  .bio-text .quote {
    width: 100%;
  }
}

@media (max-width: 575px) {

  /* Skills */
  .main-skills img {
    height: 100px;
    width: 100px;
  }
  .main-skills img:hover {
    height: 110px;
    width: 110px;
  }
  .other-skills-container {
    margin: 0 auto 40px;
  }
  .other-skills {
    margin:10px 0;
    width: 30%;
  }
  .other-skills img {
    height: 80px;
    width: 80px;
  }
  .other-skills img:hover {
    height: 90px;
    width: 90px;
  }
  
  /* Bio */
  .bio {
    padding: 0;
  }
}

@media (max-width: 480px) {
  /* Landing */
  .title-container {
    font-size: 1.6em;
  }
  
  /* Blog */
  .blog-image {
    height: 250px;
  }
  .blog-image img {
    height: 200px;
  }
  .blog-text {
    width: 70%;
  }
}

@media (max-width: 414px) {

  /* Landing */
  .title-container {
    font-size: 1.4em;
  }
  
  /* Skills */
  .main-skills-container {
    font-size: 1em;
    margin-bottom: 5px;
  }
  .main-skills {
    margin: 20px 15px 15px;
    padding: 5px 0;
  }
  .main-skills h5{
    margin-top: 10px;
  }
  .main-skills img {
    height: 75px;
    width: 75px;
  }
  .main-skills img:hover {
    height: 85px;
    width: 85px;
  }
  .other-skills-container {
    margin: 0 auto 40px;
  }
  .other-skills {
    width: 115px;
    font-size: 0.8em;
    margin:10px 0;
  }
  .other-skills img {
    height: 55px;
    width: 55px;
  }
  .other-skills img:hover {
    height: 65px;
    width: 65px;
  }
  
  /* Blog */
  .blog-text h2 {
    font-size: 1.4em;
    line-height: 1.2em;
    margin-bottom: 15px;
  }

  /* Bio */
  .bio-text .author {
    margin-left: 0;
  }
}

@media (max-width: 375px) {
  .title-container {
    margin-top: -100px;
  }
}

@media (max-width: 320px) {

  /* Landing */
  .title-container {
    font-size: 1.3em;
    margin-top: 0px;
  }
  
  /* Rover */
  .rover-text {
    width: 85%;
  }
  
  /* Skills */
  .main-skills img {
    height: 90px;
    width: 90px;
  }
  .other-skills img{
    height: 70px;
    width: 70px;
  }
  .other-skills {
    font-size: 0.9em;
  }
  
  /* Blog */
  .blog-image {
    height: 200px;
  }
  .blog-image img {
    height: 165px;
  }
  .blog-text {
    width: 80%;
  }
  
  /* Bio */
  .bio-text {
    padding: 28px;
  }
   
  /* Footer */
  .social img {
    height: 38px;
    margin: 0 8px;
  }
  .credit-container {
    font-size: 0.7em;
  }

}