.lbcamden-prose {
  .govuk-details,
  .lbcamden-button {
    @include govuk-responsive-margin(2, "top");
    @include govuk-responsive-margin(6, "bottom");
  }

  .govuk-details + h2,
  .lbcamden-button + h2 {
    margin-top: govuk-spacing(2);

    @include govuk-media-query("tablet") {
      margin-top: govuk-spacing(4);
    }
  }

  .lbcamden-button + h3,
  .lbcamden-button + h4,
  .lbcamden-button + h5,
  .lbcamden-button + h6 {
    @include govuk-responsive-margin(2, "top");
  }

  li,
  .govuk-list.govuk-list--number > li,
  .govuk-list.govuk-list--bullet > li {
    margin-bottom: govuk-spacing(1);
  }

  .lbcamden-list--dash {
    li:not(:last-child) {
      margin-bottom: govuk-spacing(4);
    }
  }

  .article-image {
    img {
      width: 100%;
      height: auto;
      object-fit: cover;
      max-height: 300px;

      @include govuk-media-query($from: desktop) {
        max-height: 450px;
      }
    }

    @include govuk-responsive-margin(6, "bottom");
  }

  h1 {
    margin-bottom: 0;
    @extend %govuk-heading-xl;

    + * {
      @include govuk-responsive-margin(7, "top");
    }

    + .lbc-table-of-contents {
      @include govuk-responsive-margin(8, "top");
    }

    + .article-image,
    + .govuk-body-lead {
      @include govuk-responsive-margin(4, "top");
    }
  }

  h2 {
    @extend %govuk-heading-l;
  }

  h3 {
    @extend %govuk-heading-m;
  }

  h4 {
    @extend %govuk-heading-s;
  }

  h4,
  h5,
  h6 {
    margin-bottom: govuk-spacing(1);

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

  p {
    @extend %govuk-body-m;
  }

  a {
    @extend %govuk-link;
  }

  ul {
    &:not(.lbcamden-list--dash) {
      @extend %govuk-list--bullet;
    }
  }

  ol {
    @extend %govuk-list--number;
  }

  strong,
  b {
    @include govuk-typography-weight-bold;
  }

  hr {
    @extend %govuk-section-break;
    @extend %govuk-section-break--visible;
    @extend %govuk-section-break--xl;
  }

  pre + h2 {
    padding-top: govuk-spacing(4);
  }

  pre + h3,
  pre + h4 {
    padding-top: govuk-spacing(2);
  }

  table {
    @extend .govuk-table;
  }

  thead {
    @extend .govuk-table__head !optional;
  }

  tbody {
    @extend .govuk-table__body  !optional;
  }

  tr {
    @extend .govuk-table__row  !optional;
  }

  th {
    @extend .govuk-table__header;
  }

  td {
    @extend .govuk-table__cell;
  }

  .lbcamden-link--action {
    text-decoration: none;
  }
}
