:root{--paper: #faf7f2;--ink: #141414;--ink-soft: #3a352e;--red: #e11b22;--line: #e7e0d5;--card: #ffffff;--muted: #7a7266;color-scheme:light}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Open Sans,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--paper);color:var(--ink-soft);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{color:var(--ink);margin:0 0 .4em;font-weight:800;letter-spacing:-.01em}a{color:var(--red)}button{font-family:inherit;cursor:pointer}.btn{display:inline-flex;align-items:center;gap:.5rem;border:none;border-radius:10px;padding:11px 18px;font-weight:700;font-size:14px;background:var(--red);color:#fff;transition:filter .12s ease}.btn:hover{filter:brightness(1.06)}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{background:#fff;color:var(--ink);border:1px solid var(--line)}.btn.dark{background:var(--ink);color:#fff}.btn.sm{padding:7px 12px;font-size:13px;border-radius:8px}.input,.select,textarea.input{width:100%;padding:9px 11px;border:1px solid var(--line);border-radius:9px;background:#fff;font:inherit;color:var(--ink)}.input:focus,textarea.input:focus{outline:2px solid rgba(225,27,34,.25);border-color:var(--red)}label.field{display:block;font-size:12px;font-weight:700;color:var(--muted);margin-bottom:5px;text-transform:uppercase;letter-spacing:.06em}.card{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:20px}.topbar{background:var(--ink);color:#fff;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:16px;padding:10px 22px;border-bottom:3px solid var(--red)}.topbar .brand{font-weight:800;letter-spacing:.14em;text-transform:uppercase;font-size:13px}.topbar-left{display:flex;align-items:center;gap:18px;justify-self:start}.topbar-right{display:flex;align-items:center;gap:12px;justify-self:end}.topbar-logo{height:58px;width:auto;flex:0 0 auto;flex-shrink:0;min-width:0;display:block;object-fit:contain}.topbar-title{justify-self:center;text-align:center;white-space:nowrap;font-weight:800;letter-spacing:.16em;text-transform:uppercase;font-size:13px;color:#fff}@media (max-width: 900px){.topbar{grid-template-columns:1fr;justify-items:center;gap:10px}.topbar-left,.topbar-right{justify-self:center}}.container{max-width:1040px;margin:0 auto;padding:26px 20px 80px}.chip{display:inline-block;border:1px solid var(--line);background:#fff;border-radius:999px;padding:4px 10px;font-size:12px;margin:0 6px 6px 0;color:var(--ink);cursor:pointer}.chip:hover{border-color:var(--red);color:var(--red)}.stepper{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:22px}.step-pill{padding:7px 12px;border-radius:999px;font-size:13px;font-weight:700;border:1px solid var(--line);background:#fff;color:var(--muted)}.step-pill.active{background:var(--ink);color:#fff;border-color:var(--ink)}.step-pill.done{color:var(--ink);border-color:var(--ink)}.muted{color:var(--muted)}.row-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media (max-width: 700px){.row-grid{grid-template-columns:1fr}}.hazard{border:1px solid var(--line);border-radius:12px;padding:16px;margin-bottom:14px;background:#fff}.badge{display:inline-block;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:800;color:#fff}.hse-table{width:100%;border-collapse:collapse;font-size:13px}.hse-table th,.hse-table td{border:1px solid #cfc7b8;padding:8px 9px;vertical-align:top;text-align:left}.hse-table th{background:#141414;color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.05em}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#14141480;display:flex;align-items:center;justify-content:center;padding:20px;z-index:50}.dialog{background:#fff;border-radius:16px;padding:26px;max-width:460px;width:100%}.plan-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}@media (max-width: 760px){.plan-grid{grid-template-columns:1fr}}.plan{border:1px solid var(--line);border-radius:14px;padding:22px;background:#fff;display:flex;flex-direction:column}.plan.current{border-color:var(--red);box-shadow:0 0 0 2px #e11b2226}.price{font-size:30px;font-weight:800;color:var(--ink)}.footer-note{color:var(--red);font-weight:800;font-size:12px;letter-spacing:.1em;text-transform:uppercase}.hero-logo{height:120px;width:auto;flex:0 0 auto;display:block;margin:30px 0 22px;object-fit:contain}@media (max-width: 700px){.hero-logo{height:88px}}
