/* Lawn Care: generated by factory/theme_make.py from theme_spec.py. Structure
   lives in /t/_base/base.css; this is the palette, the type and the no-WebGL
   stand-in for the 3D object. */
:root {
  --bg: #0d130d; --bg-rgb: 13, 19, 13; --bg-2: #141c14;
  --ink: #eef3ea; --ink-2: #d4ddcd; --muted: #94a08e; --line: rgba(238, 243, 234, .12);
  --accent: #8fd14f; --accent-rgb: 143, 209, 79; --accent-hi: #c6f39b; --on-accent: #0f2000;
  --card-1: #182218; --card-2: #0e140e; --video-dim: .46;
  --display: "Fraunces", "Playfair Display", Georgia, serif; --display-case: none; --display-weight: 500;
  --display-leading: .95; --display-tracking: -.02em;
  --title-size: clamp(3rem, 8.6vw, 8.2rem);
  --serif: "Fraunces", Georgia, serif;
}
h3 { font-size: 1.6rem; letter-spacing: -.01em; }
.steps span { font-size: 1.45rem; }

/* no WebGL: a soft glow in the accent where the object would be */
html.no-webgl .hero__fallback {
  right: 8vw; top: 20vh; width: 34vw; height: 48vh; border-radius: 50%;
  background: radial-gradient(circle at 35% 35%, #c6f39b, #8fd14f 45%, transparent 70%);
  filter: blur(28px); opacity: .5; animation: glow 8s ease-in-out infinite alternate;
}
@keyframes glow { to { transform: translate(-4vw, 3vh) scale(1.08); } }
@media (max-width: 760px) {
  html.no-webgl .hero__fallback { top: 70px; right: 15vw; width: 70vw; height: 30svh; }
}
