/* Version E: focused corrections from the September design audit. */
@media (max-width: 1000px) {
  /* A backdrop filter traps fixed descendants inside the header. */
  .site-header { -webkit-backdrop-filter: none; backdrop-filter: none; }
  .primary-nav { height: 100vh; height: 100dvh; box-sizing: border-box; overscroll-behavior: contain; padding-bottom: max(32px, env(safe-area-inset-bottom)); }
  .primary-nav > a, .primary-nav .nav-actions { flex-shrink: 0; }
}

.contact-aside { gap: 0; }
.contact-aside > .e-person-message { margin: 12px 0 14px; }
.contact-aside > .e-email { margin-bottom: 20px; }
.contact-aside > .brief-panel { margin-top: 28px; }
.e-enquiry-team { gap: 0; }
@media (min-width: 900px) {
  .contact-grid > .form-panel { grid-column: 2; grid-row: 1; }
  .contact-grid > .contact-aside { grid-column: 1; grid-row: 1; }
}
@media (max-width: 899px) {
  .contact-section { padding-top: 0; }
  .contact-grid { gap: 40px; }
  .contact-aside { border-top: 1px solid var(--line); padding-top: 28px; }
}

.e-library .article-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 40px; margin: 0; }
.e-library .article-card { display: flex; grid-row: auto; flex-direction: column; margin: 0; border: 0; border-bottom: 1px solid var(--line); background: transparent; overflow: visible; }
.e-library .article-card .card-media { aspect-ratio: 16 / 9; }
.e-library .article-card .card-body { display: flex; grid-row: auto; flex-direction: column; padding: 22px 0 26px; }
.e-library .article-card .card-body h3 { font-size: clamp(22px, 2.1vw, 28px); line-height: 1.25; max-width: 26em; }
.e-library .article-card .card-body p { max-width: 46em; }
.e-library .article-card .card-link { margin-top: 0; padding-top: 18px; }
.e-library .article-card:hover { transform: none; box-shadow: none; border-color: var(--green); }
.e-library .article-card:hover h3, .e-library .article-card:focus-visible h3 { color: var(--blue); }
.e-library .article-card:hover .card-media img { transform: none; }
@media (max-width: 700px) {
  .e-library .article-grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
}

.e-catalog-related { border-block: 1px solid var(--line); }
.e-catalog-related .wrap { display: flex; flex-wrap: wrap; gap: 8px 32px; padding-block: 18px; }
.detail-photo .photo-frame.contain { aspect-ratio: 1385 / 1136; background: #202629; }
.detail-photo .photo-frame.contain img { object-fit: contain; }
