/**
 * acf-leave-review — same layout as acf-local-cta-section (class names only).
 */

.acf-leave-review {
  position: relative;
  overflow: hidden;
}

/*
 * Background — Layout tab `section_background` → bpa-local-grass-color--* on <section>.
 * __body inherits the shell token. Scoped tokens below beat editor utilities (bg-off-white).
 */
.acf-leave-review:not([class*="bpa-local-grass-color--"]) {
  background-color: var(--color-off-white);
}

.acf-leave-review__body {
  position: relative;
  padding-inline: var(--block-pad-inline);
  overflow: hidden;
  background-color: inherit;
}

.acf-leave-review[class*="bpa-local-grass-color--"] .acf-leave-review__body {
  background-color: inherit;
}

/* section_background tokens (same map as local-grass-divider.css — higher specificity than .bg-*). */
.acf-leave-review.bpa-local-grass-color--white { background-color: var(--color-light); }
.acf-leave-review.bpa-local-grass-color--off-white { background-color: var(--color-off-white); }
.acf-leave-review.bpa-local-grass-color--brand-shape { background-color: var(--color-brand-shape); }
.acf-leave-review.bpa-local-grass-color--muted-bg { background-color: var(--color-muted-bg); }
.acf-leave-review.bpa-local-grass-color--placeholder-bg { background-color: var(--color-placeholder-bg); }
.acf-leave-review.bpa-local-grass-color--author-bg { background-color: var(--color-author-bg); }
.acf-leave-review.bpa-local-grass-color--brand-mist { background-color: var(--color-brand-mist); }
.acf-leave-review.bpa-local-grass-color--button-hover { background-color: var(--color-button-hover); }
.acf-leave-review.bpa-local-grass-color--brand-yellow { background-color: var(--color-brand-yellow); }
.acf-leave-review.bpa-local-grass-color--sunshine-yellow { background-color: var(--color-sunshine-yellow); }
.acf-leave-review.bpa-local-grass-color--brand-green { background-color: var(--color-brand-green); }
.acf-leave-review.bpa-local-grass-color--brand-green-alt { background-color: var(--color-brand-green-alt); }
.acf-leave-review.bpa-local-grass-color--franchise-green-bright { background-color: var(--color-franchise-green-bright); }
.acf-leave-review.bpa-local-grass-color--franchise-green { background-color: var(--color-franchise-green); }
.acf-leave-review.bpa-local-grass-color--brand-forest { background-color: var(--color-brand-forest); }
.acf-leave-review.bpa-local-grass-color--brand-navy { background-color: var(--color-brand-navy); }
.acf-leave-review.bpa-local-grass-color--brand-slate { background-color: var(--color-brand-slate); }
.acf-leave-review.bpa-local-grass-color--brand-cyan { background-color: var(--color-brand-cyan); }
.acf-leave-review.bpa-local-grass-color--deep-teal { background-color: var(--color-deep-teal); }
.acf-leave-review.bpa-local-grass-color--dark { background-color: var(--color-dark); }
.acf-leave-review.bpa-local-grass-color--brand-red { background-color: var(--color-brand-red); }

.acf-leave-review__wave {
  display: block;
  line-height: 0;
}

.acf-leave-review__wave--top {
  margin-inline: 0;
  inline-size: 100%;
}

.acf-leave-review__wave--top svg {
  display: block;
  inline-size: 100%;
  block-size: auto;
  min-block-size: 50px; /* styleguide-exception: wave decorative min */
  transform: none;
}

.acf-leave-review__wave--bottom {
  margin-inline: calc(-1 * var(--block-pad-inline));
  inline-size: calc(100% + (2 * var(--block-pad-inline)));
}

.acf-leave-review__wave--bottom svg {
  display: block;
  inline-size: 100%;
  block-size: auto;
  min-block-size: 50px; /* styleguide-exception: wave decorative min */
  transform: scaleY(-1);
}

/* Bottom wave must sit on the section edge — utility py-section-* adds padding below it. */
.acf-leave-review.acf-leave-review--has-bottom-wave {
  padding-block-end: 0;
}

.acf-leave-review.acf-leave-review--has-bottom-wave.py-section,
.acf-leave-review.acf-leave-review--has-bottom-wave.py-section-sm,
.acf-leave-review.acf-leave-review--has-bottom-wave.py-section-lg {
  padding-block-end: 0;
}

.acf-leave-review__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
  padding-inline: 0;
  padding-block: var(--space-2xl);
  text-align: center;
}

.acf-leave-review--has-top-wave .acf-leave-review__container {
  padding-block-start: var(--space-2xl);
}

.acf-leave-review--has-bottom-wave .acf-leave-review__container {
  padding-block-end: var(--space-2xl);
}

.acf-leave-review--has-top-wave.acf-leave-review--has-bottom-wave .acf-leave-review__container {
  padding-block: var(--space-2xl);
}

.acf-leave-review:has(> .bpa-local-grass-divider):not(.acf-leave-review--has-bottom-wave) .acf-leave-review__body {
  padding-block-end: var(--space-xl);
}

.acf-leave-review--has-bottom-wave:has(> .bpa-local-grass-divider) > .bpa-local-grass-divider {
  margin-block-start: 0;
}

/* Overlap FAQ grass fringe when stacked directly after local FAQ (section-level wave handoff). */
.acf-local-faq-section + .acf-leave-review {
  margin-block-start: -2px;
}

.acf-local-faq-section--has-bottom-wave + .acf-leave-review {
  margin-block-start: -4px; /* styleguide-exception: flush wave handoff, no grass fringe */
}

.acf-local-faq-section + .acf-leave-review.acf-leave-review--has-top-wave {
  margin-block-start: -2px;
}

.acf-local-faq-section--has-bottom-wave + .acf-leave-review.acf-leave-review--has-top-wave,
.wp-block-acf-acf-local-faq-section:has(.acf-local-faq-section--has-bottom-wave) + .wp-block-acf-acf-leave-review .acf-leave-review--has-top-wave {
  margin-block-start: -4px;
}

/*
 * Handoff: testimonials (green + bottom wave) → local CTA.
 * Keep testimonials bottom wave; overlap CTA to kill subpixel hairline below the curve.
 */
.acf-local-testimonials-section:has(+ .acf-leave-review) .acf-local-testimonials-section__wave,
.wp-block-acf-acf-local-testimonials-section:has(+ .wp-block-acf-acf-leave-review) .acf-local-testimonials-section__wave {
  margin-block-end: -1px; /* styleguide-exception: cover wave → section fringe */
}

/* Testimonials bottom wave owns the transition — hide duplicate CTA top wave. */
.acf-local-testimonials-section:has(.acf-local-testimonials-section__wave) + .acf-leave-review.acf-leave-review--has-top-wave .acf-leave-review__wave--top,
.wp-block-acf-acf-local-testimonials-section:has(.acf-local-testimonials-section__wave) + .wp-block-acf-acf-leave-review .acf-leave-review--has-top-wave .acf-leave-review__wave--top {
  display: none;
}

.acf-local-testimonials-section + .acf-leave-review,
.wp-block-acf-acf-local-testimonials-section + .wp-block-acf-acf-leave-review .acf-leave-review {
  margin-block-start: -6px; /* styleguide-exception: cover wave → CTA fringe */
  position: relative;
  z-index: 1;
}

/* Top wave → off-white body: kill subpixel green hairline on wide viewports. */
.acf-leave-review--has-top-wave .acf-leave-review__body {
  margin-block-start: -4px; /* styleguide-exception: cover top-wave → body fringe */
  position: relative;
  z-index: 1;
}

@media (min-width: 1024px) {
  .acf-local-testimonials-section + .acf-leave-review,
  .wp-block-acf-acf-local-testimonials-section + .wp-block-acf-acf-leave-review .acf-leave-review {
    margin-block-start: -8px; /* styleguide-exception: wider wave fringe on desktop */
  }

  .acf-leave-review--has-top-wave .acf-leave-review__body {
    margin-block-start: -6px;
  }
}

/* FAQ bottom wave owns the transition — hide duplicate CTA top wave */
.acf-local-faq-section--has-bottom-wave + .acf-leave-review.acf-leave-review--has-top-wave .acf-leave-review__wave--top,
.wp-block-acf-acf-local-faq-section:has(.acf-local-faq-section--has-bottom-wave) + .wp-block-acf-acf-leave-review .acf-leave-review--has-top-wave .acf-leave-review__wave--top {
  display: none;
}

/* Flush handoff from any local block grass → this section. */
section:has(> .bpa-local-grass-divider) + .acf-leave-review,
.wp-block[class*="wp-block-acf-acf-local-"]:has(.bpa-local-grass-divider) + .wp-block-acf-acf-leave-review .acf-leave-review {
  margin-block-start: -4px; /* styleguide-exception: seam cover */
  position: relative;
  z-index: 1;
}

.wp-block[class*="wp-block-acf-acf-local-"]:has(.bpa-local-grass-divider) + .wp-block-acf-acf-leave-review {
  margin-block-start: 0 !important;
}

.wp-block[class*="wp-block-acf-acf-local-"]:has(.bpa-local-grass-divider):has(+ .wp-block-acf-acf-leave-review) .bpa-local-grass-divider__img,
section:has(+ .acf-leave-review) > .bpa-local-grass-divider .bpa-local-grass-divider__img {
  margin-block-end: -4px; /* styleguide-exception: seam cover */
}

.wp-block-acf-acf-local-testimonials-section + .wp-block-acf-acf-leave-review {
  margin-block-start: 0 !important;
}

/* Handoff: local CTA bottom wave → featured blog (About Us stack). */
.acf-leave-review--has-bottom-wave + .acf-featured-blog-section,
.wp-block-acf-acf-leave-review:has(.acf-leave-review--has-bottom-wave) + .wp-block-acf-acf-featured-blog-section .acf-featured-blog-section {
  margin-block-start: -4px; /* styleguide-exception: flush wave seam */
  position: relative;
  z-index: 1;
}

.acf-leave-review--has-bottom-wave + .acf-featured-blog-section.acf-featured-blog-section--has-top-wave .acf-featured-blog-section__wave--top,
.wp-block-acf-acf-leave-review:has(.acf-leave-review--has-bottom-wave) + .wp-block-acf-acf-featured-blog-section .acf-featured-blog-section--has-top-wave .acf-featured-blog-section__wave--top {
  display: none;
}

.acf-leave-review.alignfull,
.acf-leave-review.alignwide {
  inline-size: 100%;
  max-inline-size: none;
  margin-inline: 0;
}

/* Beat .entry-content h2 from reset.css */
.acf-leave-review h2.acf-leave-review__heading {
  margin: 0;
  max-inline-size: 900px; /* styleguide-exception: local CTA title */
  font-family: var(--font-family-serif);
  font-size: var(--font-size-3xl);
  font-weight: var(--font-weight-bold);
  line-height: 1.2;
  text-align: center;
  color: var(--color-brand-forest);
}

.acf-leave-review__sub-heading {
  margin: 0;
  max-inline-size: 760px; /* styleguide-exception: local CTA intro max */
  font-weight: var(--font-weight-semibold);
  color: var(--color-brand-forest);
}

.acf-leave-review__sub-heading p {
  margin: 0;
}

.acf-leave-review__text {
  margin: 0;
  max-inline-size: 760px; /* styleguide-exception: local CTA body */
  font-weight: 500;
  color: #011a06;
}

.acf-leave-review__text p {
  margin: 0;
}

.acf-leave-review__text p + p {
  margin-block-start: 1em;
}

/* Dark band — light copy when section background is a dark token. */
.acf-leave-review--dark-band {
  color: var(--color-light);
}

.acf-leave-review--dark-band h2.acf-leave-review__heading,
.acf-leave-review--dark-band .acf-leave-review__sub-heading,
.acf-leave-review--dark-band .acf-leave-review__text {
  color: var(--color-light);
}

.acf-leave-review__actions {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: var(--space-sm);
  margin-block-start: var(--space-xs);
}

.acf-leave-review__actions .bpa-button--secondary {
  gap: var(--space-xs);
}

.acf-leave-review__schedule-icon,
.acf-leave-review__button-icon {
  flex-shrink: 0;
  inline-size: 0.875rem;
  block-size: 0.875rem;
  color: var(--color-brand-green);
}

@media (max-width: 640px) {
  .acf-leave-review__body {
    padding-inline: var(--space-sm);
  }

  .acf-leave-review__container {
    padding-block: var(--space-xl);
  }

  .acf-leave-review--has-top-wave .acf-leave-review__container {
    padding-block-start: var(--space-xl);
  }

  .acf-leave-review--has-bottom-wave .acf-leave-review__container {
    padding-block-end: var(--space-xl);
  }

  .acf-leave-review--has-top-wave.acf-leave-review--has-bottom-wave .acf-leave-review__container {
    padding-block: var(--space-xl);
  }

  .acf-local-testimonials-section + .acf-leave-review,
  .wp-block-acf-acf-local-testimonials-section + .wp-block-acf-acf-leave-review .acf-leave-review {
    margin-block-start: -8px; /* styleguide-exception: tighter mobile wave seam */
  }

  .acf-local-testimonials-section:has(+ .acf-leave-review) .acf-local-testimonials-section__wave,
  .wp-block-acf-acf-local-testimonials-section:has(+ .wp-block-acf-acf-leave-review) .acf-local-testimonials-section__wave {
    margin-block-end: -2px; /* styleguide-exception: cover wave fringe on phones */
  }

  section:has(> .bpa-local-grass-divider) + .acf-leave-review,
  .wp-block[class*="wp-block-acf-acf-local-"]:has(.bpa-local-grass-divider) + .wp-block-acf-acf-leave-review .acf-leave-review {
    margin-block-start: -6px; /* styleguide-exception: tighter mobile grass seam */
  }

  section:has(+ .acf-leave-review) > .bpa-local-grass-divider .bpa-local-grass-divider__img,
  .wp-block[class*="wp-block-acf-acf-local-"]:has(.bpa-local-grass-divider):has(+ .wp-block-acf-acf-leave-review) .bpa-local-grass-divider__img {
    margin-block-end: -6px; /* styleguide-exception: tighter mobile grass seam */
  }

  .acf-leave-review__wave--bottom {
    margin-inline: calc(-1 * var(--space-sm));
    inline-size: calc(100% + (2 * var(--space-sm)));
  }

  .acf-leave-review--has-bottom-wave + .acf-featured-blog-section,
  .wp-block-acf-acf-leave-review:has(.acf-leave-review--has-bottom-wave) + .wp-block-acf-acf-featured-blog-section .acf-featured-blog-section {
    margin-block-start: -6px; /* styleguide-exception: tighter mobile wave seam */
  }

  .acf-leave-review__actions {
    flex-direction: column;
    align-items: stretch;
    inline-size: 100%;
    max-inline-size: 400px; /* styleguide-exception: mobile CTA stack */
  }

  .acf-leave-review__actions .bpa-button {
    justify-content: center;
  }
}

/* Face chooser. Both hide after a click; the heading stays. */
.acf-leave-review__intro {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--space-md);
}

.acf-leave-review.is-step .acf-leave-review__intro,
.acf-leave-review.is-step .acf-leave-review__choices {
  display: none;
}

.acf-leave-review__choices {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: var(--space-lg);
  margin-block-start: var(--space-sm);
}

.acf-leave-review__face {
  display: inline-flex;
  padding: 0;
  border: 0;
  border-radius: 999px;
  background: transparent;
  line-height: 0;
  cursor: pointer;
  transition: opacity 160ms ease;
}

.acf-leave-review__face:hover {
  opacity: 0.82;
}

.acf-leave-review__face:focus-visible {
  outline: 2px solid var(--color-brand-green);
  outline-offset: 3px;
}

.acf-leave-review__face img {
  display: block;
  inline-size: 6.5rem;
  block-size: 6.5rem;
  object-fit: contain;
}

.acf-leave-review__panel {
  inline-size: 100%;
  padding-top: var(--space-md);
}

.acf-leave-review__panel:focus {
  outline: none;
}

.acf-leave-review__zip,
.acf-leave-review__feedback {
  inline-size: 100%;
  max-inline-size: 800px;
  margin-inline: auto;
  text-align: start;
}

.acf-leave-review__zip-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
  gap: 64px;
  align-items: center;
}

/* Badge sits at the end of its column so the 144px gap is the space before the form. */
.acf-leave-review__badge {
  justify-self: end;
}

.acf-leave-review__badge img {
  display: block;
  inline-size: 200px;
  block-size: 200px;
  object-fit: contain;
}

.acf-leave-review__zip-fields {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--space-sm);
}

.acf-leave-review__zip-label {
  font-weight: var(--font-weight-semibold);
  color: var(--color-brand-forest);
}

.acf-leave-review__zip-input {
  inline-size: 100%;
  max-inline-size: 16rem;
  min-block-size: 2.75rem;
  padding: 0.5rem 0.75rem;
  border: 1px solid var(--color-brand-forest);
  border-radius: var(--radius-sm);
  background: var(--color-light);
  color: var(--color-brand-forest);
  font: inherit;
}

.acf-leave-review__message {
  margin: 0;
  color: var(--color-brand-forest);
}

.acf-leave-review__matches {
  margin: 0;
  padding: 0;
  list-style: none;
}

.acf-leave-review__matches a {
  color: var(--color-brand-forest);
  font-weight: var(--font-weight-semibold);
}

.acf-leave-review__back {
  margin-block-start: var(--space-md);
  padding: 0;
  border: 0;
  background: none;
  color: var(--color-brand-forest);
  font: inherit;
  font-weight: var(--font-weight-semibold);
  text-decoration: underline;
  cursor: pointer;
}

/*
 * Sad-path form. Same controls as the corporate embed form
 * (pls-global-corporate-form embed.css): square 48px fields,
 * forest chevron, yellow submit. Name, email, and phone share
 * one row. The review sits full width under that row.
 */
.acf-leave-review__feedback .wpforms-container,
.acf-leave-review__feedback .wpforms-container-full {
  --wpforms-field-border-radius: 0px;
  --wpforms-field-border-color: rgb(0 0 0 / 0.5);
  --wpforms-field-border-color-spare: rgb(0 0 0 / 0.5);
  --wpforms-field-background-color: #ffffff;
  --wpforms-field-text-color: #000000;
  --wpforms-field-size-input-height: 48px;
  --wpforms-field-size-padding-h: 12px;
  --wpforms-field-size-font-size: 16px;
  --wpforms-field-size-line-height: 24px;
  --wpforms-field-size-input-spacing: 24px;
  --wpforms-label-color: #000000;
  --wpforms-label-size-font-size: 14px;
  --wpforms-label-size-line-height: 21px;
  --wpforms-button-background-color: #ffdc27;
  --wpforms-button-background-color-alt: #ffdc27;
  --wpforms-button-text-color: #03400f;
  --wpforms-button-border-color: #033e40;
  --wpforms-button-border-radius: 8px;
  --wpforms-button-border-style: none;
  --wpforms-button-size-height: 40px;
  --wpforms-button-size-padding-h: 20px;
  --wpforms-button-size-font-size: 16px;
  --wpforms-button-size-margin-top: 0px;
  margin: 0 auto !important;
  inline-size: 100% !important;
  max-inline-size: 800px !important;
  text-align: start;
}

.acf-leave-review__feedback .wpforms-field-container {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  inline-size: 100%;
  min-inline-size: 0;
}

/* WPForms clearfix becomes an extra grid item and shifts columns. */
.acf-leave-review__feedback .wpforms-field-container::before,
.acf-leave-review__feedback .wpforms-field-container::after {
  content: none !important;
  display: none !important;
}

.acf-leave-review__feedback .wpforms-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  float: none !important;
  clear: none !important;
  inline-size: 100% !important;
  width: 100% !important;
  max-inline-size: 100% !important;
  min-inline-size: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Review and the contact dropdown sit on their own rows. */
.acf-leave-review__feedback .wpforms-field-textarea,
.acf-leave-review__feedback .wpforms-field-select,
.acf-leave-review__feedback .wpforms-submit-container {
  grid-column: 1 / -1;
}

/* Spam field. The modern honeypot is hidden by its own script after inject. */
.acf-leave-review__feedback .wpforms-field-hp {
  position: absolute !important;
  overflow: hidden !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  clip: rect(0, 0, 0, 0) !important;
  border: 0 !important;
}

.acf-leave-review__feedback div.wpforms-container-full .wpforms-field-label,
.acf-leave-review__feedback .wpforms-field-label,
.acf-leave-review__feedback .wpforms-field-label-inline,
.acf-leave-review__feedback .wpforms-required-label {
  margin: 0 !important;
  font-size: 0.875rem !important;
  font-weight: 700 !important;
  line-height: 1.5;
  color: #000000 !important;
}

.acf-leave-review__feedback div.wpforms-container-full input[type="text"],
.acf-leave-review__feedback div.wpforms-container-full input[type="email"],
.acf-leave-review__feedback div.wpforms-container-full input[type="tel"],
.acf-leave-review__feedback div.wpforms-container-full select,
.acf-leave-review__feedback div.wpforms-container-full textarea,
.acf-leave-review__feedback .wpforms-field input[type="text"],
.acf-leave-review__feedback .wpforms-field input[type="email"],
.acf-leave-review__feedback .wpforms-field input[type="tel"],
.acf-leave-review__feedback .wpforms-field select,
.acf-leave-review__feedback .wpforms-field textarea {
  display: block;
  inline-size: 100% !important;
  max-inline-size: none !important;
  block-size: 48px !important;
  min-block-size: 48px !important;
  padding: 12px !important;
  border: 1px solid rgb(0 0 0 / 0.5) !important;
  border-radius: 0 !important;
  background-color: #ffffff !important;
  background-image: none;
  font-family: "Roboto", system-ui, sans-serif !important;
  font-size: 1rem !important;
  font-weight: 400;
  line-height: 1.5 !important;
  color: #000000 !important;
  box-shadow: none !important;
}

.acf-leave-review__feedback div.wpforms-container-full textarea,
.acf-leave-review__feedback .wpforms-field textarea {
  block-size: 180px !important;
  min-block-size: 180px !important;
  resize: vertical;
}

.acf-leave-review__feedback div.wpforms-container-full select,
.acf-leave-review__feedback .wpforms-field select {
  appearance: none;
  -webkit-appearance: none;
  background-color: #ffffff !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='24' height='24' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M7 10l5 5 5-5' stroke='%2303400f' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 12px center !important;
  background-size: 24px 24px !important;
  padding-inline-end: 44px !important;
}

.acf-leave-review__feedback .wpforms-field input:focus-visible,
.acf-leave-review__feedback .wpforms-field select:focus-visible,
.acf-leave-review__feedback .wpforms-field textarea:focus-visible {
  outline: 2px solid #03400f;
  outline-offset: 1px;
}

.acf-leave-review__feedback .wpforms-submit-container {
  display: flex;
  justify-content: flex-start;
  margin: 32px 0 0 !important;
  padding-block: 0;
}

.acf-leave-review__feedback div.wpforms-container-full button[type="submit"],
.acf-leave-review__feedback div.wpforms-container-full .wpforms-submit,
.acf-leave-review__feedback .wpforms-submit {
  min-inline-size: 215px !important;
  min-block-size: 40px !important;
  padding: 8px 20px !important;
  border: none !important;
  border-radius: 8px !important;
  outline: 1px solid #033e40 !important;
  outline-offset: 0 !important;
  background: #ffdc27 !important;
  background-image: none !important;
  color: #03400f !important;
  font-family: "Roboto", system-ui, sans-serif !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
  cursor: pointer;
}

.acf-leave-review__feedback div.wpforms-container-full button[type="submit"]:hover,
.acf-leave-review__feedback div.wpforms-container-full button[type="submit"]:active,
.acf-leave-review__feedback .wpforms-submit:hover,
.acf-leave-review__feedback .wpforms-submit:focus-visible {
  background: #fff9db !important;
  background-image: none !important;
  color: #03400f !important;
}

.acf-leave-review--dark-band .acf-leave-review__zip-label,
.acf-leave-review--dark-band .acf-leave-review__message,
.acf-leave-review--dark-band .acf-leave-review__back,
.acf-leave-review--dark-band .acf-leave-review__matches a {
  color: var(--color-light);
}

.acf-leave-review--dark-band .acf-leave-review__feedback .wpforms-field-label,
.acf-leave-review--dark-band .acf-leave-review__feedback .wpforms-required-label {
  color: var(--color-light) !important;
}

@media (max-width: 640px) {
  .acf-leave-review__zip {
    text-align: center;
  }

  .acf-leave-review__zip-layout {
    grid-template-columns: 1fr;
    justify-items: center;
    gap: var(--space-lg);
  }

  .acf-leave-review__badge {
    justify-self: center;
  }

  .acf-leave-review__zip-fields {
    align-items: center;
  }

  .acf-leave-review__zip-input {
    inline-size: min(100%, 16rem);
  }

  .acf-leave-review__feedback .wpforms-field-container {
    grid-template-columns: 1fr;
  }

  .acf-leave-review__feedback div.wpforms-container-full button[type="submit"],
  .acf-leave-review__feedback .wpforms-submit {
    inline-size: 100% !important;
  }
}
