/* Category text sits directly on the scene, with no button panel. */
#alform-home .ah-catalog > .ah-section-heading { border-bottom: 0; }
#alform-home .ah-directions-title { padding: 48px 24px 24px; border: 0; }
#alform-home .ah-special {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 32px;
  padding: 0 24px 64px;
  border: 0;
  background: #fff;
}
#alform-home .ah-special > a {
  display: grid;
  grid-template-columns: minmax(120px, 36%) minmax(0, 1fr);
  align-items: center;
  gap: 24px;
  height: auto;
  min-height: 0;
  min-width: 0;
  border: 0;
}
#alform-home .ah-special > a img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 1;
  object-fit: contain;
  object-position: center;
  padding: 0;
  background: transparent;
  transform: none;
}
#alform-home .ah-special > a > div { padding: 0; gap: 16px; width: 100%; }
#alform-home .ah-special h2 { font-size: 20px; line-height: 1.3; }
#home-types {
  gap: 32px;
  padding: 0 24px 32px;
  background: #fff;
}
#home-types .ah-product {
  position: relative;
  display: block;
  min-width: 0;
  border: 0;
}
#home-types .ah-product__label {
  position: absolute;
  z-index: 2;
  left: 20px;
  right: 20px;
  bottom: 20px;
  height: auto;
  min-height: 0;
  padding: 0;
  gap: 10px;
  align-items: flex-end;
  text-align: left;
  color: #fff;
  background: transparent;
  border: 0;
  text-shadow: 0 1px 8px rgba(0, 0, 0, .25);
}
#home-types .ah-product__label h3 {
  flex: 1;
  margin: 0;
  text-align: left;
  color: #fff;
  font-size: 20px;
  font-weight: 400;
  line-height: 1.3;
}
#home-types .ah-product__label > span { color: #fff; flex-shrink: 0; }
#home-types .ah-product:focus-visible { outline: 3px solid #6853d8; outline-offset: 4px; }
#home-types .ah-product__image { position: relative; overflow: hidden; isolation: isolate; }
#home-types .ah-product__image img {
  filter: saturate(.08);
  transition: filter 360ms cubic-bezier(.16, 1, .3, 1), transform 360ms cubic-bezier(.16, 1, .3, 1);
}
#home-types .ah-product__image::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background: linear-gradient(to top, rgba(8, 7, 14, .78), rgba(8, 7, 14, .34) 25%, transparent 60%);
}
#home-types .ah-product__image::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  background: #000;
  opacity: .20;
  pointer-events: none;
  transition: opacity 360ms cubic-bezier(.16, 1, .3, 1);
}
@media (hover: hover) and (pointer: fine) {
  #home-types .ah-product:hover .ah-product__image::after { opacity: .08; }
  #home-types .ah-product:hover .ah-product__image img { filter: saturate(1); }
}
#home-types .ah-product:focus-visible .ah-product__image::after { opacity: .08; }
#home-types .ah-product:focus-visible .ah-product__image img { filter: saturate(1); }
@media (prefers-reduced-motion: reduce) {
  #home-types .ah-product__image::after { transition: none; }
  #home-types .ah-product__image img { transition: none; }
}
@media (max-width: 767px) {
  #alform-home .ah-directions-title { padding: 36px 16px 24px; }
  #alform-home .ah-special { grid-template-columns: 1fr; gap: 32px; padding: 0 16px 48px; }
  #alform-home .ah-special > a { grid-template-columns: minmax(96px, 32%) minmax(0, 1fr); gap: 20px; }
  #alform-home .ah-special h2 { font-size: 18px; }
  #home-types { gap: 20px; padding: 0 16px 20px; }
  #home-types .ah-product__label { left: 12px; right: 12px; bottom: 14px; padding: 0; gap: 6px; min-height: 0; }
  #home-types .ah-product__label h3 { font-size: 16px; }
  #home-types .ah-product__label svg { width: 16px; height: 16px; }
}
