:root{--bg:#0b0b0d;--fg:#f2f2f0;--muted:#9a9a94;--line:#232326;--accent:#deff2d;--accent-fg:#0b0b0d}
@media (prefers-color-scheme: light){:root{--bg:#f7f7f4;--fg:#111;--muted:#666;--line:#e3e3df;--accent:#111;--accent-fg:#f7f7f4}}
*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--fg);font:17px/1.55 ui-sans-serif,-apple-system,"Inter",system-ui,sans-serif;min-height:100dvh;display:flex;flex-direction:column}
main{flex:1;width:100%;max-width:560px;margin:0 auto;padding:56px 20px 40px}
header{display:flex;align-items:center;gap:10px;margin-bottom:56px}
.logo{height:22px;width:auto;display:block}
header picture{display:block;line-height:0}
header a{display:inline-flex;align-items:center;gap:12px;color:inherit;text-decoration:none}
.brand{font-weight:600;letter-spacing:.02em;padding-left:12px;border-left:1px solid var(--line);line-height:1}
h1{font-size:2rem;line-height:1.15;margin:0 0 20px;letter-spacing:-.02em}
p{margin:0 0 20px;color:var(--fg)}p.muted,small{color:var(--muted)}
form{display:flex;gap:8px;margin:28px 0 10px}
.phone{flex:1;display:flex;align-items:center;border:1px solid var(--line);border-radius:10px;min-width:0}
.phone:focus-within{outline:2px solid var(--accent);outline-offset:1px;border-color:transparent}
.cc{padding:14px 0 14px 16px;color:var(--muted)}
input{flex:1;font:inherit;padding:14px 16px 14px 8px;border:0;background:transparent;color:var(--fg);min-width:0}
input:focus{outline:none}
button,.btn{font:inherit;font-weight:600;padding:14px 20px;border-radius:10px;border:0;background:var(--accent);color:var(--accent-fg);cursor:pointer;text-decoration:none;display:inline-block;white-space:nowrap}
button[disabled]{opacity:.6;cursor:default}
.or{display:flex;align-items:center;gap:12px;color:var(--muted);margin:22px 0;font-size:.9rem}.or::before,.or::after{content:"";flex:1;height:1px;background:var(--line)}
.sms{display:block;text-align:center;padding:14px;border:1px solid var(--line);border-radius:10px;color:var(--fg);text-decoration:none}
.sms b{display:block;font-size:1.25rem;letter-spacing:.02em}
#msg{min-height:1.5em;font-size:.95rem}#msg.err{color:#ff6b6b}#msg.ok{color:var(--accent)}
.consent{font-size:.8rem;color:var(--muted);line-height:1.5;margin-top:18px}
footer{padding:24px 20px;text-align:center;color:var(--muted);font-size:.8rem}footer a{color:inherit;margin:0 8px}
.hp{position:absolute;left:-9999px}
@media (max-width:480px){main{padding-top:40px}h1{font-size:1.7rem}form{flex-direction:column}}
.fine{font-size:.9rem;margin-top:10px}
h1.brand{font-size:inherit;margin:0;letter-spacing:.02em}
h2.h1{font-size:2rem;line-height:1.15;margin:0 0 20px;letter-spacing:-.02em}
