html,
body {
  height: 100%;
  width: 100%;
  margin: 0;
  padding: 0;
}

body {
  font-family: Arial, sans-serif;
  text-align: center;
  background-color: #f2f2f2;
  color: #333;
  border: 0;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
}

header,
footer {
  background-color: #222;
  color: #fff;
  padding: 2.5vh;
}

header {
  margin-bottom: auto;
}

footer {
  margin-top: auto;
}

h1,
h2,
p {
  margin: 0;
}

a {
  color: inherit;
  text-decoration: none;
}

.container {
  margin: 1vh 1vw;
  padding: 2vh;
  background-color: #fff;
  border-radius: 1vw;
  box-shadow: 0 0 1vh rgba(0, 0, 0, 0.1);
  text-align: center;
}

#searchQuery {
  padding: 10px;
  border-radius: 2.5vw;
  border: none;
  outline: none;
  background-color: #f9f9f9;
  width: 30vw;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
}

#searchEngineButton,
.quick-link,
input[type="submit"] {
  vertical-align: baseline;
  display: inline-block;
  padding: 10px 15px;
  margin: 5px;
  background-color: black;
  color: #fff;
  max-width: max-content;
  border-radius: 25px;
  text-decoration: none;
  border: none;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.1);
  transition: box-shadow 0.3s ease-in-out;
}

#searchEngineButton:hover,
#searchQuery:focus,
.quick-link:hover,
input[type="submit"]:hover {
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.4);
  transition: box-shadow 0.3s ease-in-out;
}
