*,*::before,*::after{box-sizing:border-box} html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-height)+1rem)}
body{margin:0;font-family:var(--font-family-base);font-size:var(--font-size-base);line-height:var(--line-height-base);color:var(--color-text);background:var(--color-bg)}
img{max-width:100%;display:block} a{color:inherit;text-decoration:none;transition:color var(--transition-fast),opacity var(--transition-fast),background-color var(--transition-fast),border-color var(--transition-fast),transform var(--transition-fast)}
button,input,textarea,select{font:inherit} button{cursor:pointer} ul,ol{margin:0;padding:0;list-style:none} p,h1,h2,h3,h4{margin-top:0} h1,h2,h3,h4{font-family:var(--font-family-heading);line-height:var(--line-height-tight)}
body.menu-open{overflow:hidden}.container{width:min(100% - 2rem,var(--container-width));margin-inline:auto}.container--narrow{width:min(100% - 2rem,var(--container-narrow));margin-inline:auto}
.section,.page-section{padding:var(--space-3xl) 0}.section-sm{padding:var(--space-2xl) 0}.section-lg{padding:6rem 0}.surface{background:var(--color-surface)}.surface-alt{background:var(--color-surface-alt)}.text-center{text-align:center}.hidden{display:none!important}
.skip-link{position:absolute;left:1rem;top:-3rem;z-index:1000;background:var(--color-primary);color:#fff;padding:.75rem 1rem;border-radius:var(--radius-md)}.skip-link:focus{top:1rem}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-main{min-height:50vh}.desktop-only{display:none}.mobile-only{display:inline-flex}@media (min-width:860px){.desktop-only{display:inline-flex}.mobile-only{display:none}}@media (max-width:680px){.section,.page-section{padding:var(--space-2xl) 0}}


body{min-width:320px} h1{font-size:var(--font-size-4xl)} h2{font-size:var(--font-size-2xl)} h3{font-size:var(--font-size-xl)} p{color:var(--color-text-muted)}
.section-eyebrow{display:inline-flex;align-items:center;gap:.5rem;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);letter-spacing:.12em;text-transform:uppercase;color:var(--color-primary)}
.section-title{margin-bottom:.75rem;color:var(--color-text)} .section-text{max-width:62ch;margin-bottom:0} ::selection{background:var(--color-accent);color:var(--color-primary-strong)}
