/**
* Reset
**/

*, *:before, *:after {
  box-sizing: border-box;
}

/**
* Variables
**/

:root {
  --metric-rhythm: 2rem;
  --metric-interaction-padding: 0.6rem 0.6rem;
}

/**
* Base
**/

body {
  height: 100vh;
  font-family: 'Josefin Sans', sans-serif;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: 65% 35%;
  grid-template-areas:
    "header side-image"
    "main side-image"
    "main side-image"
    "footer side-image";
  background-color: hsla(100, 20% , 70%);
  background-size: 100% 100%;
}

/**
* Utilities
**/

.visually-hidden {
  border: 0;
  clip: rect(0 0 0 0);
  height: auto;
  margin: 0;
  overflow: hidden;
  padding: 0;
  position: absolute;
  width: 1px;
  white-space: nowrap;
}

.flow {
  --flow-space: var(--metric-rhythm);
}

.flow > * + * {
  margin-top: 1em;
  margin-top: var(--flow-space);
}

/**
* Header
**/

header {
  grid-area: header;
  height: 100px;
  padding-top: 3rem;
  padding-left: 10rem;
}

/**
* Side
**/

.side-image {
  grid-area: side-image;
  background-image: url("../img/coming_soon_image.jpg");
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center; 
}

/**
* Main
**/

.main {
  grid-area: main;
  max-width: 800px;
  padding-left: 10rem;
}

h2 {
  font-size: 3.25rem;
  font-weight: 400;
  letter-spacing: 0.3em;
  text-transform: uppercase;
  word-spacing: 100vw;
  line-height: 1.1em;
}

h2 .heading--light {
  font-weight: 300;
  color: hsl(218, 12%, 91%);
  letter-spacing: 0.33em;
}

.main p, a {
  font-family: "Georgia", serif;
  color:  hsl(218, 12%, 91%);
  font-size: 1.25rem;
  line-height: 1em;
  width: 49ch;
}

footer {
  grid-area: footer;
  display: flex;
  padding-left: 10rem;
  font-family: 'Garamond', serif
  /*justify-content: center;*/
}

footer a {
  color: hsl(218, 12%, 91%);
  font-size: 1.5rem;
}

img {
  opacity: 1;
}

/**
* Media Query
**/


@media(max-width: 1000px) {
  /*@media(max-aspect-ratio: 5/4) {  */
  body {
    grid-template-columns: 100%;
    grid-template-areas:
      "header"
      "side-image"
      "main"
      "footer";
  }
  
  .side-image {
    min-height: 30rem;
    width: 100vw;
    background-image: url("../img/coming_soon_image.jpg");
  }
  
  .main, header, footer {
    padding: 2rem;
    width: 100vw;
    margin: 0 auto;
  }
  
  .main h2, .main p {
    text-align: left;
  }
  
  .main h2 {
    font-size: 3rem;
  }
}
