header { }
header .logo-link,
header .logo-link:hover {
  --color: var(--primary);
  --text-decoration: none;
}
.logo {
  display: block;
  margin: 0 auto;
  margin-bottom: 0px;
  /* Order it below the title */
  position: relative;
  z-index: -1;

  -webkit-filter: drop-shadow(0px 2px 3px rgba(0,0,0,0.2));
  filter: drop-shadow(0px 4px 10px rgba(0,0,0,0.1))
          drop-shadow(0px 2px 3px rgba(0,0,0,0.2));
}
.title { text-align: center; }
.title h1 { font-family: Arial, sans-serif; font-size: 2rem; }
.title h2 { font-family: Arial, sans-serif; font-size: 1.4rem; }

header nav { display: block; } /* was 'flex', but nested flex doesn't center well */
header nav ul { flex-flow: wrap; justify-content: center; }

#gallery .grid { grid-template-columns: 1fr 1fr; }
@media (min-width: 992px) {
  #gallery .grid { grid-template-columns: 1fr 1fr 1fr; }
}

.modal.preview article {
  width: auto;
  max-width: 98%;
}

.box {
  padding: 1rem;
  border-radius: 1rem;
}
.box p { font-weight: bold; margin: 0.5rem 0;}
.success { background-color: lime; }
.error { background-color: red; }
.error p { color: white; }

footer {
  background-color: lightgray;
}
