:root{--brand:#1e5f4b;--brand-light:#2e8b6b;--accent:#e8552d;--drop:#1e8e3e;--surface:#fdfdfb;--surface-alt:#f2f3ef;--on-surface:#1a1c19;--muted:#5b5f57;--radius:14px;--space:16px;--maxw:1080px}@media (prefers-color-scheme:dark){:root{--surface:#11130f;--surface-alt:#1c1f1a;--on-surface:#e3e4de;--muted:#a8ada2;--brand:#2e8b6b}}*{box-sizing:border-box}body,html{margin:0;padding:0}body{font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:var(--surface);color:var(--on-surface);line-height:1.55}a{color:var(--brand);text-decoration:none}.container{max-width:var(--maxw);margin:0 auto;padding:0 var(--space)}.nav{display:flex;align-items:center;justify-content:space-between;padding:var(--space) 0}.nav__links{display:flex;gap:20px;flex-wrap:wrap}.hero{text-align:center;padding:72px 0 48px}.hero h1{font-size:clamp(2rem,5vw,3.2rem);font-weight:800;margin:0 0 12px}.hero p{font-size:1.2rem;color:var(--muted);max-width:640px;margin:0 auto 28px}.btn{display:inline-block;background:var(--brand);color:#fff;font-weight:700;padding:14px 28px;border-radius:var(--radius);border:0;cursor:pointer}.grid{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}.card{background:var(--surface-alt);border-radius:var(--radius);padding:24px}.section{padding:48px 0}.section h2{font-size:1.8rem;font-weight:700}.badge{display:inline-block;background:color-mix(in srgb,var(--accent) 16%,transparent);color:var(--accent);font-weight:600;font-size:.85rem;padding:4px 10px;border-radius:8px}.pricing{display:grid;grid-gap:20px;gap:20px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.pricing__pro{border:2px solid var(--brand)}.footer{border-top:1px solid var(--surface-alt);padding:32px 0;color:var(--muted);font-size:.9rem}.footer__links{gap:16px}.consent,.footer__links{display:flex;flex-wrap:wrap}.consent{position:fixed;inset:auto 16px 16px 16px;max-width:var(--maxw);margin:0 auto;background:var(--surface-alt);border-radius:var(--radius);padding:16px;gap:12px;align-items:center;justify-content:space-between;box-shadow:0 6px 30px rgba(0,0,0,.18)}