/* White paper and the site's 32 / 160px technical drafting grid. */
.hardware-page {
  --bg:#fff; --surface:#fff; --card:#fff; --white:#fff; --card-hover:#f3f4f5;
  --text:#171716; --muted:#4d535a; --dim:#626b75;
  --border:#d9dde1; --border-md:#a8adb3; --accent-ink:#20201e;
  background:#fff;
}
.hardware-page main { position:relative; isolation:isolate; }
.hardware-page main::before {
  content:''; position:absolute; inset:0; z-index:-1; pointer-events:none;
  background-image:linear-gradient(rgba(28,39,51,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(28,39,51,.06) 1px,transparent 1px),linear-gradient(rgba(28,39,51,.025) 1px,transparent 1px),linear-gradient(90deg,rgba(28,39,51,.025) 1px,transparent 1px);
  background-size:160px 160px,160px 160px,32px 32px,32px 32px;
}
.hardware-page .breadcrumb,.hardware-page .detail-hero,.hardware-page .detail-section { max-width:1560px; padding-inline:clamp(24px,3.6vw,64px); }
.hardware-page .breadcrumb { padding-top:70px; font:400 12px/1.6 Inter,sans-serif; text-transform:none; letter-spacing:0; }
.hardware-page .detail-hero { align-items:start; padding-top:45px; padding-bottom:80px; gap:7vw; }
.hardware-page .detail-hero>* { min-width:0; }
.hardware-page .hero-title { font:400 clamp(52px,6.7vw,100px)/.98 Inter,sans-serif; letter-spacing:-.06em; text-transform:none; margin-bottom:30px; }
.hardware-page .hero-title em { color:inherit; }
.hardware-page .hero-tagline { font-size:23px; line-height:1.4; font-weight:400; letter-spacing:-.025em; }
.hardware-page .hero-desc { font-size:15px; line-height:1.8; }
.hardware-page .hero-eyebrow,.hardware-page .section-eyebrow { font-weight:400; color:var(--dim); }
.hardware-page .hero-eyebrow::before,.hardware-page .section-eyebrow::before { display:none; }
.hardware-page .hero-stats { grid-template-columns:repeat(2,minmax(0,1fr)); background:transparent; border-inline:0; gap:0; }
.hardware-page .hero-stat { background:transparent; padding:24px 14px 24px 0; border-bottom:1px solid var(--border); }
.hardware-page .hero-stat:nth-child(even) { border-left:1px solid var(--border); padding-left:25px; }
.hardware-page .hero-stat-num { font:400 30px/1.2 Inter,sans-serif; }
.hardware-page .hero-stat-label { line-height:1.6; }
.hardware-page .conv-card { background:#fff; box-shadow:none; border-radius:0; }
.hardware-page .conv-head { background:#fff; color:var(--text); border-color:var(--border); }
.hardware-page .conv-head-title { font-weight:400; }
.hardware-page .conv-body { padding:26px; }
.hardware-page .conv-field label,.hardware-page .cs-tog-lab { font:400 12px/1.5 Inter,sans-serif; text-transform:none; letter-spacing:0; color:var(--muted); }
.hardware-page .conv-field select { min-height:48px; font:400 16px/1.5 Inter,sans-serif; background:#fff; }
.hardware-page .sel-mat { gap:6px; border:0; background:transparent; }
.hardware-page .sel-mat button { min-height:44px; border:1px solid var(--border-md); font:400 12px/1.5 Inter,sans-serif; letter-spacing:0; text-transform:none; }
.hardware-page .sel-mat button.on { background:#20201e; border-color:#20201e; }
.hardware-page .sel-hint { font:400 12px/1.6 Inter,sans-serif; }
.hardware-page .conv-out { background:#fff; border:0; border-top:1px solid var(--border); }
.hardware-page .conv-out-main { padding:24px 0; }
.hardware-page .conv-out-big { font:400 clamp(40px,4vw,58px)/1.1 Inter,sans-serif; color:var(--text); }
.hardware-page .conv-out-alt { font:400 14px/1.6 Inter,sans-serif; }
.hardware-page .mv-list { background:transparent; gap:0; }
.hardware-page .mv-row { border-top:1px solid var(--border); padding:16px 0; }
.hardware-page .mv-v { font-size:13px; line-height:1.7; }
.hardware-page .conv-stock { padding:20px 0 0; }
.hardware-page .detail-section { padding-block:80px; }
.hardware-page .section-title { font:400 clamp(32px,3.6vw,54px)/1.12 Inter,sans-serif; letter-spacing:-.045em; text-transform:none; }
.hardware-page .section-sub { font-size:16px; line-height:1.8; max-width:1050px; }
.hardware-page .gc-toolbar { position:static; gap:14px 18px; background:#fff; padding:22px; border:1px solid var(--border); }
.hardware-page .gc-tool-label,.hardware-page .gc-check { font:400 12px/1.5 Inter,sans-serif; letter-spacing:0; text-transform:none; }
.hardware-page .gc-seg { background:transparent; border:0; gap:6px; }
.hardware-page .gc-seg button,.hardware-page .gc-ghost-btn { min-height:44px; padding:10px 14px; border:1px solid var(--border-md); font:400 12px/1.5 Inter,sans-serif; letter-spacing:0; text-transform:none; }
.hardware-page .gc-seg button.on { background:#20201e; }
.hardware-page .gc-check input { position:static; opacity:1; pointer-events:auto; width:16px; height:16px; accent-color:#20201e; }
.hardware-page .gc-check-box { display:none; }
.hardware-page .gc-count { font-size:11px; letter-spacing:0; }
.hardware-page .gc-wrap { overflow:auto; max-height:680px; }
.hardware-page .gc-table { min-width:1320px; }
.hardware-page .gc-table th,.hardware-page .gc-table td { background:#fff; }
.hardware-page .gc-table th { position:sticky; top:0; z-index:2; }
.hardware-page .gc-row:hover>td { background:#f7f8f9; }
.hardware-page .gc-row { cursor:default; }
.hardware-page .gc-th-name { font:500 12px/1.5 Inter,sans-serif; letter-spacing:0; text-transform:none; }
.hardware-page .gc-th-std { font:400 10px/1.5 Inter,sans-serif; letter-spacing:0; }
.hardware-page .hole-cell { box-shadow:none; }
.hardware-page .hole-v,.hardware-page .hw-thread-name { font-weight:500; }
.hardware-page .hw-view { min-width:148px; width:148px; }
.hardware-page .hw-view img { width:112px; height:100px; max-width:none; object-fit:contain; background:#fff; border:0; }
.hardware-page .hw-photo-link { display:block; color:var(--muted); text-decoration:none; }
.hardware-page .hw-photo-link:hover { color:var(--text); }
.hardware-page .hw-photo-caption { display:block; margin-top:8px; font:400 10px/1.5 Inter,sans-serif; text-align:center; white-space:normal; }
.hardware-page a.pn { text-decoration:underline; text-underline-offset:4px; }
.hardware-page .hw-mat-sel { min-height:44px; font-weight:400; appearance:auto; }
.hardware-page .vd { border-radius:0; white-space:normal; font-weight:400; }
.hardware-page .vd-note { line-height:1.7; }
.hardware-page .ty-head { display:grid; grid-template-columns:150px minmax(0,1fr); align-items:center; padding:26px; gap:26px; background:#fff; }
.hardware-page .ty-swatch { display:none; }
.hardware-page .ty-photo { display:block; width:150px; height:150px; border:0; background:#fff; }
.hardware-page .ty-photo img { object-fit:contain; padding:8px; }
.hardware-page .ty-title { font:400 30px/1.15 Inter,sans-serif; letter-spacing:-.035em; }
.hardware-page .ty-series { text-transform:none; font-weight:400; letter-spacing:0; }
.hardware-page .ty-what,.hardware-page .ty-when { max-width:850px; font-size:14px; }
.hardware-page .ty-when { border-color:var(--border-md); }
.hardware-page .ty-block+.ty-block { margin-top:44px; }
.hardware-page .pem-source-note { margin:0 0 26px; color:var(--muted); font:400 13px/1.8 Inter,sans-serif; max-width:1050px; }
.hardware-page .pem-source-note a { color:inherit; text-underline-offset:3px; }
.hardware-page .callout,.hardware-page .cl-item,.hardware-page .faq-item { background:#fff; }
.hardware-page .callout h3 { font-weight:400; }
.hardware-page .cl-title { font-weight:500; }
.hardware-page .sticky-cta { position:static; margin:0 auto; max-width:1432px; background:#fff; border-block:1px solid var(--border); box-shadow:none; }
.hardware-page .sticky-cta-text strong { color:var(--text); }
.hardware-page .sticky-cta-text span { color:var(--muted); }
.hardware-page .sticky-cta-btn { background:#20201e; }
.hardware-page main :focus-visible { outline:2px solid #42677d; outline-offset:4px; }
@media(max-width:1000px) { .hardware-page .detail-hero { grid-template-columns:1fr; gap:45px; } .hardware-page .hero-desc,.hardware-page .hero-tagline,.hardware-page .hero-stats { max-width:none; } }
@media(max-width:700px) {
  .hardware-page .detail-section { padding-block:55px; }
  .hardware-page .conv-body { padding:20px; }
  .hardware-page .ty-head { grid-template-columns:1fr; padding:22px; gap:15px; }
  .hardware-page .ty-photo { width:125px; height:125px; }
  .hardware-page .gc-toolbar { padding:18px; }
  .hardware-page .gc-tool-label { width:100%; }
  .hardware-page .gc-seg { flex-wrap:wrap; }
  .hardware-page .gc-wrap { max-height:540px; }
  .hardware-page .mv-row { flex-direction:column; gap:5px; }
  .hardware-page .sticky-cta { margin-inline:24px; }
}
@media print { .hardware-page main::before { display:none; } .hardware-page .gc-wrap { overflow:visible; max-height:none; } .hardware-page .gc-table th { position:static; } .hardware-page .hw-view { display:none; } }
