:root {
  --bg: #EDE8E0;
  --surface: #F5F1E9;
  --text: #232020;
  --muted: #6B5B52;
  --accent: #A0674A;
  --accent-contrast: #F5F1E9;
  --rad: 4px;
  --shadow-1: 0 1px 2px rgba(35,32,32,0.08);
  --shadow-2: 0 3px 8px rgba(35,32,32,0.12);
  --f-head: 'Freight Display Pro', 'Playfair Display', Georgia, serif;
  --f-body: 'IBM Plex Mono', 'Courier New', monospace;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin:0; background:var(--bg); color:var(--text); font-family:var(--f-body);
  font-size:0.875rem; line-height:1.6; }
img { max-width:100%; height:auto; display:block; border-radius:var(--rad); }
.sec { padding: clamp(48px, 8vw, 104px) clamp(20px, 6vw, 80px); max-width:1180px; margin:0 auto; }
.sec-title { font-family:var(--f-head); font-weight:600; line-height:1.1; margin:0 0 .4em; }
h1.sec-title { font-size: clamp(34px, 6vw, 5rem); }
h2.sec-title { font-size: clamp(26px, 4vw, 3.5rem); }
.sec-sub { font-size: clamp(18px,2.2vw,22px); color:var(--muted); margin:0 0 1.2em; max-width:60ch; }
.sec-body { max-width:62ch; }
.sec-hero { display:grid; gap:clamp(24px,4vw,56px); grid-template-columns:1.1fr 1fr; align-items:center;
  min-height:72vh; }
.hero-copy { display:flex; flex-direction:column; gap:.6em; align-items:flex-start; }
.btn { font:inherit; cursor:pointer; border:none; border-radius:var(--rad); padding:.85em 1.6em;
  transition:transform .08s ease, background .15s ease, box-shadow .15s ease; }
.btn-primary { background:var(--accent); color:var(--accent-contrast); box-shadow:var(--shadow-1); }
.btn-primary:hover { box-shadow:var(--shadow-2); filter:brightness(.96); }
.btn-primary:active { transform:scale(.98); }
.btn:focus-visible { outline:3px solid var(--accent); outline-offset:3px; }
.steps { list-style:none; padding:0; display:grid; gap:20px; counter-reset:s;
  grid-template-columns:repeat(auto-fit,minmax(240px,1fr)); }
.step { background:var(--surface); border-radius:var(--rad); padding:24px; display:flex; gap:14px; }
.step-n { flex:0 0 auto; width:34px; height:34px; border-radius:50%; background:var(--accent);
  color:var(--accent-contrast); display:grid; place-items:center; font-weight:700; }
.cards { display:grid; gap:20px; grid-template-columns:repeat(auto-fit,minmax(260px,1fr)); margin-top:24px; }
.card { background:var(--surface); border-radius:var(--rad); padding:24px; }
.trust-list { list-style:none; padding:0; display:grid; gap:14px; grid-template-columns:repeat(auto-fit,minmax(280px,1fr)); }
.trust-item { padding-left:1.6em; position:relative; }
.trust-item::before { content:"✓"; position:absolute; left:0; color:var(--accent); font-weight:700; }
.faq-list { display:grid; gap:12px; max-width:820px; }
.faq-item { border:1px solid var(--surface); border-radius:var(--rad); overflow:hidden; }
.faq-q { width:100%; text-align:left; background:var(--surface); border:none; font:inherit; font-weight:600;
  padding:18px 20px; display:flex; justify-content:space-between; gap:12px; cursor:pointer; min-height:44px; }
.faq-chevron { transition:transform .15s ease; }
.faq-q[aria-expanded="true"] .faq-chevron { transform:rotate(180deg); }
.faq-a { max-height:0; overflow:hidden; transition:max-height .28s ease; }
.faq-a p { padding:0 20px 18px; margin:0; color:var(--muted); }
.sec-form { background:var(--surface); border-radius:var(--rad); max-width:560px; }
form label { display:flex; flex-direction:column; gap:6px; margin-bottom:16px; font-size:14px; color:var(--muted); }
form input, form textarea { font:inherit; color:var(--text); background:var(--bg); border:1px solid color-mix(in srgb,var(--accent) 40%,transparent);
  border-radius:var(--rad); padding:.7em .8em; min-height:44px; }
form input:focus, form textarea:focus { outline:none; border-color:var(--accent); box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 25%,transparent); }
.consent { flex-direction:row; align-items:flex-start; gap:10px; }
.consent input { min-height:auto; width:20px; height:20px; margin-top:2px; }
.form-ok { color:var(--accent-contrast); background:var(--accent); padding:14px; border-radius:var(--rad); }
[data-sample]::after { content:"образец"; position:absolute; }
.sticky-cta { position:fixed; left:0; right:0; bottom:0; transform:translateY(110%); transition:transform .28s ease;
  background:var(--bg); box-shadow:0 -2px 16px rgba(0,0,0,.1); padding:12px 20px; display:flex; justify-content:center; z-index:50; }
.sticky-cta.show { transform:translateY(0); }
.reveal { opacity:0; transform:translateY(16px); transition:opacity .5s ease, transform .5s ease; }
.reveal.in { opacity:1; transform:none; }
@media (max-width:760px) { .sec-hero { grid-template-columns:1fr; min-height:auto; } }
@media (prefers-reduced-motion:reduce) { .reveal { opacity:1; transform:none; transition:none; }
  html { scroll-behavior:auto; } }
