/* ==========================================================
   GRANT — MAIN: VARIABLES, RESET & BASE
   ========================================================== */

:root {
    --primary:          #29a8e0;
    --primary-dark:     #1a8abf;
    --primary-gradient: linear-gradient(135deg, #29a8e0 0%, #1a6eb5 100%);
    --dark:             #000000;
    --gray-50:          #f9fafb;
    --gray-100:         #f3f4f6;
    --gray-200:         #e5e7eb;
    --gray-300:         #d1d5db;
    --gray-400:         #9ca3af;
    --gray-500:         #6b7280;
    --gray-600:         #4b5563;
    --gray-700:         #374151;
    --gray-800:         #1f2937;
    --gray-900:         #111827;
    --white:            #ffffff;
    --danger:           #ef4444;
    --success:          #22c55e;
    --nav-h:            70px;
    --radius-sm:        6px;
    --radius:           10px;
    --radius-lg:        18px;
    --radius-pill:      999px;
    --shadow:           0 1px 3px rgba(0,0,0,.08), 0 1px 2px rgba(0,0,0,.05);
    --shadow-md:        0 4px 12px rgba(0,0,0,.08);
    --shadow-lg:        0 10px 30px rgba(0,0,0,.10);
    --shadow-xl:        0 20px 50px rgba(0,0,0,.12);
    --transition:       .22s ease;
}

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

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

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    font-size: 15px;
    line-height: 1.6;
    color: var(--gray-800);
    background: var(--white);
    -webkit-font-smoothing: antialiased;
}

a  { text-decoration: none; color: inherit; }
ul { list-style: none; }
img { max-width: 100%; height: auto; display: block; }
input, button, select, textarea { font: inherit; }
button { cursor: pointer; border: none; background: none; }

.container {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 28px;
}
