/**
 * Site CTA buttons — visual spec from .mns-line-benefit__register
 * (white fill, hairline border, soft hover, stroke chevron).
 * Channel logos (.mns-purchase-store) and home MV CTAs are excluded.
 */

:root {
  --mns-btn-bg: #fff;
  --mns-btn-border: var(--mns-border-color, #e2e5e3);
  --mns-btn-ink: var(--mns-primary, #2e2f2f);
  --mns-btn-muted: var(--mns-text-muted, #656c68);
  --mns-btn-hover-bg: var(--mns-soft, #f4f4f2);
  --mns-btn-hover-border: var(--mns-primary, #2e2f2f);
  --mns-btn-min-h: 52px;
  --mns-btn-min-w: 176px;
  --mns-btn-compact-h: 40px;
  --mns-btn-radius: var(--mns-radius, 4px);
  --mns-btn-arrow-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 10 16'%3E%3Cpath d='M2 2.5 7.5 8 2 13.5' fill='none' stroke='%23000' stroke-width='1.7'/%3E%3C/svg%3E");
}

.mns-button:not(.mns-purchase-store),
.mns-header__cta,
.mns-contact-band__button,
.mns-purchase-panel__button,
.mns-line-benefit__register,
.mns-new-products-button,
.mns-product-classifications-button,
.mns-blog-showcase-button,
.mns-pd-related-header-button,
.mns-pd-pair-button,
.mns-pd-main-visual-specs-jump-cta,
.mns-pd-main-visual-reviews-jump-cta,
.mns-product-mega__group--link,
.mns-mobile-nav__link--all,
.contact-submit-button,
.mns-sp-contact-forms .wpforms-form button[type="submit"],
.mns-sp-contact-forms .wpforms-form .wpforms-submit,
.mns-product-detail-page .mns-pd-related-header-button,
.mns-product-detail-page .mns-pd-pair-button,
.mns-product-detail-page .mns-pd-main-visual-specs-jump-cta,
.mns-product-detail-page .mns-pd-main-visual-reviews-jump-cta,
.mns-product-detail-page .mns-purchase-panel__button,
.home .mns-blog-showcase-button,
.mns-new-products-section[data-mns-new-products] .mns-new-products-button,
.mns-product-classifications-section[data-mns-product-lineup] .mns-product-classifications-button,
.mns-brand-hero .mns-button,
.mns-brand-page .mns-button--outline,
.mns-brand-closing__actions .mns-button--outline,
.mns-support-faq__group-links .mns-button,
.mns-support-faq .mns-button--ghost,
.mns-support-faq__footer .mns-button,
.mns-foundation-btn,
.mns-foundation-btn--outline,
.mns-foundation-btn--on-dark,
.mns-footer__aux,
.mns-button--ghost,
.mns-button--outline,
.mns-not-found__actions .mns-button--outline,
.mns-manual-hero__btn,
.mns-manual-hero__btn.mns-button--ghost {
  display: inline-flex;
  box-sizing: border-box;
  align-items: center;
  justify-content: center;
  gap: 18px;
  padding: 0 20px;
  border: 1px solid var(--mns-btn-border);
  border-radius: var(--mns-btn-radius);
  background: var(--mns-btn-bg);
  box-shadow: none;
  color: var(--mns-btn-ink);
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.4;
  text-align: center;
  text-decoration: none;
  filter: none;
  cursor: pointer;
  transition:
    border-color 180ms ease,
    background-color 180ms ease;
}

.mns-button:not(.mns-purchase-store):not(.mns-button--solid):hover,
.mns-button:not(.mns-purchase-store):not(.mns-button--solid):focus-visible,
.mns-header__cta:hover,
.mns-header__cta:focus-visible,
.mns-contact-band__button:hover,
.mns-line-benefit__register:hover,
.mns-new-products-button:hover,
.mns-product-classifications-button:hover,
.mns-blog-showcase-button:hover,
.home .mns-blog-showcase-button:hover,
.mns-pd-related-header-button:hover,
.mns-pd-pair-button:hover,
.mns-pd-main-visual-specs-jump-cta:hover,
.mns-pd-main-visual-reviews-jump-cta:hover,
.mns-product-detail-page .mns-pd-related-header-button:hover,
.mns-product-detail-page .mns-pd-pair-button:hover,
.mns-product-detail-page .mns-pd-main-visual-specs-jump-cta:hover,
.mns-product-detail-page .mns-pd-main-visual-reviews-jump-cta:hover,
.mns-product-detail-page a.mns-pd-main-visual-specs-jump:hover .mns-pd-main-visual-specs-jump-cta,
.mns-product-detail-page a.mns-pd-main-visual-specs-jump:focus-visible .mns-pd-main-visual-specs-jump-cta,
.mns-product-detail-page a.mns-pd-main-visual-reviews-jump:hover .mns-pd-main-visual-reviews-jump-cta,
.mns-product-detail-page a.mns-pd-main-visual-reviews-jump:focus-visible .mns-pd-main-visual-reviews-jump-cta,
.mns-product-mega__group--link:hover,
.mns-product-mega__group--link:focus-visible,
.mns-mobile-nav__link--all:hover,
.contact-submit-button:hover,
.mns-sp-contact-forms .wpforms-form button[type="submit"]:hover,
.mns-sp-contact-forms .wpforms-form .wpforms-submit:hover,
.mns-brand-hero .mns-button:hover,
.mns-brand-hero .mns-button:focus-visible,
.mns-brand-page .mns-button--outline:hover,
.mns-brand-closing__actions .mns-button--outline:hover,
.mns-support-faq__group-links .mns-button:hover,
.mns-support-faq__group-links .mns-button:focus-visible,
.mns-support-faq .mns-button--ghost:hover,
.mns-support-faq .mns-button--ghost:focus-visible,
.mns-foundation-btn--outline:hover,
.mns-foundation-btn--on-dark:hover,
.mns-footer__aux:hover,
.mns-button--ghost:hover,
.mns-button--ghost:focus-visible,
.mns-button--outline:hover,
.mns-not-found__actions .mns-button--outline:hover,
.mns-manual-hero__btn.mns-button--ghost:hover {
  border-color: var(--mns-btn-hover-border);
  background: var(--mns-btn-hover-bg);
  color: var(--mns-btn-ink);
  opacity: 1;
  filter: none;
  box-shadow: none;
  transform: none;
}

.mns-button:not(.mns-purchase-store):focus-visible,
.mns-header__cta:focus-visible,
.mns-contact-band__button:focus-visible,
.mns-purchase-panel__button:focus-visible,
.mns-line-benefit__register:focus-visible,
.mns-product-mega__group--link:focus-visible,
.contact-submit-button:focus-visible,
.mns-sp-contact-forms .wpforms-form button[type="submit"]:focus-visible,
.mns-sp-contact-forms .wpforms-form .wpforms-submit:focus-visible,
.mns-pd-pair-button:focus-visible,
.mns-product-detail-page .mns-pd-pair-button:focus-visible,
.mns-pd-main-visual-specs-jump-cta:focus-visible,
.mns-pd-main-visual-reviews-jump-cta:focus-visible,
.mns-product-detail-page .mns-pd-main-visual-specs-jump-cta:focus-visible,
.mns-product-detail-page .mns-pd-main-visual-reviews-jump-cta:focus-visible {
  outline: 2px solid var(--mns-accent, #9ea7a2);
  outline-offset: 3px;
}

.mns-button.mns-button--solid,
.mns-purchase-panel__button,
.mns-product-detail-page .mns-purchase-panel__button {
  background: var(--mns-primary, #2e2f2f);
  border-color: var(--mns-primary, #2e2f2f);
  color: #fff;
}

.mns-button.mns-button--solid:hover,
.mns-button.mns-button--solid:focus-visible,
.mns-purchase-panel__button:hover,
.mns-purchase-panel__button:focus-visible,
.mns-purchase-panel__button[aria-expanded="true"],
.mns-product-detail-page .mns-purchase-panel__button:hover,
.mns-product-detail-page .mns-purchase-panel__button:focus-visible,
.mns-product-detail-page .mns-purchase-panel__button[aria-expanded="true"] {
  background: color-mix(in srgb, var(--mns-primary, #2e2f2f) 88%, white);
  border-color: var(--mns-primary, #2e2f2f);
  color: #fff;
  opacity: 1;
  filter: none;
  box-shadow: none;
  transform: none;
}

.mns-button__label {
  min-width: 0;
  flex: 0 1 auto;
  margin: 0;
  color: inherit;
  text-align: center;
}

.mns-button__arrow,
.mns-button:not(.mns-purchase-store) > svg,
.mns-line-benefit__register svg,
.mns-contact-band__arrow,
.mns-contact-band__arrow svg,
.mns-new-products-button > svg,
.mns-product-classifications-button > svg {
  display: block;
  flex-shrink: 0;
  width: 6px;
  height: 10px;
  color: var(--mns-btn-muted);
  transition: transform 180ms ease;
}

.mns-button.mns-button--solid .mns-button__arrow,
.mns-button.mns-button--solid > svg,
.mns-button.mns-purchase-panel__button .mns-button__arrow,
.mns-button.mns-purchase-panel__button > svg,
.mns-product-detail-page .mns-purchase-panel__button .mns-button__arrow,
.mns-product-detail-page .mns-purchase-panel__button > svg {
  display: none;
}

.mns-button:not(.mns-purchase-store):hover .mns-button__arrow,
.mns-button:not(.mns-purchase-store):hover > svg,
.mns-header__cta:hover .mns-button__arrow,
.mns-contact-band__button:hover .mns-button__arrow,
.mns-purchase-panel__button:hover .mns-button__arrow,
.mns-line-benefit__register:hover svg,
.mns-new-products-button:hover > svg,
.mns-product-classifications-button:hover > svg,
.mns-blog-showcase-button:hover .mns-button__arrow,
.mns-pd-related-header-button:hover .mns-button__arrow,
.mns-pd-pair-button:hover .mns-button__arrow,
.mns-pd-main-visual-specs-jump-cta:hover .mns-button__arrow,
.mns-pd-main-visual-reviews-jump-cta:hover .mns-button__arrow,
.mns-product-detail-page a.mns-pd-main-visual-specs-jump:hover .mns-pd-main-visual-specs-jump-cta .mns-button__arrow,
.mns-product-detail-page a.mns-pd-main-visual-reviews-jump:hover .mns-pd-main-visual-reviews-jump-cta .mns-button__arrow,
.mns-product-mega__group--link:hover .mns-button__arrow,
.mns-footer__aux:hover .mns-button__arrow {
  transform: translateX(3px);
}

/* Form / embed submits we do not control markup for. */
.mns-sp-contact-forms .wpforms-form button[type="submit"]::after,
.mns-sp-contact-forms .wpforms-form .wpforms-submit::after,
.contact-submit-button::after {
  content: "";
  flex-shrink: 0;
  width: 6px;
  height: 10px;
  background-color: var(--mns-btn-muted);
  mask: var(--mns-btn-arrow-mask) center / contain no-repeat;
  -webkit-mask: var(--mns-btn-arrow-mask) center / contain no-repeat;
  transition: transform 180ms ease, background-color 180ms ease;
}

.mns-sp-contact-forms .wpforms-form button[type="submit"]:hover::after,
.mns-sp-contact-forms .wpforms-form .wpforms-submit:hover::after,
.contact-submit-button:hover::after {
  background-color: var(--mns-btn-ink);
  transform: translateX(3px);
}

.mns-sp-contact-forms .wpforms-form button[type="submit"],
.mns-sp-contact-forms .wpforms-form .wpforms-submit,
.contact-submit-button {
  background: var(--mns-btn-bg) !important;
  border: 1px solid var(--mns-btn-border) !important;
  color: var(--mns-btn-ink) !important;
  font-weight: 500 !important;
}

.mns-sp-contact-forms .wpforms-form button[type="submit"]:hover,
.mns-sp-contact-forms .wpforms-form .wpforms-submit:hover,
.contact-submit-button:hover {
  background: var(--mns-btn-hover-bg) !important;
  border-color: var(--mns-btn-hover-border) !important;
  color: var(--mns-btn-ink) !important;
}

.mns-button.mns-button--compact,
.mns-button.mns-header__cta {
  min-width: 0;
  min-height: var(--mns-btn-compact-h);
  gap: 12px;
  padding-inline: 16px;
}

.mns-button--block,
.mns-contact-band__button,
.mns-purchase-panel__button,
.mns-product-mega__group--link,
.mns-mobile-nav__link--all {
  width: 100%;
}

.mns-contact-band__button {
  width: min(100%, 420px);
}

.mns-header__cta--mobile {
  width: 100%;
}

.mns-product-mega__group--link {
  margin-top: 8px;
}

@media (max-width: 760px) {
  .mns-contact-band__button {
    width: min(100%, 360px);
  }
}

@media (prefers-reduced-motion: reduce) {
  .mns-button:not(.mns-purchase-store),
  .mns-button:not(.mns-purchase-store) .mns-button__arrow,
  .mns-button:not(.mns-purchase-store) > svg,
  .mns-header__cta,
  .mns-contact-band__button,
  .mns-purchase-panel__button,
  .mns-line-benefit__register,
  .mns-line-benefit__register svg,
  .mns-new-products-button,
  .mns-product-classifications-button,
  .mns-blog-showcase-button,
  .mns-pd-related-header-button,
  .mns-pd-pair-button,
  .mns-pd-main-visual-specs-jump-cta,
  .mns-pd-main-visual-reviews-jump-cta,
  .mns-sp-contact-forms .wpforms-form button[type="submit"]::after,
  .contact-submit-button::after {
    transition: none;
  }
}
