/* Scoped to the home, materials and contact buyer journey. */
.buyer-start { border-bottom: 1px solid var(--tech-line); }
.buyer-start-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 30px; }
.buyer-start-grid > a { display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--tech-line); border-top: 3px solid var(--tech-cyan); text-decoration: none; background: var(--tech-panel); color: var(--tech-text); }
.buyer-start-grid > a:hover { border-color: var(--tech-cyan); }
.buyer-start-grid span { color: var(--tech-cyan); font-size: .8rem; font-weight: 700; }
.buyer-start-grid h3 { font-size: 1.25rem; line-height: 1.45; margin: 16px 0 10px; }
.buyer-start-grid p { color: var(--tech-muted); margin: 0 0 24px; }
.buyer-start-grid b { margin-top: auto; color: var(--tech-cyan); }
.buyer-start-grid > a:focus-visible, .comparison-scroll:focus-visible, .photo-preparation summary:focus-visible { outline: 3px solid var(--tech-cyan); outline-offset: 4px; }
.material-comparison, .contact-company, .inquiry-next { min-width: 0; }
#material-comparison, #buyer-start { scroll-margin-top: 100px; }
.comparison-scroll { width: 100%; max-width: 100%; overflow-x: auto; border: 1px solid var(--tech-line); margin-top: 20px; }
.comparison-scroll table { width: 100%; min-width: 680px; border-collapse: collapse; text-align: left; line-height: 1.65; }
.comparison-scroll caption { padding: 18px; text-align: left; font-weight: 700; background: #102538; color: var(--tech-text); }
.comparison-scroll th, .comparison-scroll td { padding: 20px; vertical-align: top; border-bottom: 1px solid var(--tech-line); }
.comparison-scroll thead th { background: #102538; color: var(--tech-text); }
.comparison-scroll th[scope=row] { width: 20%; }
.comparison-scroll td:nth-child(2) { width: 23%; }
.comparison-scroll td:nth-child(3) { width: 40%; }
.comparison-scroll tbody tr:nth-child(even) { background: var(--tech-panel); }
.comparison-scroll a { font-weight: 700; color: var(--tech-cyan); }
.comparison-scroll-help { font-size: .85rem; color: var(--tech-muted); }
.contact-company, .inquiry-next { border-top: 1px solid var(--tech-line); margin-top: 28px; padding-top: 24px; }
.contact-layout-two-paths { grid-template-areas: "intro forms" "support forms"; grid-template-rows: auto 1fr; row-gap: 24px; }
.contact-layout-two-paths .contact-intro { grid-area: intro; min-width: 0; }
.contact-layout-two-paths .inquiry-paths { grid-area: forms; min-width: 0; }
.contact-layout-two-paths .inquiry-panel, .contact-layout-two-paths .project-assessment { min-width: 0; width: 100%; background: var(--tech-panel); color: var(--tech-text); border-color: var(--tech-line); }
.contact-layout-two-paths .inquiry-panel-quick { border-top-color: var(--tech-cyan); }
.contact-layout-two-paths .inquiry-panel > p:not(.eyebrow), .contact-layout-two-paths .project-assessment summary span, .contact-layout-two-paths .privacy, .contact-layout-two-paths .field-help { color: var(--tech-muted); }
.contact-layout-two-paths form { min-width: 0; width: 100%; border: 0; background: transparent; color: var(--tech-text); }
.contact-layout-two-paths .field input[type=file] { max-width: 100%; background: #06101a; }
.contact-layout-two-paths .success { background: #d8eee4; color: #18221f; }
.contact-layout-two-paths .error { color: #ffb8a9; }
.contact-support { grid-area: support; min-width: 0; }
.contact-support .contact-company { margin-top: 0; }
.contact-company h2, .inquiry-next h2 { font-size: 1.25rem; line-height: 1.5; margin: 0 0 16px; }
.contact-company p, .contact-company address, .inquiry-next p { font-size: .95rem; line-height: 1.8; }
.contact-company address { font-style: normal; overflow-wrap: anywhere; }
.contact-company .contact-address-label { margin-bottom: 4px; color: var(--tech-muted); }
.inquiry-next ol { padding-left: 24px; }
.inquiry-next li { margin-bottom: 20px; padding-left: 4px; }
.inquiry-next p { margin: 6px 0 0; color: var(--tech-muted); }
.photo-preparation { margin: 20px 0; padding: 16px; border: 1px solid var(--tech-line); }
.photo-preparation summary { cursor: pointer; font-weight: 700; }
.photo-preparation p { font-size: .9rem; line-height: 1.8; margin-bottom: 0; }
@media (max-width: 760px) {
  .contact-layout-two-paths { grid-template-areas: "intro" "forms" "support"; grid-template-rows: auto; }
  .buyer-start-grid { grid-template-columns: 1fr; gap: 14px; }
  .buyer-start-grid > a { padding: 22px; }
  .comparison-scroll th, .comparison-scroll td { padding: 14px; }
}
