  /* Base styles */
  :root {
      --background: 0 0% 100%;
      --foreground: 222.2 84% 4.9%;
      --card: 0 0% 100%;
      --card-foreground: 222.2 84% 4.9%;
      --popover: 0 0% 100%;
      --popover-foreground: 222.2 84% 4.9%;
      --primary: 230 80% 40%;
      --primary-foreground: 210 40% 98%;
      --secondary: 210 40% 96.1%;
      --secondary-foreground: 222.2 47.4% 11.2%;
      --muted: 210 40% 96.1%;
      --muted-foreground: 215.4 16.3% 46.9%;
      --accent: 210 40% 96.1%;
      --accent-foreground: 222.2 47.4% 11.2%;
      --destructive: 0 84.2% 60.2%;
      --destructive-foreground: 210 40% 98%;
      --border: 214.3 31.8% 91.4%;
      --input: 214.3 31.8% 91.4%;
      --ring: 230 80% 60%;
      --radius: 0.5rem;
  }

  * {
      margin: 0;
      padding: 0;
      box-sizing: border-box;
  }

  body {
      font-family: "Montserrat", sans-serif;
      color: hsl(var(--foreground));
      background-color: hsl(var(--background));
      line-height: 1.5;
  }

  a {
      text-decoration: none;
      color: black;
      font-family: "Montserrat", sans-serif;


      &:hover {
          color: hsl(var(--primary));
          transition-delay: 0.3s;
      }
  }

  /* Layout */
  .flex {
      display: flex;
  }

  .flex-col {
      flex-direction: column;
  }

  .items-center {
      align-items: center;
  }

  .justify-center {
      justify-content: center;
  }

  .justify-between {
      justify-content: space-between;
  }

  .gap-2 {
      gap: 0.5rem;
  }

  .gap-4 {
      gap: 1rem;
  }

  .gap-6 {
      gap: 1.5rem;
  }

  .space-y-2>*+* {
      margin-top: 0.5rem;
  }

  .space-y-4>*+* {
      margin-top: 1rem;
  }

  .space-y-6>*+* {
      margin-top: 1.5rem;
  }

  .min-h-screen {
      min-height: 100vh;
  }

  .w-full {
      width: 100%;
  }

  .h-4 {
      height: 1rem;
  }

  .h-5 {
      height: 1.25rem;
  }

  .h-6 {
      height: 1.5rem;
  }

  .h-8 {
      height: 2rem;
  }

  .h-16 {
      height: 4rem;
  }

  .w-4 {
      width: 1rem;
  }

  .w-5 {
      width: 1.25rem;
  }

  .w-6 {
      width: 1.5rem;
  }

  .w-8 {
      width: 2rem;
  }

  .max-w-600 {
      max-width: 600px;
  }

  .max-w-900 {
      max-width: 900px;
  }

  .max-w-2xl {
      max-width: 42rem;
  }

  .max-w-3xl {
      max-width: 48rem;
  }

  .container {
      width: 100%;
      margin-left: auto;
      margin-right: auto;
      padding-left: 1rem;
      padding-right: 1rem;
      max-width: 1400px;
  }

  /* Typography */
  .text-sm {
      font-size: 0.875rem;
  }

  .text-lg {
      font-size: 1.125rem;
  }

  .text-xl {
      font-size: 1.25rem;
  }

  .text-2xl {
      font-size: 1.5rem;
  }

  .text-3xl {
      font-size: 1.875rem;
  }

  .font-medium {
      font-weight: 500;
  }

  .font-bold {
      font-weight: 700;
  }

  .text-center {
      text-align: center;
  }

  .text-primary {
      color: hsl(var(--primary));
  }

  .text-muted-foreground {
      color: hsl(var(--muted-foreground));
  }

  .text-white {
      color: white;
  }

  .text-gray-400 {
      color: #9ca3af;
  }

  .underline {
      text-decoration: underline;
  }

  .underline-offset-4 {
      text-underline-offset: 4px;
  }

  /* Spacing */
  .p-2 {
      padding: 0.5rem;
  }

  .p-4 {
      padding: 1rem;
  }

  .p-6 {
      padding: 1.5rem;
  }

  .px-4 {
      padding-left: 1rem;
      padding-right: 1rem;
  }

  .px-6 {
      padding-left: 1.5rem;
      padding-right: 1.5rem;
  }

  .px-8 {
      padding-left: 2rem;
      padding-right: 2rem;
  }

  .py-0 {
      padding-top: 0;
      padding-bottom: 0;
  }

  .py-10 {
      padding-top: 2.5rem;
      padding-bottom: 2.5rem;
  }

  .py-12 {
      padding-top: 3rem;
      padding-bottom: 3rem;
  }

  .py-24 {
      padding-top: 6rem;
      padding-bottom: 6rem;
  }

  .py-32 {
      padding-top: 8rem;
      padding-bottom: 8rem;
  }

  .mt-1 {
      margin-top: 0.25rem;
  }

  .mt-2 {
      margin-top: 0.5rem;
  }

  .mt-4 {
      margin-top: 1rem;
  }

  .mt-6 {
      margin-top: 1.5rem;
  }

  .mt-8 {
      margin-top: 2rem;
  }

  .mt-12 {
      margin-top: 3rem;
  }

  .mb-2 {
      margin-bottom: 0.5rem;
  }

  .mb-4 {
      margin-bottom: 1rem;
  }

  .ml-2 {
      margin-left: 0.5rem;
  }

  .mx-auto {
      margin-left: auto;
      margin-right: auto;
  }

  .my-8 {
      margin-top: 2rem;
      margin-bottom: 2rem;
  }

  /* Components */
  .button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      border-radius: var(--radius);
      font-weight: 500;
      padding: 0.5rem 1rem;
      background-color: hsl(var(--primary));
      color: hsl(var(--primary-foreground));
      font-family: "Montserrat", sans-serif;

      border: none;
      cursor: pointer;
      transition: background-color 0.2s, color 0.2s;
  }

  .button:hover {
      background-color: hsl(var(--primary) / 0.9);
      color: white;
  }

  .button-lg {
      padding: 0.75rem 1.5rem;
      font-size: 1rem;
  }

  .button-outline {
      background-color: transparent;
      border: 1px solid hsl(var(--primary));
      color: hsl(var(--primary));
  }

  .button-outline:hover {
      background-color: hsl(var(--primary) / 0.1);
  }

  .card {
      background-color: hsl(var(--card));
      border-radius: var(--radius);
      box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
      border: 1px solid hsl(var(--border));
      overflow: hidden;
  }

  .card-header {
      padding: 1.5rem 1.5rem 0;
  }

  .card-title {
      font-size: 1.25rem;
      font-weight: 600;
      margin-bottom: 0.25rem;
  }

  .card-description {
      color: hsl(var(--muted-foreground));
      font-size: 0.875rem;
  }

  .card-content {
      padding: 1.5rem;
  }

  .logo {
      height: 80px;
      width: 80px;
  }

  /* Tabs */
  .tabs-list,
  .cert-tabs-list {
      display: grid;
      border-radius: var(--radius);
      background-color: hsl(var(--muted));
      padding: 0.25rem;
  }

  .tab-trigger,
  .cert-tab-trigger {
      display: flex;
      align-items: center;
      justify-content: center;
      gap: 0.5rem;
      padding: 0.75rem;
      border-radius: calc(var(--radius) - 0.25rem);
      font-size: 0.875rem;
      font-family: "Montserrat", sans-serif;

      font-weight: 500;
      background-color: transparent;
      color: hsl(var(--muted-foreground));
      border: none;
      cursor: pointer;
      transition: background-color 0.2s, color 0.2s;
  }

  .tab-trigger.active,
  .cert-tab-trigger.active {
      background-color: hsl(var(--background));
      color: hsl(var(--foreground));
      box-shadow: 0 1px 2px rgba(0, 0, 0, 0.1);
  }

  .tab-panel,
  .cert-tab-panel {
      display: none;
  }

  .tab-panel.active,
  .cert-tab-panel.active {
      display: block;
  }

  /* Accordion */
  .accordion {
      width: 100%;
  }

  .accordion-item {
      border-bottom: 1px solid hsl(var(--border));
  }

  .accordion-trigger {
      display: flex;
      justify-content: space-between;
      align-items: center;
      width: 100%;
      padding: 1rem 0;
      font-family: "Montserrat", sans-serif;
      text-align: left;
      background: none;
      border: none;
      font-size: 1rem;
      font-weight: 500;
      cursor: pointer;
  }

  .accordion-icon {
      transition: transform 0.2s;
  }

  .accordion-item.expanded .accordion-icon {
      transform: rotate(180deg);
  }

  .accordion-content {
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.3s ease-out;
      padding: 0 1rem 0 0;
  }

  .accordion-item.expanded .accordion-content {
      max-height: 500px;
      padding-bottom: 1rem;
  }

  /* Lists */
  .list-disc {
      list-style-type: disc;
      padding-left: 1.5rem;
  }

  .hidden {
      display: none;
  }

  .block {
      display: block
  }

  /* Grid */
  .grid {
      display: grid;
  }

  .grid-cols-2 {
      grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .grid-cols-3 {
      grid-template-columns: repeat(3, minmax(0, 1fr));
  }

  /* Backgrounds */
  .bg-background {
      background-color: hsl(var(--background));
  }

  .bg-muted {
      background-color: hsl(var(--muted));
  }

  .bg-\[\#4f46e5\] {
      background-color: #4f46e5;
  }

  .bg-\[\#10b981\] {
      background-color: #10b981;
  }

  .bg-\[\#f59e0b\] {
      background-color: #f59e0b;
  }

  .bg-gray-200 {
      background-color: #e5e7eb;
  }

  /* Borders */
  .border {
      border: 1px solid hsl(var(--border));
  }

  .border-t {
      border-top: 1px solid hsl(var(--border));
  }

  .border-b {
      border-bottom: 1px solid hsl(var(--border));
  }

  .rounded {
      border-radius: var(--radius);
  }

  .rounded-lg {
      border-radius: 0.5rem;
  }

  .rounded-xl {
      border-radius: 0.75rem;
  }

  /* Shadows */
  .shadow-md {
      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06);
  }

  /* Positioning */
  .sticky {
      position: sticky;
  }

  .top-0 {
      top: 0;
  }

  .z-50 {
      z-index: 50;
  }

  /* Images */
  img {
      max-width: 100%;
      height: auto;
  }

  .aspect-square {
      aspect-ratio: 1 / 1;
  }

  .object-cover {
      object-fit: cover;
  }

  /* Backdrop */
  .backdrop-blur {
      backdrop-filter: blur(8px);
  }

  /* Responsive */
  @media (min-width: 640px) {
      #checker {
          display: none;
      }

      .sm\:text-4xl {
          font-size: 2.25rem;
      }

      .sm\:text-5xl {
          font-size: 3rem;
      }

      .sm\:grid-cols-2 {
          grid-template-columns: repeat(2, minmax(0, 1fr));
      }
  }

  @media (min-width: 768px) {
      .md\:hidden {
          display: none
      }

      .md\:flex {
          display: flex;
      }

      .md\:flex-row {
          flex-direction: row;
      }

      .md\:h-24 {
          height: 6rem;
      }

      .md\:text-xl {
          font-size: 1.25rem;
      }

      .md\:text-5xl {
          font-size: 3rem;
      }

      .md\:px-0 {
          padding-left: 0;
          padding-right: 0;
      }

      .md\:px-6 {
          padding-left: 1.5rem;
          padding-right: 1.5rem;
      }

      .md\:py-0 {
          padding-top: 0;
          padding-bottom: 0;
      }

      .md\:py-24 {
          padding-top: 6rem;
          padding-bottom: 6rem;
      }

      .md\:text-left {
          text-align: left;
      }

      .md\:grid-cols-2 {
          grid-template-columns: repeat(2, minmax(0, 1fr));
      }

      .md\:col-span-2 {
          grid-column: span 2 / span 2;
      }
  }

  @media (min-width: 1024px) {
      .lg\:text-base {
          font-size: 1rem;
      }

      .lg\:py-32 {
          padding-top: 8rem;
          padding-bottom: 8rem;
      }

      .lg\:grid-cols-3 {
          grid-template-columns: repeat(3, minmax(0, 1fr));
      }

      .lg\:grid-cols-\[1fr_400px\] {
          grid-template-columns: 1fr 400px;
      }

      .lg\:gap-12 {
          gap: 3rem;
      }

      .lg\:col-span-1 {
          grid-column: span 1 / span 1;
      }
  }

  @media (min-width: 1280px) {
      .xl\:text-xl {
          font-size: 1.25rem;
      }

      .xl\:text-6xl {
          font-size: 3.75rem;
      }

      .xl\:grid-cols-\[1fr_500px\] {
          grid-template-columns: 1fr 500px;
      }
  }

  @media (min-width: 400px) {
      .min-\[400px\]\:flex-row {
          flex-direction: row;
      }
  }