/*
 * Site-wide typography readability layer.
 * Loaded after page-specific styles so text never inherits cramped display spacing.
 */
html{
  font-kerning:normal;
  text-rendering:optimizeLegibility;
  -webkit-font-smoothing:antialiased;
}
body{letter-spacing:.005em}

:where(h1,h2,h3,h4){
  font-kerning:normal;
  text-wrap:balance;
  overflow-wrap:normal;
  word-break:normal;
}
:where(h1,.hero__title){
  letter-spacing:-.012em!important;
  line-height:.94!important;
}
h2{
  letter-spacing:-.006em!important;
  line-height:.98!important;
}
h3{
  letter-spacing:0!important;
  line-height:1.08!important;
}
h4{
  letter-spacing:0!important;
  line-height:1.2!important;
}
.hero__title .line{
  margin-bottom:0!important;
  padding-bottom:.06em!important;
}

:where(p,li,dd,figcaption,summary){
  letter-spacing:0!important;
  line-height:1.55!important;
}
blockquote{
  letter-spacing:-.006em!important;
  line-height:1.18!important;
}
:where(.mono,small,label,nav a,.button,button){
  letter-spacing:.045em!important;
  line-height:1.35!important;
}
.mobile-menu a{
  letter-spacing:.01em!important;
  line-height:1.12!important;
}
:where(input,textarea,select){
  letter-spacing:.01em;
  line-height:1.45;
}

@media(max-width:800px){
  :where(h1,.hero__title){line-height:.98!important}
  h2{line-height:1.03!important}
  h3{line-height:1.1!important}
  :where(p,li,dd,figcaption,summary){line-height:1.58!important}
}
