body{font-family:var(--font-body);font-size:1rem;color:var(--color-neutral-900);background-color:var(--color-neutral-50);margin:0;padding:0;overflow-x:hidden}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.1;color:var(--color-primary);margin-bottom:var(--space-md)}h1{font-size:clamp(2.5rem, 5vw, 4rem);letter-spacing:-.02em}h2{font-size:clamp(2rem, 4vw, 3rem);letter-spacing:-.01em}h3{font-size:clamp(1.5rem, 3vw, 2rem)}p{line-height:1.6;margin-bottom:var(--space-md);color:var(--color-neutral-700)}.text-lead{font-size:clamp(1.125rem, 2vw, 1.25rem);color:var(--color-neutral-700)}.text-center{text-align:center}a{color:var(--color-primary);transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}.container{width:100%;max-width:1200px;margin:0 auto;padding:0 var(--space-lg)}.container-narrow{width:100%;max-width:800px;margin:0 auto;padding:0 var(--space-lg)}.hidden{display:none!important}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.mt-section{margin-top:var(--space-section)}.mb-section{margin-bottom:var(--space-section)}.py-section{padding-top:var(--space-section);padding-bottom:var(--space-section)}