:root{--brand:#5b6cf5;--brand-deep:#4b3fb0;--ink:#1a1c2e;--ink-soft:#55597a;--line:#e3e5f2;--bg:#ffffff;--bg-soft:#f6f7fd;--danger:#b4232b;--danger-bg:#fdf1f1;--ok:#1c7a4a;--ok-bg:#eefaf3;--radius:12px;--shadow:0 10px 40px rgba(26,28,46,0.08)}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}a{color:var(--brand)}.hdr{justify-content:space-between;gap:16px;padding:18px 24px;border-bottom:1px solid var(--line)}.hdr,.hdr .mark{display:flex;align-items:center}.hdr .mark{gap:12px;text-decoration:none;color:inherit}.hdr .mark img{height:36px;width:auto;display:block}.hdr .mark strong{font-size:18px;letter-spacing:-.01em}.hdr .mark span{color:var(--ink-soft);font-size:13px}.hdr nav a{color:var(--ink-soft);text-decoration:none;font-size:14px;margin-left:18px}.hdr nav a:hover{color:var(--brand)}.wrap{max-width:1100px;margin:0 auto;padding:0 24px}.hero{background:linear-gradient(135deg,#f6f7fd,#eef0fe 55%,#f8f5ff);border-bottom:1px solid var(--line);padding:64px 0 56px}.hero h1{font-size:clamp(30px,4.4vw,46px);line-height:1.12;margin:0 0 16px;letter-spacing:-.02em}.hero p{font-size:18px;color:var(--ink-soft);margin:0 0 28px;max-width:60ch}.hero .points{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0;margin:0}.hero .points li{background:rgba(255,255,255,.8);border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:14px;color:var(--ink-soft)}.section{padding:56px 0}.section h2{font-size:26px;margin:0 0 8px;letter-spacing:-.01em}.section .lede{color:var(--ink-soft);margin:0 0 28px;max-width:60ch}.card{background:var(--bg);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px}.grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:18px;gap:18px}.grid .wide{grid-column:1/-1}@media (max-width:720px){.grid{grid-template-columns:1fr}}.field label{display:block;font-size:14px;font-weight:600;margin-bottom:6px}.field .req{color:var(--danger);margin-left:3px}.field input[type=date],.field input[type=datetime-local],.field input[type=email],.field input[type=number],.field input[type=tel],.field input[type=text],.field input[type=url],.field select,.field textarea{width:100%;padding:11px 12px;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:8px;outline:none}.field textarea{min-height:110px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand);box-shadow:0 0 0 3px rgba(91,108,245,.15)}.field.invalid input,.field.invalid select,.field.invalid textarea{border-color:var(--danger)}.field .err{color:var(--danger);font-size:13px;margin-top:6px}.check{display:flex;align-items:flex-start;gap:10px}.check input{margin-top:4px;width:16px;height:16px}.check label{font-weight:400;font-size:14px;color:var(--ink-soft);margin:0}.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.actions{display:flex;align-items:center;gap:14px;margin-top:22px;flex-wrap:wrap}.btn{background:var(--brand);color:#fff;border:1px solid var(--brand);border-radius:8px;padding:12px 22px;font:inherit;font-weight:600;cursor:pointer}.btn:hover{background:var(--brand-deep);border-color:var(--brand-deep)}.btn[disabled]{opacity:.6;cursor:progress}.actions .note{color:var(--ink-soft);font-size:13px}.banner{border-radius:8px;padding:12px 14px;font-size:14px;margin-bottom:20px}.banner.error{background:var(--danger-bg);border:1px solid #f2c9c9;color:var(--danger)}.banner.ok{background:var(--ok-bg);border:1px solid #bfe6d1;color:var(--ok)}.thanks{text-align:center;padding:90px 0 100px}.thanks h1{font-size:34px;margin:0 0 12px}.thanks p{color:var(--ink-soft);font-size:17px;margin:0 auto 10px;max-width:52ch}.thanks .ref{display:inline-block;margin-top:18px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;padding:10px 16px;font-size:16px}.ftr{border-top:1px solid var(--line);padding:26px 0;color:var(--ink-soft);font-size:13px}.ftr .wrap{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}