/* Shared readability and contact layer. Labels retain each page's mono/caps system. */
body{font-size:17px}

p{
  font-size:max(1em,16px)!important;
  text-transform:none!important;
  letter-spacing:normal!important;
}

.hero p,.hero-copy,.hero-tag,.stand,.copy,.principle-copy,.founder-bio,
.cw p,.head p,.section-head p,.feature-head p,.detail-desc,.thesis,
.finding,.generic-copy,.coverage-grid p,.banner,.footnote,.note{
  font-family:"Space Grotesk",system-ui,sans-serif!important;
  font-size:16px!important;
  line-height:1.75!important;
  letter-spacing:normal!important;
  text-transform:none!important;
}

.what-title,.system-title,.research-title,.principle-title,.rule .k,
.wrap h2{
  text-transform:none!important;
  letter-spacing:normal!important;
}

.repo-desc,.axis-value,.risk-cell span{font-size:14px!important;line-height:1.65!important}
.desc{font-family:"Space Grotesk",system-ui,sans-serif!important;font-size:12px!important;line-height:1.55!important;letter-spacing:normal!important;text-transform:none!important}
.labcopy .finding{font-size:15px!important}

.site-contact{
  color:inherit;
  padding:38px 0;
  border-top:1px solid color-mix(in srgb,currentColor 24%,transparent);
  border-bottom:1px solid color-mix(in srgb,currentColor 24%,transparent);
  background:color-mix(in srgb,currentColor 3%,transparent);
}
.site-contact-inner{
  width:min(1480px,calc(100% - 44px));
  margin:auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}
.wrap>.site-contact .site-contact-inner{width:100%}
.site-contact-label{
  display:block;
  font:500 10px/1.5 "IBM Plex Mono",monospace;
  letter-spacing:.16em;
  text-transform:uppercase;
  opacity:.68;
}
.site-contact-title{display:block;margin-top:7px;font-size:clamp(22px,3vw,38px);font-weight:500;line-height:1.12}
.site-contact-link{
  flex:none;
  display:inline-flex;
  align-items:center;
  gap:12px;
  padding:13px 17px;
  border:1px solid currentColor;
  color:inherit;
  text-decoration:none;
  font:500 11px/1.4 "IBM Plex Mono",monospace;
  letter-spacing:.08em;
}
.site-contact-link:hover,.site-contact-link:focus-visible{background:currentColor;outline:none}
.site-contact-link:hover span,.site-contact-link:focus-visible span{filter:invert(1)}

@media(max-width:680px){
  body{font-size:16px}
  .site-contact{padding:30px 0}
  .site-contact-inner{width:min(100% - 24px,1480px);display:block}
  .site-contact-link{margin-top:22px;width:100%;justify-content:space-between}
}
