/* montserrat-regular - latin */
/* fira-sans-regular - latin */
@font-face {
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/fira-sans-v16-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/fira-sans-v16-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/fira-sans-v16-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/fira-sans-v16-latin-regular.woff') format('woff'), /* Modern Browsers */
         url('/fonts/fira-sans-v16-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/fira-sans-v16-latin-regular.svg#FiraSans') format('svg'); /* Legacy iOS */
  }
  /* fira-sans-italic - latin */
  @font-face {
    font-family: 'Fira Sans';
    font-style: italic;
    font-weight: 400;
    src: url('/fonts/fira-sans-v16-latin-italic.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/fira-sans-v16-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/fira-sans-v16-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/fira-sans-v16-latin-italic.woff') format('woff'), /* Modern Browsers */
         url('/fonts/fira-sans-v16-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/fira-sans-v16-latin-italic.svg#FiraSans') format('svg'); /* Legacy iOS */
  }
  /* fira-sans-700 - latin */
  @font-face {
    font-family: 'Fira Sans';
    font-style: normal;
    font-weight: 700;
    src: url('/fonts/fira-sans-v16-latin-700.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/fira-sans-v16-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/fira-sans-v16-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/fira-sans-v16-latin-700.woff') format('woff'), /* Modern Browsers */
         url('/fonts/fira-sans-v16-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/fira-sans-v16-latin-700.svg#FiraSans') format('svg'); /* Legacy iOS */
  }

@font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 400;
    src: url('/fonts/montserrat-v25-latin-regular.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/montserrat-v25-latin-regular.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/montserrat-v25-latin-regular.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/montserrat-v25-latin-regular.woff') format('woff'), /* Modern Browsers */
         url('/fonts/montserrat-v25-latin-regular.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/montserrat-v25-latin-regular.svg#Montserrat') format('svg'); /* Legacy iOS */
  }
  /* montserrat-700 - latin */
  @font-face {
    font-family: 'Montserrat';
    font-style: normal;
    font-weight: 700;
    src: url('/fonts/montserrat-v25-latin-700.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/montserrat-v25-latin-700.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/montserrat-v25-latin-700.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/montserrat-v25-latin-700.woff') format('woff'), /* Modern Browsers */
         url('/fonts/montserrat-v25-latin-700.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/montserrat-v25-latin-700.svg#Montserrat') format('svg'); /* Legacy iOS */
  }
  /* montserrat-italic - latin */
  @font-face {
    font-family: 'Montserrat';
    font-style: italic;
    font-weight: 400;
    src: url('/fonts/montserrat-v25-latin-italic.eot'); /* IE9 Compat Modes */
    src: local(''),
         url('/fonts/montserrat-v25-latin-italic.eot?#iefix') format('embedded-opentype'), /* IE6-IE8 */
         url('/fonts/montserrat-v25-latin-italic.woff2') format('woff2'), /* Super Modern Browsers */
         url('/fonts/montserrat-v25-latin-italic.woff') format('woff'), /* Modern Browsers */
         url('/fonts/montserrat-v25-latin-italic.ttf') format('truetype'), /* Safari, Android, iOS */
         url('/fonts/montserrat-v25-latin-italic.svg#Montserrat') format('svg'); /* Legacy iOS */
  }

:root {
    --color-light: #E4E4DA;
    --color-highlight: #FF4545;
    --color-dark: #2D2D2D;
}

:focus {
    outline: none;
}

html,
body {
    overflow-x: hidden;
}

code {
    font-family: menlo, inconsolata, monospace;
    font-size: calc(1em - 2px);
    color: #555;
    background-color: #f0f0f0;
    padding: 0.2em 0.4em;
    border-radius: 2px;
}

* {
    box-sizing: border-box;
}

body {
    background-color: var(--color-light);
    color: var(--color-dark);
    font-family: 'Fira Sans', sans-serif;
    line-height: 1.9;
    font-size: 18px;
    overflow-x: hidden;
    margin: 0;
    padding: 0;
}

main,
footer {
    position: relative;
    max-width: 56rem;
    padding: 2em;
    margin: 0 auto;
    box-sizing: border-box;
    transition: all ease .3s;
}

.intro {
    font-size: 1.4rem;
    line-height: 1.6;
    font-style: italic;
}

a {
    color: var(--color-highlight);
    text-decoration: none;
}

h1,
h2,
h3 {
    font-family: 'Montserrat', sans-serif;
    margin-bottom: .2em;
    /* font-weight: 700; */
    font-weight: 300;
    text-transform: uppercase;
}

h1 {
    font-size: 3em;
    line-height: 1.2em;
}

h2 {
    font-size: 2em;
    line-height: 1.2em;
}

figure picture,
figure img,
figure iframe {
    /* width: 100%; */
    margin: 0;
    padding: 0;
    display: block;
    border-radius: 4px;
}

figure img {
    max-width: 100%;
}

figure {
    max-width: 100%;
    max-height: 100%;
    margin: 30px 0 20px 0;
}

figcaption {
    font-size: .9rem;
    font-style: italic;
    max-width: 85vw;
    line-height: 1.5em;
    padding-top: 1em;
}

iframe {
    border: none;
}

*::-webkit-scrollbar-track {
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, 0.3);
    border-radius: 10px;
    background-color: transparent;
}

*::-webkit-scrollbar {
    width: 8px;
    background-color: transparent;
}

*::-webkit-scrollbar-thumb {
    border-radius: 10px;
    -webkit-box-shadow: inset 0 0 6px rgba(0, 0, 0, .3);
    background-color: var(--color-dark);
    opacity: 0.5;
}

@media screen and (max-width: 720px) {
    html,
    body {
        font-size: 16px;
    }
    h1 {
        font-size: 2.4em;
    }
    h2 {
        font-size: 1.8em;
    }
}

@media (max-width: 580px) {
    html,
    body {
        font-size: 14px;
    }
}