.hero {
  display: grid;
  position: relative;
  align-content: start;
  justify-content: start;

  height: auto;
  min-height: 30rem;
  max-height: 100dvh;

  padding: 2rem 1rem 0 1rem;
  overflow-x: hidden;
  overflow-y: clip;
}

.hero__heading {
  line-height: 3.75rem;
  max-width: 36rem;
}

.hero__subheading {
  margin: 0;
  padding-bottom: 0.75rem;

  font-size: 1.25rem;
  color: var(--color-text);
}

.hero__heading,
.hero__subheading {
  text-shadow: 0 0 5px #fff;
  backdrop-filter: blur(2px);
}

.hero__heading+.hero__subheading {
  padding-top: 1.25rem;
}

.hero__bg {
  position: absolute;
  inset: 0;
  z-index: -1000;
  scale: 1.2;

  background-size: 100vmax;
  background-position-y: 50%;
  background-repeat: no-repeat;
  filter: blur(5px) sepia(60%);
}

.hero__bg::after {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  background-color: white;
  content: "";
  opacity: 40%;
}

.hero__bg--home {
  background-image: url("https://images.unsplash.com/photo-1567583789793-87f44f80ab61?fm=jpg&amp;q=60&amp;w=3000&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D");
}

.hero__bg--about {
  background-image: url("https://images.unsplash.com/photo-1575970141569-5206ad7a81b5?fm=jpg&amp;q=60&amp;w=3000&amp;ixlib=rb-4.1.0&amp;ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D");
}

/* Hero effects */
.circle {
  aspect-ratio: 1/1;
  transform: translateX(-50%) translateY(-50%);
  border-radius: 100%;

  background-color: var(--color-primary);
}

/* Design and snippet credit: https://jsbin.com/hotugu/edit?html,css,output */
/* START */
.squiggly {
  position: absolute;
  background: radial-gradient(ellipse, transparent, transparent 7px, var(--color-secondary) 7px, var(--color-secondary) 10px, transparent 11px);
  background-size: 36px 40px;
  width: 200px;
  height: 20px;
}

.squiggly-bottom {
  top: 20px;
  left: 18px;
  background-position: 0px -20px;
}

/* END */

.effect {
  position: absolute;
  inset: 0;
  opacity: 70%;
  z-index: -1000;
}

.effect__atom,
.effect__subatom,
.effect__particle,
.effect__ray-path {
  position: inherit;
}

.effect__atom--nucleus {
  left: 366px;
  bottom: 7px;

  width: 10rem;
}

.effect__subatom--neutron {
  left: -17%;
  top: 22%;
  height: 40px;
  rotate: 190deg;
}

.effect__subatom--beta {
  left: -90%;
  bottom: -40%;
  height: 40px;
  rotate: -30deg;
}

.effect__particle {
  left: 0.2rem;
  top: 50%;

  width: 1rem;
}

.effect__ray-path {
  width: 10rem;
  height: 40px;

  overflow: hidden;
}

.effect__ray-path--xray {
  left: 100%;
  top: -10%;
  width: inherit;
  rotate: -20deg;
}

.effect__ray-path--gamma {
  left: -40%;
  top: -65%;
  width: inherit;
  rotate: 70deg;
}
