/* BoardFaults v6 — editorial imagery and manufacturer coverage */
.visual-break { padding-top: 72px; }
.visual-card { position: relative; overflow: hidden; background: var(--navy); min-height: 390px; }
.visual-card img { width: 100%; height: 390px; object-fit: cover; object-position: center 42%; filter: saturate(.78) contrast(1.05); }
.visual-card::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, #082b32e8 0%, #082b3270 45%, #082b3215 78%); }
.visual-card figcaption { position: absolute; z-index: 2; left: 42px; bottom: 38px; color: #f6f3e8; max-width: 470px; display: grid; gap: 11px; }
.visual-card figcaption span,
.method-photo figcaption,
.partner-photo figcaption { color: var(--lime); letter-spacing: .15em; font-size: 9px; font-weight: 800; }
.visual-card figcaption strong { letter-spacing: -.045em; font-size: 31px; line-height: 1.08; }

.method-photo { position: relative; overflow: hidden; margin: 38px 0 0; max-width: 430px; height: 210px; background: var(--navy); }
.method-photo img { width: 100%; height: 100%; object-fit: cover; filter: saturate(.76) contrast(1.08); }
.method-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #082b32aa 0%, transparent 58%); }
.method-photo figcaption { position: absolute; z-index: 2; left: 18px; bottom: 15px; color: #e7f5c7; }

.brand-logo-chip { min-height: 100px; }
.brand-logo-wrap { min-width: 0; display: flex; flex: 1; flex-direction: column; align-items: flex-start; justify-content: center; gap: 7px; }
.brand-logo-wrap img { display: block; width: auto; max-width: 142px; height: 30px; object-fit: contain; object-position: left center; }
.brand-logo-wrap img[src$="promethean.png"] { height: 34px; }
.brand-logo-wrap img[src$="viewsonic.svg"] { height: 25px; }
.brand-logo-wrap img[src$="clevertouch.svg"] { height: 31px; }
.brand-logo-wrap small { color: #738585; text-transform: uppercase; letter-spacing: .1em; font-size: 8px; font-weight: 700; }
.trademark-note { color: #879594; max-width: 820px; margin: 18px 0 0; font-size: 10px; line-height: 1.55; }

.partner-photo { position: relative; overflow: hidden; margin: 30px 0 0; height: 205px; border: 1px solid #dbe8de24; }
.partner-photo img { width: 100%; height: 100%; object-fit: cover; object-position: center 52%; filter: saturate(.72) contrast(1.05); }
.partner-photo::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, #082b32c9 0%, transparent 67%); }
.partner-photo figcaption { position: absolute; z-index: 2; left: 18px; bottom: 15px; color: #d8eead; }

@media (max-width: 800px) {
  .visual-break { padding-top: 45px; }
  .visual-card, .visual-card img { min-height: 320px; height: 320px; }
  .visual-card figcaption { left: 24px; right: 24px; bottom: 25px; }
  .visual-card figcaption strong { font-size: 26px; }
  .method-photo { max-width: none; }
  .brand-logo-chip { min-height: 92px; }
  .brand-logo-wrap img { max-width: 125px; }
  .partner-photo { height: 240px; }
}

@media (max-width: 480px) {
  .visual-card, .visual-card img { min-height: 285px; height: 285px; }
  .visual-card figcaption strong { font-size: 22px; }
  .visual-card::after { background: linear-gradient(0deg, #082b32e8 0%, #082b3235 78%); }
  .brand-logo-wrap img { max-width: 150px; }
  .partner-photo { height: 210px; }
}

.legal-identity {
  flex-basis: 100%;
  margin: -14px 0 22px;
  color: #879594;
  font-size: 10px;
  line-height: 1.55;
}

.footer { flex-wrap: wrap; padding-top: 28px; padding-bottom: 28px; }
.footer-links { flex-wrap: wrap; justify-content: flex-end; }

@media (max-width: 800px) {
  .legal-identity { order: 4; margin: 0; }
}
