/* Minimal element defaults so any consuming page inherits the brand voice. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--surface-page);color:var(--text-body);font:var(--text-base);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
h1,h2,h3,h4,h5,h6{margin:0;color:var(--text-heading);text-wrap:balance}
h1{font:var(--text-h1);letter-spacing:var(--tracking-heading)}
h2{font:var(--text-h2);letter-spacing:var(--tracking-heading)}
h3{font:var(--text-h3)}
h4{font:var(--text-h4)}
p{margin:0 0 var(--space-4);text-wrap:pretty;max-width:var(--measure-prose)}
p:last-child{margin-bottom:0}
a{color:var(--text-link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px;text-decoration-color:rgba(95,25,32,.35);transition:var(--transition-control)}
a:hover{color:var(--text-link-hover);text-decoration-color:currentColor}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible{outline:none;box-shadow:var(--ring-focus)}
strong,b{font-weight:var(--weight-semibold);color:var(--text-heading)}
small{font:var(--text-caption);color:var(--text-muted)}
hr{border:0;border-top:1px solid var(--border-hairline);margin:var(--space-9) 0}
img,svg{display:block;max-width:100%}
::selection{background:var(--maroon-700);color:var(--bone-50)}
[data-theme="dark"],.on-dark{color:var(--text-on-dark)}
[data-theme="dark"] h1,[data-theme="dark"] h2,[data-theme="dark"] h3,[data-theme="dark"] h4,.on-dark h1,.on-dark h2,.on-dark h3,.on-dark h4{color:var(--text-on-dark)}
[data-theme="dark"] a,.on-dark a{color:var(--bone-50);text-decoration-color:rgba(251,250,249,.4)}
[data-theme="dark"] a:hover,.on-dark a:hover{color:var(--maroon-300)}
