@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap');

:root {
  /* Colors */
  --color-primary: #6161ff;
  --color-bg: #ffffff;
  --color-bg-secondary: #dbdbff;
  --color-border: #f0f3ff;
  --color-text: #000000;
  --color-text-secondary: #666666;
  
  /* Additional extracted palettes */
  --palette-1: #f0f3ff;
  --palette-2: #dbdbff;
  --palette-3: #ffffff;
  --palette-4: #6161ff;
  --palette-5: #181b34;

  /* Typography */
  --font-family: 'Poppins', sans-serif;
  
  /* Layout */
  --spacing-base: 16px;
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

body {
  font-family: var(--font-family);
  background-color: var(--color-bg);
  color: var(--color-text);
  line-height: 1.6;
  font-size: 16px;
  -webkit-font-smoothing: antialiased;
}

/* Typography Rules */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family);
  color: var(--color-text);
  margin-bottom: calc(var(--spacing-base) * 1);
}

h1 {
  font-size: 48px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.4px;
}

h2 {
  font-size: 36px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.4px;
}

h3 {
  font-size: 32px;
  font-weight: 600;
  line-height: 1.3;
  letter-spacing: -0.5px;
}

p {
  margin-bottom: calc(var(--spacing-base) * 1);
  font-size: 18px;
  font-weight: 400;
  line-height: 1.5;
  color: var(--color-text-secondary);
}

a {
  color: var(--color-primary);
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: #5151d5;
}

.container {
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 calc(var(--spacing-base) * 1.5);
}

.section {
  padding: calc(var(--spacing-base) * 4) 0;
}

.section-light {
  background-color: var(--palette-1);
}

.text-center {
  text-align: center;
}

img {
  max-width: 100%;
  height: auto;
}
