/* Local product FAQ/callback extension, within Engineering Bay. */
.hc-page-product .hc-pdp-questions--compact { display: block; }
.hc-page-product .hc-questions-heading { display: flex; justify-content: space-between; align-items: start; gap: 24px; margin-bottom: 28px; }
.hc-page-product .hc-questions-heading h2 { margin: 0; text-wrap: balance; }
.hc-page-product .hc-questions-heading > div { text-align: right; }
.hc-page-product .hc-questions-heading .hc-pdp-phone { font-size: 20px; line-height: 28px; margin: 0; }
.hc-page-product .hc-questions-heading .hc-pdp-note { margin: 4px 0 0; font-size: 13px; }
.hc-page-product .hc-questions-grid { display: grid; grid-template-columns: repeat(var(--hc-question-tracks,6), minmax(0, 1fr)); column-gap: 32px; align-items: start; }
.hc-page-product .hc-questions-grid details { grid-column: span 2; border-top: 1px solid var(--c-line); border-bottom: 0; min-width: 0; }
.hc-page-product .hc-questions-grid--five details:nth-child(n+4) { grid-column: span 3; }
.hc-page-product .hc-questions-grid summary { display: flex; align-items: center; justify-content: space-between; gap: 16px; min-height: 88px; padding: 16px 0; font-size: 15px; line-height: 22px; font-weight: 550; touch-action: manipulation; }
.hc-page-product .hc-questions-grid summary::after { content: none; }
.hc-page-product .hc-questions-grid summary svg { flex: 0 0 18px; color: var(--c-ink-2); transform-origin: center; }
.hc-page-product .hc-questions-grid details[open] summary svg { transform: rotate(180deg); }
.hc-page-product .hc-questions-grid details[open] summary { color: var(--c-accent); }
.hc-page-product .hc-questions-grid p { font-size: 14px; line-height: 23px; padding-right: 28px; margin-bottom: 24px; }
.hc-page-product .hc-questions-grid summary:focus-visible { outline: 2px solid var(--c-focus); outline-offset: 4px; }
.hc-page-product .hc-pdp-contact { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 48px; align-items: center; margin-top: 32px; padding: 36px; background: var(--c-bg-soft); border-radius: 10px; }
.hc-page-product .hc-pdp-contact-portrait { margin: 0; align-self: start; }
.hc-page-product .hc-pdp-contact-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 4/5; object-fit: cover; border-radius: 6px; }
.hc-page-product .hc-pdp-contact-portrait figcaption { margin-top: 6px; color: var(--c-ink-2); font-size: 12px; line-height: 18px; }
.hc-page-product .hc-pdp-contact-content { min-width: 0; }
.hc-page-product .hc-pdp-contact-content h2 { margin: 0; font-size: 28px; line-height: 34px; text-wrap: balance; }
.hc-page-product .hc-pdp-contact-lead { max-width: 60ch; margin: 12px 0 24px; color: var(--c-ink-2); font-size: 16px; line-height: 25px; }
.hc-page-product .hc-pdp-contact-fields { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) auto; gap: 16px; align-items: end; }
.hc-page-product .hc-pdp-contact-fields label { display: block; min-width: 0; font-size: 14px; line-height: 20px; font-weight: 550; }
.hc-page-product .hc-pdp-contact-fields label > span { margin-left: 6px; color: var(--c-ink-2); font-size: 12px; font-weight: 400; }
.hc-page-product .hc-pdp-contact-fields input { display: block; width: 100%; min-height: 48px; margin-top: 8px; border: 1px solid var(--c-line); border-radius: 6px; background: var(--c-bg); padding: 12px; color: var(--c-ink); font: inherit; font-size: 16px; line-height: 22px; caret-color: var(--c-accent); }
.hc-page-product .hc-pdp-contact-fields input::placeholder { color: var(--c-ink-2); opacity: 1; font-size: 14px; }
.hc-page-product .hc-pdp-contact-fields input:focus-visible { outline: 2px solid var(--c-focus); outline-offset: 2px; }
.hc-page-product .hc-pdp-contact-submit { display: flex; align-items: center; justify-content: space-between; gap: 24px; min-height: 48px; padding: 12px 20px; }
.hc-page-product .hc-pdp-contact-submit svg { flex-shrink: 0; }
.hc-page-product .hc-pdp-contact-submit:disabled { opacity: .65; cursor: wait; }
.hc-page-product .hc-pdp-contact-consent { margin-top: 20px; }
.hc-page-product .hc-pdp-contact-form .hc-check { min-height: 44px; align-items: center; gap: 10px; margin-bottom: 0; font-size: 12px; line-height: 19px; color: var(--c-ink-2); }
.hc-page-product .hc-pdp-contact-form .hc-check input { flex-shrink: 0; accent-color: var(--c-ink); }
.hc-page-product .hc-pdp-contact-form .hc-check a { text-underline-offset: 3px; }
.hc-page-product .hc-pdp-contact-recall { display: flex; flex-wrap: wrap; align-items: center; gap: 0 16px; }
.hc-page-product .hc-pdp-contact-recall button { border: 0; background: none; padding: 8px 0; min-height: 44px; color: var(--c-ink-2); font: inherit; font-size: 12px; text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.hc-page-product .hc-pdp-contact-recall button[hidden] { display: none; }
.hc-page-product .hc-pdp-contact-status { margin: 0; color: var(--c-ink-2); font-size: 14px; line-height: 22px; }
.hc-page-product .hc-pdp-contact-status:not(:empty) { margin-top: 12px; }
.hc-page-product .hc-pdp-contact-status[data-state="error"] { color: var(--c-accent); }
.hc-page-product .hc-pdp-contact-status[data-state="success"] { color: var(--c-ok); }
.hc-page-product .hc-pdp-contact-test-note { margin: 8px 0 0; color: var(--c-ink-2); font-size: 12px; line-height: 18px; }
.hc-page-product .hc-pdp-contact-form button:focus-visible,
.hc-page-product .hc-pdp-contact-form .hc-check input:focus-visible,
.hc-page-product .hc-pdp-contact-status:focus-visible { outline: 2px solid var(--c-focus); outline-offset: 3px; }
@media (hover: hover) {
  .hc-page-product .hc-questions-grid summary:hover { color: var(--c-accent); }
  .hc-page-product .hc-pdp-contact-recall button:hover { color: var(--c-ink); }
}
@media (max-width: 1000px) {
  .hc-page-product .hc-questions-grid { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0 24px; }
  .hc-page-product .hc-questions-grid details,
  .hc-page-product .hc-questions-grid--five details:nth-child(n+4) { grid-column: auto; }
  .hc-page-product .hc-pdp-contact { grid-template-columns: 180px minmax(0,1fr); gap: 28px; padding: 28px; }
  .hc-page-product .hc-pdp-contact-fields { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .hc-page-product .hc-pdp-contact-submit { grid-column: 1/-1; justify-content: center; }
}
@media (max-width: 600px) {
  .hc-page-product .hc-questions-heading { display: block; margin-bottom: 20px; }
  .hc-page-product .hc-questions-heading > div { text-align: left; margin-top: 16px; }
  .hc-page-product .hc-questions-grid { grid-template-columns: minmax(0,1fr); gap: 0; }
  .hc-page-product .hc-questions-grid summary { min-height: 72px; font-size: 15px; }
  .hc-page-product .hc-pdp-contact { display: block; padding: 24px 20px; margin-top: 28px; }
  .hc-page-product .hc-pdp-contact-portrait { width: 112px; margin-bottom: 24px; }
  .hc-page-product .hc-pdp-contact-portrait figcaption { font-size: 12px; }
  .hc-page-product .hc-pdp-contact-content h2 { font-size: 25px; line-height: 31px; }
  .hc-page-product .hc-pdp-contact-fields { grid-template-columns: minmax(0,1fr); gap: 16px; }
  .hc-page-product .hc-pdp-contact-lead { margin-bottom: 20px; }
}
