/* tonum base layer — element defaults so a bare page already looks like the brand.
   Headers are set LOWER CASE (brand book p.36). Body copy is light weight. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
body{margin:0;background:var(--surface-page);color:var(--text-body);font-family:var(--type-body-font);font-weight:var(--type-body-weight);font-size:var(--type-body-size);line-height:var(--type-body-lh);text-wrap:pretty}
h1,h2,h3,h4,h5,h6{margin:0 0 var(--space-4);color:var(--text-heading);font-family:var(--font-display);text-transform:lowercase;text-wrap:balance}
h1{font-weight:var(--fw-bold);font-size:var(--fs-4xl);line-height:var(--lh-tight);letter-spacing:var(--ls-tightest)}
h2{font-weight:var(--fw-bold);font-size:var(--fs-3xl);line-height:var(--lh-snug);letter-spacing:var(--ls-tight)}
h3{font-weight:var(--fw-demi);font-size:var(--fs-xl);line-height:var(--lh-snug)}
h4{font-weight:var(--fw-demi);font-size:var(--fs-lg);line-height:var(--lh-snug)}
p{margin:0 0 var(--space-4);max-width:var(--measure-body)}
strong,b{font-weight:var(--type-body-strong-weight)}
small{font-size:var(--fs-xs)}
a{color:var(--text-accent);text-decoration:none;border-bottom:1px solid color-mix(in srgb,var(--text-accent) 40%,transparent);transition:var(--transition-control)}
a:hover{color:var(--rust-700);border-bottom-color:var(--rust-700)}
a:active{color:var(--rust-700)}
a:focus-visible{outline:2px solid var(--focus-ring);outline-offset:3px;border-radius:var(--radius-xs)}
img{max-width:100%;display:block}
hr{border:0;border-top:1px solid var(--line-hairline);margin:var(--space-10) 0}
::selection{background:var(--rust-200);color:var(--slate-grey)}
:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}
button,input,select,textarea{font:inherit;color:inherit}
.t-eyebrow{font-family:var(--type-eyebrow-font);font-weight:var(--type-eyebrow-weight);font-size:var(--type-eyebrow-size);letter-spacing:var(--type-eyebrow-ls);text-transform:uppercase;color:var(--text-muted)}
.t-display{font-family:var(--type-display-font);font-weight:var(--type-display-weight);font-size:var(--type-display-size);line-height:var(--type-display-lh);letter-spacing:var(--type-display-ls);text-transform:lowercase;color:var(--text-heading)}
.t-lede{font-family:var(--font-body);font-weight:var(--fw-light);font-size:var(--fs-lg);line-height:var(--lh-relaxed);max-width:var(--measure-lede)}
.t-caption{font-family:var(--type-caption-font);font-size:var(--type-caption-size);color:var(--text-muted)}
.t-accent{color:var(--text-accent)}
.t-accent-hot{color:var(--text-accent-hot)}
@media (prefers-reduced-motion:reduce){*{animation-duration:.01ms !important;transition-duration:.01ms !important}}
