
    /* Animated Lawn Mower Arena Styles */
    .lawn-arena-card {
      width: 100%;
      max-width: 440px;
      background: var(--bg-card);
      border: 1px solid var(--border);
      border-radius: var(--radius-xl);
      padding: 16px;
      box-shadow: var(--shadow-hover);
      position: relative;
      overflow: hidden;
      margin: 0 auto;
    }
    .lawn-arena {
      width: 100%;
      height: 280px;
      background: #14532d;
      border-radius: var(--radius-lg);
      position: relative;
      overflow: hidden;
      box-shadow: inset 0 2px 8px rgba(0,0,0,0.15);
    }
    .lawn-mower {
      position: absolute;
      width: 40px;
      height: 60px;
      top: 0;
      left: 0;
      z-index: 10;
      transition: transform 0.08s linear;
    }
    .mower-body {
      width: 28px;
      height: 32px;
      background: #dc2626; /* Toro Commercial Red */
      border-radius: 4px;
      position: absolute;
      top: 4px;
      left: 6px;
      box-shadow: 0 4px 6px rgba(0,0,0,0.25);
    }
    .mower-shield {
      width: 16px;
      height: 12px;
      background: #1e293b;
      border-radius: 2px;
      margin: 4px auto 0;
    }
    .mower-chute {
      width: 8px;
      height: 12px;
      background: #0f172a;
      position: absolute;
      right: -2px;
      top: 12px;
      transform: skewY(15deg);
      border-radius: 1px;
    }
    .mower-wheel {
      background: #000;
      position: absolute;
    }
    .mower-wheel.fl { left: 4px; top: -2px; width: 4px; height: 8px; border-radius: 1px; }
    .mower-wheel.fr { right: 4px; top: -2px; width: 4px; height: 8px; border-radius: 1px; }
    .mower-wheel.wl { left: 1px; top: 18px; width: 6px; height: 14px; border-radius: 2px; }
    .mower-wheel.wr { right: 1px; top: 18px; width: 6px; height: 14px; border-radius: 2px; }
    
    .mower-handle {
      width: 18px;
      height: 22px;
      border: 2px solid #475569;
      border-bottom: none;
      position: absolute;
      top: 30px;
      left: 11px;
      border-radius: 2px 2px 0 0;
    }

    /* Landscaper Operator */
    .mower-operator {
      position: absolute;
      top: 44px;
      left: 8px;
      width: 24px;
      height: 18px;
      z-index: 12;
    }
    .operator-torso {
      width: 24px;
      height: 10px;
      background: #f97316; /* High-vis safety orange vest */
      border-radius: 3px;
      position: relative;
      box-shadow: 0 2px 4px rgba(0,0,0,0.2);
    }
    .operator-head {
      width: 10px;
      height: 10px;
      background: #fed7aa; /* Skin color */
      border-radius: 50%;
      position: absolute;
      top: -3px;
      left: 7px;
    }
    .operator-cap {
      width: 10px;
      height: 10px;
      background: #1e3a8a; /* Blue cap */
      border-radius: 50%;
      position: absolute;
      top: -4px;
      left: 7px;
      z-index: 15;
    }
    .operator-cap::after {
      content: '';
      position: absolute;
      top: -2px;
      left: 3px;
      width: 4px;
      height: 3px;
      background: #1e3a8a;
      border-radius: 1px;
    }
    .operator-arm-l {
      position: absolute;
      width: 3px;
      height: 14px;
      background: #fed7aa;
      left: 2px;
      top: -12px;
      transform: rotate(18deg);
      transform-origin: bottom center;
    }
    .operator-arm-r {
      position: absolute;
      width: 3px;
      height: 14px;
      background: #fed7aa;
      right: 2px;
      top: -12px;
      transform: rotate(-18deg);
      transform-origin: bottom center;
    }
    .operator-legs {
      display: flex;
      justify-content: space-between;
      width: 16px;
      position: absolute;
      bottom: -6px;
      left: 4px;
    }
    .leg {
      width: 6px;
      height: 8px;
      background: #1e3a8a; /* Blue jeans */
      border-radius: 1px;
    }
    .lawn-mower.moving .leg-l {
      animation: legSwing 0.25s infinite alternate;
    }
    .lawn-mower.moving .leg-r {
      animation: legSwing 0.25s infinite alternate-reverse;
    }
    @keyframes legSwing {
      0% { transform: translateY(-2px); }
      100% { transform: translateY(2px); }
    }

    /* Grass blocks */
    .lawn-row {
      display: flex;
      width: 100%;
      height: 56px;
    }
    .grass-cell {
      flex: 1;
      height: 100%;
      background: repeating-linear-gradient(45deg, #143626, #143626 2px, #1b4332 2px, #1b4332 4px);
      border: none; /* Removed retro borders */
      transition: background 0.3s ease;
    }
    .lawn-row:nth-child(odd) .grass-cell.cut {
      background: repeating-linear-gradient(90deg, #40916c, #40916c 3px, #52b788 3px, #52b788 6px);
    }
    .lawn-row:nth-child(even) .grass-cell.cut {
      background: repeating-linear-gradient(90deg, #52b788, #52b788 3px, #74c69d 3px, #74c69d 6px);
    }
    .lawn-arena-footer {
      display: flex;
      justify-content: space-between;
      align-items: center;
      margin-top: 14px;
      font-size: 0.78rem;
      font-weight: 700;
      color: var(--text-muted);
      padding: 0 4px;
    }
    .grass-particle {
      position: absolute;
      width: 4px;
      height: 6px;
      background: #84cc16;
      border-radius: 1px;
      pointer-events: none;
      z-index: 5;
      animation: particleFade 0.6s ease-out forwards;
    }
    @keyframes particleFade {
      0% { transform: translateY(0) rotate(0deg); opacity: 1; }
      100% { transform: translateY(12px) rotate(180deg); opacity: 0; }
    }
  /* Homepage refinements stay scoped; dashboards keep their existing styles. */
.home-page { --green-primary:#087b55; --green-light:#066244; --text-muted:#576771; --gradient-green:linear-gradient(135deg,#087b55,#056747); background:#fff; }
.home-page .container { max-width:1200px; }
.home-page .nav { background:rgba(255,255,255,.97); border-bottom:1px solid #e6ece8; backdrop-filter:blur(16px); }
.home-page .nav-inner { max-width:1280px; height:82px; position:relative; gap:24px; }
.home-page .nav-logo { gap:10px; flex-shrink:0; }
.home-page .nav-logo img { border-radius:12px; width:44px; height:44px; }
.home-page .logo-text { font-size:24px; letter-spacing:-1px; }
.desktop-links,.header-actions { display:flex; align-items:center; gap:28px; }
.desktop-links a,.login-link { font-size:13px; font-weight:650; }
.home-page .btn { min-height:48px; border-radius:10px; padding:13px 20px; gap:16px; font-size:13px; transition:background .2s,box-shadow .2s,transform .2s; }
.home-page .btn-primary { box-shadow:0 3px 8px #087b5517; }
.home-page .btn:hover { transform:translateY(-2px); }
.menu-toggle { display:none; background:#eef5f0; color:#173629; border-radius:8px; padding:12px; min-height:44px; font-weight:700; }
.mobile-menu[hidden] { display:none; }
.mobile-menu { position:absolute; top:calc(100% + 1px); left:0; right:0; background:white; padding:20px 24px; box-shadow:0 20px 32px #10271b15; z-index:40; }
.mobile-menu a { display:block; padding:12px; border-bottom:1px solid #edf1ee; }
.skip-link { position:fixed; top:8px; left:8px; transform:translateY(-160%); background:#102a20; color:white; padding:12px 18px; z-index:1000; }
.skip-link:focus { transform:translateY(0); }
.home-page :focus-visible { outline:3px solid #116e53; outline-offset:4px; }
.home-page .hero { padding:156px 0 76px; min-height:0; overflow:visible; background:linear-gradient(115deg,#fff 40%,#f3f8f3 100%); }
.home-page .hero::before { display:none; }
.home-page .hero-grid { grid-template-columns:1.04fr 1fr; gap:70px; align-items:center; }
.home-page .hero-content { padding:0; text-align:left; }
.local-note { display:flex; gap:8px; align-items:center; font-size:12px; font-weight:700; color:#4f6858; margin-bottom:22px; }
.local-note span { height:7px; width:7px; border-radius:50%; background:#128257; }
.home-page .hero h1 { font-size:clamp(44px,4.9vw,66px); line-height:1.065; letter-spacing:-3px; margin-bottom:22px; font-weight:800; }
.home-page .hero h1 span { color:#087b55; }
.home-page .hero-sub { font-size:16px; line-height:1.8; margin:0 0 28px; max-width:450px; color:#52636b; }
.quote-form label { display:block; font-size:12px; font-weight:750; color:#22372d; margin-bottom:9px; }
.address-row { display:flex; align-items:center; padding:6px; gap:5px; border:1px solid #cddbd2; border-radius:13px; background:white; box-shadow:0 6px 20px #16332608; }
.address-row:focus-within { border-color:#087b55; box-shadow:0 0 0 3px #087b5514; }
.address-row input { min-width:0; width:100%; border:0; background:none; padding:13px 8px; font-size:14px; }
.address-row .btn { white-space:nowrap; flex-shrink:0; }
.form-help { font-size:11px; color:#5f6f66; margin-top:11px; }
.how-link { display:inline-flex; align-items:center; gap:18px; font-size:12px; font-weight:750; margin-top:25px; text-decoration:underline; text-underline-offset:5px; }
.home-page .hero-graphic { min-width:0; padding:0; position:relative; }
.home-page .lawn-arena-card { max-width:none; padding:20px; border:1px solid #d8e6dc; border-radius:22px; background:white; box-shadow:0 24px 64px #1a43241c,0 3px 8px #1a43240a; transform:rotate(-1.5deg); }
.lawn-card-heading { display:flex; align-items:center; justify-content:space-between; gap:10px; padding:0 1px 18px; }
.scene-label { font-size:9px; letter-spacing:1.5px; color:#708076; font-weight:750; margin-bottom:5px; }
.lawn-card-heading h2 { font-size:18px; letter-spacing:-.5px; }
.illustration-label { font-size:9px; padding:5px 8px; color:#68796d; background:#f0f5f1; border-radius:4px; }
.home-page .lawn-arena { height:310px; border-radius:12px; background:#163e2d; box-shadow:inset 0 0 25px #07231845; isolation:isolate; }
.home-page .lawn-mower { top:-30px; left:-20px; transition:none; transform-origin:20px 30px; will-change:transform; filter:drop-shadow(2px 4px 2px #06251e55); }
.home-page .lawn-row { height:20%; }
.home-page .grass-cell { background:repeating-linear-gradient(83deg,#234b32 0px,#234b32 2px,#285137 2px,#285137 4px); transition:background .18s; }
.home-page .lawn-row:nth-child(odd) .grass-cell.cut { background:repeating-linear-gradient(88deg,#72a552 0px,#72a552 2px,#7aaa58 2px,#7aaa58 5px); }
.home-page .lawn-row:nth-child(even) .grass-cell.cut { background:repeating-linear-gradient(88deg,#639749 0px,#639749 2px,#699d4e 2px,#699d4e 5px); }
.home-page .lawn-arena-footer { justify-content:space-between; font-size:12px; margin:18px 0 13px; gap:12px; padding:0; }
#mow-percentage { font-size:13px; color:#203d2d; font-weight:750; }
.lawn-arena-footer p { font-size:10px; font-weight:400; color:#6b7d71; margin-top:4px; }
.animation-controls { display:flex; gap:7px; }
.animation-controls button { border:1px solid #dbe6de; background:white; border-radius:7px; padding:7px 10px; min-height:36px; font-size:10px; color:#3f5848; font-weight:700; }
.animation-controls button:hover { background:#edf4ef; }
.mow-progress { height:4px; background:#e7eee6; border-radius:4px; overflow:hidden; }
.mow-progress span { display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left; background:#087b55; }
.scene-caption { margin:22px 0 0; text-align:center; font-size:11px; color:#66776b; }
.value-strip { border-top:1px solid #e4ebe4; border-bottom:1px solid #e4ebe4; background:#f6f9f5; }
.value-strip .container { display:grid; grid-template-columns:repeat(3,1fr); padding-top:24px; padding-bottom:24px; }
.value-strip p { padding-left:26px; border-left:1px solid #dce6dc; display:flex; align-items:center; gap:12px; font-size:11px; }
.value-strip p:first-child { border:0; padding-left:0; }
.value-strip strong { font-size:13px; color:#16372a; }
.value-strip span { color:#64756a; }
.home-page .section { padding:90px 0; }
.section-heading { max-width:640px; margin:0 0 44px; }
.home-page .section-label { font-size:10px; letter-spacing:1.5px; color:#087b55; padding:0; background:none; margin:0 0 13px; }
.home-page h2 { font-weight:750; }
.section-heading h2,.why-grid h2,.faq-grid h2 { font-size:clamp(28px,3vw,40px); letter-spacing:-1.3px; line-height:1.2; }
.section-heading>p:last-child { color:#66766d; font-size:14px; margin-top:16px; }
.home-page .steps-grid { gap:32px; counter-reset:none; }
.home-page .steps-grid::before { display:none; }
.home-page .step-card { border:0; border-top:1px solid #d8e2da; border-radius:0; background:transparent; box-shadow:none; text-align:left; padding:24px 0 0; }
.home-page .step-card:hover { transform:none; border-color:#087b55; }
.step-number { font-size:13px; color:#087b55; font-weight:700; }
.home-page .step-card h3 { font-size:18px; margin:21px 0 13px; letter-spacing:-.5px; }
.home-page .step-card p { color:#647269; font-size:13px; line-height:1.8; }
.why-section { background:#f2f6f2; }
.why-grid { display:grid; grid-template-columns:1fr 1.1fr; gap:100px; }
.text-action { display:inline-flex; gap:28px; font-size:13px; font-weight:700; color:#087b55; margin-top:32px; }
.benefit-list article { display:flex; gap:23px; padding:24px 0; border-bottom:1px solid #d5e0d5; }
.benefit-list article:first-child { padding-top:0; }
.benefit-list article:last-child { border:0; padding-bottom:0; }
.benefit-list article>span { color:#75937d; font-size:11px; padding-top:3px; }
.benefit-list h3 { font-size:17px; margin-bottom:10px; }
.benefit-list p { font-size:13px; color:#607365; line-height:1.8; }
.faq-grid { display:grid; grid-template-columns:1fr 1.25fr; gap:90px; }
.faq-grid>div>p:last-child { font-size:13px; color:#637369; margin-top:20px; }
.faq-grid a { color:#087b55; text-decoration:underline; text-underline-offset:4px; }
.faq-list details { border-bottom:1px solid #dce4dd; }
.faq-list summary { cursor:pointer; padding:20px 26px 20px 0; font-size:14px; font-weight:700; }
.faq-list details p { font-size:13px; line-height:1.8; color:#607365; padding:0 0 22px; }
.home-page .pro-section { padding-top:0; }
.home-page .pro-banner { display:grid; grid-template-columns:1.5fr .6fr; gap:50px; padding:52px; border-radius:18px; background:#112e25; border:0; }
.home-page .pro-banner::before,.home-page .pro-banner::after { display:none; }
.pro-banner .section-label { color:#a6cfaa; }
.home-page .pro-banner h2 { color:#fff; font-size:35px; line-height:1.2; letter-spacing:-1px; }
.home-page .pro-banner p { color:#bed1c4; font-size:13px; max-width:520px; line-height:1.8; }
.pro-banner h2+p { margin-top:16px; }
.pro-actions { display:flex; align-items:center; flex-wrap:wrap; gap:24px; margin-top:26px; }
.pro-actions>a:last-child { color:#deeadf; font-size:12px; text-decoration:underline; text-underline-offset:4px; }
.home-page .btn-lime { background:#cfeb9d; color:#173526; box-shadow:none; }
.pro-fee { display:flex; flex-direction:column; justify-content:center; border-left:1px solid #46604b; padding-left:44px; }
.pro-fee strong { font-size:95px; color:#cfeb9d; line-height:1; letter-spacing:-6px; }
.pro-fee strong span { font-size:36px; letter-spacing:-2px; }
.pro-fee>span { font-size:10px; color:#a4b9aa; margin-top:8px; }
.home-page .footer { background:white; border-top:1px solid #e7ece7; padding-top:54px; }
.home-page .footer-grid { grid-template-columns:1.5fr 1fr 1fr 1fr; gap:35px; padding-bottom:30px; }
.home-page .footer h3 { font-size:12px; margin-bottom:18px; }
.home-page .footer nav a { display:block; margin:12px 0; font-size:12px; color:#5e7065; }
.home-page .footer-brand p { margin:18px 0; font-size:13px; color:#66776b; }
.footer-brand>a:last-child { font-size:12px; color:#087b55; }
.home-page .footer-bottom { font-size:10px; color:#728178; }
@media(max-width:1050px) {
  .desktop-links { gap:18px; } .header-actions { gap:18px; }
  .home-page .hero-grid { gap:35px; }
  .home-page .hero h1 { font-size:54px; }
  .value-strip p { display:block; } .value-strip span { display:block; margin-top:4px; }
  .why-grid,.faq-grid { gap:45px; }
}
@media(max-width:800px) {
  .desktop-links,.login-link { display:none; } .menu-toggle { display:block; }
  .home-page .nav-inner { height:72px; padding:0 24px; }
  .home-page .hero { padding:118px 0 52px; }
  .home-page .hero-grid { grid-template-columns:1fr; gap:45px; }
  .home-page .hero-content { max-width:600px; }
  .home-page .hero h1 { font-size:58px; }
  .home-page .hero-sub { margin-left:0; }
  .home-page .hero-graphic { width:100%; max-width:520px; margin:auto; }
  .home-page .section { padding:62px 0; }
  .home-page .steps-grid { grid-template-columns:1fr; gap:26px; }
  .home-page .step-card { padding:20px 0 0; }
  .home-page .step-card h3 { margin:12px 0; }
  .why-grid,.faq-grid { grid-template-columns:1fr; gap:32px; }
  .home-page .pro-section { padding-top:0; }
  .home-page .pro-banner { padding:34px; gap:28px; }
  .home-page .pro-banner h2 { font-size:28px; }
  .pro-fee { padding-left:25px; } .pro-fee strong { font-size:75px; }
  .home-page .footer-grid { grid-template-columns:1fr 1fr; }
}
@media(max-width:580px) {
  .home-page .container { padding-left:22px; padding-right:22px; }
  .home-page .nav-inner { padding:0 18px; gap:10px; }
  .home-page .nav-logo .logo-text { display:block !important; font-size:20px; }
  .home-page .nav-logo img { display:none; }
  .header-actions { gap:8px; }
  .home-page .header-actions .btn { padding:10px 12px; min-height:44px; font-size:11px; }
  .home-page .header-actions .btn span { display:none; }
  .menu-toggle { font-size:11px; padding:10px; }
  .home-page .hero h1 { font-size:46px !important; line-height:1.08 !important; letter-spacing:-2px; }
  .home-page .hero-sub { font-size:14px !important; line-height:1.8 !important; margin-bottom:23px !important; }
  .local-note { font-size:10px; }
  .address-row { display:block; }
  .address-row input { font-size:16px; min-height:48px; }
  .address-row .btn { width:100%; justify-content:center; min-height:48px; }
  .home-page .lawn-arena-card { padding:15px; transform:rotate(-1deg); }
  .home-page .lawn-arena { height:270px; }
  .lawn-card-heading h2 { font-size:16px; }
  .scene-label { font-size:8px; }
  .illustration-label { font-size:8px; }
  .animation-controls button { min-height:44px; }
  .value-strip .container { gap:10px; padding-top:20px; padding-bottom:20px; }
  .value-strip p { padding-left:10px; }
  .value-strip strong { font-size:11px; } .value-strip span { font-size:9px; }
  .home-page .pro-banner { grid-template-columns:1fr; padding:28px; }
  .pro-fee { border-left:0; border-top:1px solid #46604b; padding:24px 0 0; }
  .pro-fee strong { font-size:62px; }
  .home-page .footer-grid { gap:28px; }
  .home-page .footer-bottom { gap:12px; align-items:flex-start; }
}
@media(prefers-reduced-motion:reduce) {
  html { scroll-behavior:auto; }
  .home-page *, .home-page *::before,.home-page *::after { animation:none !important; transition:none !important; }
  .home-page .btn:hover { transform:none; }
}
