/* Minimal element defaults. Components carry their own styling inline or via tokens. */
*,*::before,*::after{box-sizing:border-box}
body{margin:0;font:var(--type-body);color:var(--text-body);background:var(--surface-page);-webkit-font-smoothing:antialiased;text-wrap:pretty}
h1,h2,h3,h4,h5,h6{margin:0;font-family:var(--font-display);color:var(--text-strong);letter-spacing:var(--ls-heading);line-height:var(--lh-heading);font-weight:var(--fw-bold)}
p{margin:0}
a{color:var(--text-brand);text-decoration:none;transition:color var(--dur-base) var(--ease-standard)}
a:hover{color:var(--action-primary-hover);text-decoration:underline;text-underline-offset:3px}
img{max-width:100%;display:block}
:focus-visible{outline:var(--border-width) solid var(--focus-ring);outline-offset:2px}
::selection{background:var(--blue-500);color:var(--white)}
.tr-container{max-width:var(--container-max);margin:0 auto;padding-inline:var(--gutter)}
.tr-eyebrow{font:var(--type-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-brand)}
.tr-rule{width:var(--rule-brand-width);height:var(--rule-brand-height);background:var(--action-primary);border:0}
