/* Elementor: CITIM Icon & Text widget */
@layer components {
  .CITIMIconText {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 0.75rem;
  }

  .CITIMIconText--align-left {
    align-items: flex-start;
    text-align: left;
  }

  .CITIMIconText--align-right {
    align-items: flex-end;
    text-align: right;
  }

  /* Layout: icon above text (default) */
  .CITIMIconText--layout-top {
    flex-direction: column;
  }

  /* Layout: icon on the left of text block */
  .CITIMIconText--layout-left {
    flex-direction: row;
    align-items: flex-start;
    text-align: left;
    gap: 1rem;
  }

  .CITIMIconText--layout-left.CITIMIconText--align-center {
    justify-content: center;
  }

  .CITIMIconText--layout-left.CITIMIconText--align-right {
    justify-content: flex-end;
  }

  .CITIMIconText__body {
    display: flex;
    flex-direction: column;
    gap: 0.25rem;
  }

  .CITIMIconText__icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 2rem;
    line-height: 1;
    color: var(--citim-color-bleu_signal, #4a75f5);
  }

  .CITIMIconText__title {
    margin: 0;
    font-family: var(--citim-typo-h2-font-family, "ES Build", sans-serif);
    font-size: var(--citim-typo-h2-font-size, 1.5rem);
    letter-spacing: var(--citim-typo-h2-letter-spacing, 0);
    line-height: var(--citim-typo-h2-line-height, 1.2);
    font-weight: var(--citim-typo-h2-font-weight, 400);
    color: var(--citim-color-noir, #000000);
  }

  /* Wrapper for WYSIWYG / HTML (inner p, ul, etc.); avoid <p> around markup */
  .CITIMIconText__description {
    margin: 0;
    max-width: 36rem;
    font-family: var(--citim-font-secondary, "Roboto", sans-serif);
    font-size: var(--citim-typo-paragraph-font-size, 1rem);
    line-height: var(--citim-typo-paragraph-line-height, 1.5);
    color: var(--citim-color-noir, #000000);
  }

  .CITIMIconText__description > *:first-child {
    margin-top: 0;
  }

  .CITIMIconText__description > *:last-child {
    margin-bottom: 0;
  }

  .CITIMIconText__description > * + * {
    margin-top: 0.5em;
  }
}

