/* QuincyIL - hub-specific styles.
   The shared core lives in /assets/css/city.css and is loaded
   first; everything below overrides or extends it.
   Regenerate with scripts/build_city_css.py */

/* QuincyIL - hub-specific styles.
   The shared core lives in /assets/css/city.css and is loaded
   first; everything below overrides or extends it.
   Regenerate with scripts/build_city_css.py */

/* QuincyIL - hub-specific styles.
   The shared core lives in /assets/css/city.css and is loaded
   first; everything below overrides or extends it.
   Regenerate with scripts/build_city_css.py */

/* McLeanVA - hub-specific styles.
   The shared core lives in /assets/css/city.css and is loaded
   first; everything below overrides or extends it.
   Regenerate with scripts/build_city_css.py */

/* HERO */
.hero {
  position: relative;
  min-height: 55vh;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
  background: url('../hero.jpg') center/cover no-repeat;
  margin-top: 70px;
}

/* v1s-hero-formats */
/* The hero is the page's largest asset and its LCP element.
   Modern browsers take the AVIF or WebP; anything without
   image-set() keeps the JPEG from the .hero rule above, along
   with its position, sizing and repeat. Regenerate with
   scripts/optimize_heroes.py. */
.hero {
  background-image: image-set(
    url('../hero.avif') type('image/avif'),
    url('../hero.webp') type('image/webp'),
    url('../hero.jpg') type('image/jpeg'));
}
