/* =============================================================
   Prospace Cleaning — design tokens
   Palette sampled from the client's brand board (docs/BRAND.md).
   Do not invent colours. Extend the ramp here if you need a step.
   ============================================================= */
:root {
  /* Brand — sampled from pixels */
  --navy:        #00264A;   /* PRO wordmark, P body, dark panels */
  --blue:        #0977C1;   /* SPACE wordmark, sparkle, bowl facet */
  --green:       #428F38;   /* the leaf */

  /* Navy ramp */
  --navy-900:    #001B35;
  --navy-800:    #00264A;
  --navy-700:    #0A3A66;
  --navy-600:    #164F82;
  --navy-50:     #EDF1F6;

  /* Blue ramp */
  --blue-700:    #075C96;
  --blue-600:    #0977C1;
  --blue-500:    #1E8BD4;
  --blue-100:    #D4E7F5;
  --blue-50:     #EAF4FB;

  /* Green ramp */
  --green-700:   #35732C;
  --green-600:   #428F38;
  --green-100:   #DCEBD9;
  --green-50:    #EFF6ED;

  /* Ink + neutrals */
  --ink:         #0F172A;
  --ink-soft:    #1E293B;
  --muted:       #475569;
  --muted-2:     #64748B;
  --line:        #E2E8F0;
  --line-strong: #CBD5E1;
  --bg:          #FFFFFF;
  --surface:     #F7F9FB;
  --surface-2:   #EFF3F7;

  --star:        #F59E0B;   /* review stars only */

  /* Radii, shadow, motion */
  --r-sm: 8px;  --r-md: 12px;  --r-lg: 16px;  --r-xl: 24px;
  --shadow-1: 0 1px 2px rgba(0,38,74,.05), 0 1px 1px rgba(0,38,74,.04);
  --shadow-2: 0 6px 20px rgba(0,38,74,.07), 0 1px 2px rgba(0,38,74,.04);
  --shadow-3: 0 18px 40px rgba(0,38,74,.14), 0 4px 12px rgba(15,23,42,.06);
  --ease: cubic-bezier(.22,.61,.36,1);

  /* Motion — every transition and animation in styles.css reads these.
     B2B contractor, not a showcase: short travel, no overshoot, no parallax. */
  --dur-1:       200ms;                          /* micro: hover, press, header */
  --dur-2:       700ms;                          /* reveals and the hero entrance */
  --ease-out:    cubic-bezier(.22,.61,.36,1);    /* settle, no overshoot */
  --ease-in-out: cubic-bezier(.65,0,.35,1);      /* slow background settle */
  --stagger:     70ms;                           /* step between cascading siblings */
  --stagger-max: 5;                              /* cap: item 6+ waits no longer than item 5 (350ms) */
  --reveal-dist: 20px;                           /* travel, 16-24px only */
  --ease-soft:   cubic-bezier(.16,1,.3,1);       /* rev2: long, quiet tail for reveal travel; still no overshoot */
  --lift-dist:   10px;                           /* rev2: secondary lift on headings and icons inside a reveal */
  --lift-delay:  90ms;                           /* rev2: secondary lift trails its container by one beat */

  /* Type */
  --font-display: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --font-body:    'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
  --track-wide:   .28em;   /* CLEANING lockup tracking */
  --track-tag:    .18em;   /* tagline tracking */

  --container: 1200px;
  --gutter: 24px;
}
@media (min-width: 768px)  { :root { --gutter: 40px; } }
@media (min-width: 1024px) { :root { --gutter: 48px; } }

/* CONTRAST NOTE — --blue (#0977C1) on white measures ~4.0:1.
   Large text (>=24px or >=19px bold) and UI only. Body copy and small
   links use --navy-800. Verify every pair before ship. */
