.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-xl)}.container--narrow{max-width:var(--max-width-narrow)}.container--wide{max-width:var(--max-width-wide)}.section{padding-block:var(--space-section)}.section--tight{padding-block:var(--space-3xl)}.section--loose{padding-block:var(--space-4xl)}.grid{display:grid;gap:var(--space-xl)}.grid--2{grid-template-columns:1fr 1fr}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}.grid--auto{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.flex{display:flex}.flex--col{flex-direction:column}.flex--center{align-items:center;justify-content:center}.flex--between{align-items:center;justify-content:space-between}.flex--wrap{flex-wrap:wrap}.gap-sm{gap:var(--space-sm)}.gap-md{gap:var(--space-md)}.gap-lg{gap:var(--space-lg)}.gap-xl{gap:var(--space-xl)}.mt-sm{margin-top:var(--space-sm)}.mt-md{margin-top:var(--space-md)}.mt-lg{margin-top:var(--space-lg)}.mt-xl{margin-top:var(--space-xl)}.mt-2xl{margin-top:var(--space-2xl)}.mb-sm{margin-bottom:var(--space-sm)}.mb-md{margin-bottom:var(--space-md)}.mb-lg{margin-bottom:var(--space-lg)}.mb-xl{margin-bottom:var(--space-xl)}.mb-2xl{margin-bottom:var(--space-2xl)}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.text-xs{font-size:var(--font-size-xs)}.text-sm{font-size:var(--font-size-sm)}.text-base{font-size:var(--font-size-base)}.text-md{font-size:var(--font-size-md)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.font-light{font-weight:var(--font-weight-light)}.font-regular{font-weight:var(--font-weight-regular)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.font-black{font-weight:var(--font-weight-black)}.text-primary{color:var(--color-primary)}.text-accent{color:var(--color-accent)}.text-gray{color:var(--color-gray-500)}.text-white{color:var(--color-white)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;top:-100%;left:var(--space-md);z-index:var(--z-modal);padding:var(--space-sm) var(--space-lg);background:var(--color-accent);color:var(--color-white);border-radius:var(--border-radius-md);font-weight:var(--font-weight-semibold);transition:top var(--transition-fast)}.skip-link:focus{top:var(--space-md)}.section__header{text-align:center;max-width:720px;margin-inline:auto;margin-bottom:var(--space-3xl)}.section__title{font-size:var(--font-size-3xl);font-weight:var(--font-weight-bold);color:var(--color-primary);margin-bottom:var(--space-md)}.section__subtitle{font-size:var(--font-size-md);color:var(--color-gray-500);line-height:var(--line-height-relaxed)}.section__tag{display:inline-block;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);color:var(--color-white);background-color:var(--color-accent);padding:6px 12px;text-transform:uppercase;letter-spacing:.08em;margin-bottom:var(--space-sm)}