/* Scss Document */
* {
  margin: 0;
  padding: 0;
  outline: none;
  border: none;
  font-size: 1rem;
  box-sizing: border-box;
  vertical-align: baseline; }

@font-face {
  font-family: "Marydale";
  font-weight: 900;
  src: url("fonts/Marydale-bold.woff") format("woff"); }
@font-face {
  font-family: "Marydale";
  font-weight: 600;
  src: url("fonts/Marydale.woff") format("woff"); }
@font-face {
  font-family: "Lato";
  font-weight: 700;
  src: url("fonts/Lato-Bold.woff") format("woff"); }
@font-face {
  font-family: "Lato";
  font-weight: 400;
  src: url("fonts/Lato-Regular.woff") format("woff"); }
ul {
  list-style: none; }

li, a {
  text-decoration: none;
  color: #5F5C6D; }

h1 {
  font-size: 2.5rem;
  font-family: Lato, sans-serif;
  font-weight: 700;
  margin-bottom: 0.75em;
  text-transform: uppercase;
  color: #5F5C6D; }

h2 {
  font-size: 2rem;
  font-family: Lato, sans-serif;
  font-weight: 700;
  margin-bottom: 1em;
  text-transform: uppercase;
  color: #5F5C6D; }

p,
.circuled,
.underlined,
.thin {
  font-size: 2rem;
  line-height: 1.6;
  margin-bottom: 0.75em;
  color: #707070;
  letter-spacing: .075em; }

body {
  font-family: "marydale", sans-serif;
  font-weight: 600; }

.thin {
  font-weight: 100; }

.circuled,
.underlined {
  position: relative; }
  .circuled::before, .circuled::after,
  .underlined::before,
  .underlined::after {
    content: "";
    position: absolute;
    border: 2px solid red;
    width: 100%;
    pointer-events: none;
    opacity: 0.4; }

.circuled::before {
  left: -0.5em;
  top: -0.1em;
  height: 1em;
  border-right-color: transparent;
  border-radius: 50%;
  transform: rotate(2deg);
  padding: 0.1em 0.25em; }
.circuled::after {
  left: -0.5em;
  top: 0.1em;
  height: 1em;
  border-left-color: transparent;
  border-top-color: transparent;
  border-radius: 50%;
  transform: rotate(-1deg);
  padding: 0.1em 0.25em; }

.underlined::before {
  display: none; }
.underlined::after {
  left: 0;
  top: 1.35em;
  height: 1em;
  border-left-color: transparent;
  border-right-color: transparent;
  border-bottom-color: transparent;
  border-top-left-radius: 30%;
  transform: rotate(-2deg); }

.mobile-on {
  display: none; }

/*.section-title,
.story-title{
	font-family: Lato, sans-serif;
	font-weight: 700;
	margin-bottom: 0.75em;
	text-transform: uppercase;
	color: $grey-dark;
}*/
.section-subtitle,
.story-subtitle {
  font-family: Lato, sans-serif;
  font-weight: 400;
  font-size: 1rem;
  line-height: 1rem;
  text-transform: lowercase;
  margin-bottom: 0; }

.nav-wrapper,
.side-nav {
  position: fixed;
  z-index: 100; }

.nav-wrapper {
  top: 0;
  left: 0;
  width: 100vw;
  z-index: 10;
  line-height: 1.5;
  display: grid;
  grid-template-rows: auto;
  grid-template-columns: 4fr 400px 1fr;
  grid-template-areas: ". nav .";
  padding: 1rem .6em .2em; }
  .nav-wrapper .nav {
    grid-area: nav; }
    .nav-wrapper .nav .link {
      display: inline-block;
      margin: 0 .6em;
      transition-duration: .8s;
      cursor: pointer; }
      .nav-wrapper .nav .link a {
        font-size: 1.5rem; }
        .nav-wrapper .nav .link a:hover {
          color: #707070; }

.side-nav {
  top: 12rem;
  right: 0;
  padding: 2rem; }
  .side-nav ul li {
    padding: 0 20px;
    cursor: pointer; }
    .side-nav ul li.active::after {
      height: 40px;
      background-color: #5F5C6D; }
    .side-nav ul li::after {
      content: '';
      display: inline-block;
      width: 3px;
      height: 20px;
      background-color: #707070;
      border: none;
      border-radius: 1px;
      transition-duration: 1.4s; }

.hero {
  display: grid;
  grid-template-columns: 10vw min-content minmax(300px, 600px) 10vw;
  grid-template-areas: ". image title ." ". image text .";
  position: relative;
  margin: 10rem 0 10rem; }
  .hero .picture {
    grid-area: image;
    width: 20vw;
    max-width: 300px;
    height: 30vw;
    max-height: 450px;
    margin-right: 2em; }
    .hero .picture img {
      border: 6px solid white;
      box-shadow: 2px 5px 12px rgba(0, 0, 0, 0.2);
      border-radius: 25px;
      /*
      for mobile
      width: 75vw;
      height: 90vw;*/
      object-fit: cover;
      width: 20vw;
      max-width: 300px;
      height: 30vw;
      max-height: 450px; }
  .hero .hero-title {
    grid-area: title;
    font-family: "marydale", sans-serif;
    font-weight: 900;
    font-size: 2.1rem;
    text-transform: none;
    line-height: 1.5;
    color: white;
    padding: 0.25em 0; }
    .hero .hero-title::after {
      content: "";
      position: absolute;
      background-color: #ee6352;
      background-image: linear-gradient(120deg, #39BC8F, #2C96A7);
      grid-column: 2 / 4;
      grid-row: 1 / 2;
      left: -1rem;
      right: -2em;
      top: -1rem;
      bottom: 0;
      z-index: -1;
      border-radius: 20px;
      filter: drop-shadow(0 0 20px rgba(0, 0, 0, 0.2)); }
  .hero .hero-signature {
    grid-area: text;
    text-align: end;
    font-size: 1.5rem; }

.home-section {
  display: grid;
  grid-template-rows: min-content auto;
  grid-template-columns: minmax(10vw, 0.5fr) minmax(300px, 900px) minmax(10vw, 1fr);
  padding: 5em 0; }
  .home-section .section-title,
  .home-section .section-subtitle,
  .home-section p {
    grid-column: 2/3; }
  .home-section .section-title.appear,
  .home-section .section-subtitle.appear,
  .home-section p.appear {
    opacity: 1; }

.portfolio {
  padding: 5em 0;
  text-align: center;
  overflow-x: hidden; }

.slide-section {
  grid-column: 1 / -1;
  display: flex;
  height: 600px;
  perspective: 500px;
  padding: 5em 0 2em;
  margin-bottom: 1em;
  position: relative; }
  .slide-section .page[data-pos-x="left"] {
    left: 0;
    transform: translate(-50%) scale(0.8, 0.8);
    z-index: 1;
    opacity: 0.7; }
  .slide-section .page[data-pos-x="center"] {
    left: 25vw;
    z-index: 3;
    opacity: 1; }
  .slide-section .page[data-pos-x="right"] {
    left: 100vw;
    transform: translate(-50%) scale(0.8, 0.8);
    z-index: 2;
    opacity: 0.7; }
  .slide-section .page[data-pos-x="left"] .picture,
  .slide-section .page[data-pos-x="right"] .picture {
    box-shadow: 0 6px 6px 0 rgba(0, 0, 0, 0.2); }
  .slide-section .page {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    align-items: center;
    width: 50vw;
    position: absolute;
    transition: 2s ease; }
    .slide-section .page .picture {
      width: 100%;
      max-height: 400px;
      border: none;
      border-radius: 20px;
      box-shadow: 0 6px 20px 0 rgba(0, 0, 0, 0.2);
      margin: 0 auto 2em;
      cursor: pointer;
      transition: all 2s ease-in-out; }
    .slide-section .page .button {
      padding: .5em 1.25em .2em;
      border-radius: 1em;
      position: relative;
      transition: .4s ease-in-out;
      cursor: pointer; }
      .slide-section .page .button::after {
        content: '';
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        position: absolute;
        box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
        opacity: .4;
        border: none;
        border-radius: 1em;
        transition: .2s linear;
        z-index: -1; }
      .slide-section .page .button:hover {
        border: none;
        transform: scale(1.05); }
        .slide-section .page .button:hover::after {
          opacity: 1; }

.footer {
  background-image: linear-gradient(120deg, #B27DE8, #AE97FF, #B27DE8); }
  .footer ul {
    display: flex;
    justify-content: space-around;
    align-items: center;
    max-width: 300px;
    padding: 4em 0 3em;
    margin: 0 auto; }
    .footer ul li {
      filter: drop-shadow(rgba(0, 0, 0, 0.2) 0px 0px 10px);
      padding: 1em;
      cursor: pointer;
      transition: .6s ease-in-out; }
      .footer ul li:hover {
        transform: scale(1.2); }
      .footer ul li svg {
        width: 32px;
        fill: #fff; }
  .footer .copy-rights {
    padding: .5em 0;
    text-align: center;
    background-color: #5F5C6D;
    color: #707070;
    box-shadow: 0 0 20px 10px rgba(0, 0, 0, 0.2); }

.fade-in {
  opacity: 0;
  transition: opacity 1s ease-in-out; }

.appear {
  opacity: 1; }

.gradient {
  background-image: linear-gradient(120deg, #39BC8F, #2C96A7);
  box-shadow: 0 0 20px 0 #707070; }
  .gradient .section-title,
  .gradient .section-subtitle,
  .gradient .story-title,
  .gradient p,
  .gradient .underlined,
  .gradient .circuled {
    color: #F4F4F4; }
  .gradient .circuled::before,
  .gradient .circuled::after,
  .gradient .underlined::after {
    opacity: .8; }

.currliculum {
  display: flex;
  flex-direction: column; }

.line {
  grid-row: 1 / -1;
  grid-column: 3 / span 3;
  opacity: .3; }
  .line.flip {
    grid-column: 1 / span 3;
    transform: scale(-1, 1); }
  .line .plane-shape {
    filter: drop-shadow(6px 10px 6px rgba(0, 0, 0, 0.4)); }
    .line .plane-shape .wings {
      fill: #d6faff; }
    .line .plane-shape .core-outside {
      fill: #4b9aba; }
    .line .plane-shape .core-inside {
      fill: #b6eaff; }
  .line .plane-lines {
    filter: drop-shadow(4px 4px 3px rgba(0, 0, 0, 0.4)); }

.job,
.story-start,
.story-end {
  min-height: 700px;
  display: grid;
  grid-template: 1fr 200px min-content auto min-content 1fr/minmax(10vw, 1fr) minmax(100px, 200px) minmax(200px, 400px) minmax(100px, 200px) minmax(10vw, 1fr); }
  .job .job-title,
  .job .job-description,
  .job .company-name,
  .story-start .job-title,
  .story-start .job-description,
  .story-start .company-name,
  .story-end .job-title,
  .story-end .job-description,
  .story-end .company-name {
    grid-column: 2/6;
    margin-right: 5rem; }
  .job.left .job-title, .job.left .job-description, .job.left .company-name,
  .story-start.left .job-title,
  .story-start.left .job-description,
  .story-start.left .company-name,
  .story-end.left .job-title,
  .story-end.left .job-description,
  .story-end.left .company-name {
    grid-column: 1/5;
    margin-right: 0;
    margin-left: 5rem; }
  .job .job-title,
  .story-start .job-title,
  .story-end .job-title {
    grid-row: 3; }
  .job .job-description,
  .story-start .job-description,
  .story-end .job-description {
    grid-row: 4; }
    .job .job-description p,
    .job .job-description .underlined,
    .job .job-description .circuled,
    .story-start .job-description p,
    .story-start .job-description .underlined,
    .story-start .job-description .circuled,
    .story-end .job-description p,
    .story-end .job-description .underlined,
    .story-end .job-description .circuled {
      font-size: 1.4rem; }
  .job .company-name,
  .story-start .company-name,
  .story-end .company-name {
    grid-row: 5;
    margin-bottom: 2em; }

.story-end .paperplane {
  grid-row: 2;
  grid-column: 3 / 5;
  align-self: center;
  opacity: .7;
  filter: drop-shadow(rgba(0, 0, 0, 0.2) -5px 20px 10px);
  -webkit-filter: drop-shadow(rgba(0, 0, 0, 0.2) -5px 20px 10px); }
.story-end .paperplane-line {
  grid-row: 5 / span 2;
  grid-column: 3 / span 2;
  filter: drop-shadow(3px 3px 3px black); }
.story-end .story-title {
  grid-row: 2;
  grid-column: 2/3;
  white-space: nowrap;
  letter-spacing: .025em;
  margin-bottom: 0; }

.story-start {
  position: relative; }
  .story-start .paperplane {
    grid-row: 1/span 2;
    grid-column: 2/span 2;
    margin-top: 3em;
    margin-left: 4em;
    width: 200px;
    animation: flight 6s linear infinite; }
  .story-start .story-title {
    grid-row: 4;
    grid-column: 3/5;
    justify-self: end;
    white-space: nowrap;
    letter-spacing: .025em;
    margin-bottom: 0; }
  .story-start .story-subtitle {
    grid-row: 5;
    grid-column: 3/5;
    justify-self: end; }

@keyframes flight {
  0% {
    transform: rotateX(-10deg) rotateY(0deg) rotateZ(4deg) translateX(0px);
    filter: drop-shadow(10px 30px 30px rgba(0, 0, 0, 0.2)); }
  40% {
    transform: rotateX(-40deg) rotateY(0deg) rotateZ(10deg) translateX(0px);
    filter: drop-shadow(3px 20px 20px rgba(0, 0, 0, 0.3)); }
  50% {
    transform: rotateX(-43deg) rotateY(5deg) rotateZ(12deg) translateX(0px);
    filter: drop-shadow(3px 20px 15px rgba(0, 0, 0, 0.3)); }
  /*60%{
  	//transform: rotate3D(0,0,0,0deg);
  	transform: rotateX(-40deg) rotateY(5deg) rotateZ(8deg) translateX(0px);
  	filter: drop-shadow(10px 30px 20px rgba(0,0,0,0.3));
  }*/
  80% {
    transform: rotateX(-30deg) rotateY(0deg) rotateZ(10deg) translateX(0px);
    filter: drop-shadow(10px 30px 20px rgba(0, 0, 0, 0.3)); }
  100% {
    transform: rotateX(-10deg) rotateY(0deg) rotateZ(4deg) translateX(0px);
    filter: drop-shadow(10px 30px 30px rgba(0, 0, 0, 0.2)); } }
.interested {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh; }
  .interested .line {
    position: absolute;
    top: 3rem;
    left: 10%;
    height: 80%;
    transform: scale(-1, 1); }

.glass-wrapper {
  display: grid;
  grid-template-columns: min-content min-content min-content;
  grid-template-rows: min-content min-content min-content;
  grid-row-gap: 1.5em;
  grid-column-gap: 1em;
  align-items: flex-start;
  padding: 2em 3em;
  white-space: nowrap;
  background-color: rgba(255, 255, 255, 0.4);
  border-radius: 10px;
  box-shadow: 0 3px 6px 0 rgba(0, 0, 0, 0.2);
  z-index: 10; }
  .glass-wrapper .label {
    grid-column: 1;
    justify-self: end; }
  .glass-wrapper .input {
    grid-column: 2/ span 2;
    border-bottom: 1px solid grey;
    background: none; }
  .glass-wrapper .name {
    grid-row: 1; }
  .glass-wrapper .email {
    grid-row: 2; }
  .glass-wrapper .respond {
    grid-column: 2 / span 2;
    grid-row: 3;
    filter: drop-shadow(0 0 1px rgba(0, 0, 0, 0.4)); }
  .glass-wrapper .button {
    box-sizing: border-box;
    cursor: pointer;
    position: relative;
    grid-row: 3;
    padding: .4em 1.5em;
    border: 1px solid rgba(0, 0, 0, 0.2);
    border-radius: 10px;
    background-color: transparent;
    transition: .4s ease-in-out;
    -webkit-appearance: none;
    display: flex;
    align-items: center; }
    .glass-wrapper .button .icon {
      width: 2em;
      height: 2em;
      margin-right: .75em; }
    .glass-wrapper .button.needWebsite {
      grid-column: 1 / span 2; }
    .glass-wrapper .button.wantHire {
      grid-column: 3;
      background-color: #B27DE8;
      color: #F4F4F4;
      border: none;
      padding: calc(.4em + 2px) calc(1.5em + 2px); }
      .glass-wrapper .button.wantHire .icon {
        fill: #F4F4F4; }
    .glass-wrapper .button::after {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      border-radius: 10px;
      box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.2);
      opacity: .4;
      transition: .4s linear; }
    .glass-wrapper .button:hover {
      transform: scale(1.05); }
      .glass-wrapper .button:hover::after {
        opacity: 1; }

.error {
  display: grid;
  grid-template-columns: 1fr 50vw 1fr;
  grid-template-rows: 1fr min-content min-content .5fr;
  height: 100vh; }
  .error .title {
    grid-row: 2;
    grid-column: 2; }
  .error .description {
    grid-row: 3;
    grid-column: 2; }

@media only screen and (max-device-width: 1024px) {
  .job .line {
    display: none; }
  .job .job-title,
  .job .job-description,
  .job .company-name {
    grid-column: 1/5;
    margin-right: 0;
    margin-left: 5rem; } }
@media only screen and (min-device-width: 350px) and (max-device-width: 992px) {
  p,
  .circuled,
  .underlined {
    font-size: 1.2rem; }

  h1 {
    font-size: 2.2rem; }

  h2 {
    font-size: 1.7rem; }

  .mobile-off {
    display: none; }

  .mobile-on {
    display: block; }

  .side-nav {
    display: none; }

  .story-end .paperplane {
    display: none; }

  .currliculum {
    flex-direction: column-reverse; }

  .nav-wrapper {
    grid-template-rows: auto;
    grid-template-columns: 1fr max-content 1fr;
    padding-left: 0;
    padding-right: 0; }

  .portfolio p {
    text-align: center; }

  .hero .hero-title {
    font-size: 1.75rem; }
    .hero .hero-title::after {
      right: -2rem; }

  .slide-section {
    height: 400px;
    margin-bottom: 5em; }
    .slide-section .page {
      width: 60vw; }
      .slide-section .page .button {
        display: none; }
    .slide-section .page[data-pos-x="left"] {
      left: -15vw; }
    .slide-section .page[data-pos-x="center"] {
      left: 20vw; }
    .slide-section .page[data-pos-x="right"] {
      left: 115vw; }

  	 /* .slide-section{
  		  margin-bottom: 2em;
  		  .page[data-pos-x="left"]{
  			  left: -25vw;
  		  }
            .page[data-pos-x="center"]{
  			  left: 10vw;
  		  }
  		  .page[data-pos-x="right"]{
  			  left: 125vw;
  		  }
  	  }*/
  .job, .story-start, .story-end {
    min-height: 100vh;
    grid-template-rows: 1fr 50px min-content auto min-content 1fr; }

  .interested .glass-wrapper {
    padding: 1.5em 2em; } }
@media only screen and (min-device-width: 350px) and (max-device-width: 992px) and (orientation: portrait) {
  .hero {
    grid-template-columns: minmax(10vw, 0.5fr) minmax(300px, 900px) minmax(10vw, 1fr);
    grid-template-areas: ". title ." ". image ." ". text ."; }
    .hero .hero-title {
      font-size: 1.725rem; }
      .hero .hero-title::after {
        grid-column: 2;
        right: .5rem;
        left: -2rem; }
    .hero .picture {
      display: none;
      width: 75vw;
      height: 90vw;
      margin: 5em auto 0; }
      .hero .picture img {
        width: 100%;
        height: 100%; }

  .slide-section {
    height: 300px; }

  .job, .story-start, .story-end {
    grid-template-columns: 1fr 90vw 1fr; }
    .job .job-title, .job.left .job-title,
    .job .job-description, .job.left .job-description,
    .job .company-name, .job.left .company-name,
    .job .story-title,
    .job .story-subtitle, .story-start .job-title, .story-start.left .job-title,
    .story-start .job-description, .story-start.left .job-description,
    .story-start .company-name, .story-start.left .company-name,
    .story-start .story-title,
    .story-start .story-subtitle, .story-end .job-title, .story-end.left .job-title,
    .story-end .job-description, .story-end.left .job-description,
    .story-end .company-name, .story-end.left .company-name,
    .story-end .story-title,
    .story-end .story-subtitle {
      grid-column: 2;
      margin-right: 0;
      margin-left: 0; }
    .job .story-title, .story-start .story-title, .story-end .story-title {
      white-space: normal; }

  .interested .line {
    display: none; }
  .interested .glass-wrapper {
    padding: 3em 2em; }
    .interested .glass-wrapper .label {
      grid-column: 1 / span 2; }
    .interested .glass-wrapper .input {
      max-width: 40vw;
      grid-column: 3; }
    .interested .glass-wrapper .button {
      margin: 0; }
    .interested .glass-wrapper .button.needWebsite, .interested .glass-wrapper .button.wantHire {
      grid-column: 1 / span 3;
      justify-self: center; }
    .interested .glass-wrapper .button.wantHire {
      grid-row: 4; }
    .interested .glass-wrapper h1 {
      font-size: 5rem; }
    .interested .glass-wrapper .respond {
      grid-column: 1 / span 2;
      font-size: 3rem; }

  .error {
    grid-template-columns: 1fr 80vw 1fr;
    grid-template-rows: .5fr min-content min-content 1fr; }
    .error .title {
      font-size: 1.75rem; } }
