/* ============================================================
   Cutting Edge Tech Talent — Main Stylesheet
   ============================================================ */

/* ── Root Variables ─────────────────────────────────────── */
 :root{
      /* LIGHT MODE TOKENS (only change vs original dark) */
      --bg: #ffffff;
      --card: #ffffff;
      --muted: #636b74;
      --text: #171a1c;
      --line: rgba(23,26,28,0.10);
      --cta: #7c3aed; /* original accent preserved */
      --cta2: rgba(124,58,237,0.12);
      --ok: #1f7a1f;
      --warn: #9a5b13;
	  --surface2: #f0edf9;
	  --radius-sm10px: 10px;
      --radius-md: 16px;
      --radius-lg: 22px;
	  --primary: #A74BF2;
	  --primary-2: rgba(167, 75, 242, 0.12);
	  --radius-pill: 999px;
	  
	  --shadow-sm:  0 2px 8px rgba(167,75,242,0.08);
      --shadow-md:  0 8px 32px rgba(167,75,242,0.14);
      --shadow-lg:  0 18px 60px rgba(167,75,242,0.20);
    }

    *{ box-sizing: border-box; }
    body{
      margin:0;
      font-family: ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, "Apple Color Emoji", "Segoe UI Emoji";
      background:
        radial-gradient(1200px 600px at 20% 0%, rgba(124,58,237,0.12), transparent 60%),
        radial-gradient(900px 500px at 90% 10%, rgba(31,122,31,0.08), transparent 60%),
        var(--bg);
      color: var(--text);
      line-height: 1.45;
    }
    a{ color: inherit; text-decoration: none; }
    .container{ width: min(1140px, 92%); margin: 0 auto; }

    /* Top Nav */
    .nav{
      position: sticky; top:0; z-index: 50;
      backdrop-filter: blur(10px);
      background: rgba(255,255,255,0.78);
      border-bottom: 1px solid var(--line);
    }
    .nav-inner{
      display:flex; align-items:center; justify-content: space-between;
      padding: 14px 0;
      gap: 18px;
    }
    .brand{ display:flex; align-items:center; gap: 10px; font-weight: 700; letter-spacing: 0.2px; }
    .logo{
      width: 34px; height: 34px; border-radius: 10px;
      background: linear-gradient(135deg, rgba(124,58,237,0.9), rgba(31,122,31,0.5));
      box-shadow: 0 12px 40px rgba(124,58,237,0.14);
    }
    .nav-links{ display:flex; gap: 14px; align-items:center; }
    .nav-links a{
      color: var(--muted);
      padding: 10px 10px;
      border-radius: 10px;
      font-weight: 600;
      font-size: 14px;
    }
    .nav-links a:hover{ background: rgba(23,26,28,0.04); color: var(--text); }

    .btn{
      display:inline-flex; align-items:center; justify-content:center;
      padding: 12px 14px;
      border-radius: 12px;
      border: 1px solid var(--line);
      font-weight: 700;
      font-size: 14px;
      gap: 10px;
      cursor: pointer;
      user-select: none;
      transition: transform .08s ease, background .2s ease, border-color .2s ease, box-shadow .2s ease;
    }
    .btn:hover{ transform: translateY(-1px); }

    .btn-primary{
      background: linear-gradient(135deg, rgba(124,58,237,0.95), rgba(124,58,237,0.75));
      border-color: rgba(124,58,237,0.45);
      color: #fff;
      box-shadow: 0 14px 44px rgba(124,58,237,0.18);
    }
    .btn-primary:hover{ box-shadow: 0 18px 60px rgba(124,58,237,0.22); }
    .btn-secondary{
      background: rgba(23,26,28,0.02);
    }
    .btn-ghost{
      background: transparent;
      border-color: rgba(23,26,28,0.12);
      color: var(--muted);
    }
    .btn-ghost:hover{ background: rgba(23,26,28,0.03); color: var(--text); }

    /* Hero */
    .hero{ padding: 72px 0 36px; }
    .hero-grid{
      display:grid;
      grid-template-columns: 1.15fr 0.85fr;
      gap: 26px;
      align-items: start;
    }
    .kicker{
      display:inline-flex;
      gap: 10px;
      align-items: center;
      padding: 8px 12px;
      border: 1px solid rgba(23,26,28,0.10);
      border-radius: 999px;
      color: var(--muted);
      font-weight: 600;
      font-size: 13px;
      background: rgba(255,255,255,0.55);
    }
    .dot{
      width: 8px; height: 8px; border-radius: 99px;
      background: var(--ok);
      box-shadow: 0 0 0 4px rgba(31,122,31,0.12);
    }
    h1{
      margin: 14px 0 10px;
      font-size: clamp(34px, 4.2vw, 54px);
      line-height: 1.05;
      letter-spacing: -0.02em;
    }
    .subhead{
      color: var(--muted);
      font-size: 16px;
      max-width: 58ch;
    }
    .hero-ctas{ display:flex; flex-wrap: wrap; gap: 12px; margin-top: 22px; }
    .micro{ color: var(--muted); font-size: 13px; margin-top: 12px; }

    /* Cards */
    .card{
      background: var(--card);
      border: 1px solid var(--line);
      border-radius: 18px;
      padding: 18px;
      box-shadow: 0 12px 36px rgba(23,26,28,0.06);
    }
	.card:hover {
	  box-shadow: var(--shadow-md);
	  border-color: rgba(167,75,242,0.22);
	}
    .card h3{ margin: 0 0 10px; font-size: 16px; letter-spacing: -0.01em; }
    .card p{ margin: 0; color: var(--muted); }

    .hero-side{ display:flex; flex-direction: column; gap: 14px; }
    .metric-grid{
      display:grid;
      grid-template-columns: 1fr 1fr;
      gap: 12px;
      margin-top: 12px;
    }
    .metric{
	  background: var(--surface2);
      border: 1.5px solid rgba(167, 75, 242, 0.14);
      border-radius: var(--radius-md);
      padding: 14px;
    }
    .metric .val{ font-size: 18px; font-weight: 800; letter-spacing: -0.01em; }
    .metric .lbl{ font-size: 12px; color: var(--muted); margin-top: 6px; }

    /* Trust bar */
    .trust{ padding: 6px 0 34px; }
    .trust-row{ display:flex; flex-wrap: wrap; gap: 10px; align-items: center; }
    .pill{
      padding: 10px 12px;
      border-radius: 999px;
      border: 1px solid rgba(23,26,28,0.10);
      color: rgba(23,26,28,0.92);
      background: rgba(255,255,255,0.7);
      font-weight: 700;
      font-size: 13px;
      box-shadow: 0 10px 18px rgba(23,26,28,0.04);
    }

    /* Sections */
    section{ padding: 46px 0; }
    .section-title{
      display:flex; align-items: baseline; justify-content: space-between; gap: 16px;
      margin-bottom: 18px;
    }
    .section-title h2{ margin:0; font-size: 22px; letter-spacing: -0.01em; }
    .section-title .hint{ color: var(--muted); font-size: 13px; }
    .grid-2{ display:grid; grid-template-columns: 1fr 1fr; gap: 16px; }
    .grid-3{ display:grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
    .divider{ border-top: 1px solid var(--line); }

    /* Bench */
    table{
      width: 100%;
      border-collapse: collapse;
      overflow: hidden;
      border-radius: 16px;
      border: 1px solid rgba(23,26,28,0.10);
      background: rgba(255,255,255,0.8);
    }
    th, td{
      text-align: left;
      padding: 12px 12px;
      border-bottom: 1px solid rgba(23,26,28,0.08);
      vertical-align: top;
      font-size: 14px;
    }
    th{ color: rgba(23,26,28,0.72); font-size: 12px; text-transform: uppercase; letter-spacing: 0.06em; }
    td{ color: rgba(23,26,28,0.92); }
    tr:last-child td{ border-bottom: none; }
    .muted{ color: var(--muted); }

    /* Case studies */
    .cs-meta{
      display:flex; gap: 10px; flex-wrap: wrap; align-items:center;
	  padding: 0px 0px 10px 0px;
      color: var(--muted);
      font-size: 13px;
      font-weight: 700;
    }
    .tag{
      display:inline-flex; align-items:center;
      padding: 6px 10px;
      border: 1.5px solid rgba(167, 75, 242, 0.22);
      border-radius: var(--radius-pill);
      background: var(--surface2);
      font-size: 12px;
      color: rgba(23,26,28,0.92);
      font-weight: 700;
    }
    ul{ margin: 8px 0 0 18px; color: var(--muted); }
    li{ margin: 6px 0; }

    /* Delivery Model */
    .bullets{ display:grid; gap: 10px; margin-top: 10px; }
    .bullet{
      display:flex; gap: 12px; align-items: flex-start;
      padding: 12px;
      border-radius: 16px;
      border: 1px solid rgba(23,26,28,0.10);
      background: rgba(23,26,28,0.015);
    }
    .check{
      width: 22px; height: 22px;
      border-radius: 8px;
      background: var(--primary-2);
      border: 1.5px solid rgba(167, 75, 242, 0.35);
      display:flex; align-items:center; justify-content:center;
      color: var(--primary);
      font-weight: 900;
      flex: 0 0 22px;
      margin-top: 2px;
    }
    .bullet b{ display:block; margin-bottom: 3px; }
    .bullet span{ color: var(--muted); font-size: 13px; }

    /* Leadership */
    .profile .name{
      display:flex; align-items:center; justify-content: space-between; gap: 10px;
    }
    .profile .name strong{ font-size: 15px; letter-spacing: -0.01em; }
    .profile .name a{
      color: rgba(23,26,28,0.92);
      font-weight: 800;
      font-size: 13px;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(23,26,28,0.10);
      background: rgba(23,26,28,0.02);
    }
    .profile .name a:hover{ background: rgba(23,26,28,0.04); }
    .profile .desc{ color: var(--muted); font-size: 13px; margin-top: 2px; }
    .highlights{
      border-left: 4px solid rgba(124,58,237,0.55);
      padding-left: 12px;
      color: var(--muted);
      font-size: 13px;
    }

    /* Badges section */
    .badge-grid{
      display:grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 12px;
    }
    .badge-card{
      padding: 14px;
      border-radius: 16px;
      border: 1px solid rgba(23,26,28,0.10);
      background: rgba(23,26,28,0.015);
    }
	.badge-card:hover {
	  box-shadow: var(--shadow-sm);
	  border-color: rgba(167,75,242,0.22);
	}

    .badge-card b{ display:block; margin-bottom: 6px; }
    .badge-card span{ color: var(--muted); font-size: 13px; }

    /* Footer CTA */
    .cta{ padding: 54px 0 70px; }
    .cta-wrap{
      display:flex;
      align-items:center;
      justify-content: space-between;
      gap: 16px;
      flex-wrap: wrap;
      padding: 20px;
      border-radius: 22px;
      border: 1px solid rgba(124,58,237,0.35);
      background: linear-gradient(135deg, rgba(124,58,237,0.10), rgba(23,26,28,0.015));
      box-shadow: 0 18px 54px rgba(23,26,28,0.08);
    }
    .cta-wrap h2{ margin:0; font-size: 24px; letter-spacing: -0.01em; }
    .cta-wrap p{ margin: 8px 0 0; color: var(--muted); max-width: 70ch; }

    footer{
      padding: 18px 0 30px;
      border-top: 1px solid var(--line);
      color: var(--muted);
      font-size: 13px;
      background: rgba(255,255,255,0.65);
    }
    .foot{ display:flex; justify-content: space-between; gap: 12px; flex-wrap: wrap; }

    /* Responsive */
    @media (max-width: 980px){
      .hero-grid{ grid-template-columns: 1fr; }
      .grid-3{ grid-template-columns: 1fr; }
      .grid-2{ grid-template-columns: 1fr; }
      .badge-grid{ grid-template-columns: repeat(2, 1fr); }
      .nav-links{ display:none; }
    }
    @media (max-width: 520px){
      .metric-grid{ grid-template-columns: 1fr; }
      .badge-grid{ grid-template-columns: 1fr; }
    }