:root{--color-bg:#ffffff;--color-bg-alt:#f8f9fa;--color-text:#1a1a2e;--color-text-muted:#6b7280;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-border:#e5e7eb;--font-sans:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--max-width:1120px;--space-sm:0.5rem;--space-md:1rem;--space-lg:1.5rem;--space-xl:2rem;--space-2xl:3rem;--space-3xl:4rem;--radius:6px}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-sans);line-height:1.6;color:var(--color-text);-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{min-height:100dvh;display:flex;flex-direction:column;background:var(--color-bg)}a{color:var(--color-primary);text-decoration:none}a:hover{color:var(--color-primary-hover);text-decoration:underline}a:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}h1,h2,h3{line-height:1.2;font-weight:700}h1{font-size:clamp(1.75rem,4vw,2.5rem)}h2{font-size:clamp(1.375rem,3vw,1.75rem)}h3{font-size:clamp(1.125rem,2vw,1.25rem)}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:var(--space-lg)}.skip-link{position:absolute;top:-100%;left:var(--space-md);background:var(--color-primary);color:#fff;padding:var(--space-sm) var(--space-md);border-radius:var(--radius);z-index:100;font-weight:600}.skip-link:focus{top:var(--space-md)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-sm);padding:.625rem 1.25rem;border-radius:var(--radius);font-weight:600;font-size:.9375rem;line-height:1.4;cursor:pointer;border:none;transition:background .15s,color .15s;min-height:44px;min-width:44px}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover{background:var(--color-primary-hover);color:#fff;text-decoration:none}.btn-outline{background:transparent;color:var(--color-primary);border:1.5px solid var(--color-primary)}.btn-outline:hover{background:var(--color-primary);color:#fff;text-decoration:none}.btn:disabled{opacity:.5;cursor:not-allowed}section{padding-block:var(--space-3xl)}section:nth-child(2n){background:var(--color-bg-alt)}@media (max-width:480px){.header-inner{flex-wrap:wrap;gap:var(--space-sm)}.header-nav ul{gap:var(--space-md)}}