/* ==========================================================================
   RAJAMMA ENGINEERING — DESIGN TOKENS
   Precision-machining brand system. Every value below is a deliberate
   choice, not a framework default — see README for rationale.
   ========================================================================== */

:root {
  /* ---- Color: Graphite / Steel Blue / Precision Cyan / Machined Silver ---- */
  --color-ink: #14171B;              /* primary text / graphite */
  --color-ink-soft: #3C424B;         /* secondary text */
  --color-ink-mute: #6B7280;         /* tertiary / captions */

  --color-primary: #1B4C82;          /* steel blue */
  --color-primary-dark: #123A66;
  --color-primary-light: #E8F0FA;

  --color-accent: #2E86D6;           /* precision cyan */
  --color-accent-dark: #1F6BB0;
  --color-accent-glow: rgba(46, 134, 214, 0.18);

  --color-silver: #C9CED6;           /* machined silver — hairlines, borders */
  --color-silver-soft: #E3E6EB;
  --color-silver-dark: #9AA1AC;

  --color-bg: #F7F8FA;               /* off-white background */
  --color-bg-alt: #EFF2F5;
  --color-surface: #FFFFFF;          /* card surface */
  --color-surface-dark: #14171B;

  --color-success: #1F8A5B;
  --color-warning: #C97A1E;
  --color-error: #B0362C;

  /* Metallic gradient — used sparingly for signature moments only */
  --gradient-steel: linear-gradient(135deg, #1B4C82 0%, #2E86D6 55%, #1F6BB0 100%);
  --gradient-machined: linear-gradient(180deg, #F7F8FA 0%, #E3E6EB 100%);
  --gradient-graphite: linear-gradient(135deg, #14171B 0%, #262B33 100%);

  /* ---- Typography ---- */
  --font-display: 'Space Grotesk', -apple-system, sans-serif;
  --font-body: 'Inter', -apple-system, sans-serif;
  --font-mono: 'JetBrains Mono', 'SF Mono', monospace;

  --fs-hero: clamp(3.2rem, 6vw, 6.4rem);
  --fs-h1: clamp(2.6rem, 4.2vw, 4.2rem);
  --fs-h2: clamp(2.1rem, 3.2vw, 3rem);
  --fs-h3: clamp(1.5rem, 2vw, 2rem);
  --fs-h4: clamp(1.15rem, 1.4vw, 1.4rem);
  --fs-body-lg: 1.25rem;
  --fs-body: 1.0625rem;
  --fs-small: 0.9375rem;
  --fs-caption: 0.8125rem;
  --fs-mono: 0.875rem;

  --lh-tight: 1.05;
  --lh-heading: 1.15;
  --lh-body: 1.65;

  --ls-tight: -0.02em;
  --ls-wide: 0.08em;
  --ls-widest: 0.16em;

  /* ---- Spacing (8pt-derived, generous) ---- */
  --space-1: 0.5rem;
  --space-2: 1rem;
  --space-3: 1.5rem;
  --space-4: 2rem;
  --space-5: 3rem;
  --space-6: 3rem;
  --space-7: 5rem;
  --space-8: 7rem;
  --space-9: 11rem;

  --section-pad: clamp(3.5rem, 6vw, 6rem);
  --container-max: 1360px;
  --container-pad: clamp(1.5rem, 5vw, 4rem);

  /* ---- Radius / shadow ---- */
  --radius-sm: 6px;
  --radius-md: 14px;
  --radius-lg: 24px;
  --radius-xl: 32px;
  --radius-pill: 999px;

  --shadow-sm: 0 2px 8px rgba(20, 23, 27, 0.06);
  --shadow-md: 0 8px 30px rgba(20, 23, 27, 0.08);
  --shadow-lg: 0 20px 60px rgba(20, 23, 27, 0.12);
  --shadow-blue: 0 20px 50px rgba(27, 76, 130, 0.22);

  /* ---- Motion ---- */
  --ease-precision: cubic-bezier(0.65, 0, 0.35, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --dur-fast: 0.25s;
  --dur-med: 0.6s;
  --dur-slow: 1.1s;

  --z-nav: 100;
  --z-loader: 1000;
  --z-whatsapp: 90;
  --z-progress: 101;
}

@media (max-width: 900px) {
  :root {
    --section-pad: clamp(3rem, 10vw, 4rem);
  }
}
