@import url('https://fonts.googleapis.com/css2?family=Google+Sans:ital,opsz,wght@0,17..18,400..700;1,17..18,400..700&display=swap');

:root {
  --color-primary:       #005A9C;  
  --color-primary-light: #4A90E2;
  --color-primary-dark:  #003366;
  --color-accent:        #FFC107; 

  --color-bg:            #F4F7F9;
  --color-surface:       #FFFFFF;
  --color-surface-alt:   #EAF1F8;
  
  --color-text:          #1A202C;
  --color-text-muted:    #4A5568;
  --color-border:        #E2E8F0;

  --font-display: 'Google Sans', sans-serif;
  --font-body:    'Google Sans', sans-serif;

  --text-xs:   0.75rem;
  --text-sm:   0.875rem;
  --text-base: 1rem;
  --text-lg:   1.125rem;
  --text-xl:   1.25rem;
  --text-2xl:  1.5rem;
  --text-3xl:  1.875rem;
  --text-4xl:  2.5rem;

  --space-1:  0.25rem;
  --space-2:  0.5rem;
  --space-3:  0.75rem;
  --space-4:  1rem;
  --space-6:  1.5rem;
  --space-8:  2rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;

  --container-max:  1100px;
  
  --radius-sm:      6px;
  --radius-md:      12px;
  --radius-lg:      20px;
  --radius-xl:      32px;

  --shadow-sm:  0 2px 8px rgba(0, 51, 102, 0.05);
  --shadow-md:  0 8px 24px rgba(0, 51, 102, 0.08);
  --shadow-lg:  0 16px 40px rgba(0, 51, 102, 0.12);

  --transition: 0.3s cubic-bezier(0.2, 0.8, 0.2, 1);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
html { scroll-behavior: smooth; font-size: 16px; }
body { font-family: var(--font-body); background: var(--color-bg); color: var(--color-text); line-height: 1.6; -webkit-font-smoothing: antialiased; }
body.menu-open { overflow: hidden; } 
img { max-width: 100%; height: auto; display: block; }
a { color: inherit; text-decoration: none; transition: color var(--transition); }
button { cursor: pointer; font-family: inherit; border: none; outline: none; background: transparent; }
ul { list-style: none; }