*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;color:#111827;background:#fff;overflow-x:hidden}:root{--mobile: 480px;--tablet: 768px;--desktop: 1024px;--space-xs: clamp(.5rem, 2vw, 1rem);--space-sm: clamp(1rem, 3vw, 1.5rem);--space-md: clamp(1.5rem, 4vw, 2rem);--space-lg: clamp(2rem, 5vw, 3rem);--space-xl: clamp(3rem, 6vw, 4rem);--text-xs: clamp(.8rem, 2vw, .9rem);--text-sm: clamp(.9rem, 2.2vw, 1rem);--text-md: clamp(1rem, 2.5vw, 1.1rem);--text-lg: clamp(1.2rem, 3vw, 1.4rem);--text-xl: clamp(1.5rem, 4vw, 2rem);--text-xxl: clamp(2rem, 5vw, 3rem);--primary: #2563eb;--primary-dark: #1d4ed8;--secondary: #5b21b6;--accent: #0f766e;--text: #111827;--text-light: #374151;--background: #ffffff;--border: #d1d5db;--container-width: min(1200px, 95vw);--container-padding: var(--space-sm)}.container{width:var(--container-width);margin:0 auto;padding:0 var(--container-padding)}h1{font-size:var(--text-xxl);font-weight:700;line-height:1.2;margin-bottom:var(--space-sm)}h2{font-size:var(--text-xl);font-weight:600;line-height:1.3;margin-bottom:var(--space-xs)}h3{font-size:var(--text-lg);font-weight:600;line-height:1.4;margin-bottom:var(--space-xs);color:var(--text)}p{font-size:var(--text-md);line-height:1.6;margin-bottom:var(--space-xs);color:var(--text-light)}a{color:var(--primary);text-decoration:none;transition:color .2s ease}a:hover{color:var(--primary-dark)}a:focus{outline:2px solid var(--primary);outline-offset:2px}.btn{display:inline-block;padding:var(--space-xs) var(--space-sm);border:none;border-radius:6px;font-size:var(--text-sm);font-weight:500;text-align:center;cursor:pointer;transition:all .2s ease;text-decoration:none}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-dark);color:#fff}.btn-secondary{background:transparent;color:var(--primary);border:2px solid var(--primary)}.btn-secondary:hover{background:var(--primary);color:#fff}.card{background:#fff;border-radius:8px;padding:var(--space-md);box-shadow:0 2px 10px #0000001a;transition:transform .2s ease,box-shadow .2s ease}.card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #00000026}.grid{display:grid;gap:var(--space-md)}.grid-2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-4{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.flex{display:flex}.flex-center{align-items:center;justify-content:center}.flex-between{justify-content:space-between}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.mt-auto{margin-top:auto}.text-center{text-align:center}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}.skip-to-main{position:absolute;left:-10000px;top:auto;width:1px;height:1px;overflow:hidden;background:var(--background);color:var(--text);text-decoration:none;padding:8px 12px;border:2px solid var(--text);border-radius:4px;font-weight:700;font-size:14px;z-index:10000}.skip-to-main:focus{position:absolute;left:10px;top:10px;width:auto;height:auto;overflow:visible;box-shadow:0 4px 8px #0000004d}@media (max-width: 480px){:root{--container-padding: 1rem}.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}@media (min-width: 481px) and (max-width: 768px){.grid-3,.grid-4{grid-template-columns:repeat(2,1fr)}}@media (prefers-color-scheme: dark){:root{--text: #f0f0f0;--text-light: #cccccc;--background: #1a1a1a;--border: #333333}body{background:var(--background);color:var(--text)}.card{background:#2a2a2a;border:1px solid var(--border)}}@media print{*{background:transparent!important;color:#000!important;box-shadow:none!important}nav,header,footer,.btn,.card:hover{display:none!important}body{font-size:12pt;line-height:1.5}h1,h2,h3,h4,h5,h6{page-break-after:avoid}img{max-width:100%!important;height:auto!important}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
