// Internal Service Footer
//
// Independent DWP footer component with DWP-specific styling for internal services
// Based on GOV.UK footer but with DWP-specific class names and styling

.dwp-footer {
  @include govuk-font($size: 16);
  padding-top: govuk-spacing(4);
  padding-bottom: govuk-spacing(3);
  border-top: 1px solid govuk-functional-colour(border);
  color: govuk-functional-colour(text);
  background: govuk-colour("black", $variant: "tint-95");

  @include govuk-media-query($from: tablet) {
    @include govuk-font($size: 16);
    padding-top: govuk-spacing(6);
    padding-bottom: govuk-spacing(4);
  }

  &__heading {
    margin-bottom: govuk-spacing(5);
    padding-bottom: govuk-spacing(3);
    border-bottom: 1px solid govuk-functional-colour(border);

    @include govuk-media-query($until: tablet) {
      padding-bottom: govuk-spacing(2);
    }
  }

  &__section-break {
    margin: 0;
    margin-bottom: govuk-spacing(5);
    border: 0;
    border-bottom: 1px solid govuk-functional-colour(border);

    @include govuk-media-query($from: tablet) {
      margin-bottom: govuk-spacing(8);
    }
  }

  &__navigation {
    margin-right: -(govuk-spacing(3));
    margin-left: -(govuk-spacing(3));

    &::after {
      content: "";
      display: block;
      clear: both;
    }
  }

  &__section {
    display: inline-block;
    margin-bottom: govuk-spacing(5);
    vertical-align: top;
  }

  &__list {
    margin: 0;
    padding: 0;
    list-style: none;
    column-gap: govuk-spacing(5);

    @include govuk-media-query($from: desktop) {
      &--columns-2 {
        column-count: 2;
      }

      &--columns-3 {
        column-count: 3;
      }
    }
  }

  &__list-item {
    margin-bottom: govuk-spacing(3);

    @include govuk-media-query($from: tablet) {
      margin-bottom: govuk-spacing(3);
    }

    &:last-child {
      margin-bottom: 0;
    }
  }

  &__link {
    @extend %govuk-link;

    &:link,
    &:visited {
      color: govuk-functional-colour(text);
    }

    &:hover {
      color: govuk-functional-colour(link-hover);
    }

    &:active,
    &:focus {
      color: govuk-functional-colour(text);
    }

    &:focus {
      @include govuk-focused-text;
    }
  }

  &__meta {
    display: flex;
    margin-right: -(govuk-spacing(3));
    margin-left: -(govuk-spacing(3));
    flex-wrap: wrap;
    align-items: flex-end;
    justify-content: center;
  }

  &__meta-item {
    margin-right: govuk-spacing(3);
    margin-bottom: govuk-spacing(4);
    margin-left: govuk-spacing(3);

    &--grow {
      flex: 1;

      @include govuk-media-query($until: tablet) {
        flex-basis: 320px;
      }
    }
  }

  &__inline-list {
    margin-top: 0;
    margin-bottom: govuk-spacing(3);
    padding: 0;
  }

  &__inline-list-item {
    display: inline-block;
    margin-right: govuk-spacing(3);
    margin-bottom: govuk-spacing(1);
  }

  &__meta-custom {
    margin-bottom: govuk-spacing(3);
  }
}
