* {
  margin: 0;
  padding: 0;
}

html {
  box-sizing: border-box;
  color: navy;
}

body {
  font-family: "Roboto", sans-serif;
  line-height: 1.5;
  background-color: #fff;
}

h1 {
  font-size: 140%;
  text-align: center;
  margin-top: 1em;
  margin-bottom: 0.5em;
}

label {
  float: left;
  /* display: block; */
  padding-left: 1em;
  width: 7em;
  text-align: right;
  /* padding-bottom: 0.5em; */
}

input {
  /* float: left; */
  margin-left: 1em;
  color: navy;
  border: 2px solid navy;
}

#date_error {
  color: red;
  margin-top: 0.3em;
  margin-left: 1em;
}

/* input[type=button] {
  margin-left: 9.9em;
  margin-top: 0.5em;
  margin-bottom: 1em;
  background-color: navy;
  color: #fff;
  padding: .5em;
  border-radius: .5em;
  border: none;
} */

#date_button {
  margin-left: 1em;
  margin-top: 0.5em;
  margin-bottom: 1em;
  background-color: navy;
  color: #fff;
  padding: 0.5em;
  border-radius: 0.5em;
  border: none;
}

/* input[type=button]:active {
  transform: scale(.89);
} */

#date_button:active {
  transform: scale(0.9);
  opacity: 0.6;
}

/* input[type=button]:focus {
  outline: none;
} */

/* * figcaption */

figure img {
  width: 100%;
  clear: both;
}

figcaption {
  display: flex;
  flex-direction: column;
}

figure figcaption #title {
  text-align: center;
  margin-bottom: 0.5em;
  order: 2;
}

figure figcaption #copyright {
  color: #000;
  order: 1;
  text-align: right;
  margin-right: 0.6em;
  font-size: 60%;
}

/* * explanation div */
#explanation_div p {
  text-indent: 1.5em;
  margin: 0 1em 1em;
  color: #000;
}

/* * footer */
footer {
  background-color: rgb(0, 0, 128);
  color: #fff;
}

footer p {
  text-align: right;
  padding: 0.5em 1em 0.5em 0
}

/* media queries */
@media only screen and (min-width: 481px) {
  figure img {
    width: 90%;
    display: block;
    margin-left: auto;
    margin-right: auto;
  }

  #copyright {
    padding-right: 4em;
  }
}

@media only screen and (min-width: 769px) {
  #date_container {
    display: flex;
  }

  #date_button {
    margin-right: 0;
    margin-left: 1em;
  }

  h1 {
    padding-top: 1em;
    font-size: 200%;
  }

  body {
    width: 769px;
    margin: 2em auto;
    box-shadow: 4px 4px 7px rgba(0, 0, 128, 0.2);
    border-radius: 3px;
  }

  footer {
    border-bottom-left-radius: 3px;
    border-bottom-right-radius: 3px;
  }

  html {
    background-color: #efefef;
  }

  #explanation_div p {
    padding-bottom: 1.5em;
  }
}
