* { box-sizing: border-box; }
body { color: #172a40; }
a { text-underline-offset: 4px; }
a:focus-visible { outline: 3px solid #b91540; outline-offset: 5px; }
.topbar { padding: 20px max(24px, calc((100% - 1240px) / 2)); flex-wrap: wrap; }
.brand { text-decoration: none; font-size: 16px; letter-spacing: 0; }
.nav { flex-wrap: wrap; gap: 18px; }
.nav a { text-decoration: none; }
.model-intro, .model-overview, .section { max-width: 1290px; margin: 0 auto; padding: 40px 25px; }
.model-intro { padding-bottom: 15px; }
.breadcrumbs { display: flex; flex-wrap: wrap; gap: 10px; color: #526171; font-size: 13px; margin-bottom: 34px; }
.eyebrow { letter-spacing: 0; color: #b91540; }
h1 { font-size: 54px; margin: 12px 0; letter-spacing: 0; }
h2 { font-size: 28px; line-height: 1.25; letter-spacing: 0; }
h3 { font-size: 20px; line-height: 1.4; }
.model-subtitle { font-size: 23px; line-height: 1.4; margin: 0; }
.model-overview { display: grid; grid-template-columns: 1.1fr 1fr; gap: 55px; align-items: start; padding-top: 20px; }
figure { margin: 0; }
figure img { display: block; width: 100%; height: 400px; object-fit: contain; background: #f6f6f6; padding: 15px; }
figcaption, .model-note { font-size: 12px; line-height: 1.6; color: #526171; margin-top: 14px; }
.model-summary { font-size: 17px; line-height: 1.7; margin-top: 0; }
.quick-specs { margin: 20px 0 26px; }
.quick-specs div { display: grid; grid-template-columns: 130px 1fr; gap: 16px; border-bottom: 1px solid #dbe0e4; padding: 13px 0; font-size: 14px; }
dt { color: #526171; }
dd { margin: 0; font-weight: 600; }
.button { border-radius: 4px; font-size: 14px; font-weight: 700; }
.button.primary { background: #bc173e; }
.text-link { display: block; margin-top: 20px; font-size: 14px; font-weight: 600; }
.model-specifications { border-top: 1px solid #dbe0e4; }
table { border-collapse: collapse; width: 100%; max-width: 900px; margin-top: 25px; font-size: 14px; }
caption { text-align: left; color: #526171; padding-bottom: 12px; font-size: 13px; }
th, td { text-align: left; padding: 17px; border-bottom: 1px solid #dbe0e4; vertical-align: top; overflow-wrap: anywhere; }
th { width: 30%; }
tr:nth-child(odd) { background: #f4f6f7; }
.muted { max-width: none; padding-left: max(25px, calc((100% - 1240px) / 2)); padding-right: max(25px, calc((100% - 1240px) / 2)); background: #f3f5f6; }
.model-support-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; }
.related-title { margin-top: 50px; }
.related-models { list-style: none; padding: 0; display: flex; flex-wrap: wrap; gap: 25px; line-height: 1.7; }
.skip-link { position: absolute; top: -80px; background: white; padding: 14px; }
.skip-link:focus { top: 8px; z-index: 2; }
.footer { background: #14283a; padding: 35px max(25px, calc((100% - 1240px) / 2)); color: white; font-size: 14px; line-height: 1.7; }
@media (max-width: 760px) {
  .model-overview, .model-support-grid { grid-template-columns: 1fr; gap: 30px; }
  .model-intro, .model-overview, .section { padding: 28px 20px; }
  .model-intro { padding-bottom: 0; }
  .model-subtitle { font-size: 20px; }
  h1 { font-size: 40px; }
  h2 { font-size: 25px; }
  figure img { height: 280px; }
  .topbar { padding: 18px 20px; }
  .nav { font-size: 13px; gap: 16px; }
  .quick-specs div { grid-template-columns: 110px 1fr; }
  th, td { padding: 12px 9px; }
}
@media print { .topbar, .actions, .skip-link { display: none; } .model-overview { grid-template-columns: 1fr 1fr; gap: 25px; } a { color: #172a40; } }
