:root { --ink:#1b2430; --muted:#5b6675; --line:#dfe4ea; --accent:#1f6feb; --accent-dark:#1757bd; --bg:#ffffff; --soft:#f5f7fa; }
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; font:17px/1.6 "Segoe UI", system-ui, -apple-system, Roboto, Arial, sans-serif; color:var(--ink); background:var(--bg); }
a { color:var(--accent); }
.wrap { max-width:960px; margin:0 auto; padding:0 22px; }
header.site { border-bottom:1px solid var(--line); background:#fff; position:sticky; top:0; z-index:5; }
header.site .wrap { display:flex; align-items:center; justify-content:space-between; height:60px; }
header.site .brand { font-weight:700; font-size:20px; color:var(--ink); text-decoration:none; letter-spacing:.2px; }
header.site nav a { margin-left:22px; color:var(--muted); text-decoration:none; font-size:15px; }
header.site nav a:hover { color:var(--ink); }
.hero { padding:72px 0 56px; background:linear-gradient(180deg,#f3f7ff 0%,#fff 100%); text-align:center; }
.hero h1 { font-size:44px; line-height:1.15; margin:0 0 16px; }
.hero p.lead { font-size:20px; color:var(--muted); max-width:680px; margin:0 auto 28px; }
.btn { display:inline-block; background:var(--accent); color:#fff; padding:13px 28px; border-radius:8px; text-decoration:none; font-weight:600; font-size:17px; border:0; }
.btn:hover { background:var(--accent-dark); }
.btn.ghost { background:#fff; color:var(--accent); border:1px solid var(--accent); margin-left:10px; }
.btn.ghost:hover { background:#f0f5ff; }
.note { color:var(--muted); font-size:14px; margin-top:14px; }
figure.shot { margin:44px auto 0; max-width:900px; }
figure.shot img { width:100%; height:auto; border-radius:10px; border:1px solid var(--line); box-shadow:0 14px 40px rgba(20,40,80,.18); }
figure.shot figcaption { color:var(--muted); font-size:14.5px; margin-top:12px; }
section { padding:56px 0; }
section.soft { background:var(--soft); }
h2 { font-size:30px; margin:0 0 8px; }
h2 + p.sub { color:var(--muted); margin:0 0 30px; }
.grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); gap:22px; }
.card { background:#fff; border:1px solid var(--line); border-radius:12px; padding:22px; }
.card h3 { margin:0 0 6px; font-size:19px; }
.card p { margin:0; color:var(--muted); font-size:15.5px; }
.price { text-align:center; }
.price .box { display:inline-block; text-align:left; background:#fff; border:2px solid var(--accent); border-radius:14px; padding:30px 38px; max-width:520px; }
.price ul { margin:14px 0 22px; padding-left:20px; }
.price li { margin:6px 0; }
.steps li { margin:10px 0; }
footer.site { border-top:1px solid var(--line); padding:30px 0; color:var(--muted); font-size:14.5px; background:#fff; }
footer.site a { color:var(--muted); margin-right:18px; }
.doc { padding:48px 0 64px; max-width:760px; }
.doc h1 { font-size:34px; margin:0 0 6px; }
.doc h2 { font-size:22px; margin:30px 0 6px; }
.doc .updated { color:var(--muted); font-size:14px; margin-bottom:24px; }
@media (max-width:640px){ .hero h1{font-size:32px;} header.site nav a{margin-left:12px;} }
