.site-header__menu-toggle {
  align-items: center;
  background: transparent;
  border: 1px solid var(--wa-color-ink);
  border-radius: var(--wa-radius-control);
  display: none;
  flex-direction: column;
  gap: 0.25rem;
  height: var(--wa-control-height);
  justify-content: center;
  padding: 0;
  width: var(--wa-control-height);
}

.site-header__menu-toggle span {
  background: currentColor;
  display: block;
  height: 1px;
  transition: transform 180ms var(--wa-ease-out), opacity 120ms linear;
  width: 1.15rem;
}

.site-header.is-menu-open .site-header__menu-toggle span:nth-child(1) {
  transform: translateY(0.3125rem) rotate(45deg);
}

.site-header.is-menu-open .site-header__menu-toggle span:nth-child(2) {
  opacity: 0;
}

.site-header.is-menu-open .site-header__menu-toggle span:nth-child(3) {
  transform: translateY(-0.3125rem) rotate(-45deg);
}

.site-header__track-order,
.site-header__cart {
  align-items: center;
  display: inline-flex;
  gap: 0.4rem;
}

.site-header__track-order {
  font-size: 0.875rem;
  font-weight: 700;
  text-decoration-thickness: 1px;
  white-space: nowrap;
}

.site-header__cart-count {
  align-items: center;
  background: var(--wa-color-action);
  border-radius: 50%;
  color: var(--wa-color-surface);
  display: inline-flex;
  flex: 0 0 1.4rem;
  font-size: 0.72rem;
  height: 1.4rem;
  justify-content: center;
  line-height: 1;
  min-width: 1.4rem;
  padding-inline: 0.2rem;
}

.language-switcher {
  align-items: center;
  display: flex;
  flex: 0 0 auto;
  gap: var(--wa-space-2xs);
}

.language-switcher select,
.language-switcher button {
  background: var(--wa-color-surface);
  border: var(--wa-border);
  border-radius: var(--wa-radius-control);
  color: var(--wa-color-ink);
  min-height: var(--wa-control-height);
}

.language-switcher select {
  max-width: 7rem;
  padding-inline: 0.55rem 1.7rem;
}

.language-switcher button {
  font-size: 0.8rem;
  font-weight: 700;
  padding-inline: 0.65rem;
}

.language-switcher button:hover {
  border-color: var(--wa-color-ink);
}

.content-entry__body input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.content-entry__body select,
.content-entry__body textarea,
.woocommerce-form-track-order input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.wa-inquiry__form input:not([type="hidden"]):not([type="checkbox"]):not([type="radio"]),
.wa-inquiry__form select,
.wa-inquiry__form textarea {
  background: var(--wa-color-surface);
  border: var(--wa-border);
  border-radius: var(--wa-radius-control);
  color: var(--wa-color-ink);
  min-height: var(--wa-control-height);
  padding: 0.7rem 0.8rem;
  width: 100%;
}

.content-entry--policy .content-entry__body {
  display: grid;
  gap: var(--wa-space-m);
}

.content-entry--policy .content-entry__body h2,
.content-entry--policy .content-entry__body h3 {
  margin-block: var(--wa-space-l) 0;
}

.content-entry--policy .content-entry__body h2:first-child,
.content-entry--policy .content-entry__body h3:first-child {
  margin-top: 0;
}

.content-entry--policy .content-entry__body p {
  margin: 0;
}

.woocommerce-form-track-order {
  background: var(--wa-color-surface);
  border: var(--wa-border);
  border-radius: var(--wa-radius-panel);
  display: grid;
  gap: var(--wa-space-m);
  margin-top: var(--wa-space-l);
  padding: var(--wa-space-m);
}

.woocommerce-form-track-order p {
  margin: 0;
}

.woocommerce-form-track-order .form-row {
  display: grid;
  gap: var(--wa-space-2xs);
}

.wa-inquiry__form {
  display: grid;
  gap: var(--wa-space-m);
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: var(--wa-space-l);
}

.wa-inquiry__product,
.wa-inquiry__field--wide,
.wa-inquiry__submit {
  grid-column: 1 / -1;
}

.wa-inquiry__field {
  display: grid;
  gap: var(--wa-space-2xs);
}

.wa-inquiry__field label {
  font-size: 0.875rem;
  font-weight: 700;
}

.wa-inquiry__field-error,
.wa-inquiry__errors {
  color: var(--wa-color-danger);
}

.wa-inquiry__errors {
  border: 1px solid var(--wa-color-danger-line);
  border-radius: var(--wa-radius-panel);
  margin-top: var(--wa-space-m);
  padding: var(--wa-space-s) var(--wa-space-m);
}

.wa-inquiry__success {
  background: var(--wa-color-success-ground);
  border-radius: var(--wa-radius-panel);
  color: var(--wa-color-success-ink);
  margin-top: var(--wa-space-m);
  padding: var(--wa-space-s) var(--wa-space-m);
}

.custom-product-picker {
  background: var(--wa-color-surface);
  border: var(--wa-border);
  border-radius: var(--wa-radius-panel);
  display: grid;
  gap: var(--wa-space-m);
  margin-block: var(--wa-space-l);
  padding: var(--wa-space-m);
}

.custom-product-picker--wide {
  margin-inline: calc(50% - 50vw);
  padding-inline: var(--wa-space-m);
}

.custom-product-picker--wide .custom-product-picker__inner {
  display: grid;
  gap: var(--wa-space-m);
  margin-inline: auto;
  max-width: var(--wa-wide-container);
  width: min(100%, var(--wa-wide-container));
}

.custom-product-picker__carousel {
  align-items: center;
  display: grid;
  gap: var(--wa-space-s);
  grid-template-columns: var(--wa-control-height) minmax(0, 1fr) var(--wa-control-height);
}

.custom-product-picker__intro h2 {
  margin: 0;
}

.custom-product-picker__intro p {
  color: var(--wa-color-muted);
  margin-block: var(--wa-space-xs) 0;
}

.custom-product-picker__viewport {
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  scrollbar-width: thin;
  scroll-snap-type: x mandatory;
}

.custom-product-picker__list {
  display: grid;
  gap: var(--wa-space-m);
  grid-auto-columns: calc((100% - (2 * var(--wa-space-m))) / 3);
  grid-auto-flow: column;
  list-style: none;
  margin: 0;
  padding: 0;
}

.custom-product-picker__list > li {
  scroll-snap-align: start;
}

.custom-product-picker__list a {
  background: var(--wa-color-ground);
  border: 1px solid var(--wa-color-line);
  border-radius: var(--wa-radius-control);
  color: var(--wa-color-ink);
  display: grid;
  gap: var(--wa-space-xs);
  height: 100%;
  overflow: hidden;
  text-decoration: none;
}

.custom-product-picker__list a:hover {
  border-color: var(--wa-color-ink);
}

.custom-product-picker__list img {
  aspect-ratio: 4 / 5;
  background: var(--wa-color-surface);
  object-fit: contain;
  width: 100%;
}

.custom-product-picker__list span {
  font-weight: 750;
  padding: 0 var(--wa-space-s) var(--wa-space-s);
}

.custom-product-picker__general {
  font-weight: 750;
  justify-self: start;
}

.custom-product-picker__control {
  align-items: center;
  background: transparent;
  border: 1px solid var(--wa-color-line);
  border-radius: 50%;
  color: var(--wa-color-ink);
  cursor: pointer;
  display: inline-flex;
  font-size: 1.85rem;
  height: var(--wa-control-height);
  justify-content: center;
  line-height: 1;
  padding: 0;
  width: var(--wa-control-height);
}

.custom-product-picker__control:hover {
  background: var(--wa-color-ink);
  border-color: var(--wa-color-ink);
  color: var(--wa-color-surface);
}

.custom-oem-page__editable {
  border-top: var(--wa-border);
  margin-top: var(--wa-space-xl);
  padding-top: var(--wa-space-l);
}

.wa-inquiry__form button,
.content-entry__body button,
.content-entry__body input[type="submit"] {
  align-items: center;
  background: var(--wa-color-action);
  border: 1px solid var(--wa-color-action);
  border-radius: var(--wa-radius-control);
  color: var(--wa-color-surface);
  display: inline-flex;
  font-weight: 750;
  justify-content: center;
  min-height: var(--wa-control-height);
  padding: 0.65rem 1.1rem;
  width: fit-content;
}

.wa-inquiry__form button:hover,
.content-entry__body button:hover,
.content-entry__body input[type="submit"]:hover {
  background: var(--wa-color-action-active);
  border-color: var(--wa-color-action-active);
}

.home-actions,
.home-chapter__links,
.home-business-band__links {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: var(--wa-space-s);
}

.home-actions {
  margin-top: var(--wa-space-l);
}

.home-action {
  align-items: center;
  border: 1px solid var(--wa-color-ink);
  border-radius: var(--wa-radius-control);
  display: inline-flex;
  font-weight: 750;
  justify-content: center;
  min-height: var(--wa-control-height);
  padding: 0.65rem 1.2rem;
  text-decoration: none;
}

.home-action--primary {
  background: var(--wa-color-action);
  border-color: var(--wa-color-action);
  color: var(--wa-color-surface);
}

.home-action--primary:hover {
  background: var(--wa-color-action-active);
  border-color: var(--wa-color-action-active);
  color: var(--wa-color-surface);
}

.home-action--secondary:hover {
  background: var(--wa-color-ink);
  color: var(--wa-color-surface);
}

.home-editable-modules .wa-home-module {
  border-top: var(--wa-border);
  margin-block: 0;
}

.home-editable-modules .wa-home-module.alignwide,
.home-editable-modules .wa-home-module.alignfull {
  margin-inline: 0;
}

.home-editable-modules .wa-home-module--image-text {
  background: var(--wa-color-surface);
  display: grid;
  gap: var(--wa-space-xl);
  grid-template-columns: minmax(0, 1.08fr) minmax(18rem, 0.92fr);
  margin-inline: auto;
  max-width: none;
  min-height: 32rem;
  padding: var(--wa-space-2xl) max(var(--wa-space-m), calc((100vw - var(--wa-content-width)) / 2));
}

.home-editable-modules .wa-home-module--text-image {
  grid-template-columns: minmax(18rem, 0.92fr) minmax(0, 1.08fr);
}

.home-editable-modules .wa-home-module--image-text .wp-block-media-text__media,
.home-editable-modules .wa-home-module--image-text .wp-block-media-text__content {
  align-self: center;
}

.home-editable-modules .wa-home-module--image-text .wp-block-media-text__media {
  margin: 0;
}

.home-editable-modules .wa-home-module--image-text img {
  aspect-ratio: 16 / 10;
  background: var(--wa-color-ground);
  height: auto;
  object-fit: cover;
  width: 100%;
}

.home-editable-modules .wa-home-module--image-text h2,
.home-editable-modules .wa-home-module--image-overlay h2,
.home-editable-modules .wa-home-module--three-column h2 {
  font-size: clamp(2rem, 3vw, 3rem);
  line-height: 1.08;
  margin-block: 0;
  max-width: 14ch;
}

.home-editable-modules .wa-home-module--image-text p,
.home-editable-modules .wa-home-module--wide-image .wa-home-module__caption,
.home-editable-modules .wa-home-module--image-overlay p,
.home-editable-modules .wa-home-module--three-column p {
  color: var(--wa-color-muted);
  font-size: 1.02rem;
  line-height: 1.6;
  margin-block: var(--wa-space-s) 0;
  max-width: 56ch;
}

.home-editable-modules .wa-home-module--wide-image {
  background: var(--wa-color-ground);
  display: grid;
  gap: var(--wa-space-s);
  padding: var(--wa-space-2xl) max(var(--wa-space-m), calc((100vw - var(--wa-content-width)) / 2));
}

.home-editable-modules .wa-home-module--wide-image .wa-home-module__image {
  margin: 0;
  max-width: none;
  width: 100%;
}

.home-editable-modules .wa-home-module--wide-image img {
  aspect-ratio: auto;
  background: var(--wa-color-surface);
  object-fit: contain;
  width: 100%;
}

.home-editable-modules .wa-home-module--wide-image .wa-home-module__caption {
  max-width: 72ch;
}

.home-editable-modules .wa-home-module--image-overlay {
  align-items: end;
  min-height: clamp(24rem, 56vw, 40rem);
  padding: var(--wa-space-2xl) max(var(--wa-space-m), calc((100vw - var(--wa-content-width)) / 2));
}

.home-editable-modules .wa-home-module--image-overlay .wp-block-cover__inner-container {
  margin-inline: 0;
  max-width: 40rem;
}

.home-editable-modules .wa-home-module--image-overlay h2,
.home-editable-modules .wa-home-module--image-overlay p {
  color: var(--wa-color-surface);
}

.home-editable-modules .wa-home-module--image-overlay p {
  color: color-mix(in srgb, var(--wa-color-surface) 82%, transparent);
}

.home-editable-modules .wa-home-module--three-column {
  background: var(--wa-color-surface);
  padding: var(--wa-space-2xl) max(var(--wa-space-m), calc((100vw - var(--wa-content-width)) / 2));
}

.home-editable-modules .wa-home-module--three-column .wp-block-columns {
  display: grid;
  gap: var(--wa-space-m);
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin-block: 0;
}

.home-editable-modules .wa-home-module--three-column .wp-block-column {
  display: grid;
  gap: var(--wa-space-xs);
}

.home-editable-modules .wa-home-module--three-column figure {
  margin: 0;
}

.home-editable-modules .wa-home-module--three-column img {
  aspect-ratio: 4 / 3;
  background: var(--wa-color-ground);
  object-fit: cover;
  width: 100%;
}

.home-editable-modules .wa-home-module--three-column h3 {
  font-size: 1.25rem;
  margin: 0;
}

.home-editable-modules .wa-home-module--three-column p {
  font-size: 0.95rem;
  margin: 0;
}

.contact-widget {
  bottom: var(--wa-space-m);
  position: fixed;
  right: var(--wa-space-m);
  z-index: 1000;
}

.contact-widget[open] .contact-widget__summary {
  background: var(--wa-color-ink);
  color: var(--wa-color-surface);
}

.contact-widget__summary {
  align-items: center;
  background: var(--wa-color-surface);
  border: 1px solid var(--wa-color-ink);
  border-radius: 999px;
  cursor: pointer;
  display: inline-flex;
  font-size: 0.85rem;
  font-weight: 750;
  gap: 0.35rem;
  justify-content: center;
  list-style: none;
  min-height: var(--wa-control-height);
  padding: 0.65rem 1rem;
}

.contact-widget__summary::-webkit-details-marker {
  display: none;
}

.contact-widget__panel {
  background: color-mix(in srgb, var(--wa-color-surface) 98%, var(--wa-color-ground));
  border: var(--wa-border);
  border-radius: var(--wa-radius-panel);
  box-shadow: 0 18px 40px color-mix(in srgb, var(--wa-color-ink) 12%, transparent);
  display: grid;
  gap: var(--wa-space-xs);
  margin-bottom: var(--wa-space-xs);
  max-width: min(20rem, calc(100vw - 2rem));
  padding: var(--wa-space-s);
}

.contact-widget__item {
  border: 1px solid var(--wa-color-line);
  border-radius: var(--wa-radius-control);
  color: var(--wa-color-ink);
  display: grid;
  gap: 0.125rem;
  padding: 0.75rem 0.85rem;
  text-decoration: none;
}

.contact-widget__item:hover {
  border-color: var(--wa-color-ink);
}

.contact-widget__item--secondary {
  background: var(--wa-color-ground);
}

.contact-widget__label {
  color: var(--wa-color-muted);
  font-size: 0.72rem;
  font-weight: 700;
  letter-spacing: 0.03em;
  text-transform: uppercase;
}

.contact-widget__value {
  font-size: 0.9rem;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.home-chapter__links {
  margin-top: var(--wa-space-l);
}

.home-chapter__links a,
.home-business-band__links a {
  font-weight: 750;
  text-decoration-thickness: 1px;
}

.home-product {
  background: var(--wa-color-surface);
  border-radius: var(--wa-radius-panel);
  color: var(--wa-color-ink);
  display: grid;
  overflow: hidden;
  text-decoration: none;
}

.home-product img {
  aspect-ratio: 4 / 5;
  background: var(--wa-color-ground);
  object-fit: contain;
  width: 100%;
}

.home-product span {
  border-top: var(--wa-border);
  font-weight: 700;
  min-height: 4.5rem;
  padding: var(--wa-space-s);
}

.home-product:hover span {
  color: var(--wa-color-action-active);
}

.home-business-band__links {
  justify-content: flex-end;
}

.home-business-band__links a {
  border: 1px solid color-mix(in srgb, var(--wa-color-surface) 55%, var(--wa-color-forest));
  border-radius: var(--wa-radius-control);
  min-height: var(--wa-control-height);
  padding: 0.6rem 0.9rem;
  text-decoration: none;
}

.home-business-band__links a:hover {
  background: var(--wa-color-surface);
  color: var(--wa-color-forest);
}

@media (prefers-reduced-motion: no-preference) {
  .home-hero__media img {
    animation: home-product-reveal 720ms var(--wa-ease-out) both;
  }
}

@keyframes home-product-reveal {
  from {
    clip-path: inset(0 0 10% 12%);
    filter: blur(4px);
  }

  to {
    clip-path: inset(0);
    filter: blur(0);
  }
}

@media (max-width: 56rem) {
  .home-editable-modules .wa-home-module--image-text,
  .home-editable-modules .wa-home-module--text-image {
    grid-template-columns: 1fr;
    min-height: 0;
    padding-block: var(--wa-space-xl);
  }

  .home-editable-modules .wa-home-module--image-text .wp-block-media-text__content,
  .home-editable-modules .wa-home-module--text-image .wp-block-media-text__content {
    padding: 0;
  }

  .home-editable-modules .wa-home-module--text-image .wp-block-media-text__media {
    order: -1;
  }

  .home-editable-modules .wa-home-module--three-column .wp-block-columns {
    grid-template-columns: 1fr;
  }

  .custom-product-picker__carousel {
    grid-template-columns: 1fr;
  }

  .custom-product-picker__control {
    display: none;
  }

  .custom-product-picker__list {
    grid-auto-columns: min(82vw, 22rem);
  }
}

@media (max-width: 40rem) {
  .wa-inquiry__form {
    grid-template-columns: 1fr;
  }

  .home-business-band__links {
    align-items: flex-start;
    flex-direction: column;
    justify-content: flex-start;
  }

  .contact-widget {
    bottom: var(--wa-space-s);
    right: var(--wa-space-s);
  }

  .contact-widget__panel {
    max-width: calc(100vw - 1.5rem);
  }
}

@media (max-width: 70rem) {
  .site-header.is-navigation-ready .site-header__menu-toggle {
    display: flex;
  }
}
