:root { color-scheme: light; --ink:#0f172a; --muted:#475569; --brand:#4f46e5; --line:#d9e2ec; --bg:#f6f8fc; }
* { box-sizing: border-box; }
body { margin:0; background:var(--bg); color:var(--ink); font-family:Inter,system-ui,sans-serif; line-height:1.6; }
a { color:var(--brand); }
.page { width:min(920px,calc(100% - 32px)); margin:auto; padding:32px 0 64px; }
.top { display:flex; align-items:center; justify-content:space-between; gap:16px; margin-bottom:48px; }
.brand { color:var(--ink); font-weight:900; text-decoration:none; }
.open-map,.cta { display:inline-flex; min-height:48px; align-items:center; justify-content:center; padding:10px 16px; border-radius:12px; background:var(--brand); color:#fff; font-weight:800; text-decoration:none; }
.eyebrow { margin:0 0 8px; color:var(--brand); font-size:12px; font-weight:900; letter-spacing:.08em; text-transform:uppercase; }
h1 { max-width:760px; margin:0; font-size:clamp(32px,6vw,58px); line-height:1.02; letter-spacing:-.035em; }
.lead { max-width:700px; margin:24px 0; color:var(--muted); font-size:18px; }
.grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; margin:40px 0; }
.card { padding:20px; border:1px solid var(--line); border-radius:16px; background:#fff; }
.card h2 { margin:0 0 8px; font-size:17px; }
.card p { margin:0; color:var(--muted); font-size:14px; }
.note { margin-top:32px; padding:20px; border-radius:16px; background:#e0e7ff; }
footer { margin-top:56px; padding-top:24px; border-top:1px solid var(--line); color:var(--muted); font-size:13px; }
@media(max-width:700px){.page{padding-top:18px}.top{margin-bottom:32px}.grid{grid-template-columns:1fr}.open-map{padding-inline:12px}}
