/* roboto-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Roboto';
  font-style: normal;
  font-weight: 400;
  src: url('roboto-v30-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}
/* lora-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lora';
  font-style: normal;
  font-weight: 400;
  src: url('lora-v32-latin-regular.woff2') format('woff2'); /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
}

html{
  scroll-behavior: smooth;
}
body{
  background-color: #fff;
  margin: 0;
  padding: 0;
}

.grid{
  width: 90%;
  max-width: 900px;
  background-color: #fff;
  margin: 25px auto;
  padding: 20px;
}

.header{
  background-color: #fff;
  color: #222;
  margin-bottom: 50px;
}
.footer{
  background-color: #222;
  border-top: 1px solid #000;
  color: #ccc;
  text-align: center;
}

.menu{
  display: block;
  position: fixed;
  z-index: 100;
  overflow: hidden;
  margin: 2rem;
  padding: 0.6rem;
  border-radius: 3.1rem;
  background: linear-gradient(to bottom right, #00B7CC, #EEFF41);
  box-shadow: 5px 5px 1px #cecaca;
  bottom: 0px;
  right: 0px;
}
.menu-links{
  list-style: none;
  margin-top: -0.1em;
  margin-left: 0.4em;
  padding: 5px;
  align-items: center;
  text-align: center;
  font-family: Roboto, sans-serif;
  font-size: 0.9em;
  font-weight: bold;
  letter-spacing: 1px;
  color: #111;
}
.menu-links li{
  float: left;
  margin: 0 0.5em;
}
.menu-links li a{
  background: none;
}
.menu-links li a::after{
  content: " ";
  height: 0.0625rem;
  width: 0%;
  position: absolute;
  bottom: -0.125rem;
  right: 0;
  background: #2a2a2a;
  transition: 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}
.menu-links li a:hover::after{
  width: 100%;
  right: unset;
  left: 0;
}

.social-links{
  list-style: none;
  margin: 5px 0;
  padding: 0;
}
.social-links li{
  margin-left:5px;
}

.caption{
  font-family: Roboto, sans-serif;
  font-size: 13px;
}

.hanging{
  text-indent: -28px;
  padding-left: 28px;
  font-family: Lora;
  font-size: 12px;
  line-height: 15.4px;
}

h1,h2,h3,h4,h5,h6{
  font-family: Roboto, sans-serif;
  font-weight: 700;
}
h1{
  font-size: 48pt;
  line-height: 75px;
}
h2{
  font-size: 36pt;
  line-height: 55px;
}
h3{
  font-size: 24pt;
  line-height: 26.4px;
}

p{
  font-family: Lora, serif;
  font-size: 14pt;
  line-height: 23px;
  color: #555753;
}

a{
  text-decoration: none;
  color: #007ba7;
}
a:hover,a:focus,a:active{
  color: #000000;
  background: #EEFF41;
  transition: 0.9s cubic-bezier(0.1,0.9,0.2,1);
}

.transition{
  text-decoration: none;
  outline: none;
  transition-delay: 0s;
  transition-duration: 0.4s;
  transition-property: all;
  transition-timing-function: ease;
  box-shadow: none;
}

.arrow{
  background: #00B7CC;
  height:0.125rem;
  width:3.125rem;
  position: relative;
  display: inline-block;
  vertical-align: middle;
  margin-left:0.5rem;
}
.arrow:before,.arrow:after{
  content: "";
  background: #00B7CC;
  height:0.125rem;
  width:0.8125rem;
  position: absolute;
}
.arrow:before{
  right: -0.25rem;
  bottom: -0.25rem;
  transform: rotate(-45deg);
}
.arrow:after{
  right: -0.25rem;
  top: -0.25rem;
  transform: rotate(45deg);
}

.arrow-button{
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 1px;
  color: #00B7CC;
}
.arrow-button:hover{
  color: #00B7CC;
  margin-left:0.9375rem;
}

.cv-button{
  font-family: Roboto, sans-serif;
  font-size: 1rem;
  font-weight: bold;
  letter-spacing: 1px;
  color: #000000;
  display: inline-block;
  border-radius: 1.875rem;
  padding: 5px 10px;
  background-color: #EEFF41;
}
.cv-button:hover{
  background-color: #00B7CC;
}

.project{
  transition-delay: 0s;
  transition-duration: 0.8s;
  transition-property: all;
  transition-timing-function: ease;
  transform: translateY(0);
}
.project:hover{
  transform: translateY(-0.75rem);
}

figure{
  margin:0;
}
figcaption{
  background: rgba(0,0,0,.6);
  color: #FFFFFF;
  font-family: Lora;
  font-size: 17px;
  line-height: 15.4px;
  text-align: center;
  vertical-align:middle;
  display: inline-block;
  width:100%;
  margin-top:85px;
}

.fill {
    background-size: cover;
    background-position: center;
    width: 100%;
    height: 100%;
}

.bio{
  font-family: Lora;
  font-size: 12px;
  line-height: 15.4px;
  margin-bottom: 15px;
  margin-right: 15px;
}
.block{
  background-color: #EEFF41;
  height: 200px;
  margin-bottom: 15px;
  margin-right: 15px;
}
.gutter{
  display: block;
  margin-left: (40px / 2);
  margin-right: (40px / 2);
}

.col-33{
  width: 33.3%;
  float: left;
}
.col-50{
  width: 50%;
  float: left;
}

.clear{
  clear: both;
  display: block;
}

@media all and (max-width:900px) {
  .col-33{
    width: 50%;
  }
}
@media all and (max-width:640px), screen and (max-device-width:640px) {
  .col-50, .col-33{
    width: 100%;
    float: none;
  }
}
