/*
 * Modern CSS Reset
 * @link https://github.com/hankchizljaw/modern-css-reset
*/

/* Box sizing rules */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Remove default margin */
body,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}

p,
li,
h1,
h2,
h3,
h4 {
  /* Help prevent overflow of long words/names/URLs */
  word-break: break-word;

  /* Optional, not supported for all languages */
  /* hyphens: auto; */
}

html,
body {
  overflow-x: hidden;
}

html {
  scroll-behavior: smooth;
}

/* Set core body defaults */
body {
  min-height: 100dvh;
  font-family: sans-serif;
  font-size: 100%;
  line-height: 1.5;
  text-rendering: optimizeSpeed;
}

/* Make images easier to work with */
img {
  display: block;
  max-inline-size: 100%;
}

/* Inherit fonts for inputs and buttons */
input,
button,
textarea,
select {
  font: inherit;
}

/* Remove all animations and transitions for people that prefer not to see them */
@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }

  html {
    scroll-behavior: initial;
  }
}

:root {
  --inline-space: 1ch;
  --inline-space-half: calc(var(--inline-space) / 2);
  --inline-space-double: calc(var(--inline-space) * 2);

  --block-space: 1rem;
  --block-space-half: calc(var(--block-space) / 2);
  --block-space-double: calc(var(--block-space) * 2);
}
 
@font-face {
  font-family: "alpina";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/GT-Alpina-Standard-Regular.woff");
}

@font-face {
  font-family: "alpina";
  font-style: bold;
  font-weight: 700;
  src: url("../fonts/GT-Alpina-Standard-Bold.woff");
}

@font-face {
  font-family: "alpina";
  font-style: italic;
  font-weight: 500;
  src: url("../fonts/GT-Alpina-Standard-Regular-Italic.woff");
}

@font-face {
  font-family: "alpina";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/GT-Alpina-Standard-Regular.woff");
}

@font-face {
  font-family: "pressura";
  font-style: normal;
  font-weight: 500;
  src: url("../fonts/GT-Pressura-Standard-Text.woff");
}

@font-face {
  font-family: "pressura";
  font-style: bold;
  font-weight: 700;
  src: url("../fonts/GT-Pressura-Standard-Bold.woff");
}

html {
  background-color: #f2eee2;
}

main.resume {
  padding-top: 3rem;
  font-family: 'alpina';
  max-width: 88ch;
  width: 100%;
  margin: 0 auto;

  h1, h2, h3, h4 {
    font-family: 'pressura';
  }
  
  h1 {
    font-size: 2rem;
  }
  
  h2 {
    font-weight: bold;
    margin: var(--block-space) var(--inline-space);
    margin-top: 0;
    padding-top: var(--block-space);
    border-bottom: 1px solid #999;
    font-size: 1.6rem;
  }
  
  h3, h4 {
    font-size: 1.2rem;
  }
  
  h4 {
    background-color: #d9e4de;
  }
  
  p {
    margin: 0;
    font-size: 1.2rem;
  }
  
  header {
    text-align: center;
    margin-bottom: var(--block-space);
    font-family: 'pressura';
  }
  
  section p {
    padding: var(--block-space-half) var(--inline-space-double);
    margin-bottom: var(--block-space);
    font-weight: 500;
  }
  
  section h3, section h4 {
    padding: 0 var(--inline-space);
  }
  
  section h4 {
    font-weight: 500;
  }
  
  section.print {
    text-align: center;
  }
}

@media print {
  @page { size: auto;  margin: 2rem; }
  main.resume {
    padding-top: .5rem;
  }

  section.print {
    display: none;
  }

  h1 {
    font-size: 1.2rem;
  }

  h2, h3, h4 {
    font-size: 1rem;
  }

  p {
    font-size: .8rem;
    line-height: 1.2rem;
  }
}
