/* Experimental Bloom brand elements — desktop and mobile. */
.hero { position:relative; isolation:isolate; }
.hero-bloom-background { position:absolute; inset:0; z-index:0; pointer-events:none; overflow:hidden; }
.hero-bloom-background img {
  position:absolute;
  width:clamp(420px, 49vw, 850px); height:auto;
  top:49%; left:29%;
  transform:translate(-50%,-50%);
  opacity:.16;
  filter:blur(.45px);
}
.hero > :not(.hero-bloom-background) { position:relative; z-index:1; }
.about-section { position:relative; isolation:isolate; }
.about-section::before {
  content:""; position:absolute; inset:0; z-index:0; pointer-events:none;
  background-image:url("assets/approved-bloom-emblem.svg");
  background-repeat:repeat; background-size:210px 190px;
  background-position:center top;
  opacity:.09;
}
.about-section > * { position:relative; z-index:1; }
.heading-star {
  display:inline-block;
  width:.22em;
  height:.22em;
  margin-inline-start:.065em;
  vertical-align:.03em;
  background:url("assets/brand-star.svg") center / contain no-repeat;
  flex:none;
}
#hero-heading .heading-star { width:.15em; height:.15em; margin-inline-start:.045em; vertical-align:.13em; }
#about-heading .heading-star { width:.18em; height:.18em; vertical-align:.12em; }
@media(max-width:780px) {
  .hero-bloom-background img { width:92vw; max-width:650px; top:24%; left:48%; opacity:.095; }
  .about-section::before { background-size:155px 140px; opacity:.085; }
}
@media(max-width:520px) {
  .hero-bloom-background img { width:112vw; top:22%; left:47%; opacity:.075; }
  .about-section::before { background-size:125px 113px; opacity:.075; }
}
