/* EW Home Services — named-services section on the homepage (agent-readiness
 * Issue 2). Namespaced under .ew-home-services so nothing leaks into the
 * Elementor page above it or the ewf footer below it. Injected via
 * generate_before_footer (outside the theme #page wrapper, so the section is
 * naturally full-width; the inner wrap sets the content column).
 *
 * Tokens mirror _shared/brand-system/design.md: green #264E24 headings,
 * orange #FD6B02 CTA-only (ink text for AA), warm cream/paper neutrals,
 * Vollkorn display + Mulish body (both already loaded by ew-brand-align).
 * Loaded as a REAL enqueued stylesheet (in-body <style> gets stripped by
 * WP Rocket RUCSS) + RUCSS-safelisted in ew-home-services.php.
 */
.ew-home-services{
  --color-paper:#FFFFFF; --color-cream:#FAF7F2;
  --color-ink:#222222; --color-ink-2:#4D4D4D;
  --color-green:#264E24; --color-green-tint:#DEE7DC;
  --color-accent:#FD6B02; --color-accent-ink:#222222;
  --color-rule:#E9E3D9;
  --ehs-display:"Vollkorn",Georgia,serif; --ehs-body:"Mulish","Public Sans",system-ui,sans-serif;
  --radius-card:16px; --radius-input:8px;
  --ease-out:cubic-bezier(0.16,1,0.3,1); --dur:240ms;
  background:var(--color-paper);color:var(--color-ink);
  font-family:var(--ehs-body);font-size:17px;line-height:1.55;
  padding:64px 24px 72px;
}
.ew-home-services .ehs-wrap{max-width:1120px;margin:0 auto}
.ew-home-services .ehs-eyebrow{margin:0;font-size:14px;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:var(--color-ink-2)}
.ew-home-services h2{font-family:var(--ehs-display);font-weight:700;font-style:normal;
  color:var(--color-green);font-size:clamp(28px,3.4vw,42px);line-height:1.08;
  letter-spacing:-.3px;margin:10px 0 0}
.ew-home-services .ehs-lead{max-width:70ch;margin:14px 0 0;font-size:17px;line-height:1.6;
  color:var(--color-ink-2)}
.ew-home-services .ehs-grid{list-style:none;margin:36px 0 0;padding:0;display:grid;
  grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:18px}
.ew-home-services .ehs-card{background:var(--color-cream);border:1px solid var(--color-rule);
  border-radius:var(--radius-card);padding:24px 26px;margin:0;
  /* anchor landing offset so #blog-post-writing etc. isn't hidden under a sticky header */
  scroll-margin-top:96px}
.ew-home-services .ehs-card h3{font-family:var(--ehs-display);font-weight:700;font-style:normal;
  font-size:21px;line-height:1.2;margin:0;color:var(--color-green)}
.ew-home-services .ehs-card h3 a{color:var(--color-green);text-decoration:none;
  transition:color var(--dur) var(--ease-out)}
.ew-home-services .ehs-card h3 a:hover{color:var(--color-accent);text-decoration:underline;
  text-underline-offset:3px}
.ew-home-services .ehs-card p{margin:8px 0 0;font-size:15.5px;line-height:1.55;
  color:var(--color-ink-2)}
.ew-home-services .ehs-cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px;align-items:center}
.ew-home-services .ehs-btn-primary{display:inline-block;background:var(--color-accent);
  color:var(--color-accent-ink);font-family:var(--ehs-body);font-weight:700;font-size:17px;
  border-radius:var(--radius-input);padding:15px 26px;text-decoration:none;
  transition:filter var(--dur) var(--ease-out),transform var(--dur) var(--ease-out)}
.ew-home-services .ehs-btn-primary:hover{filter:brightness(.96)}
.ew-home-services .ehs-btn-primary:active{transform:translateY(1px)}
.ew-home-services .ehs-btn-primary:focus-visible{outline:3px solid var(--color-green);outline-offset:2px}
.ew-home-services .ehs-btn-ghost{display:inline-block;font-family:var(--ehs-body);font-weight:700;
  font-size:16px;color:var(--color-green);background:transparent;
  border:1.5px solid var(--color-green);border-radius:var(--radius-input);padding:13px 24px;
  text-decoration:none;transition:background var(--dur) var(--ease-out)}
.ew-home-services .ehs-btn-ghost:hover{background:var(--color-green-tint)}
.ew-home-services .ehs-btn-ghost:focus-visible{outline:3px solid var(--color-accent);outline-offset:2px}
@media (max-width:640px){
  .ew-home-services{padding:48px 20px 56px}
  .ew-home-services .ehs-grid{grid-template-columns:1fr}
}
