:root{--primary: #2e4d58;--primary-dark: #223a43;--accent: #5ca3b3;--accent-light: #e3f0f3;--brand-red: #e04e39;--brand-red-dark: #c63f2c;--valid: #1f7a3f;--background: #edefef;--surface: #ffffff;--text: #1f2d33;--text-muted: #55666d;--border: #d5dcde;--radius: 12px;--shadow: 0 6px 24px rgba(46, 77, 88, .08);--container: 1120px;--font: system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, "Noto Sans", sans-serif}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:var(--font);font-size:1rem;line-height:1.6;color:var(--text);background:var(--surface);-webkit-font-smoothing:antialiased}app-root{display:flex;flex-direction:column;min-height:100vh;min-height:100dvh}main{flex:1 0 auto}h1,h2,h3{line-height:1.25;color:var(--primary);margin:0 0 .75rem}h1{font-size:clamp(1.9rem,4vw,2.9rem)}h2{font-size:clamp(1.5rem,3vw,2.1rem)}h3{font-size:1.15rem}p{margin:0 0 1rem}a{color:var(--primary)}img{max-width:100%;height:auto}.container{width:100%;max-width:var(--container);margin:0 auto;padding:0 16px}.section{padding:4rem 0}.section--alt{background:var(--background)}.section__intro{max-width:720px;color:var(--text-muted);font-size:1.1rem}.grid{display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));margin-top:2rem}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:1.5rem;box-shadow:var(--shadow)}.card p{margin:0;color:var(--text-muted)}.btn{display:inline-flex;align-items:center;justify-content:center;padding:.75rem 1.4rem;border-radius:999px;border:2px solid transparent;font-weight:600;font-size:1rem;text-decoration:none;cursor:pointer;transition:background-color .15s ease,color .15s ease,border-color .15s ease}.btn--primary{background:var(--brand-red);color:#fff}.btn--primary:hover{background:var(--brand-red-dark)}.btn--secondary{border-color:currentColor;color:var(--primary);background:transparent}.btn--secondary:hover{background:var(--accent-light)}.btn--light{border-color:#fff;color:#fff;background:transparent}.btn--light:hover{background:#ffffff1f}.actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}.page-header{background:var(--primary);color:#fff;padding:3.5rem 0 3rem}.page-header h1{color:#fff}.page-header p{max-width:720px;margin:0;color:#ffffffd9;font-size:1.1rem}:focus-visible{outline:3px solid var(--accent);outline-offset:2px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
