@charset "UTF-8";:root{--fg-primary: #9b1627;--fg-primary-dark: #7c101f;--fg-primary-light: #c23446;--fg-secondary: #1d68b6;--fg-secondary-dark: #17568f;--fg-accent: #ffcd57;--fg-ink: #1e293b;--fg-muted: #67768e;--fg-bg: #ffffff;--fg-bg-soft: #f2f5f7;--fg-bg-lavender: #f9f6fe;--fg-border: #e2e8f0;--fg-white: #ffffff;--fg-black: #000000;--fg-success: #1c7c4a;--fg-danger: #dc3545;--fg-font: "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--fg-radius: 14px;--fg-radius-sm: 8px;--fg-shadow: 0 8px 30px rgba(30, 41, 59, .08);--fg-shadow-lg: 0 20px 50px rgba(30, 41, 59, .14);--fg-container: 1180px;--fg-header-h: 76px}*{box-sizing:border-box}html,body{height:100%}body{margin:0;min-width:0;font-family:var(--fg-font);color:var(--fg-ink);background:var(--fg-bg);line-height:1.6;-webkit-font-smoothing:antialiased}.app-loading{display:grid;place-items:center;min-height:60vh;color:var(--fg-muted)}h1,h2,h3,h4{color:var(--fg-ink);line-height:1.2;margin:0 0 .5em;font-weight:800;letter-spacing:-.01em}h1{font-size:clamp(2rem,4vw,3rem)}h2{font-size:clamp(1.6rem,3vw,2.25rem)}h3{font-size:1.35rem}p{margin:0 0 1rem}a{color:var(--fg-secondary);text-decoration:none}a:hover{text-decoration:underline}img{max-width:100%;display:block}.container{width:100%;max-width:var(--fg-container);margin:0 auto;padding:0 1.25rem}main,.container,.grid>*{min-width:0}.section{padding:4rem 0}.section--soft{background:var(--fg-bg-soft)}.section--lavender{background:var(--fg-bg-lavender)}.section__head{text-align:center;max-width:720px;margin:0 auto 2.5rem}.section__head p{color:var(--fg-muted);font-size:1.05rem}.eyebrow{display:inline-block;text-transform:uppercase;letter-spacing:.08em;font-size:.78rem;font-weight:700;color:var(--fg-primary);margin-bottom:.5rem}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;font-family:inherit;font-weight:600;font-size:1rem;padding:.8rem 1.5rem;border-radius:999px;border:2px solid transparent;cursor:pointer;transition:transform .12s ease,background .2s ease,box-shadow .2s ease;text-decoration:none;max-width:100%;white-space:normal;text-align:center;line-height:1.3}.btn:hover{text-decoration:none;transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn:disabled{opacity:.55;cursor:not-allowed;transform:none}.btn--primary{background:var(--fg-primary);color:#fff}.btn--primary:hover{background:var(--fg-primary-dark);color:#fff}.btn--secondary{background:var(--fg-secondary);color:#fff}.btn--secondary:hover{background:var(--fg-secondary-dark);color:#fff}.btn--ghost{background:transparent;color:var(--fg-primary);border-color:var(--fg-primary)}.btn--ghost:hover{background:var(--fg-primary);color:#fff}.btn--light{background:#fff;color:var(--fg-primary)}.btn--light:hover{background:var(--fg-bg-soft);color:var(--fg-primary-dark)}.btn--lg{padding:1rem 2rem;font-size:1.08rem}.btn--block{width:100%}.card{background:#fff;border:1px solid var(--fg-border);border-radius:var(--fg-radius);padding:1.75rem;box-shadow:var(--fg-shadow)}.grid{display:grid;gap:1.5rem}.grid--2{grid-template-columns:repeat(2,1fr)}.grid--3{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(4,1fr)}@media (max-width: 960px){.grid--3,.grid--4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 620px){.grid--2,.grid--3,.grid--4{grid-template-columns:1fr}.container{padding-inline:1rem}.section{padding:3rem 0}.page-hero{padding:2.5rem 0}.card{padding:1.25rem}.btn--lg{padding:.9rem 1.4rem;font-size:1rem}}.field{margin-bottom:1.1rem}.field label{display:block;font-weight:600;font-size:.92rem;margin-bottom:.4rem;color:var(--fg-ink)}.field input,.field select,.field textarea{width:100%;font-family:inherit;font-size:1rem;padding:.75rem .9rem;border:1.5px solid var(--fg-border);border-radius:var(--fg-radius-sm);background:#fff;color:var(--fg-ink);transition:border-color .15s ease,box-shadow .15s ease}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--fg-secondary);box-shadow:0 0 0 3px #1d68b626}.field textarea{min-height:130px;resize:vertical}.field--error input,.field--error select,.field--error textarea{border-color:var(--fg-danger)}.field__error{color:var(--fg-danger);font-size:.85rem;margin-top:.3rem}.checkbox{display:flex;align-items:flex-start;gap:.6rem;font-size:.9rem;color:var(--fg-muted)}.checkbox input{width:auto;margin-top:.25rem}.alert{padding:.9rem 1.1rem;border-radius:var(--fg-radius-sm);font-size:.95rem;margin-bottom:1rem}.alert--success{background:#e7f5ee;color:var(--fg-success);border:1px solid #b7e0c9}.alert--error{background:#fdecee;color:var(--fg-danger);border:1px solid #f5c2c7}.alert--info{background:#e9f1fa;color:var(--fg-secondary-dark);border:1px solid #bcd8f0}.spec-table{width:100%;border-collapse:collapse;font-size:.95rem}.spec-table th,.spec-table td{text-align:left;padding:.7rem .9rem;border-bottom:1px solid var(--fg-border)}.spec-table thead th{background:var(--fg-bg-soft);font-weight:700;color:var(--fg-ink)}.spec-table tbody tr:hover{background:var(--fg-bg-lavender)}.text-center{text-align:center}.muted{color:var(--fg-muted)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-0{margin-bottom:0}.badge{display:inline-block;padding:.25rem .7rem;border-radius:999px;font-size:.78rem;font-weight:700;background:var(--fg-bg-soft);color:var(--fg-muted)}.skip-link{position:absolute;left:-999px;top:0;background:var(--fg-primary);color:#fff;padding:.6rem 1rem;z-index:200;border-radius:0 0 var(--fg-radius-sm) 0}.skip-link:focus{left:0}.page-hero{background:linear-gradient(135deg,var(--fg-primary),var(--fg-primary-dark));color:#fff;padding:3.2rem 0}.page-hero h1{color:#fff;margin-bottom:.4rem}.page-hero p{color:#ffffffe6;max-width:640px;margin:0}.page-hero .eyebrow{color:var(--fg-accent)}.breadcrumb{font-size:.85rem;color:#ffffffd9;margin-bottom:.6rem}.breadcrumb a{color:#fff;text-decoration:underline}.prose{max-width:820px;margin:0 auto}.prose h2{font-size:1.35rem;margin-top:2rem}.prose h3{font-size:1.1rem;margin-top:1.5rem}.prose ul{padding-left:1.2rem}.prose li{margin-bottom:.4rem}.prose a{word-break:break-word}.card,.alert,.prose{overflow-wrap:anywhere}.prose .updated{color:var(--fg-muted);font-size:.9rem}
