/* Triple Helix Solutions V102 final colour contract.
   This file is loaded last from every shared footer. */
@import url("v99-final.css?v=102.0");

:root {
  --ths-v102-maroon: #76172f;
  --ths-v102-beige: #ead8c2;
}

/* Genuine maroon information surfaces: keep all copy legible at every depth. */
:is(.hero-panel, .quality-main, .about-card, .rfq-list,
    .feature:not(.light), .vet-benefit, .cta, .certificate-warning, .trust,
    [style*="background:#76172f"], [style*="background: #76172f"],
    [style*="background-color:#76172f"], [style*="background-color: #76172f"]) {
  color: #fff !important;
}

:is(.hero-panel, .quality-main, .about-card, .rfq-list,
    .feature:not(.light), .vet-benefit, .cta, .certificate-warning, .trust,
    [style*="background:#76172f"], [style*="background: #76172f"],
    [style*="background-color:#76172f"], [style*="background-color: #76172f"]) * {
  color: #fff !important;
  text-decoration-color: currentColor !important;
}

:is(.hero-panel, .quality-main, .about-card, .rfq-list,
    .feature:not(.light), .vet-benefit, .cta, .certificate-warning, .trust,
    [style*="background:#76172f"], [style*="background: #76172f"],
    [style*="background-color:#76172f"], [style*="background-color: #76172f"]) ::marker {
  color: #fff !important;
}

/* Product cards are intentionally white, even when nested in another section. */
:is(.product-card, .real-product-card, .matched-product-card,
    .homepage-implant-card, .implant-card, .surg-page-card,
    .dental-page-card, .full-vet-page, .vet-cat-card,
    .surg-cat-card, .dental-cat-card) {
  background: #fff !important;
  background-color: #fff !important;
  color: #76172f !important;
}

:is(.product-card, .real-product-card, .matched-product-card,
    .homepage-implant-card, .implant-card, .surg-page-card,
    .dental-page-card, .full-vet-page, .vet-cat-card,
    .surg-cat-card, .dental-cat-card) * {
  color: #76172f !important;
}

/* Buttons remain maroon/white and invert to beige/maroon on interaction. */
:is(.btn, .small-btn, .v55-detail-link, .view-range-btn,
    .surg-view-range, .dental-view-range, .prompt-rfq-btn, .filter-btn,
    .main-view-range, .external-email-link, .commercial-btn-primary,
    .commercial-btn-secondary, .ths-visitor-stats__button,
    .division-actions button, button:not(.top-products-btn),
    input[type="submit"], input[type="button"], input[type="reset"],
    a[role="button"]:not(.top-products-btn), .cta > a) {
  background: #76172f !important;
  background-color: #76172f !important;
  border-color: #76172f !important;
  color: #fff !important;
  text-decoration-color: #fff !important;
}

:is(.btn, .small-btn, .v55-detail-link, .view-range-btn,
    .surg-view-range, .dental-view-range, .prompt-rfq-btn, .filter-btn,
    .main-view-range, .external-email-link, .commercial-btn-primary,
    .commercial-btn-secondary, .ths-visitor-stats__button,
    .division-actions button, button:not(.top-products-btn),
    input[type="submit"], input[type="button"], input[type="reset"],
    a[role="button"]:not(.top-products-btn), .cta > a) * {
  color: #fff !important;
}

:is(.btn, .small-btn, .v55-detail-link, .view-range-btn,
    .surg-view-range, .dental-view-range, .prompt-rfq-btn, .filter-btn,
    .main-view-range, .external-email-link, .commercial-btn-primary,
    .commercial-btn-secondary, .ths-visitor-stats__button,
    .division-actions button, button:not(.top-products-btn),
    input[type="submit"], input[type="button"], input[type="reset"],
    a[role="button"]:not(.top-products-btn), .cta > a):is(:hover, :focus-visible) {
  background: #ead8c2 !important;
  background-color: #ead8c2 !important;
  border-color: #76172f !important;
  color: #76172f !important;
  text-decoration-color: #76172f !important;
}

:is(.btn, .small-btn, .v55-detail-link, .view-range-btn,
    .surg-view-range, .dental-view-range, .prompt-rfq-btn, .filter-btn,
    .main-view-range, .external-email-link, .commercial-btn-primary,
    .commercial-btn-secondary, .ths-visitor-stats__button,
    .division-actions button, button:not(.top-products-btn),
    input[type="submit"], input[type="button"], input[type="reset"],
    a[role="button"]:not(.top-products-btn), .cta > a):is(:hover, :focus-visible) * {
  color: #76172f !important;
}

/* The complete top navigation remains white with maroon text. */
header, header .nav, header .top-products-menu,
header .navlinks > a,
header .navlinks > .top-products-dd > .top-products-btn,
header .navlinks > .top-products-dd > button.top-products-btn,
header nav:not(.navlinks) > a {
  background: #fff !important;
  background-color: #fff !important;
  color: #76172f !important;
}

header :is(.navlinks > a,
           .navlinks > .top-products-dd > .top-products-btn,
           nav:not(.navlinks) > a,
           .top-products-menu a,
           .top-products-menu span) {
  color: #76172f !important;
}

header :is(.navlinks > a,
           .navlinks > .top-products-dd > .top-products-btn,
           nav:not(.navlinks) > a,
           .top-products-menu a):is(:hover, :focus-visible, :active) {
  background: #ead8c2 !important;
  background-color: #ead8c2 !important;
  color: #76172f !important;
}
