:host {
  & .us-footer { 
    display: flex;
    flex-direction: column;
    gap: var(--space-inner-l) 0;
    background: var(--footer-bg-color);
    padding: calc(var(--footer-v-padding) - var(--footer-border-top-width)) var(--footer-h-padding) var(--footer-v-padding);
    border-top: var(--footer-border-top-width) solid var(--footer-border-top-color);
    & > * {
      font: var(--text-p-m-light);
      color: var(--color-text-900);
    }
    &__container {
      display: flex;
      flex-direction: column;
      gap: var(--space-inline-l);
    }
    &__buttons {
      display: flex;
      max-width: 100%;
    }
    &__button {
        width: 50%;
        &:not(:last-child) {
          margin-right: var(--space-inner-l);
        }
        &_alone {
          width: 100%;
        }

        &-text {
          display: inline-block;
          overflow: hidden;
          text-overflow: ellipsis;
          max-width: 100%;
        }
    }
    &__content {
      text-align: center;
    }
    slot[name=beforeContent]::slotted(*) {
      text-align: left;
      width: 100%;
    }

    &.horizontal-small, &.horizontal-medium, &.horizontal-large, &.big-format, &_left {
      & .us-footer__container {
        flex-direction: row-reverse;
        justify-content: space-between;
        align-items: center;
      }
      
      & .us-footer__content {
        margin-right: auto;
        text-align: left; 
      }
      & .us-footer__buttons {
        margin-left: var(--space-inline-l);
        justify-content: flex-end;
      }
      & .us-footer__button {
        width: auto;
        min-width: 114px;
      }
    }
  }
}