
html, body, .col1, .col2 {
  height: 100%;
}

body {
  margin: 0;
}

h1 {
  font-family: 'Lora';
  font-weight: 500;
  font-style: normal;
  font-size: 2.5rem;
  line-height: 1.1;
}

h2 {
  font-family: 'Lato';
  font-weight: 600;
  font-style: normal;
  color: #292929;
  font-size: 1.5rem;
  /*margin-block-end: 0.4em;*/
}

h3 {
  font-family: 'Lato';
  font-weight: 100;
  font-style: regular;
  color: #fafafa;
  font-size: 1.4rem;
}

h4 {
  font-family: 'Lato';
  font-weight: 400;
  font-style: normal;
  color: #fafafa;
  font-size: 1.5rem;
}

h5 {
  font-family: 'Lato';
  font-weight: 100;
  font-style: normal;
  color: #fafafa;
  font-size: 1.1rem;
}

h6 {
  font-family: 'Lato';
  font-weight: 100;
  font-style: normal;
  color: #fafafa;
  font-size: 0.9rem;
  opacity: 0.6;
}

h7 {
  font-family: 'Lato';
  font-weight: 500;
  font-style: normal;
  color: #757575;
  font-size: 1.0rem;
  /*margin-block-end: 0.4em;*/
}

quote {
  font-family: 'Lora';
  font-weight: 500;
  font-style: italic;
  color: #000000;
  font-size: 1.5rem;
}

.project-number {
  margin-bottom: 0px;
}

p {
  font-family: 'Lora';
  font-weight: 400;
  font-style: regular;
  color: #242424;
  font-size: 1.2rem;
  line-height: 1.8;
}

p.thick {
  font-weight: 700;
}

a:link {
  text-decoration: underline;
  color: #000000;
}

a:hover {
  opacity: 0.6;
}

a:visited {
  color: #000000;
}

#lightLink {
  color: #fafafa;
}

.about-box {
  position: absolute;
  padding-left: 20%;
  padding-right: 0px;
  padding-top: 10%;
  width: 65%;
}

.color-box {
  float:left;
  background-color:#3C3C3C;
  width: 74px;
  height: 6px;
}

.social-media-element {
  margin-right: 1.5rem;
  text-decoration: none !important;
}

/*.hello-button {
    background-color: #fafafa;
    color: #3C3C3C;
    border: 2px solid #3C3C3C;
    padding: 1rem 3rem;
    border-radius: 0px;
    font-family: 'Quicksand';
    font-weight: 400;
    font-style: normal;
    font-size: 1.1rem;
    box-shadow: 6px 6px #3C3C3C;
    margin-top: 1rem;
    margin-bottom: 2.5rem;
    outline: none;
}*/

.hello-button {
    background-color: #fafafa;
    color: #3C3C3C;
    border: 2px solid #3C3C3C;
    padding: 1rem 3rem;
    border-radius: 50px;
    font-family: 'Lato';
    font-weight: 400;
    font-style: normal;
    font-size: 1.1rem;
    /*box-shadow: 6px 6px #3C3C3C;*/
    margin-top: 1rem;
    margin-bottom: 2.5rem;
    outline: none;
}

.hello-button:hover {
  background-color: #00D400;
  color: #ffffff;
  /*border: 2px solid #00D400;*/
}

.projects {
  height: 100vh;
  overflow: auto;
  padding-top: 1rem;
  padding-left: 4rem;
  padding-right: 3rem;
  scroll-snap-align: start none;
}

#copyright {
  padding-top: 0;
  background-color: #212121;
  text-align: center;
  letter-spacing: 0.03em;
}

#project001 {
  /*background-color: #F06F6F;*/
  background-color: #F5B6CD;
}

#project002 {
  background-color: #9EADE5;
}

#project003 {
  background-color: #F3B93D;
}

#project004 {
  background-color: #005BA8;
}

#outline {
  border: 1px solid red;
}

.project-img {
  justify-content: center;
  align-items: center;
  max-width: 40vw; /* previously 30vw*/
  max-height: 75vh;
  margin-left: auto;
  margin-right: auto;
  display: block;

  transition: transform .15s;
}

.project-img:hover {
  transform: scale(1.05);
}

.project-description {
  margin-top: -1.5rem;

}
.project-company {
  margin-bottom: 0.1rem;
}

.project-name {
  float: left;
  margin-top: 0rem;
}

.project-arrow {
  float: right;
  padding-top: 0.6rem;
}

.project-arrow:hover {
  opacity: 0.6;
}

.email-icon {
  float: right;
  padding-top: 0.2rem;
}

.email-icon:hover {
  opacity: 0.6;
}

.col1 {
  background-color: #fafafa;
  position: fixed;
  width: 40%;
  z-index: 0;
  left: 0;
  top: 0;
}

.col2 {
  width: 60%;
  margin-left: 40%;
  scroll-snap-type: y mandatory;
  /* overflow: scroll; */
  position: static;
  float: none;
  clear: none;
}

.two-col-image {
  display: block;
  max-width: 93vw;
  height: auto;
  margin: auto;
  padding-top: 0rem;
  padding-bottom: 0rem;
}

.single-phone {
  max-height: 80vh;
  max-width: 80vw;
  display: block;
  margin: auto;
}

#navbar {
  background-color: unset; /* Black background color */
  position: absolute; /* Make it stick/fixed */
  top: 0; /* Stay on top */
  width: 100%; /* Full width */
  transition: top 0.3s; /* Transition effect when sliding down (and up) */
  padding: 20px 30px;
  box-sizing: border-box;
  animation-delay: 0.45s;
}

#navbar a {
  float: right;
  display: block;
  color: #fafafa;
  text-align: center;
  margin: 0 15px;
  text-decoration: none;
}

#navbar a:first-of-type {
  margin-right: 0;
}

#navbar a h3 {
  display: inline-block;
  margin: 0.6em 0px 0em;
}

#home-link {
  float: left !important;
  margin: 1.1em 0 !important;
}


#navbar .nav_link:hover {
  /* opacity: 0.5; */
  /* display: inline-block;
  border-bottom: 4px solid #fafafa; */
  /* text-decoration: underline;
  text-underline-position: under; */
  border-bottom: 2px solid #fafafa;
  /* transition: 0.4s ease; */
}



/* Fix of hamburger menu */
#home-arrow-hamburger{
  padding-left: 2rem;
  padding-top: 2.3rem;
}

#hamburger-home-link {
  display: none;
}

.menu-opened body {
  overflow: hidden; /* try to remove scroll-behavior */
  position: fixed;
}

.trigger {
  display: none;
  position: absolute;
  height: 35px;
  top: 35px;
  right: 30px;
  color: #fafafa;
  font-size: 1.6rem;
  font-weight: bold;
  text-shadow: 0 0 2px black;
}

.menu {
  display: none;
  position: fixed;
  top: -200%;
  left: 0;
  width: 100vw;
  height: 100vh;
  color: #fafafa;
  background: rgba(34, 34, 34, 0.95);
  opacity: 0;
  transition: opacity 0.2s ease-in, top 0s ease-in;
  transition-delay: 0.1s;
  /* transform: scale(1.1); */
  /* pointer-events: none; */
  /* transition: all 0.3s; */
}

.menu-opened .menu {
  top: 0;
  opacity: 1;
  transform: scale(1);
  /* pointer-event: default; */

}

.menu ul {
  font-family: 'Quicksand';
  font-weight: 300;
  font-style: normal;
  font-size: 3rem;
  line-height: 4rem;
  text-align: left;
  position: absolute;
  top: 35%;
  left: 20%;
  transform: translate(-50%, -50%);
  list-style: none;
}

.mobile-header {
  z-index: 1;
  position: absolute;
  width: 100%;
}

.menu ul li a{
  color: #fafafa;
  text-decoration: none !important;
}

.social-media-row-hamburger {
  display: flex;
  position: absolute;
  justify-content: center;
  bottom: 18%;
  left: 28%;
}

.social-media-element-hamburger {
  margin-right: 2.5rem;
  height: 2rem;
}

/* -- */

.active {
  /* opacity: 0.5; */
  /* text-decoration: underline;
  text-underline-position: under; */
  border-bottom: 2px solid #fafafa;
}

ul .active {
  border-bottom: 4px solid #fafafa;
}

.menu li {
  margin-bottom: 1.7rem;
}

.grid {
  display: flex;
  padding-bottom: 3.5rem;
}

.grid-no-change {
  display: flex;
  justify-content: space-evenly;
}

.grid-col-1of2a {
  flex-grow: 1;
  flex-basis: 50%;
}

.grid-col-1of2b {
  flex-grow: 1;
  flex-basis: 50%;
}

.grid-text-right {
  padding-right: 13rem;
}

.grid-text-left {
  padding-left: 13rem;
}

@media (min-width: 1500px) {
  .content {
    padding: 0 10vw; /* previously 20rem */
  }

  .two-col-image {
    max-width: 100%;
  }
}
@media (min-width: 1300px) {
  .project-img {
    max-width: 40vw;
    max-height: 85vh;
  }

  #copyright {
    max-height: 9vh;
  }
}


@media (min-width: 1025px) {
  #copyright {
    height: 12vh;
  }
}

@media (max-width: 1025px) {
  .projects {
    height: unset;
  }
}

@media (max-width: 900px) {
  .col1 {
    position: relative;
    width: 100%;
    height: 660px; /* 90vh förut*/
  }
  .col2 {
    margin-left: 0;
    width: 100%;
    overflow: unset;
  }
  .about-box {
    height: 90vh;
    padding-left: 12%;
    padding-right: 12%;
    width: auto;
  }
  .projects {
    padding-left: 2rem;
    padding-right: 2rem;
  }

  .project-img {
    max-width: 70vw;
    max-height: 100vh;
  }
}

@media only screen and (max-width: 600px) and (orientation:portrait) {
  .about-box {
    padding-top: 6%;
  }

  #home-arrow-hamburger{
    height: 1.7rem;
  }

  #hamburger-home-link {
    display: inline-block;
  }

  .trigger {
    display: block;
  }

  .menu {
    display: flex;
  }

  #navbar {
    display: none;
  }

  /* try to fix weird android scroll behavior */
  .projects {
    scroll-snap-align: unset;
  }

  .col2 {
    scroll-snap-type: unset;
  }
}

@media (max-height: 450px) and (orientation:landscape) {
  #home-arrow-hamburger{
    height: 1.7rem;
  }

  #hamburger-home-link {
    display: inline-block;
  }

  #navbar {
    display: none;
  }

  .trigger {
    display: block;
  }

  .menu {
    display: flex;
  }

  .mobile-header {
    z-index: 1;
  }

  .social-media-row-hamburger {
    left: 39%;
    bottom: 10%; /* must fix to visible when scroll*/
  }

  .menu ul{
    top: 40%;
    font-size: 2.5rem;
    line-height: 3rem;
  }
}

/* Animations */
@keyframes pop-in {
  0% {
    opacity: 0;
    transform: translateX(-1em);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}


@keyframes pop-out {
  0% {
    opacity: 0;
    transform: translateX(1.5em);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes pop-up {
  0% {
    opacity: 0;
    transform: translateY(2em);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes pop-down {
  0% {
    opacity: 0;
    transform: translateY(-1.5em);
  }
  100% {
    opacity: 1;
    transform: none;
  }
}

@keyframes hero {
  0% {
    opacity: 1;
    /* transform: translateX(-10em); */
    background-position: -10em;
  }
  100% {
    opacity: 1;
    /* transform: none; */
    background-position: none;
  }
}

.animate-pop-in {
  animation: pop-in 600ms ease-out forwards;
  opacity: 0;
}

.animate-pop-out {
  animation: pop-out 600ms ease-out forwards;
  opacity: 0;
}

.animate-pop-up {
  animation: pop-up 600ms ease-out forwards;
  opacity: 0;
}

.animate-pop-down {
  animation: pop-down 600ms ease-out forwards;
  opacity: 0;
}

.animate-hero {
  animation: hero 1600ms ease forwards;
  opacity: 0;
  /* animation-delay: 5ms; */
}

#landing-animation-1 {
  animation-delay: 0.15s;
}

#landing-animation-2 {
  animation-delay: 0.45s;
}

#landing-animation-3 {
  animation-delay: 0.55s;
}

#landing-animation-4 {
  animation-delay: 0.65s;
}

#landing-animation-5 {
  animation-delay: 0.8s;
}

/* Dark mode support */

/*@media (prefers-color-scheme: dark) {

    body {
      background-color: #1a1a1a;
    }

    .col1 {
        background-color: #1a1a1a;
    }

    h1 {
        color: #ffffff;
    }

    .color-box {
      background-color: #ffffff;
    }

    p {
      color: #ffffff;
    }

    .hello-button {
      background-color: #1a1a1a;
      color: #ffffff;
      border-color: #ffffff;
      box-shadow: 6px 6px #ffffff;
    }

    #copyright {
      background-color: #ffffff;
    }

    h6 {
      color: #000000;
    }
}*/

/* hamburger icon */
.burger {
  height: 3em;
  width: 3em;
  position: relative;
  font-size: 11px;
  cursor: pointer;
  -webkit-transition: .2s all;
  -o-transition: .2s all;
  transition: .2s all;
  -webkit-tap-highlight-color: transparent; }
  .burger .burger-lines:after {
    left: 0;
    top: -1em; }
  .burger .burger-lines:before {
    left: 1em;
    top: 1em; }
  .burger:after {
    content: '';
    display: block;
    position: absolute;
    height: 150%;
    width: 150%;
    top: -25%;
    left: -25%; }
  .burger .burger-lines {
    top: 50%;
    margin-top: -0.125em; }
    .burger .burger-lines, .burger .burger-lines:after, .burger .burger-lines:before {
      pointer-events: none;
      display: block;
      content: '';
      width: 100%;
      border-radius: 0.25em;
      background-color: white;
      height: 0.25em;
      position: absolute;
      -webkit-transform: rotate(0);
          -ms-transform: rotate(0);
              transform: rotate(0); }
    .burger .burger-lines:after {
      left: 0;
      top: -1em; }
    .burger .burger-lines:before {
      left: 1em;
      top: 1em; }
.burger.burger-rotate .burger-lines:after, .burger.burger-rotate .burger-lines:before {
  width: 2em; }


.burger.burger-rotate .burger-lines, .burger.burger-rotate .burger-lines:after, .burger.burger-rotate .burger-lines:before {
  -webkit-transition: all .2s;
  -o-transition: all .2s;
  transition: all .2s; }

.menu-opened .burger.burger-rotate {
  -webkit-transform: rotate(180deg);
      -ms-transform: rotate(180deg);
          transform: rotate(180deg); }
  .menu-opened .burger.burger-rotate .burger-lines {
    background-color: transparent; }
  .menu-opened .burger.burger-rotate .burger-lines:before,
  .menu-opened .burger.burger-rotate .burger-lines:after {
    left: 0.5em;
    top: 0px; }
  .menu-opened .burger.burger-rotate .burger-lines:before {
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg); }
  .menu-opened .burger.burger-rotate .burger-lines:after {
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg); }
