:root { --ink:#18212b; --muted:#5e6975; --line:#dfe4e8; --surface:#f5f7f8; --accent:#125b71; --accent-dark:#0d4353; --ok:#e9f7ef; --ok-ink:#20653b; --error:#fff0f0; --error-ink:#8b2929; font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; color:var(--ink); }
* { box-sizing:border-box; }
body { margin:0; background:white; line-height:1.55; }
a { color:var(--accent); text-decoration:none; }
a:hover { text-decoration:underline; }
.container { width:min(1120px, calc(100% - 36px)); margin:0 auto; }
.narrow { width:min(760px, 100%); }
.site-header { border-bottom:1px solid var(--line); background:rgba(255,255,255,.96); position:sticky; top:0; z-index:10; }
.header-inner { min-height:70px; display:flex; align-items:center; justify-content:space-between; gap:24px; }
.brand { font-weight:750; color:var(--ink); letter-spacing:-.02em; }
nav { display:flex; gap:18px; align-items:center; flex-wrap:wrap; }
nav a { color:var(--ink); font-size:.95rem; }
.hero { padding:88px 0 72px; background:linear-gradient(180deg,#f7fafb 0%,#fff 100%); }
.hero-grid { display:grid; grid-template-columns:1.4fr .8fr; gap:64px; align-items:center; }
.eyebrow { color:var(--accent); font-size:.82rem; font-weight:800; letter-spacing:.14em; }
h1 { font-size:clamp(2.3rem,5vw,4.5rem); letter-spacing:-.045em; line-height:1.02; margin:.45rem 0 1.2rem; }
h2 { letter-spacing:-.025em; }
.lead { font-size:1.2rem; color:var(--muted); max-width:720px; }
.hero-card { border:1px solid var(--line); border-radius:18px; padding:28px; background:#fff; box-shadow:0 18px 55px rgba(27,49,61,.08); }
.hero-card ol { padding-left:20px; }
.section { padding:64px 0; }
.page-hero { padding:64px 0 28px; background:var(--surface); }
.cards { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.cards article { padding:24px; border:1px solid var(--line); border-radius:14px; }
.prose { font-size:1.05rem; }
.prose li { margin:.55rem 0; }
.actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:28px; }
.button { display:inline-block; background:var(--accent); color:#fff; padding:12px 18px; border-radius:9px; border:1px solid var(--accent); font:inherit; font-weight:650; cursor:pointer; }
.button:hover { background:var(--accent-dark); text-decoration:none; }
.button-secondary { background:#fff; color:var(--accent); }
.button-small { padding:8px 12px; }
button:disabled { opacity:.5; cursor:not-allowed; }
.inline-form { display:inline; margin:0; }
.link-button { background:none; border:0; color:var(--accent); padding:0; font:inherit; cursor:pointer; }
.user-chip { font-size:.9rem; color:var(--muted); }
.form-container { max-width:820px; }
.request-form { display:grid; gap:20px; }
.request-form label { display:grid; gap:7px; font-weight:650; }
.request-form input, .request-form select, .request-form textarea { width:100%; font:inherit; border:1px solid #c8d0d6; border-radius:8px; padding:11px 12px; background:#fff; color:var(--ink); }
.request-form input:focus, .request-form select:focus, .request-form textarea:focus, .button:focus-visible, a:focus-visible { outline:3px solid rgba(18,91,113,.25); outline-offset:2px; border-color:var(--accent); }
.request-form .consent { grid-template-columns:auto 1fr; align-items:start; font-weight:400; }
.request-form .consent input { width:auto; margin-top:.3rem; }
.request-form textarea { resize:vertical; }
.grid-two { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.hint { color:var(--muted); font-size:.92rem; margin-top:-8px; }
.status { border-radius:9px; padding:12px 14px; margin-bottom:22px; }
.status-ok { background:var(--ok); color:var(--ok-ink); }
.status-error { background:var(--error); color:var(--error-ink); }
.steps { display:grid; gap:18px; padding:0; counter-reset:step; }
.steps li { list-style:none; display:grid; grid-template-columns:150px 1fr; border-top:1px solid var(--line); padding-top:18px; }
.receipt dl { display:grid; grid-template-columns:140px 1fr; gap:8px 18px; }
.receipt dt { color:var(--muted); }
.receipt dd { margin:0; font-weight:650; }
.success-mark { width:48px; height:48px; border-radius:50%; display:grid; place-items:center; background:var(--ok); color:var(--ok-ink); font-size:1.5rem; font-weight:800; }
footer { border-top:1px solid var(--line); margin-top:60px; }
.footer-inner { min-height:100px; display:flex; justify-content:space-between; align-items:center; color:var(--muted); }
.footer-links { display:flex; gap:18px; align-items:center; flex-wrap:wrap; }
@media (max-width:800px) { .header-inner { align-items:flex-start; padding:16px 0; } nav { justify-content:flex-end; } .hero-grid,.cards,.grid-two { grid-template-columns:1fr; } .hero { padding-top:56px; } .steps li { grid-template-columns:1fr; gap:4px; } }
