@import url("https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,100..900;1,100..900&display=swap");

:root {
  --Blue: hsl(223, 87%, 63%);

  --Pale-Blue: hsl(223, 100%, 88%);
  --Light-Red: hsl(354, 100%, 66%);

  --Gray: hsl(0, 0%, 59%);
  --Very-Dark-Blue: hsl(209, 33%, 12%);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}

body {
  width: 100%;
  min-height: 100vh;
  font-family: "Libre Franklin", Arial, Helvetica, sans-serif;
  background-color: white;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: center;
  font-size: 1.18em;

}

main {
  max-width: 100%;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

#image-logo img {
  display: block;
  margin: 25px auto 0px;
  width: 80%;
}

h1 {
  color: var(--Gray);
  font-weight: 300;
  margin: 10px 0px 5px;
  text-align: center;
}

h1 span {
  font-weight: 700;
  color: var(--Very-Dark-Blue);
}

h5 {
  color: var(--Very-Dark-Blue);
  font-weight: 400;
}

p {
  color: var(--Gray);
}

#image-dashboard {
  margin: 50px 0px;

}

#container-search {
  width: 43%;
}

#container-search form {
  display: flex;
  gap: 10px;
  margin-top: 25px;
  width: 100%;
}

#container-input-email {
  width: 80%;
}

input[type="email"] {
  border: 1px solid var(--Gray);
  padding: 10px;
  padding-left: 15px;
  border-radius: 20px;
  width: 100%;
}

input[type="email"]::placeholder {
  color: var(--Gray);
}

#error-message {
  position: absolute;
  font-size: 0.65em;
  font-style: italic;
  margin: 4px 0px 0px 10px;
  color: var(--Light-Red);
}

input[type="submit"] {
  border: none;
  background-color: var(--Blue);
  color: white;
  font-weight: bold;
  font-size: 0.95;
  padding: 12px 30px;
  border-radius: 20px;
  box-shadow: 0px 3px 10px var(--Pale-Blue);
  transition: all .2s ease;
  cursor: pointer;
}

input[type="submit"]:hover {
  transform: scale(0.98);
}

input[type="submit"]:active {
  transform: scale(0.96);
}

#image-dashboard img {
  width: 41%;
  display: block;
  margin: 15px auto;
}

i {
  font-size: 0.65em;
  color: var(--Blue);
  margin-top: 1px;  
  transition: all .2s ease;
}

#container-social {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;

}

#more-informations p {
  font-size: 0.65em;
  margin-top: 15px;
}

.box-icon {
  display: flex;
  justify-content: center;
  align-items: center;
  border: 1px solid var(--Gray);
  border-radius: 50%;
  width: 22px;
  height: 22px;
  transition: all .2s ease;
}

.box-icon:hover {
  background-color: var(--Blue);
}

.box-icon:hover i {
  color: white;
}

input[type="email"].error {
  border: 1px solid var(--Light-Red);
}

a {
  position: relative;
  text-decoration: none;
  color: white;
  font-weight: bold;
}

footer {
  width: 100%;
  padding: 3px;
  display: flex;
  margin-top: 20px;
  justify-content: center;
  align-items: center;
  gap: 5px;
  background-color: var(--Blue);
}

footer a::before {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  transition: all 0.3s ease;
  background-color: white;
  bottom: 0;
  left: 50%;
}

footer a:hover::before {
  width: 50%;
}

footer a::after {
  content: "";
  position: absolute;
  width: 0;
  height: 1px;
  transition: all 0.3s ease;
  background-color: white;
  bottom: 0;
  right: 50%;
}

footer a:hover::after {
  width: 50%;
}

footer p {
  color: white;
  font-size: 11px; text-align: center;
}