/* Two text columns side by side, one under the other below Stack below.
   The divider sits in the middle of the column gap; it takes the text color at
   low opacity, so it works on light and dark sections without a setting. */
.hMogPi6ri7Eq3bKtf5eA {
  --_left: 1fr;
  --_right: 1fr;
  --_gap: var(--tt-space-section-rg, clamp(3rem, 1.96rem + 3.906vw, 4rem));
  --_stacked-gap: var(--tt-space-card-rg, clamp(1rem, 0.48rem + 1.953vw, 1.5rem));
  --_text: var(--tt-text-sm, 1rem);
  --_para-gap: var(--tt-space-card-sm, clamp(0.75rem, 0.49rem + 0.977vw, 1rem));

  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: var(--_stacked-gap);
  /* Width only, so a parent's Vertical align still applies. */
  width: 100%;
  --tt-text-size: var(--_text);
}

.hMogPi6ri7Eq3bKtf5eA[data-ratio="3-2"] { --_left: 3fr; --_right: 2fr; }
.hMogPi6ri7Eq3bKtf5eA[data-ratio="2-3"] { --_left: 2fr; --_right: 3fr; }

.hMogPi6ri7Eq3bKtf5eA[data-column-gap="medium"] { --_gap: var(--tt-space-section-sm, 3rem); }
.hMogPi6ri7Eq3bKtf5eA[data-column-gap="x-large"] { --_gap: var(--tt-space-section-md, 6rem); }

.hMogPi6ri7Eq3bKtf5eA[data-stacked-gap="small"] { --_stacked-gap: var(--tt-space-card-sm, clamp(0.75rem, 0.49rem + 0.977vw, 1rem)); }
.hMogPi6ri7Eq3bKtf5eA[data-stacked-gap="medium"] { --_stacked-gap: var(--tt-space-card-md, clamp(1.5rem, 0.98rem + 1.953vw, 2rem)); }
.hMogPi6ri7Eq3bKtf5eA[data-stacked-gap="large"] { --_stacked-gap: var(--tt-space-section-xs, 2rem); }

.hMogPi6ri7Eq3bKtf5eA[data-text-size="small"] { --_text: var(--tt-text-xs, 0.9rem); }
.hMogPi6ri7Eq3bKtf5eA[data-text-size="large"] { --_text: var(--tt-text-lg, 1.1rem); }

.hMogPi6ri7Eq3bKtf5eA[data-paragraph-gap="none"] { --_para-gap: 0rem; }
.hMogPi6ri7Eq3bKtf5eA[data-paragraph-gap="x-small"] { --_para-gap: var(--tt-space-card-xs, 0.5rem); }
.hMogPi6ri7Eq3bKtf5eA[data-paragraph-gap="regular"] { --_para-gap: var(--tt-space-card-rg, clamp(1rem, 0.48rem + 1.953vw, 1.5rem)); }
.hMogPi6ri7Eq3bKtf5eA[data-paragraph-gap="medium"] { --_para-gap: var(--tt-space-card-md, clamp(1.5rem, 0.98rem + 1.953vw, 2rem)); }

/* Webflow wraps slot content in one element; display: contents makes every
   paragraph a flex item of the column, so the paragraph gap applies. */
.hMogPi6ri7Eq3bKtf5eA .MX6B9QfUOP5P1bhPBCmM[data-column] {
  box-sizing: border-box;
  display: flex;
  flex-direction: column;
  gap: var(--_para-gap);
  min-width: 0;
}

.hMogPi6ri7Eq3bKtf5eA .MX6B9QfUOP5P1bhPBCmM[data-column] ::slotted(*) {
  display: contents;
}

.hMogPi6ri7Eq3bKtf5eA .MX6B9QfUOP5P1bhPBCmM[data-hidden] {
  display: none;
}

/* Beats the side-by-side rules, which also set display. */
.hMogPi6ri7Eq3bKtf5eA[data-empty][data-stack-below] {
  display: none;
}

.hMogPi6ri7Eq3bKtf5eA .MX6B9QfUOP5P1bhPBCmM[data-part="divider"] {
  display: none;
  align-self: stretch;
  width: 1px;
  background: color-mix(in srgb, currentColor 15%, transparent);
}

/* ---------- Side by side (from 992px, or from 768px with Stack below: Mobile) ---------- */
@media (min-width: 992px) {
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="tablet"] {
    display: grid;
    grid-template-columns: var(--_left) var(--_right);
    column-gap: var(--_gap);
    align-items: start;
  }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="tablet"][data-divider] {
    grid-template-columns: var(--_left) 1px var(--_right);
    column-gap: calc(var(--_gap) / 2);
  }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="tablet"] .MX6B9QfUOP5P1bhPBCmM[data-part="divider"] { display: block; }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="tablet"][data-single] { grid-template-columns: minmax(0, 1fr); }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="tablet"][data-vertical-align="center"] { align-items: center; }
}

@media (min-width: 768px) {
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="mobile"] {
    display: grid;
    grid-template-columns: var(--_left) var(--_right);
    column-gap: var(--_gap);
    align-items: start;
  }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="mobile"][data-divider] {
    grid-template-columns: var(--_left) 1px var(--_right);
    column-gap: calc(var(--_gap) / 2);
  }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="mobile"] .MX6B9QfUOP5P1bhPBCmM[data-part="divider"] { display: block; }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="mobile"][data-single] { grid-template-columns: minmax(0, 1fr); }
  .hMogPi6ri7Eq3bKtf5eA[data-stack-below="mobile"][data-vertical-align="center"] { align-items: center; }
}

