:root{--brand:#d43535;--ink:#0f172a;--muted:#475569;--bg:#ffffff;--soft:#f1f5f9;--radius:14px}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;font-family:"Assistant","Rubik",system-ui,-apple-system,"Segoe UI",Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.65}
.wrap{max-width:1080px;margin:0 auto;padding:0 20px}.narrow{max-width:760px}
a{color:var(--brand)}
.hdr{position:sticky;top:0;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid #e2e8f0;z-index:10}
.hdr-in{display:flex;align-items:center;justify-content:space-between;min-height:68px;gap:16px}
.brand{text-decoration:none;color:var(--ink);font-weight:700;font-size:1.2rem}.logo{height:44px;width:auto;display:block}
nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap}nav a{text-decoration:none;color:var(--ink)}
.btn{display:inline-block;background:var(--brand);color:#fff!important;text-decoration:none;border:0;border-radius:999px;padding:.55em 1.2em;font:inherit;font-weight:600;cursor:pointer}
.btn-lg{padding:.8em 1.7em;font-size:1.05rem}
.hero{padding:96px 0 80px;background:linear-gradient(160deg,var(--soft),#fff)}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);margin:0 0 .3em;line-height:1.2}.lead{font-size:1.2rem;color:var(--muted);max-width:640px}
.sec{padding:72px 0}.alt{background:var(--soft)}h2{font-size:1.8rem;margin:0 0 .6em}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:18px}
.card{background:#fff;border-radius:var(--radius);padding:22px;box-shadow:0 1px 3px rgba(15,23,42,.08)}.card h3{margin:0 0 .4em}
.contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,320px),1fr));gap:36px;align-items:start}
.contact-list{list-style:none;padding:0;margin:0}.contact-list li{padding:8px 0;border-bottom:1px solid #e2e8f0}.contact-list span{display:inline-block;min-width:80px;color:var(--muted)}
.form{display:grid;gap:12px;background:var(--soft);padding:22px;border-radius:var(--radius)}
.form label{display:grid;gap:4px;font-weight:600}.form input,.form textarea{font:inherit;padding:.6em .8em;border:1px solid #cbd5e1;border-radius:10px;background:#fff}
.hp{position:absolute;inset-inline-start:-9999px;height:0;overflow:hidden}.form-msg{margin:0;min-height:1.4em}.form-msg.err{color:#b91c1c}.form-msg.ok{color:#15803d}
.ftr{padding:28px 0;color:var(--muted);border-top:1px solid #e2e8f0}
.nf main{padding:120px 20px;text-align:center}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
