/* roulang page: index */
:root {
      --color-primary: #1a56db;
      --color-primary-dark: #0f141c;
      --color-accent-teal: #0d9488;
      --color-bg-base: #f8fafc;
      --color-border: rgba(226, 232, 240, 0.9);
      --shadow-soft: 0 4px 20px -2px rgba(15, 23, 42, 0.06);
    }
    body {
      background-color: var(--color-bg-base);
      color: #1e293b;
      -webkit-font-smoothing: antialiased;
      overflow-x: hidden;
    }
    .hero-diagonal {
      clip-path: polygon(0 0, 100% 0, 100% 88%, 0 100%);
    }
    @media (max-width: 768px) {
      .hero-diagonal {
        clip-path: none;
      }
    }
    .custom-card-shadow {
      box-shadow: var(--shadow-soft);
      transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
    }
    .custom-card-shadow:hover {
      box-shadow: 0 12px 28px -4px rgba(15, 23, 42, 0.12);
      transform: translateY(-4px);
    }
    .tech-grid-pattern {
      background-size: 32px 32px;
      background-image: 
        linear-gradient(to right, rgba(255, 255, 255, 0.04) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.04) 1px, transparent 1px);
    }
