@font-face {
  font-family: FiraMono;
  src: url('FiraMono-Regular.ttf');
}

@font-face {
  font-family: FiraMono;
  font-weight: bold;
  src: url('FiraMono-Bold.ttf');
}



.row {
  display: flex;
  height: 100vh;
  flex-grow: 1;
/*  background-color: pink;*/
}

.column {
  flex: 50%;
  container-type: inline-size;
}

body {
  font-family: FiraMono, monospace;
  background-color: #f6f6f6;
  color: #444444;
  animation: fadeInAnimation ease 2.3s;
  animation-iteration-count: 1;
  animation-fill-mode: forwards;
}

@keyframes fadeInAnimation {
    0% {
        opacity: 0;
    }
    100% {
        opacity: 1;
    }
}

.greeting {
  font-size: 10cqw;
  font-weight: bold;
  margin: auto;
  padding-right: 2cqw;
  text-align: right;
/*  background-color: red;*/
}

.face {
  height:100cqh;
/*  background-color: lightblue;*/
  font-size: 1cqh;
  line-height: 1.2cqh;
  letter-spacing: 0.0cqh;
  white-space: pre;
  overflow: hidden;
}

.face_image {
  position: absolute;
  height:100cqh;
  clip: rect(auto, 42cqh, auto, auto);
}

.personal_statement {
  max-width: 80rem;
  font-size: 2rem;
  font-weight: bold;
  margin: auto;
  margin-top: 8rem;
  margin-bottom: 8rem;
}

.container {
  max-width: 80rem;
  font-size: 1.4rem;
  margin: auto;
}

.pitch {
  margin: auto;
  margin-top: 4cqw;
  font-size: 4cqw;
  font-weight: bold;
  text-align: center;
}

.job {
  display: flex;
  gap: 3rem;
  margin-bottom: 7rem;
}

.job_summary {
  flex: 35%;
  flex-direction: column;
  display: flex;
}

.job_details {
  flex: 65%;
}

h2 {
  text-align: center;
  margin-bottom: 2rem;
}

p {
  margin-top: 0;
  margin-bottom: 2rem;
}

.oomph {
  font-weight: bold;
  font-size: 3rem;
}

.dates {
  font-size: 0.9rem;
}


.footer {
  text-align: center;
}

.inline_emphasis {
  font-weight: bold;
}

@media only screen and (orientation: portrait) {
  body {
  }
  .row {
    flex-direction: column;
    height: auto;
  }
  .greeting {
    flex: 0%;
    margin-top: 5cqh;
    padding-right: 0;
    width: 100%;
    text-align: center;
    font-size: 8cqh;
  }
  .face {
    flex: 100%;
    width: 100cqw;
    font-size: 1.3cqw;
    line-height: 1.57cqw;
    letter-spacing: 0.0cqw;
    white-space: pre;
    overflow: hidden;
  }
  .face_image {
    position: absolute;
    width: 100%;
    height: auto;
    clip: rect(auto, 56cqw, auto, auto);
  }
  .job {
    flex-direction: column;
  }
  .container {
    font-size: 1.8rem;
    margin: auto;
    margin-left: 2rem;
    margin-right: 2rem;
  }
  .personal_statement {
    font-size: 2.2rem;
    font-weight: bold;
    margin-top: 8rem;
    margin-bottom: 8rem;
    margin-left: 2rem;
    margin-right: 2rem;
  }
  .dates {
    font-size: 1.2rem;
  }
}

@media print{
  @page {
    size: A4 portrait;
  }
  
  .row {
    display: flex;
    height: 20vh;
    flex-grow: 1;
  /*  background-color: pink;*/
  }

  .column {
    container-type: inline-size;
  }

  body {
    font-family: FiraMono, monospace;
    color: black;
    background-color: white;
    opacity: 1;
    animation: none !important;
  }

  .greeting {
    flex: 60%;
    font-size: 7cqw;
    font-weight: bold;
    margin: auto;
    padding-right: 2cqw;
    text-align: right;
  /*  background-color: red;*/
  }

  .face {
    flex: 40%;
    height: 20cqh;
    font-size: 0.35cqh;
    line-height: 0.235cqh;
    letter-spacing: -0.091cqh;
    white-space: pre;
    padding-left: 2cqw;
    /*overflow: hidden;*/
  }

  .face_image {
    position: absolute;
    height:20cqh;
    clip: rect(auto, 8cqh, auto, auto);
  }

  .personal_statement {
    max-width: 60rem;
    font-size: 1rem;
    font-weight: bold;
    margin: auto;
    margin-top: 2rem;
    margin-bottom: 2rem;
  }

  .container {
    width: 100%;
    font-size: 0.8rem;
    margin: auto;
  }

  .pitch {
    margin: auto;
    margin-top: 4cqw;
    font-size: 4cqw;
    font-weight: bold;
    text-align: center;
  }

  .job {
    display: flex;
    gap: 2rem;
    margin-bottom: 4rem;
  }

  .job_summary {
    flex: 35%;
    flex-direction: column;
    display: flex;
  }

  .job_details {
    flex: 65%;
  }

  h2 {
    text-align: center;
    margin-bottom: 2rem;
  }

  p {
    margin-top: 0;
    margin-bottom: 2rem;
  }

  .oomph {
    font-weight: bold;
    font-size: 1.5rem;
  }

  .dates {
    font-size: 0.6rem;
  }

  .footer {
    text-align: center;
  }

  .inline_emphasis {
    font-weight: bold;
  }
}

