/* A fair-stage atmosphere: warm overhead light, soft photo haze and sparse foil. */
.fair-masthead {
  background: linear-gradient(180deg,#fffaf0 0%,#fff4e2 100%);
}
.hero {
  background:
    radial-gradient(ellipse 80% 58% at 51% -8%,rgba(231,119,46,.58),transparent 74%),
    radial-gradient(ellipse 54% 47% at 84% 35%,rgba(133,60,34,.30),transparent 75%),
    radial-gradient(ellipse 58% 48% at 10% 76%,rgba(101,39,29,.22),transparent 77%),
    linear-gradient(180deg,#4a251d 0%,#321d1a 45%,#211516 100%);
}
.hero::before {
  inset: -30px;
  z-index: 0;
  opacity: .13;
  background: url("/assets/families-shopping.jpg") center 43% / cover no-repeat;
  filter: blur(24px) sepia(.9) saturate(1.35);
  transform: scale(1.04);
}
.hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: url("/assets/fair-atmosphere.svg") center top / cover no-repeat;
  opacity: .82;
}
.hero-layout { position: relative; z-index: 1; }

#register {
  isolation: isolate;
  overflow: hidden;
  background:
    radial-gradient(ellipse 58% 47% at 0% 9%,rgba(255,205,91,.43),transparent 77%),
    radial-gradient(ellipse 40% 36% at 89% 4%,rgba(246,190,112,.25),transparent 77%),
    radial-gradient(ellipse 48% 47% at 80% 89%,rgba(255,237,186,.32),transparent 78%),
    linear-gradient(150deg,#fff9ea 0%,#fff3d9 56%,#fffaf1 100%);
}
#register::before { z-index: 2; }
#register::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: url("/assets/fair-atmosphere.svg") center 15% / cover no-repeat;
  opacity: .09;
}
#register .reg-grid { position: relative; z-index: 1; }
@media (max-width:700px) {
  .hero::before { opacity: .10; filter: blur(20px) sepia(.9) saturate(1.25); }
  .hero::after {
    background-image: url("/assets/fair-atmosphere-mobile.svg");
    background-position: center top;
    background-size: 100% 100%;
    opacity: .85;
  }
  #register::after {
    background-image: url("/assets/fair-atmosphere-mobile.svg");
    background-size: 100% 100%;
    opacity: .075;
  }
}
