:root { color-scheme: light; --ink:#17243a; --muted:#5d6b82; --line:#dfe5ef; --accent:#5c48d6; --soft:#f5f4ff; --ok:#1f6f4a; }
* { box-sizing: border-box; }
html, body { margin:0; background:#f7f9fc; color:var(--ink); font:15px/1.55 Inter, ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif; }
a { color:var(--accent); }
.office-shell { max-width:1080px; margin:0 auto; padding:24px; }
.office-top { display:flex; align-items:center; justify-content:space-between; gap:18px; padding:8px 0 26px; }
.office-brand { color:var(--ink); text-decoration:none; font-size:21px; font-weight:800; letter-spacing:-.03em; }
.office-brand span { color:var(--accent); }
.office-brand em { font-style:normal; font-size:12px; letter-spacing:.08em; color:var(--muted); text-transform:uppercase; margin-left:8px; }
.office-top nav { display:flex; flex-wrap:wrap; gap:16px; font-size:13px; }
.office-hero { max-width:820px; padding:34px 0 30px; }
.office-eyebrow { color:var(--accent); font-size:12px; font-weight:800; letter-spacing:.12em; }
.office-hero h1 { font-size:clamp(32px, 5vw, 54px); line-height:1.05; letter-spacing:-.045em; margin:12px 0 18px; }
.office-lede { color:var(--muted); font-size:17px; max-width:70ch; }
.office-grid { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr); gap:22px; align-items:start; }
.office-card { background:#fff; border:1px solid var(--line); border-radius:18px; padding:26px; box-shadow:0 10px 30px rgba(23,36,58,.05); }
.office-card h2 { font-size:20px; margin:0 0 18px; letter-spacing:-.02em; }
.office-form label { display:block; font-size:13px; font-weight:650; margin:0 0 14px; }
.office-form input[type=text], .office-form input[type=email], .office-form input[type=password] { display:block; width:100%; margin-top:7px; border:1px solid #cfd7e6; border-radius:10px; padding:12px 13px; font:inherit; background:#fbfcfe; }
.office-form input:focus { outline:2px solid #c7bfff; border-color:var(--accent); }
.office-form small { display:block; color:var(--muted); font-weight:400; margin-top:5px; }
.office-consent { font-weight:400!important; color:var(--muted); display:flex!important; gap:9px; align-items:flex-start; margin-top:6px!important; }
.office-consent input { margin-top:3px; }
.office-submit { width:100%; border:0; border-radius:10px; background:var(--accent); color:#fff; font:700 15px/1 inherit; padding:15px 18px; cursor:pointer; margin-top:8px; }
.office-submit:disabled { opacity:.6; cursor:wait; }
.office-status { min-height:22px; font-size:13px; margin:12px 0 0; color:var(--muted); }
.office-status[data-state=error] { color:#a12626; }
.office-status[data-state=success] { color:var(--ok); }
.office-honeypot { position:absolute; left:-10000px; width:1px; height:1px; overflow:hidden; }
.office-list { padding-left:19px; color:var(--muted); }
.office-list li { margin:8px 0; }
.office-muted { color:var(--muted); font-size:13px; }
.office-link { display:block; font-size:13px; font-weight:700; margin-top:14px; text-decoration:none; }
.office-table { width:100%; border-collapse:collapse; background:#fff; border:1px solid var(--line); border-radius:14px; overflow:hidden; font-size:13px; }
.office-table th { background:#f3f5fa; text-align:left; padding:12px; color:var(--muted); font-size:11px; text-transform:uppercase; letter-spacing:.06em; }
.office-table td { border-top:1px solid #eef1f7; padding:13px 12px; vertical-align:top; }
.office-table tr:last-child td { border-bottom:0; }
.office-note { color:var(--muted); font-size:13px; margin:14px 0 0; }
.office-badge { display:inline-block; border:1px solid #d9d2ff; background:var(--soft); color:#5542c9; border-radius:999px; padding:5px 9px; font-size:11px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; }
@media (max-width:760px) { .office-grid { grid-template-columns:1fr; } .office-shell { padding:18px; } .office-top { align-items:flex-start; flex-direction:column; } }
