
    :root {
      --edx-primary: #4f46e5;
      --edx-primary-hover: #4338ca;
      --edx-accent: #7c3aed;
      --edx-cyan: #06b6d4;
      --edx-emerald: #10b981;
      --edx-rose: #f43f5e;
      --edx-amber: #f59e0b;
      --edx-dark: #0f172a;
      --edx-card-bg: #ffffff;
      --edx-border: #e2e8f0;
      --edx-border-hover: #cbd5e1;
      --edx-muted: #64748b;
      --edx-radius-lg: 20px;
      --edx-radius-md: 14px;
      --edx-shadow: 0 10px 30px -10px rgba(15, 23, 42, 0.08);
      --edx-shadow-hover: 0 20px 40px -15px rgba(79, 70, 229, 0.16);
    }

    .edx-container {
      max-width: 1240px;
      margin: 0 auto;
      padding: 0 24px;
    }

    .edx-section {
      padding: 72px 0;
      position: relative;
    }

    .edx-badge {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      padding: 6px 16px;
      border-radius: 9999px;
      font-size: 0.78rem;
      font-weight: 700;
      text-transform: uppercase;
      letter-spacing: 0.08em;
      margin-bottom: 16px;
    }

    .edx-badge-indigo {
      background: rgba(79, 70, 229, 0.1);
      color: #4f46e5;
      border: 1px solid rgba(79, 70, 229, 0.2);
    }

    .edx-badge-emerald {
      background: rgba(16, 185, 129, 0.1);
      color: #059669;
      border: 1px solid rgba(16, 185, 129, 0.25);
    }

    .edx-badge-rose {
      background: rgba(244, 63, 94, 0.1);
      color: #e11d48;
      border: 1px solid rgba(244, 63, 94, 0.2);
    }

    .edx-badge-amber {
      background: rgba(245, 158, 11, 0.1);
      color: #d97706;
      border: 1px solid rgba(245, 158, 11, 0.25);
    }

    .edx-sec-header {
      text-align: center;
      max-width: 780px;
      margin: 0 auto 52px;
    }

    .edx-sec-title {
      font-size: 2.2rem;
      font-weight: 800;
      color: #0f172a;
      letter-spacing: -0.03em;
      line-height: 1.25;
      margin: 0 0 14px 0;
    }

    .edx-sec-desc {
      font-size: 1.05rem;
      color: #64748b;
      margin: 0;
      line-height: 1.65;
    }

    .edx-btn {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      gap: 8px;
      padding: 13px 26px;
      border-radius: 12px;
      font-weight: 700;
      font-size: 0.95rem;
      text-decoration: none;
      transition: all 0.2s cubic-bezier(0.4, 0, 0.2, 1);
      cursor: pointer;
      border: none;
    }

    .edx-btn-primary {
      background: linear-gradient(135deg, #4f46e5 0%, #6366f1 100%);
      color: #ffffff !important;
      box-shadow: 0 10px 25px -6px rgba(79, 70, 229, 0.4);
    }

    .edx-btn-primary:hover {
      transform: translateY(-2px);
      box-shadow: 0 14px 30px -6px rgba(79, 70, 229, 0.55);
      color: #ffffff !important;
    }

    .edx-btn-secondary {
      background: #ffffff;
      color: #0f172a !important;
      border: 1px solid #cbd5e1;
      box-shadow: 0 2px 6px rgba(0,0,0,0.03);
    }

    .edx-btn-secondary:hover {
      background: #f1f5f9;
      border-color: #94a3b8;
      transform: translateY(-2px);
      color: #0f172a !important;
    }

    .edx-btn-dark {
      background: rgba(255,255,255,0.1);
      color: #ffffff !important;
      border: 1px solid rgba(255,255,255,0.2);
      backdrop-filter: blur(10px);
    }

    .edx-btn-dark:hover {
      background: rgba(255,255,255,0.2);
      border-color: rgba(255,255,255,0.4);
      transform: translateY(-2px);
      color: #ffffff !important;
    }

    .edx-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: var(--edx-radius-lg);
      padding: 30px;
      box-shadow: var(--edx-shadow);
      transition: all 0.25s ease;
      position: relative;
    }

    .edx-card:hover {
      transform: translateY(-4px);
      border-color: #cbd5e1;
      box-shadow: var(--edx-shadow-hover);
    }

    .edx-hero-wrap {
      background: radial-gradient(circle at 80% 20%, rgba(99, 102, 241, 0.22) 0%, rgba(15, 23, 42, 0) 60%),
                  radial-gradient(circle at 10% 80%, rgba(6, 182, 212, 0.18) 0%, rgba(15, 23, 42, 0) 50%),
                  linear-gradient(135deg, #090d16 0%, #0f172a 50%, #1e1b4b 100%);
      color: #ffffff;
      padding: 85px 0 95px;
      position: relative;
      overflow: hidden;
      border-bottom: 1px solid rgba(255,255,255,0.08);
    }

    .edx-hero-grid-bg {
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background-size: 40px 40px;
      background-image: 
        linear-gradient(to right, rgba(255, 255, 255, 0.03) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(255, 255, 255, 0.03) 1px, transparent 1px);
      pointer-events: none;
    }

    .edx-hero-title {
      font-size: 3.2rem;
      font-weight: 900;
      letter-spacing: -0.04em;
      line-height: 1.15;
      margin: 0 0 24px 0;
      background: linear-gradient(135deg, #ffffff 30%, #c7d2fe 70%, #818cf8 100%);
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
    }

    .edx-hero-desc {
      font-size: 1.22rem;
      color: #94a3b8;
      max-width: 820px;
      line-height: 1.68;
      margin: 0 0 36px 0;
      font-weight: 400;
    }

    .edx-intent-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 22px;
    }

    .edx-cat-grid {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 14px;
      margin-bottom: 32px;
    }

    .edx-cat-pill {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 14px;
      padding: 14px 16px;
      display: flex;
      align-items: center;
      gap: 10px;
      text-decoration: none;
      color: #1e293b;
      font-weight: 700;
      font-size: 0.92rem;
      transition: all 0.2s ease;
      box-shadow: 0 2px 6px rgba(0,0,0,0.02);
    }

    .edx-cat-pill:hover {
      background: #f8fafc;
      border-color: #6366f1;
      color: #4f46e5;
      transform: translateY(-2px);
      box-shadow: 0 8px 20px rgba(79, 70, 229, 0.08);
    }

    .edx-agent-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      gap: 20px;
    }

    .edx-agent-flow {
      background: #f8fafc;
      border: 1px solid #e2e8f0;
      border-radius: 12px;
      padding: 12px 14px;
      font-size: 0.8rem;
      line-height: 1.5;
      margin: 14px 0 16px 0;
    }

    .edx-agent-flow-row {
      display: flex;
      margin-bottom: 6px;
    }
    .edx-agent-flow-row:last-child {
      margin-bottom: 0;
    }
    .edx-agent-flow-label {
      width: 75px;
      flex-shrink: 0;
      font-weight: 800;
      color: #64748b;
    }
    .edx-agent-flow-val {
      color: #0f172a;
      font-weight: 600;
    }

    .edx-readiness-box {
      background: linear-gradient(135deg, #090d16 0%, #0f172a 100%);
      color: #ffffff;
      border-radius: 28px;
      padding: 56px 48px;
      border: 1px solid rgba(255,255,255,0.1);
      box-shadow: 0 25px 60px -15px rgba(15, 23, 42, 0.35);
      position: relative;
      overflow: hidden;
    }

    .edx-step-grid {
      display: grid;
      grid-template-columns: repeat(6, 1fr);
      gap: 16px;
    }

    .edx-step-card {
      background: #ffffff;
      border: 1px solid #e2e8f0;
      border-radius: 16px;
      padding: 22px 18px;
      text-align: center;
      position: relative;
      transition: all 0.2s ease;
    }

    .edx-step-card:hover {
      border-color: #4f46e5;
      transform: translateY(-3px);
      box-shadow: 0 12px 25px -8px rgba(79, 70, 229, 0.15);
    }

    .edx-step-num {
      font-size: 0.75rem;
      font-weight: 900;
      color: #818cf8;
      background: #eef2ff;
      padding: 4px 10px;
      border-radius: 20px;
      display: inline-block;
      margin-bottom: 12px;
      letter-spacing: 0.05em;
    }

    @media (max-width: 1024px) {
      .edx-hero-title { font-size: 2.6rem; }
      .edx-intent-grid { grid-template-columns: repeat(2, 1fr); }
      .edx-cat-grid { grid-template-columns: repeat(4, 1fr); }
      .edx-agent-grid { grid-template-columns: repeat(2, 1fr); }
      .edx-step-grid { grid-template-columns: repeat(3, 1fr); }
      .edx-readiness-box { padding: 40px 28px; }
    }

    @media (max-width: 768px) {
      .edx-section { padding: 50px 0; }
      .edx-hero-title { font-size: 2.1rem; }
      .edx-hero-desc { font-size: 1.05rem; }
      .edx-sec-title { font-size: 1.75rem; }
      .edx-intent-grid { grid-template-columns: 1fr; }
      .edx-cat-grid { grid-template-columns: repeat(2, 1fr); }
      .edx-agent-grid { grid-template-columns: 1fr; }
      .edx-step-grid { grid-template-columns: repeat(2, 1fr); }
    }
  