  :root { --green:#70AF5F; --dark:#205F2F; --ink:#1d2a20; --muted:#5d6b60; --bg:#f4f7f3; }
  * { box-sizing:border-box; }
  body { margin:0; min-height:100vh; display:flex; flex-direction:column; font-family:Calibri,"Segoe UI",system-ui,sans-serif; background:var(--bg); color:var(--ink); line-height:1.55; }
  a { color:var(--dark); }
  .band { background:var(--green); border-top:1px solid var(--dark); border-bottom:1px solid var(--dark); color:#fff; }
  header.band { margin-top:15px; }
  .wrap { max-width:760px; margin:0 auto; padding:1.4rem 1.5rem; }
  header h1 { margin:0; font-size:2rem; font-weight:600; letter-spacing:.01em; }
  header p { margin:.15rem 0 0; font-size:1.15rem; opacity:.95; }
  main { flex:1; display:flex; align-items:center; }
  .card { width:100%; text-align:center; padding:3rem 1.5rem; }
  .services { display:grid; grid-template-columns:repeat(auto-fit,minmax(200px,1fr)); gap:1.2rem; margin:0 0 2.5rem; }
  .svc { background:#fff; border:1px solid #dfe8dc; border-top:4px solid var(--green); border-radius:.6rem; padding:1.6rem 1.2rem 1.4rem; box-shadow:0 2px 10px rgba(32,95,47,.07); transition:transform .15s ease, box-shadow .15s ease; }
  .svc:hover { transform:translateY(-3px); box-shadow:0 8px 22px rgba(32,95,47,.14); }
  .svc .ico { width:52px; height:52px; margin:0 auto .9rem; border-radius:50%; background:#e7f2e3; display:flex; align-items:center; justify-content:center; }
  .svc svg { width:26px; height:26px; stroke:var(--dark); fill:none; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
  .svc h3 { margin:0 0 .35rem; font-size:1.15rem; color:var(--dark); }
  .svc p { margin:0; font-size:.95rem; color:var(--muted); }
  .contact { display:flex; gap:.8rem; justify-content:center; flex-wrap:wrap; }
  .contact a { padding:.55rem 1.1rem; border:1px solid var(--dark); border-radius:.4rem; text-decoration:none; color:var(--dark); background:#fff; }
  .contact a:hover { background:var(--green); color:#fff; }
  footer .wrap { display:flex; gap:2rem; flex-wrap:wrap; font-size:.8rem; }
  footer .col { flex:1 1 240px; }
  footer h2 { font-size:.9rem; margin:0 0 .4rem; }
  footer p { margin:0 0 .5rem; }
  footer a { color:#fff; }

  footer .wrap { justify-content:space-between; align-items:center; }
  footer nav a { margin-left:1rem; }
  .legal main { display:block; }
  .legal .wrap.content { padding:2.5rem 1.5rem; }
  .legal h1 { color:var(--dark); }
  .legal h2 { font-size:1.1rem; color:var(--dark); margin-top:1.6rem; }
  .back { display:inline-block; margin-top:2rem; }
