/* =============================================
   TREELAB CSS - Client: default
   Generated: 2026-01-09T15:11:34.847Z
   ============================================= */

/* =============================================
   TREELAB CSS - Base Styles v1.0
   ============================================= */

/* Reset & Root */
.treelab-root {
  box-sizing: border-box;
  font-family: var(--treelab-font-body, inherit);
  color: var(--treelab-color-text, inherit);
  line-height: 1.6;
}

.treelab-root *,
.treelab-root *::before,
.treelab-root *::after {
  box-sizing: inherit;
}

/* Layout */
.treelab-section {
  display: block;
  width: 100%;
}

.treelab-container {
  max-width: 1200px;
  margin: 0 auto;
}

/* Columns */
.treelab-columns {
  display: flex;
}

.treelab-column {
  flex: 1 1 0%;
  min-width: 0;
}

/* Vertical alignment */
.treelab-valign-start { align-items: flex-start; }
.treelab-valign-center { align-items: center; }
.treelab-valign-end { align-items: flex-end; }

/* Mobile layouts */
@media (max-width: 768px) {
  /* Stack layout - columns wrap to full width */
  .treelab-mobile-stack {
    flex-wrap: wrap;
  }
  
  .treelab-mobile-stack > .treelab-column {
    flex: 1 1 100%;
  }
  
  /* Carousel layout */
  .treelab-mobile-carousel {
    flex-wrap: nowrap;
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch;
  }
  
  .treelab-mobile-carousel > .treelab-column {
    flex: 0 0 80%;
    scroll-snap-align: start;
  }
  
  /* Side-by-side - no changes, columns stay side by side */
}

/* Typography */
.treelab-heading {
  margin: 0;
  font-family: var(--treelab-font-heading, inherit);
  font-weight: var(--treelab-font-heading-weight, 600);
  color: var(--treelab-color-heading, inherit);
  line-height: 1.3;
}

.treelab-h1 { font-size: var(--treelab-h1, 2.5rem); }
.treelab-h2 { font-size: var(--treelab-h2, 2rem); }
.treelab-h3 { font-size: var(--treelab-h3, 1.75rem); }
.treelab-h4 { font-size: var(--treelab-h4, 1.5rem); }
.treelab-h5 { font-size: var(--treelab-h5, 1.25rem); }
.treelab-h6 { font-size: var(--treelab-h6, 1rem); }

.treelab-text {
  margin: 0;
  font-family: var(--treelab-font-body, inherit);
  color: var(--treelab-color-text, inherit);
}

.treelab-text-sm { font-size: var(--treelab-text-sm, 0.875rem); }
.treelab-text-md { font-size: var(--treelab-text-md, 1rem); }
.treelab-text-lg { font-size: var(--treelab-text-lg, 1.25rem); }
.treelab-text-xl { font-size: var(--treelab-text-xl, 1.5rem); }

/* Text alignment */
.treelab-text-left { text-align: left; }
.treelab-text-center { text-align: center; }
.treelab-text-right { text-align: right; }

/* Images */
.treelab-image {
  max-width: 100%;
  height: auto;
}

.treelab-image-wrapper {
  display: flex;
}

.treelab-image-center {
  justify-content: center;
}

.treelab-image-right {
  justify-content: flex-end;
}

.treelab-image-link {
  display: inline-block;
}

/* Buttons */
.treelab-button-wrapper {
  display: block;
}

.treelab-button {
  display: inline-block;
  padding: 12px 24px;
  font-family: var(--treelab-font-body, inherit);
  font-size: 1rem;
  font-weight: 500;
  text-decoration: none;
  border: none;
  border-radius: 4px;
  cursor: pointer;
  transition: opacity 0.2s ease;
  background-color: var(--treelab-color-primary, #3b82f6);
  color: #ffffff;
}

.treelab-button:hover {
  opacity: 0.9;
}

/* Spacer */
.treelab-spacer {
  display: block;
}

/* Divider */
.treelab-divider {
  border: none;
  border-top: 1px solid var(--treelab-color-text, #e5e7eb);
  margin: 0;
  opacity: 0.3;
}

/* ===== Spacing Utilities ===== */

/* Padding Top */
.treelab-pt-xs { padding-top: var(--treelab-spacing-xs, 4px); }
.treelab-pt-sm { padding-top: var(--treelab-spacing-sm, 8px); }
.treelab-pt-md { padding-top: var(--treelab-spacing-md, 16px); }
.treelab-pt-lg { padding-top: var(--treelab-spacing-lg, 24px); }
.treelab-pt-xl { padding-top: var(--treelab-spacing-xl, 32px); }
.treelab-pt-2xl { padding-top: var(--treelab-spacing-2xl, 48px); }

/* Padding Right */
.treelab-pr-xs { padding-right: var(--treelab-spacing-xs, 4px); }
.treelab-pr-sm { padding-right: var(--treelab-spacing-sm, 8px); }
.treelab-pr-md { padding-right: var(--treelab-spacing-md, 16px); }
.treelab-pr-lg { padding-right: var(--treelab-spacing-lg, 24px); }
.treelab-pr-xl { padding-right: var(--treelab-spacing-xl, 32px); }
.treelab-pr-2xl { padding-right: var(--treelab-spacing-2xl, 48px); }

/* Padding Bottom */
.treelab-pb-xs { padding-bottom: var(--treelab-spacing-xs, 4px); }
.treelab-pb-sm { padding-bottom: var(--treelab-spacing-sm, 8px); }
.treelab-pb-md { padding-bottom: var(--treelab-spacing-md, 16px); }
.treelab-pb-lg { padding-bottom: var(--treelab-spacing-lg, 24px); }
.treelab-pb-xl { padding-bottom: var(--treelab-spacing-xl, 32px); }
.treelab-pb-2xl { padding-bottom: var(--treelab-spacing-2xl, 48px); }

/* Padding Left */
.treelab-pl-xs { padding-left: var(--treelab-spacing-xs, 4px); }
.treelab-pl-sm { padding-left: var(--treelab-spacing-sm, 8px); }
.treelab-pl-md { padding-left: var(--treelab-spacing-md, 16px); }
.treelab-pl-lg { padding-left: var(--treelab-spacing-lg, 24px); }
.treelab-pl-xl { padding-left: var(--treelab-spacing-xl, 32px); }
.treelab-pl-2xl { padding-left: var(--treelab-spacing-2xl, 48px); }

/* Margin Top */
.treelab-mt-xs { margin-top: var(--treelab-spacing-xs, 4px); }
.treelab-mt-sm { margin-top: var(--treelab-spacing-sm, 8px); }
.treelab-mt-md { margin-top: var(--treelab-spacing-md, 16px); }
.treelab-mt-lg { margin-top: var(--treelab-spacing-lg, 24px); }
.treelab-mt-xl { margin-top: var(--treelab-spacing-xl, 32px); }
.treelab-mt-2xl { margin-top: var(--treelab-spacing-2xl, 48px); }

/* Margin Right */
.treelab-mr-xs { margin-right: var(--treelab-spacing-xs, 4px); }
.treelab-mr-sm { margin-right: var(--treelab-spacing-sm, 8px); }
.treelab-mr-md { margin-right: var(--treelab-spacing-md, 16px); }
.treelab-mr-lg { margin-right: var(--treelab-spacing-lg, 24px); }
.treelab-mr-xl { margin-right: var(--treelab-spacing-xl, 32px); }
.treelab-mr-2xl { margin-right: var(--treelab-spacing-2xl, 48px); }

/* Margin Bottom */
.treelab-mb-xs { margin-bottom: var(--treelab-spacing-xs, 4px); }
.treelab-mb-sm { margin-bottom: var(--treelab-spacing-sm, 8px); }
.treelab-mb-md { margin-bottom: var(--treelab-spacing-md, 16px); }
.treelab-mb-lg { margin-bottom: var(--treelab-spacing-lg, 24px); }
.treelab-mb-xl { margin-bottom: var(--treelab-spacing-xl, 32px); }
.treelab-mb-2xl { margin-bottom: var(--treelab-spacing-2xl, 48px); }

/* Margin Left */
.treelab-ml-xs { margin-left: var(--treelab-spacing-xs, 4px); }
.treelab-ml-sm { margin-left: var(--treelab-spacing-sm, 8px); }
.treelab-ml-md { margin-left: var(--treelab-spacing-md, 16px); }
.treelab-ml-lg { margin-left: var(--treelab-spacing-lg, 24px); }
.treelab-ml-xl { margin-left: var(--treelab-spacing-xl, 32px); }
.treelab-ml-2xl { margin-left: var(--treelab-spacing-2xl, 48px); }

/* Column Gap */
.treelab-gap-xs { gap: var(--treelab-spacing-xs, 4px); }
.treelab-gap-sm { gap: var(--treelab-spacing-sm, 8px); }
.treelab-gap-md { gap: var(--treelab-spacing-md, 16px); }
.treelab-gap-lg { gap: var(--treelab-spacing-lg, 24px); }
.treelab-gap-xl { gap: var(--treelab-spacing-xl, 32px); }
.treelab-gap-2xl { gap: var(--treelab-spacing-2xl, 48px); }

/* ===== Color Utilities ===== */

/* Background colors */
.treelab-bg-primary { background-color: var(--treelab-color-primary); }
.treelab-bg-secondary { background-color: var(--treelab-color-secondary); }
.treelab-bg-accent { background-color: var(--treelab-color-accent); }
.treelab-bg-background { background-color: var(--treelab-color-background); }

/* Text colors */
.treelab-text-primary { color: var(--treelab-color-primary); }
.treelab-text-secondary { color: var(--treelab-color-secondary); }
.treelab-text-accent { color: var(--treelab-color-accent); }
.treelab-text-heading { color: var(--treelab-color-heading); }
.treelab-text-body { color: var(--treelab-color-text); }


/* ===== Design Tokens ===== */
.treelab-root[data-treelab-client="default"] {
  --treelab-spacing-xs: 4px;
  --treelab-spacing-sm: 8px;
  --treelab-spacing-md: 16px;
  --treelab-spacing-lg: 24px;
  --treelab-spacing-xl: 32px;
  --treelab-spacing-2xl: 48px;
}

/* ===== Component Styles ===== */
.tl-c-4kiqy0, .tl-c-934188, .tl-c-abb1oj, .tl-c-cgx0vz, .tl-c-czzoy9, .tl-c-no9y0q, .tl-c-nwjxoz, .tl-c-x5q9au { padding-top: 64px }
.tl-c-3fpbqw, .tl-c-46wt92, .tl-c-4kiqy0, .tl-c-4z9mov, .tl-c-5xxyu4, .tl-c-934188, .tl-c-abb1oj, .tl-c-i7yayk, .tl-c-jfxgia, .tl-c-jng6j1, .tl-c-jruxd2, .tl-c-k03kmu, .tl-c-nwjxoz, .tl-c-q7ih84, .tl-c-waun59, .tl-c-xc06zw { padding-right: 32px; padding-left: 32px }
.tl-c-3fpbqw, .tl-c-46wt92, .tl-c-4kiqy0, .tl-c-4z9mov, .tl-c-5xxyu4, .tl-c-934188, .tl-c-abb1oj, .tl-c-i7yayk, .tl-c-jfxgia, .tl-c-jng6j1, .tl-c-jruxd2, .tl-c-k03kmu, .tl-c-no9y0q, .tl-c-nwjxoz, .tl-c-q7ih84, .tl-c-waun59, .tl-c-x5q9au, .tl-c-xc06zw { padding-bottom: 32px }
.tl-c-4kiqy0, .tl-c-934188, .tl-c-cgx0vz, .tl-c-czzoy9, .tl-c-no9y0q, .tl-c-x5q9au { margin-top: 24px }
.tl-c-2wlbgu, .tl-c-4kiqy0, .tl-c-5xxyu4, .tl-c-934188, .tl-c-abb1oj, .tl-c-cgx0vz, .tl-c-czzoy9, .tl-c-fk8t4e, .tl-c-lvzhq5, .tl-c-no9y0q, .tl-c-nwjxoz, .tl-c-x5q9au, .tl-c-xc06zw { background-color: #000000 }
.tl-c-4kiqy0, .tl-c-czzoy9, .tl-c-nwjxoz, .tl-c-x5q9au, .tl-c-xc06zw { border-radius: 30px }
.tl-c-4kiqy0, .tl-c-czzoy9, .tl-c-lvzhq5, .tl-c-nwjxoz, .tl-c-q7ih84, .tl-c-x5q9au, .tl-c-xc06zw { overflow: hidden }
.tl-c-2863pg, .tl-c-2wv5zn, .tl-c-3pyo3p, .tl-c-7garse, .tl-c-bqapd7, .tl-c-cv6xfo, .tl-c-t885ms, .tl-c-y310al { padding-top: 16px }
.tl-c-2863pg, .tl-c-2wv5zn, .tl-c-3pyo3p, .tl-c-738zf1, .tl-c-7garse, .tl-c-cv6xfo, .tl-c-grpuwv, .tl-c-t885ms, .tl-c-y310al { padding-right: 16px; padding-left: 16px }
.tl-c-2wlbgu, .tl-c-2wv5zn, .tl-c-7garse, .tl-c-grpuwv { padding-bottom: 90px }
.tl-c-2wv5zn, .tl-c-3pyo3p, .tl-c-t885ms { color: #ffffff }
.tl-c-3fpbqw, .tl-c-46wt92, .tl-c-4z9mov, .tl-c-5xxyu4, .tl-c-bw8o62, .tl-c-fk8t4e, .tl-c-i7yayk, .tl-c-jfxgia, .tl-c-jng6j1, .tl-c-jruxd2, .tl-c-k03kmu, .tl-c-lvzhq5, .tl-c-q7ih84, .tl-c-waun59, .tl-c-xc06zw { padding-top: 32px }
.tl-c-waun59 { background-color: transparent }
.tl-c-z2oxoy { padding-top: 40px; padding-right: 40px; padding-bottom: 40px; padding-left: 40px }
.tl-c-cv6xfo, .tl-c-z2oxoy { background-color: #f2f2f2 }
.tl-c-cgx0vz, .tl-c-czzoy9, .tl-c-no9y0q, .tl-c-x5q9au { padding-right: 64px; padding-left: 64px }
.tl-c-2863pg, .tl-c-3pyo3p, .tl-c-738zf1, .tl-c-bqapd7, .tl-c-cv6xfo { padding-bottom: 16px }
.tl-c-lvzhq5 { border-radius: 20px }
.tl-c-3fpbqw { background-color: #592dd2 }
.tl-c-i7yayk { background-color: #c11f1f }
.tl-c-o42jks { background-color: #4fca3f }
.tl-c-7uf48g, .tl-c-a97407 { background-color: #f31212 }
.tl-c-5xmndw, .tl-c-7uf48g, .tl-c-a97407, .tl-c-am3jkj { color: #000000 }
.tl-c-5xmndw, .tl-c-7uf48g, .tl-c-ff6gc1, .tl-c-wagw1o { border-radius: 0.5rem }
.tl-c-5xmndw, .tl-c-am3jkj { background-color: #6a4dff }
.tl-c-4z9mov, .tl-c-q7ih84 { background-color: #212121 }
.tl-c-vskjeq { gap: 60px }
.tl-c-3aw6wl, .tl-c-nochmy { padding-top: 12px; padding-right: 24px; padding-bottom: 12px; padding-left: 24px }
.tl-c-3aw6wl, .tl-c-ff6gc1 { background-color: #2a8c1d }
.tl-c-2wlbgu { padding-top: 90px; padding-right: 80px; padding-left: 80px }
.tl-c-46wt92 { background-color: #2caf4d }
.tl-c-vsnlw7 { gap: 16px }
.tl-c-jfxgia { background-color: #db248f }
.tl-c-cgx0vz, .tl-c-czzoy9 { padding-bottom: 80px }
.tl-c-q7ih84 { border-radius: 24px }
.tl-c-geapoq { width: 500px; border-radius: 100px }
.tl-c-k03kmu { background-color: #eff8ed }
.tl-c-jng6j1 { background-color: #f0f2f9 }
.tl-c-jruxd2 { background-color: #f8edf7 }