/**
 * @stability stable
 * @agent-guidance Read css/INDEX.md before editing. Changes here affect every
 * other CSS file — all custom properties (--bg, --accent, --xl, etc.) are
 * consumed site-wide. The html[lang="bg"] font rules here apply globally.
 */

  :root {
    --bg: #f4ede0;
    --bg2: #ede4d3;
    --surface: #f9f4eb;
    --surface2: #f1ead9;
    --border: #ddd2ba;
    --border2: #c8bba0;
    --text: #1a1408;
    --muted: #5e5444;
    --accent: #1f6b3c;
    --accent-soft: #ddf0e5;
    --accent2: #c2410c;
    --accent3: #1e40af;
    --sm: clamp(0.85rem, 1.6vw, 1rem);
    --base: clamp(1.05rem, 2.2vw, 1.2rem);
    --lg: clamp(1.35rem, 3vw, 1.85rem);
    --xl: clamp(2rem, 5vw, 3.5rem);
    --xxl: clamp(3rem, 8vw, 6rem);
  }

  * { margin: 0; padding: 0; box-sizing: border-box; }
  html {
    scroll-behavior: smooth;
    min-height: 100%;
  }

  body {
    background: var(--bg);
    color: var(--text);
    font-family: 'DM Sans', 'Syne', sans-serif;
    font-size: var(--base);
    line-height: 1.6;
    overflow-x: hidden;
    min-height: 100%;
    overscroll-behavior-y: none;
  }

  html[lang="bg"] body {
    font-family: 'Unbounded', 'DM Sans', sans-serif;
  }

  html[lang="bg"] h1,
  html[lang="bg"] h2,
  html[lang="bg"] h3,
  html[lang="bg"] .hero-headline,
  html[lang="bg"] .service-title,
  html[lang="bg"] .overlay-title,
  html[lang="bg"] .overlay-tagline,
  html[lang="bg"] .process-headline,
  html[lang="bg"] .step-name,
  html[lang="bg"] .stat-val,
  html[lang="bg"] .footer-val,
  html[lang="bg"] .marquee-item,
  html[lang="bg"] .marquee-mark,
  html[lang="bg"] .ov-node strong,
  html[lang="bg"] .ov-web-title,
  html[lang="bg"] .cta-headline,
  html[lang="bg"] .explore-headline,
  html[lang="bg"] .explore-card-title,
  html[lang="bg"] .portal-text {
    font-family: 'Unbounded', 'DM Sans', sans-serif !important;
    letter-spacing: -0.045em;
  }

  body.overlay-open { overflow: hidden; }

  body::before {
    content: '';
    position: fixed;
    inset: 0;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)' opacity='0.04'/%3E%3C/svg%3E");
    pointer-events: none;
    z-index: 1000;
    opacity: 0.3;
  }
