:root{--bg:#ffffff;--panel:#f8faf9;--border:#e5efe7;--fg:#0b1720;--muted:#617a6a;--brand:#22c55e}
*{box-sizing:border-box}html,body{margin:0;padding:0;background:var(--bg);color:var(--fg);font:16px/1.5 system-ui,-apple-system,Segoe UI,Roboto,Inter,Arial}
a{color:#0e7a57;text-decoration:none}.wrap{max-width:1080px;margin:0 auto;padding:20px}.small{font-size:12px}.muted{color:var(--muted)}
.btn{background:var(--brand);color:#0b111f;border:none;border-radius:12px;padding:12px 16px;font-weight:600;cursor:pointer}
.btn.secondary{background:#e9f6ee;color:#0b111f;border:1px solid #cfe7d6}.btn.small{padding:8px 12px;border-radius:10px;font-size:14px}.btn.disabled{opacity:.5;cursor:not-allowed}
.site-header{border-bottom:1px solid var(--border);background:rgba(255,255,255,.7);backdrop-filter:saturate(90%) blur(6px);position:sticky;top:0;z-index:10}
.site-header .wrap{display:flex;justify-content:space-between;align-items:center}.brand{font-weight:800;letter-spacing:.5px}nav a{margin-left:16px;color:#325e48}
.site-footer{border-top:1px solid var(--border);padding:24px 0;margin-top:40px;color:#4a6757}
.hero{display:grid;grid-template-columns:1.2fr 1fr;gap:24px;align-items:center;padding:56px 20px;border-bottom:1px solid var(--border);background:url('assets/img/hero-light.svg') center/cover no-repeat}
.hero h1{font-size:40px;margin:0 0 10px;color:#0b1720}.lead{color:#325e48;font-size:18px}.hero-card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px}
.section-decor{background:url('assets/img/section-pattern.svg') center/220px repeat}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin:24px 0}
.card{background:var(--panel);border:1px solid var(--border);border-radius:16px;padding:16px}.card.decor{background-image:url('assets/img/section-pattern.svg');background-size:220px;background-repeat:repeat}
.brand-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.brand-logo{width:56px;height:56px;opacity:.9}
.cta-bar{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:#f4faf6}.cta-bar .flex{display:flex;justify-content:space-between;align-items:center;gap:16px}
.form label{display:block;margin-bottom:12px}.form input,.form textarea{width:100%;margin-top:6px;background:#ffffff;color:var(--fg);border:1px solid var(--border);border-radius:10px;padding:10px}.form button{margin-top:8px}
#chat-root{position:fixed;right:20px;bottom:20px;z-index:50}.chat-toggle{width:56px;height:56px;border-radius:50%;background:var(--brand);border:none;color:#0b111f;font-weight:800;cursor:pointer;box-shadow:0 10px 30px rgba(0,0,0,.15)}
.chat-panel{position:fixed;right:20px;bottom:88px;width:320px;max-height:60vh;background:#ffffff;border:1px solid var(--border);border-radius:16px;display:none;flex-direction:column;overflow:hidden}
.chat-panel header{padding:10px 12px;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center}.chat-panel .messages{padding:12px;overflow:auto;flex:1}
.chat-panel .composer{display:flex;border-top:1px solid var(--border)}.chat-panel .composer input{flex:1;border:none;background:#fff;color:#0b1720;padding:10px}.chat-panel .composer button{border:none;background:var(--brand);color:#0b111f;padding:10px 14px}
@media (max-width:860px){.hero{grid-template-columns:1fr}.grid{grid-template-columns:1fr}.brand-grid{grid-template-columns:1fr}}
