/* V334: all light boxes match the Multi-product RFQ commercial-card style. */

body.v64-medtech-layout {
  --ths-light-box-copy-size: 15px;
}

/*
 * Match every semantic homepage heading to the compact typography used by
 * “Built for professional purchasing enquiries”. Colours, margins and text
 * alignment remain section-specific so headings retain the correct contrast
 * and layout in their existing containers.
 */
body.v64-medtech-layout h1,
body.v64-medtech-layout h2,
body.v64-medtech-layout h3 {
  font-family: "Times New Roman", Times, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}

/* V345: final standalone email-verification button component.
   Deliberately more specific than #rfq .rfq-area * so no legacy light-box
   or universal button rule can override its colours or states. */
html body #rfq .rfq-area button.ths-email-verify-btn,
html body button.ths-email-verify-btn {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 13px 22px !important;
  background: #76172f !important;
  background-color: #76172f !important;
  border: 1px solid #76172f !important;
  border-radius: 14px !important;
  box-shadow: 0 7px 18px rgba(91, 16, 36, .12) !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  font-family: "Nunito Sans", Arial, Helvetica, sans-serif !important;
  font-size: 14px !important;
  font-style: normal !important;
  font-weight: 700 !important;
  letter-spacing: normal !important;
  line-height: 1.2 !important;
  text-align: center !important;
  text-decoration: none !important;
  text-transform: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
  transform: none !important;
  transition: background-color .2s ease, border-color .2s ease, color .2s ease,
    box-shadow .2s ease !important;
}

html body #rfq .rfq-area button.ths-email-verify-btn:is(:hover, :focus-visible),
html body button.ths-email-verify-btn:is(:hover, :focus-visible) {
  background: #ead8c2 !important;
  background-color: #ead8c2 !important;
  border-color: #ead8c2 !important;
  color: #76172f !important;
  -webkit-text-fill-color: #76172f !important;
  text-decoration-color: #76172f !important;
  transform: none !important;
}

html body #rfq .rfq-area button.ths-email-verify-btn:focus-visible,
html body button.ths-email-verify-btn:focus-visible {
  outline: 3px solid rgba(118, 23, 47, .28) !important;
  outline-offset: 2px !important;
}

html body #rfq .rfq-area button.ths-email-verify-btn:active,
html body button.ths-email-verify-btn:active {
  background: #ead8c2 !important;
  background-color: #ead8c2 !important;
  border-color: #ead8c2 !important;
  color: #76172f !important;
  -webkit-text-fill-color: #76172f !important;
  box-shadow: 0 3px 10px rgba(91, 16, 36, .12) !important;
}

html body #rfq .rfq-area button.ths-email-verify-btn:disabled,
html body button.ths-email-verify-btn:disabled {
  background: #76172f !important;
  background-color: #76172f !important;
  border-color: #76172f !important;
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  cursor: wait !important;
  opacity: .65 !important;
}

/* Restore the original compact treatment of the six manufacturing process cards. */
#manufacturing .process-card h3 {
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1.25 !important;
}

/* Times New Roman for the heading text in all nine international-buyer boxes. */
#international-buyers .commercial-card > b,
#international-buyers .buyer-step > strong,
#international-buyers .v54-trust > b {
  font-family: "Times New Roman", Times, serif !important;
}

/* Remove shadows from homepage boxes without changing their background colours. */
#ceo-message .about-card,
#manufacturing .process-card,
#about .about-value,
#quality .quality-main,
#quality .certificate-warning,
#quality .quality-points > div,
#international-buyers .commercial-card,
#international-buyers .buyer-step,
#international-buyers .v54-trust,
#rfq .rfq-area,
#cutting-edge-facility .ths-facility-card,
.certificate-access-card,
.certificate-viewer-card,
.product-modal-card {
  box-shadow: none !important;
}

/* Keep all light/white-box content black. */
#manufacturing .process-card *,
#about .about-value *,
#international-buyers .commercial-card *,
#international-buyers .buyer-step *,
#international-buyers .v54-trust *,
#rfq .rfq-area *,
#cutting-edge-facility .ths-facility-card * {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}

/*
 * Apply the exact Multi-product RFQ card treatment to every light box.
 * Genuine maroon panels are deliberately excluded from this selector.
 */
#manufacturing .process-card,
#about .about-value,
#international-buyers .commercial-card,
#international-buyers .buyer-step,
#international-buyers .v54-trust,
#rfq .rfq-area,
#cutting-edge-facility .ths-facility-card,
.certificate-access-card,
.certificate-viewer-card,
.product-modal-card {
  background: #fff !important;
  background-image: none !important;
  border: 1px solid #d7e9f4 !important;
  border-radius: 16px !important;
  padding: 20px !important;
  box-shadow: none !important;
  overflow: hidden;
}

#manufacturing .process-card:hover,
#about .about-value:hover,
#international-buyers .commercial-card:hover,
#international-buyers .buyer-step:hover,
#international-buyers .v54-trust:hover,
#rfq .rfq-area:hover,
#cutting-edge-facility .ths-facility-card:hover {
  border-color: #d7e9f4 !important;
  box-shadow: none !important;
  transform: none !important;
}

/* Match light-box copy to the body text below the Quality section heading. */
#manufacturing .process-card p,
#about .about-value b,
#about .about-value span,
#international-buyers .commercial-card b,
#international-buyers .commercial-card span,
#international-buyers .buyer-step strong,
#international-buyers .buyer-step span,
#international-buyers .v54-trust b,
#international-buyers .v54-trust span,
#rfq .rfq-area p,
#rfq .rfq-area label,
#rfq .rfq-area input,
#rfq .rfq-area select,
#rfq .rfq-area textarea,
#cutting-edge-facility .ths-facility-card figcaption {
  font-size: var(--ths-light-box-copy-size) !important;
  line-height: 1.65 !important;
}

/* Permanent contrast rule: every genuine maroon box uses white text. */
#ceo-message .about-card,
#ceo-message .about-card *,
#quality .quality-main,
#quality .quality-main *,
#quality .certificate-warning,
#quality .certificate-warning * {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  text-decoration-color: currentColor !important;
}

/* The CEO message heading is slightly smaller than the main page headings. */
#ceo-message .ceo-message-inline > h3 {
  font-size: 30px !important;
}

/* V349: CEO copy is 2px tighter, with reduced empty space below the signature. */
#ceo-message .ceo-message-inline > p {
  line-height: calc(1.4em - 2px) !important;
}

#ceo-message .ceo-message-signature {
  margin-bottom: 0 !important;
}

#ceo-message .about-card {
  padding-bottom: 18px !important;
}

/* V350: tighten the gap before the heading below the CEO/manufacturing row. */
.ths-company-manufacturing-row {
  padding-bottom: 28px !important;
}

/* Keep the requested major homepage headings consistent and moderately sized. */
#about-section-heading,
#manufacturing-section-heading,
#international-buyers-section-heading,
#cutting-edge-facility .ths-facility-wrap > h2,
.homepage-major-heading {
  margin: 0 0 14px !important;
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  font-family: "Times New Roman", Times, serif !important;
  font-size: 36px !important;
  font-weight: 400 !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  text-align: left !important;
  text-transform: none !important;
}

/* International-buyer trust cards: headings and copy use the normal body size. */
#international-buyers .v54-trust,
#international-buyers .v54-trust b,
#international-buyers .v54-trust span {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}

#international-buyers .v54-trust b,
#international-buyers .v54-trust span {
  font-size: var(--ths-light-box-copy-size) !important;
  line-height: 1.65 !important;
}

#international-buyers .v54-trust b {
  margin-bottom: 6px !important;
}

/* Professional purchasing introduction uses black copy on its light background. */
#international-supply.professional-purchasing-section h2,
#international-supply.professional-purchasing-section p {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}

/* High-specificity V323 safeguard against older maroon purchasing-copy rules. */
html body #international-supply.professional-purchasing-section
  .professional-purchasing-title-black,
html body #international-supply.professional-purchasing-section
  .professional-purchasing-text-black {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
}

/* About profile-card headings. */
#about .about-value > b {
  color: #000 !important;
  -webkit-text-fill-color: #000 !important;
  font-family: "Times New Roman", Times, serif !important;
}

/* Certification heading and the three Quality Commitment point headings. */
#quality .certificate-heading-link,
#quality .quality-points > div > b {
  font-family: "Times New Roman", Times, serif !important;
}

@media (max-width: 760px) {
  body.v64-medtech-layout {
    --ths-light-box-copy-size: 14px;
  }

  body.v64-medtech-layout h1,
  body.v64-medtech-layout h2,
  body.v64-medtech-layout h3,
  #about-section-heading,
  #manufacturing-section-heading,
  #international-buyers-section-heading,
  #cutting-edge-facility .ths-facility-wrap > h2,
  .homepage-major-heading {
    font-size: 36px !important;
    line-height: 1.22 !important;
  }
}

/* V355: Index body copy is black except inside maroon boxes and buttons. */
body.v64-medtech-layout main :is(
  p, li, span, label, figcaption, small, dt, dd, td, th
) {
  color: #000000 !important;
  -webkit-text-fill-color: #000000 !important;
}

/* Preserve white copy on genuine maroon content boxes. */
body.v64-medtech-layout main #ceo-message .about-card,
body.v64-medtech-layout main #ceo-message .about-card *,
body.v64-medtech-layout main #quality .quality-main,
body.v64-medtech-layout main #quality .quality-main *,
body.v64-medtech-layout main #quality .certificate-warning,
body.v64-medtech-layout main #quality .certificate-warning * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
  text-decoration-color: currentColor !important;
}

/* Preserve the website button palette, including nested button labels. */
body.v64-medtech-layout main :is(
  .btn, .small-btn, .v55-detail-link, .prompt-rfq-btn, .filter-btn,
  .main-view-range, .external-email-link, .commercial-btn-primary,
  .commercial-btn-secondary, .ths-visitor-stats__button,
  button:not(.top-products-btn), input[type="submit"], input[type="button"],
  input[type="reset"], a[role="button"]
):not(:hover):not(:focus-visible),
body.v64-medtech-layout main :is(
  .btn, .small-btn, .v55-detail-link, .prompt-rfq-btn, .filter-btn,
  .main-view-range, .external-email-link, .commercial-btn-primary,
  .commercial-btn-secondary, .ths-visitor-stats__button,
  button:not(.top-products-btn), input[type="submit"], input[type="button"],
  input[type="reset"], a[role="button"]
):not(:hover):not(:focus-visible) * {
  color: #ffffff !important;
  -webkit-text-fill-color: #ffffff !important;
}

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