/* Final QA: keep desktop composition; stack content and form grids on phones. */
img { max-width: 100%; }
/* Corporate hierarchy and stable visual slots, independent of image availability. */
h1 { font-weight: 700; }
h2, h3 { font-weight: 600; }
html[lang=ar] h1, html[lang=ar] h2, html[lang=ar] h3 { letter-spacing: 0; }
.product-line-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
.product-line-card { display: flex; flex-direction: column; align-items: flex-start; border: 1px solid var(--line); border-top: 3px solid var(--teal); padding: 30px; background: var(--paper); transition: background .2s, border-color .2s; }
.product-line-card:hover { background: #eaf2f3; border-color: var(--teal); }
.product-line-card h3 { font-size: clamp(1.15rem, 1.7vw, 1.4rem); line-height: 1.6; margin: 20px 0 14px; }
.line-index { font: 600 .8rem/1.5 Inter, sans-serif; color: var(--teal); }
.line-count { display: flex; justify-content: space-between; width: 100%; gap: 12px; border-top: 1px solid var(--line); margin-top: auto; padding-top: 22px; font-size: .8rem; }
.product-line-card p { margin-bottom: 30px; font-size: .9rem; }
.product-visual { display: block; aspect-ratio: 4/3; overflow: hidden; background: #edf3f4; margin-bottom: 24px; }
.product-visual img { width: 100%; height: 100%; object-fit: cover; }
.product-reference { height: 100%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 10px; border: 1px solid #d5e2e7; color: var(--navy); background: linear-gradient(135deg,#edf3f4,#f9fbfb); }
.product-reference > span { font-size: .75rem; letter-spacing: .15em; }
.product-reference bdi { font: 600 clamp(1.4rem,2vw,2rem)/1.3 ui-monospace,monospace; text-align: center; overflow-wrap: anywhere; padding-inline: 12px; }
.product-reference small { font-size: .7rem; color: #526577; }
.sector-photo { height: auto; aspect-ratio: 4/3; }
.sector-photo img { width: 100%; height: 100%; object-fit: cover; }
.product-card { min-width: 0; }
.product-card .compare-check { margin-top: auto; }
.product-card .product-foot { margin-top: 14px; }
.utility > .wrap > span { min-width: 0; }
.menu-button, .nav-actions .language { min-width: 44px; min-height: 44px; }
.nav-actions .language { display: inline-flex; align-items: center; justify-content: center; }
main [id] { scroll-margin-top: 110px; }
.vendor-credentials { margin-block: 52px; }
.credentials-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); align-items: start; gap: 20px; margin-top: 32px; }
.credential-card { min-width: 0; border: 1px solid #d8e4e5; border-top: 3px solid var(--teal); border-radius: 8px; padding: 24px; background: #fff; box-shadow: 0 5px 20px #052e4805; }
.credential-heading { display: flex; align-items: flex-start; justify-content: space-between; gap: 14px; min-height: 77px; }
.credential-card h3 { font-family: Inter, Arial, sans-serif; font-size: clamp(1.15rem, 1.7vw, 1.5rem); line-height: 1.3; font-weight: 700; letter-spacing: -.025em; color: var(--navy); text-align: start; margin: 0; }
.credential-platform { display: block; margin-top: 7px; font-size: .68rem; font-weight: 500; letter-spacing: .03em; color: #526577; }
.credential-symbol { flex: 0 0 32px; width: 32px; height: 32px; padding: 5px; border-radius: 6px; color: #34777b; background: #edf5f4; }
.credential-reference { margin: 14px 0 0; padding: 17px 14px; min-height: 94px; border: 1px solid #e2ecec; border-radius: 5px; background: #f4f8f7; }
.credential-card dt, .credential-review-note { color: #526577; font-size: .85rem; }
.credential-card dt { font-size: .7rem; line-height: 1.6; }
.credential-card dd { margin: 6px 0 0; font: 600 clamp(1rem, 1.3vw, 1.15rem)/1.5 Inter, Arial, sans-serif; font-variant-numeric: tabular-nums; letter-spacing: .03em; color: var(--navy); overflow-wrap: anywhere; }
.credential-transfer-note { border-top: 1px solid #e9dfcc; padding-top: 16px; margin-top: 20px; }
.credential-transfer-note > span { display: block; font-size: .7rem; font-weight: 600; color: #754a0b; }
.credential-transfer-note p { margin-top: 10px; font-size: .73rem; line-height: 1.8; color: #754a0b; }
.credential-review-note { margin-top: 24px; }
.credential-label, .compliance-panel .credential-label { display: inline-flex; flex-direction: column; justify-content: center; align-items: center; gap: 12px; width: 164px; min-height: 132px; padding: 24px 16px; border: 0; border-radius: 8px; background: var(--navy); color: white; font: 700 2.3rem/1 Inter, Arial, sans-serif; letter-spacing: .06em; direction: ltr; }
.credential-label small { color: #c4dedf; font-size: .5rem; font-weight: 500; letter-spacing: .12em; line-height: 1.6; text-align: center; }
.compliance-panel { border: 1px solid #d8e4e5; border-radius: 8px; background: #f4f8f7; }
@media (max-width: 1150px) {
  .credentials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .credential-card h3 { font-size: 1.45rem; }
}
@media (max-width: 980px) {
  .credentials-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-header nav { max-height: calc(100dvh - 110px); overscroll-behavior: contain; }
  .site-header nav a { min-height: 48px; display: flex; align-items: center; }
}
@media (max-width: 700px) {
  .product-line-grid { grid-template-columns: minmax(0, 1fr); }
  .product-line-card { padding: 24px; }
  .product-line-card h3 { font-size: 1.25rem; }
  .utility > .wrap { flex-wrap: wrap; justify-content: center; gap: 4px 16px; padding-block: 8px; text-align: center; }
  .brand-lines, .calculator-grid, .case-grid, .catalogue-layout,
  .company-grid, .compliance-panel, .contact-grid, .doc-guide,
  .e-hero-grid, .estimate-list article, .facts > div, .filter-bar,
  .filters, .finder, .footer-grid, .form-grid, .green-inner, .intro-grid,
  .principles, .product-grid, .product-overview, .project-editorial,
  .project-placeholder, .quick-access, .resources-grid, .rfq-layout,
  .rfq-progress, .sector-detail, .sector-grid, .solution-lead,
  .summary-data, .system-strip, .system-table-block, .task-paths,
  .technical-links, .three-col, .trust-row, .work-grid, .credentials-grid,
  .rfq-line .form-grid, .form-panel > .form-grid {
    grid-template-columns: minmax(0, 1fr);
  }
  .quick-access > *, .technical-links > *, .rfq-line .form-grid > * {
    grid-column: 1 / -1;
  }
  .quick-access > a:nth-child(3) { border-inline-start: 0; padding-inline-start: 0; }
  .footer-grid > div:last-child { display: block; }
  .footer-grid a { min-height: 44px; padding-block: 10px; }
  .doc-guide article + article { border-inline-start: 0; border-top: 1px solid var(--line); }
  .credential-card { padding: 22px; }
  .credential-heading { min-height: 65px; }
  .credential-reference { min-height: 0; }
  .compliance-panel { padding: 24px; }
  .compliance-panel > .button { grid-column: auto; width: fit-content; }
  input, select, textarea { font-size: 16px; }
}
