/* VISUAL-DESIGN-TOKENS
   Safe foundation only.
   No menu override.
   No hero layout override.
   No footer layout override.
   No Tailwind display override.
*/

:root {
  --le-black: #000000;
  --le-white: #ffffff;
  --le-blue: #0071e3;
  --le-blue-hover: #0066cc;
  --le-dark: #1d1d1f;
  --le-mid: #6e6e73;
  --le-muted: #86868b;
  --le-light: #fbfbfd;
  --le-card: #f5f5f7;
  --le-border-light: rgba(0, 0, 0, 0.10);
  --le-border-dark: rgba(255, 255, 255, 0.16);
  --le-shadow-soft: 0 18px 48px rgba(0, 0, 0, 0.08);
  --le-radius-sm: 12px;
  --le-radius-md: 18px;
  --le-radius-lg: 28px;
  --le-container: 1120px;
  --le-gutter: clamp(22px, 5vw, 64px);
  --le-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "SF Pro Display", "SF Pro Text", "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
  font-feature-settings: "kern";
}

h1,
h2,
h3,
h4,
h5,
h6 {
  letter-spacing: -0.035em;
  text-wrap: balance;
}

p {
  text-wrap: pretty;
}

a {
  text-underline-offset: 3px;
}

img,
video {
  max-width: 100%;
}

button,
input,
select,
textarea {
  font: inherit;
}

a:focus-visible,
button:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline: 2px solid var(--le-blue);
  outline-offset: 3px;
}

::selection {
  background: rgba(0, 113, 227, 0.18);
}

@media (prefers-reduced-motion: reduce) {
  html {
    scroll-behavior: auto;
  }
}
