/* Model hubs: explicit light surfaces, independent of legacy dark selectors. */
body.model-hub > main {max-width:1180px;padding:36px 24px 72px}
.model-hub .article-hero {padding:22px 0 30px;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:36px}
.model-hub .article-intro h1 {font-size:clamp(40px,4.5vw,64px);line-height:1.04;letter-spacing:-.045em}
.model-hub .standfirst {font-size:18px;line-height:1.6;color:#536058}
.model-hub .actions .primary {color:#101512!important;line-height:1.4;min-height:44px}
.model-hub .hub-visual {margin:0;background:#fff;border:1px solid #d6ded7;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #1b2b2014}
.model-hub .hub-visual img {display:block;width:100%;height:auto;aspect-ratio:1484/1060;object-fit:contain;background:#fff;filter:none;mask-image:none;-webkit-mask-image:none}
.model-hub .hub-visual figcaption {position:static;padding:13px 18px;background:#fff;border-top:1px solid #e6ebe4;color:#4e5b52;font-size:13px;line-height:1.5;text-align:left}
.model-hub .facts {margin:0;grid-template-columns:repeat(4,minmax(0,1fr));border:1px solid #d6ded7;border-radius:12px;overflow:hidden;background:#fff}
body.model-hub > main > .facts > div {background:#fff;color:#101512;border-color:#d6ded7;padding:20px 22px;gap:8px;min-width:0}
.model-hub .facts > div:last-child {border-right:0}
.model-hub .facts small {color:#526048;font-size:12px;line-height:1.4;font-weight:700;letter-spacing:.08em}
.model-hub .facts b,.model-hub .facts strong {color:#101512;font-size:18px;line-height:1.4}
.model-hub section.os-page {padding:36px 0 0}
.model-hub .table-scroll {width:100%;max-width:100%;overflow-x:auto;background:#fff;border:1px solid #d6ded7;border-radius:12px;margin:20px 0;overscroll-behavior-x:contain}
.model-hub .table-scroll:focus-visible {outline:3px solid #506d00;outline-offset:3px}
.model-hub .table-scroll .data-table {display:table;overflow:visible;min-width:600px;width:100%;margin:0;border:0;color:#101512;background:#fff}
.model-hub .data-table th {background:#f0f5e9;color:#405b00;font-size:14px;line-height:1.5}
.model-hub .data-table td {background:#fff;color:#18211b;font-size:16px;line-height:1.5}
.model-hub .table-scroll-hint {display:none}
.model-hub .reading {padding:42px 0 0}
.model-hub .prose p,.model-hub .prose li,.model-hub .rail-card p {color:#4e5b52}
.model-hub .prose strong,.model-hub .note b {color:#101512}
.model-hub .prose p,.model-hub .prose li {font-size:17px;line-height:1.65}
.model-hub .notice,.model-hub .note {color:#344139!important;background:#fff!important}
.model-hub .page-intro h1 {font-size:clamp(40px,5vw,64px);line-height:1.06}
@media(max-width:1000px){
  .model-hub .os-header {gap:20px}
  .model-hub .nav-toggle {display:grid;place-content:center;margin-left:auto;min-width:44px;min-height:44px}
  .model-hub .nav-toggle span {display:block;width:25px;height:1px;background:#101512;margin:6px}
  .model-hub .header-search {display:none}
  .model-hub .os-nav {display:none;position:absolute;top:100%;left:0;right:0;margin:0;padding:16px 24px;flex-direction:column;align-items:stretch;gap:8px;background:#fff;border-bottom:1px solid #d6ded7;box-shadow:0 12px 24px #1b2b2014}
  .model-hub .os-nav.open {display:flex}
  .model-hub .os-nav a {font-size:16px;min-height:44px}
  .model-hub .table-scroll-hint {display:block;font-size:14px;color:#4e5b52;margin:0 0 8px}
  .model-hub .table-scroll {margin-top:8px}
  .model-hub .reading {grid-template-columns:minmax(0,1fr);gap:28px}
  .model-hub .contents {display:flex;flex-wrap:wrap;flex-direction:row;gap:12px 24px}
  .model-hub .contents p {width:100%;margin:0}
}
@media(max-width:760px){
  body.model-hub > main {padding:24px 18px 56px}
  .model-hub .article-hero {grid-template-columns:minmax(0,1fr);gap:24px;padding:0 0 24px}
  .model-hub .article-intro h1 {font-size:clamp(38px,9.8vw,52px);line-height:1.07}
  .model-hub .standfirst {font-size:17px}
  .model-hub .article-intro .edition {font-size:12px}
  .model-hub .hub-visual figcaption {font-size:13px;padding:12px 14px}
  body.model-hub > main > .facts {grid-template-columns:repeat(2,minmax(0,1fr));margin:0}
  body.model-hub > main > .facts > div {padding:16px 14px;border-bottom:1px solid #d6ded7}
  .model-hub .facts > div:nth-child(2n) {border-right:0}
  .model-hub .facts > div:nth-last-child(-n+2) {border-bottom:0}
  .model-hub .facts b,.model-hub .facts strong {font-size:17px}
  .model-hub section.os-page {padding:28px 0 0}
  .model-hub .table-scroll-hint {display:block;font-size:14px;color:#4e5b52;margin:0 0 8px}
  .model-hub .table-scroll {margin-top:8px}
  .model-hub .page-intro h1 {font-size:38px}
  .model-hub .page-intro p,.model-hub .os-module p {font-size:17px;line-height:1.6}
}
