/*
Colors used
Primary colors:
White 		  #fff;
Grey 		    #919191;
Light Blue 	#124aa8;
Dark Blue 	#001f52;
Black 		  #000;

Complementary colors:
White       #fff;
Light grey  #dbdbda;
Orange      #fda404;
Brown       #7d5100;
Black       #000;
Really light Grey #f8f8f8;

Font families
'Open Sans', sans-serif
'Roboto Slab', serif
 */

* {
  box-sizing: border-box;
}

body {
  /* font family and size */
  font-family: 'Open Sans', sans-serif;
  font-size: 18px;
  margin: 0 auto;
}

/* For different textcolors */

.grey {
  /* for grey texts */
  color: #919191;
}

/* Styling of the headers */

h1 {
  font-family: 'Roboto Slab', serif;
  font-size: 30px;
  text-align: center;
}

h2 {
  font-family: 'Roboto Slab', serif;
  font-size: 24px;
}

h3 {
  font-family: 'Roboto Slab', serif;
  font-size: 18px;
}

/* Start styling of the links */

a {
  /* Base color of the link */
  color: #fda404;
}

a:hover,
a:focus {
  /* No underline when hovering over link */
  text-decoration: none;
}

a:active {
  /* selected link */
  color: #7d5100;
}

/* Styling buttons */

button,
.button {
  /* overwrite browser defaults */

  /* reset the border */
  border: none;

  /* inherit the font from the outer container */
  font-family: inherit;
  font-weight: bold;
  font-size: 20px;

  /* style button */
  text-decoration: none;
  padding: 10px;

  /* width of the border, type, color */
  transition-duration: 1s;
  transition-property: opacity;
}

.buttonmargin {
  margin: 50px 0;
}

.buttonorange {
  /* style button */
  background-color: #fda404;
  color: #000;
  border-radius: 3px;
  border-bottom: 2px solid #7d5100;

  /* width of the border, type, color */
  transition-duration: 1s;
  transition-property: opacity;
}

.buttonblue {
  /* style button */
  background-color: #124aa8;
  color: #fff;
  border-radius: 3px;
  border-bottom: 2px solid #001f52;

  /* width of the border, type, color */
  transition-duration: 1s;
  transition-property: opacity;
}

button:hover,
.button:hover,
button:focus,
.button:focus {
  /* let's the mouse appear as hand when hovering over the button */
  cursor: pointer;

  /* Change opacity when hovering/selecting button */
  opacity: 0.8;
}

button:active,
.button:active {
  /* selected link */
  color: #fff;
}

/* Standard styling images on max-width */

img {
  max-width: 100%;
  margin: 20px 0;
  display: flex;
}

/* Styling section & container */

section::before,
section::after,
header::before,
header::after,
.container::before,
.container::after,
.row::before,
.row::after {
  display: table;
  content: " ";
}

section::after,
header::after,
.container::after,
.row::after {
  clear: both;
}

/* Styling Header with logo and navigation */

header {
  background: #fff;
  padding: 10px 0 5px;
  border-bottom: 5px solid #919191;
}

.logo {
  display: inline-block;
  width: 300px;
}

nav {
  display: inline-block;
  float: right;
}

/* Styling of the navigation menu */

nav ul {
  list-style-type: none;
  padding: 0;
}

nav ul li {
  float: left;
  margin: 20px 0 20px 20px;
}

nav ul li a {
  color: #124aa8;
  text-decoration: none;
  margin: 0 10px;
  padding: 10px;
  position: relative;
  z-index: 0;
  cursor: pointer;
}

/* Top border go down and Left border appears */

.borders a::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 2px;
  height: 0;
  background: #fda404;
  content: "";
  opacity: 1;
  transition: all 0.3s;
}

.borders a::after {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: #fda404;
  content: "";
  opacity: 1;
  transition: all 0.3s;
}

.borders a:hover::before {
  height: 100%;
}

.borders a:hover::after {
  opacity: 0;
  top: 100%;
}

/* Styling hero section */

.hero {
  background: #124aa8;
  border-bottom: 5px solid #919191;
  color: #fff;
  text-align: center;
}

.hero h1 {
  font-size: 36px;
  font-weight: 400;
  padding-top: 40px;
  margin-bottom: 0;
  display: block;
}

.hero p {
  font-family: 'Roboto Slab', serif;
  font-weight: 300;
  font-size: 28px;
  margin-top: 20px;
  padding-bottom: 40px;
}

/* Styling header Mywork */

.mywork {
  background: #dbdbda;
  color: #124aa8;
  padding: 20px 0;
}

.mywork h1 {
  font-weight: 400;
}

/* Styling text */

.blue {
  color: #124aa8;
}

/* Styling background */

/* grey background */

.greyback {
  background: #f8f8f8;
}

.endsection {
  border-bottom: 1px solid #919191;
}

/* Styling #work */

#work .row {
  padding: 10px 0;
  border-bottom: 1px solid #919191;
}

/* Styling about section */

#about div {
  text-align: center;
  padding-bottom: 20px;
}

/* Styling contact section */

#contact {
  text-align: center;
  background: #dbdbda;
  border-top: 1px solid #919191;
}

#contact h1 {
  color: #124aa8;
}

/* Styling social icons */

.social {
  width: 50px;
  padding: 10px;
}

.himeji {
  width: 100%;
}

/* Styling Project case pages */

/* Styling Case-title section */

.case-title {
  background: #124aa8;
  border-bottom: 5px solid #919191;
  color: #fff;
  text-align: center;
}

.case-title h1 {
  font-size: 48px;
  font-weight: 400;
  padding: 50px 0;
  display: block;
}

.case-title h1 span {
  font-weight: 300;
  font-size: 36px;
}

/* Layout styling */

.wrapper {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 20px;
}

/* Column styling */

.column {
  float: left;
  width: 50%;
}

.column-2 {
  padding-left: 20px;
  padding-right: 20px;
  display: inline-block;
}

/* 3 Columns layout */

.column-3 {
  width: 32%;
  display: inline-block;
  margin-right: 2%;
  float: left;
}

.column-3:last-child {
  margin-right: 0;
}

.column-s {
  width: 32%;
  display: inline-block;
  margin-right: 2%;
  float: left;
}

.column-l {
  width: 64%;
  display: inline-block;
  margin-right: 2%;
  float: left;
}

.project {
  position: relative;
}

.project-details {
  display: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;

  /* Reset this to 0 */
  background: rgba(18, 74, 168, 0.35);
  font-family: 'Roboto Slab', serif;
  font-size: 80px;
  text-align: center;
  color: #fff;
}

.project-details p {
  position: absolute;
  top: 15%;
  left: 0;
  bottom: 0;
  right: 0;
}

.problem {
  text-align: center;
  font-style: italic;
}

.center {
  text-align: center;
}

.centerimg {
  margin: 0 auto;
}

.joppe {
  width: 300px;
  margin: 0 auto;
  padding: 20px 0 0;
}

.remark {
  text-align: center;
  font-style: italic;
  font-size: 16px;
  color: #919191;
}

/* Start of the animations */

/* Animation of the Himeji castle svg */

@keyframes color-change {
  from {
    fill: #edc655;
  }

  to {
    fill: #f76414;
  }
}

.sun {
  animation-duration: 4s;
  animation-name: color-change;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: linear;
}

@keyframes cloud-move {
  from {
    transform: translate(0, 50px);
  }

  to {
    transform: translate(200px, 50px);
  }
}

.cloud-to-right {
  animation-duration: 30s;
  animation-name: cloud-move;
  animation-iteration-count: infinite;
  animation-direction: alternate;
  animation-timing-function: linear;
}

@keyframes cloud-move-reverse2 {
  from {
    transform: translate(438px, -10px);
  }

  to {
    transform: translate(238px, -10px);
  }
}

.cloud-to-left2 {
  animation: 34s cloud-move-reverse2 infinite alternate linear;
}

@keyframes cloud-move-reverse {
  from {
    transform: translate(550px, 80px);
  }

  to {
    transform: translate(300px, 80px);
  }
}

.cloud-to-left {
  animation: 60s cloud-move-reverse infinite alternate linear;
}

/* Start of the media queries(Keep this at the end of the stylesheet) */

/* Medium devices (tablets, less than 992px) */

@media (max-width: 991px) {
  h1 {
    /* Reduce font-size of heading 1 */
    font-size: 24px;
    text-align: center;
  }

  /* changes in header */
  header {
    text-align: center;
  }

  nav {
    float: none;
  }

  /* Small devices (landscape phones, less than 768px) */
  @media (max-width: 767px) {
    /* General settings */
    .wrapper {
      padding: 0 10px;
    }

    /* Hero section */
    .hero h1 {
      font-size: 32px;
    }

    .hero p {
      font-weight: 300;
      font-size: 24px;
    }

    /* Layout case-title */
    .case-title h1 {
      font-size: 36px;
      font-weight: 400;
      padding: 50px 0;
    }

    .case-title h1 span {
      font-weight: 300;
      font-size: 28px;
    }

    /* Button */
    button {
      /* Resize button */
      font-size: 18px;
    }

    body {
      /* change font-size */
      font-size: 16px;
    }

    .column-s {
      width: 100%;
      margin-right: 0%;
      float: left;
    }

    .column-l {
      width: 100%;
      margin-right: 0%;
    }
  }

  /* Extra small devices (portrait phones, less than 576px) */
  @media all and (max-width: 575px) {
    h2 {
      /* Reduce font-size of heading 2 */
      font-size: 20px;
    }

    /* changes in header */
    header {
      text-align: center;
    }

    nav {
      font-size: 14px;
      float: none;
    }

    /* set navigation right for smaller screen sizes */
    nav ul li {
      margin: 10px 0 10px 10px;
    }

    /* Changes in Columns */
    .column-2 {
      /* Modify 2-column to 1-column */
      width: 100%;
      margin-right: 0%;
      padding: 0;
    }

    .column-3 {
      /* Modify 3 column to 1 column */
      width: 100%;
      margin-right: 0%;
      padding: 0;
    }

    .column-3 img {
      width: 50%;
    }
  }
}
