/* Foundations: type hierarchy, interaction, accessibility, content flow. */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scrollbar-gutter:stable}
body{margin:0;color:var(--ink);background:var(--bg);font-family:var(--font);font-size:14px;line-height:1.55;font-synthesis:none;-webkit-font-smoothing:antialiased;font-feature-settings:'tnum' 1}
button,input,select,textarea{font:inherit}button{cursor:pointer;color:inherit}button:disabled{opacity:.48;cursor:not-allowed}
a{color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-thickness:2px}
:focus-visible{outline:3px solid var(--focus);outline-offset:3px}
h1,h2,h3,p{margin-top:0}h1{font-size:28px;line-height:1.23;letter-spacing:-.7px;font-weight:730;margin-bottom:8px}h2{font-size:19px;line-height:1.4;letter-spacing:-.3px;font-weight:700;margin:0}h3{font-size:16px;font-weight:700;margin:0}
small,.caption{font-size:12px;color:var(--muted)}
.eyebrow,.section-kicker,.smalllabel{font-size:11px;letter-spacing:1.1px;font-weight:750;text-transform:uppercase;color:var(--subtle)}
.row{display:flex;align-items:center;gap:12px}.between{justify-content:space-between}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.muted{color:var(--muted)}.ellip{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.skip-link{position:absolute;top:-100px;left:14px;z-index:999;background:var(--canvas);padding:12px 18px;border-radius:8px}
.skip-link:focus{top:12px}.boot{min-height:100vh;display:flex;gap:15px;align-items:center;justify-content:center;font-weight:600;color:var(--muted)}
.boot>.brandmark{width:44px;height:44px}
::selection{background:#dfe8f7;color:#152235}
