@import '/modules/custom/oxfcms/oxfcms_layouts/css/oxfcms_dark_contrast_component.css';
:root {
  --footer--link--text_colour: #49B6ff;
  --footer--outer--padding: var(--oxfcms-padding-large-y) var(--oxfcms-padding-large-x);
  --footer--top--background_colour: #001124;
  --footer--top--text_colour: #ffffff;
  --footer--top--link--font_size: 1.375rem;
  --footer--top--link--font_style: normal;
  --footer--top--link--font_weight: 500;
  --footer--top--link--line_height: 120%;
  --footer--top--list--marker_colour: #49b6ff;
  --footer--top--columns--paragraph--margin: 0 0 10px 0;
  --footer--top--columns--column_count: 3;
  --footer--top--columns--column_gap: 22px;
  --footer--top--primary--button--background_colour: #49B6ff;
  --footer--top--primary--button--border_colour: #49B6ff;
  --footer--top--primary--button--text_colour: #001124;
  --footer--top--primary--link--text_colour: #ffffff;
  --footer--top--primary--icon--text_colour: #49B6ff;
  --footer--top--primary--icon--font_size: 1.375rem;
  --footer--top--primary--button--icon--text_colour: #002147;
  --footer--mid--text_colour: #ffffff;
  --footer--mid--border_colour: #1d42a6;
  --footer--mid--font_size: 2rem;
  --footer--mid--font_style: normal;
  --footer--mid--font_family: 'Noto Serif';
  --footer--mid--font_weight: 400;
  --footer--mid--line_height: 120%;
  --footer--mid--social-media--icon--size: 66px;
  --footer--mid--social-media--icon--background_colour: #49B6ff;
  --footer--mid--social-media--icon--text_colour: #001124;
  --footer--mid--social-media--icon--font_size: 1.875rem;
  --footer--mid--social-media--icon--gap: 15px;
  --footer--bottom--background_colour: #002147;
  --footer--bottom--text_colour: #ffffff;
  --oxfcms-font-family-body: "Roboto", sans-serif;
  --oxfcms-font-size-body: 1.25rem;
  --oxfcms-font-style-body: normal;
  --oxfcms-font-weight-body: 400;
  --oxfcms-line-height-body: 160%;
  --oxfcms-rounded-corners: 6px;
  --oxfcms-gap-large: 22px;
  --oxfcms-gap-medium: 20px;
  --oxfcms-padding-large-y: 110px;
  --oxfcms-padding-large-x: 66px;
  --oxfcms-padding-mid-y: 44px;
  --oxfcms-padding-mid-x: 66px;
  --oxfcms-padding-medium-y: 100px;
  --oxfcms-padding-medium-x: 40px;
  --oxfcms-icon-gap-large: 17px;
  --oxfcms-icon-gap-medium: 10px;
  --oxfcms-font-size-body-medium: 1.25rem;
  --oxfcms-padding-small-y: 90px;
  --oxfcms-padding-small-x: 36px;
  --oxfcms-gap-small: 54px;
  --oxfcms-gap-connect-small: 27px;
  --oxfcms-icon-gap-small: 9px;
  --oxfcms-icon-padding-small: 18px;
  --oxfcms-button-padding: 16px;
  --oxfcms-footer-heading--font_size: 2.125rem;
  --oxfcms-footer-heading--margin: 0 0 33px;
}

.is-mercury-edit-mode {
  .paragraph--type--oxfcms-layout-flexbox {
    min-width: 320px;
    min-height: 30px;
    margin: 0;
    .l__region .paragraph.paragraph--type--oxfcms-icon {
      margin: 0;
      .lpb-controls.js-lpb-ui {
        width: 200px;
        max-width: fit-content;
      }
    }
  }
}

.oxfcms-footer-container {
  background-color: var(--footer--top--background_colour);
  font-family: var(--oxfcms-font-family-body);
  font-size: var(--oxfcms-font-size-body);
  font-style: var(--oxfcms-font-style-body);
  font-weight: var(--oxfcms-font-weight-body);
  line-height: var(--oxfcms-line-height-body);
  .oxfcms-footer {
    padding-top: 0;
    padding-bottom: 0;
    .js-lpb-region{
      max-width: 100%;
      width: 100%;
    }
    .oxfcms-footer-top .oxfcms-text,
    .oxfcms-footer-top .oxfcms-text .field--name-field-wysiwyg-content,
    .oxfcms-footer-bottom .oxfcms-text,
    .oxfcms-footer-bottom .oxfcms-text .field--name-field-wysiwyg-content {
      color: var(--footer--top--text_colour);
      font-family: var(--oxfcms-font-family-body);
      font-size: var(--oxfcms-font-size-body);
      font-style: var(--oxfcms-font-style-body);
      font-weight: var(--oxfcms-font-weight-body);
      line-height: var(--oxfcms-line-height-body);
    }

    .oxfcms-footer-bottom .oxfcms-text .field--name-field-wysiwyg-content p {
      margin: 0;
    }

    .oxfcms-footer-top {
      .footer_primary_logo {
        margin-bottom: 44px;
      }
    }
    .oxfcms-footer-top,
    .oxfcms-footer-mid,
    .oxfcms-footer-bottom {
      display: flex;
      flex-wrap: wrap;
      align-items: flex-start;
      justify-content: space-between;
      gap: var(--footer--top--columns--column_gap);
      padding: var(--footer--outer--padding);
    }

    .oxfcms-footer-top > .oxfcms-footer-column {
      flex: 1;
      min-width: 0;
    }

    .oxfcms-text .field--name-field-wysiwyg-content {
      p {
        margin: var(--footer--top--columns--paragraph--margin);
        a {
          color: var(--footer--link--text_colour);
          font-family: var(--oxfcms-font-family-body);
          font-size: var(--footer--top--link--font_size);
          font-style: var(--footer--top--link--font_style);
          font-weight: var(--footer--top--link--font_weight);
          line-height: var(--footer--top--link--line_height);
          text-decoration-line: underline;
          text-decoration-style: solid;
          text-decoration-skip-ink: none;
          text-decoration-thickness: auto;
          text-underline-offset: auto;
          text-underline-position: from-font;
        }
      }
    }

    .oxfcms-footer-top .oxfcms-text ol li::marker,
    .oxfcms-footer-top .oxfcms-text ul li::marker {
      color: var(--footer--top--list--marker_colour);
    }

    .oxfcms-footer-top .oxfcms-text {
      & ol, & ul {
        li {
          color: var(--footer--top--text_colour);
        }
      }
    }

    .oxfcms-footer-top .oxfcms-footer-primary a {
      color: var(--footer--top--primary--link--text_colour);
    }

    .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-icon-text {
      color: var(--footer--top--text_colour);
      font-size: var(--footer--top--primary--icon--font_size);
    }

    .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-icon-container {
      padding-left: 0;
    }

    .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-icon-icon {
      color: var(--footer--top--primary--icon--text_colour);
      padding-left: 0;
    }

    .oxfcms-footer-top .oxfcms-footer-primary {
      gap: var(--footer--top--columns--column_gap);
      width: 25%;
      .footer_primary_logo,
      .footer_primary_address,
      .footer_primary_icons,
      .footer_primary_button {
        width: 100%;
        padding: 0;
      }
      .footer_primary_logo {
        .oxfcms-image {
          img {
            max-width: 70%;
          }
        }
      }
      .oxfcms-footer-primary-content {
        .footer_primary_address {
        }
        .footer_primary_icons {
          .oxfcms-icon-link {
            text-decoration: none;
            .oxfcms-icon-text {
              text-decoration: underline;
            }
          }
          .oxfcms-icon-container {
            .oxfcms-icon-icon {
              display: inline-block;
              margin-right: 8px;
            }
          }
        }
      }
    }

    .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_icons {
      padding-bottom: var(--oxfcms-gap-large);
      .paragraph--type--oxfcms-icon {
        width: 100%;
      .oxfcms-icon-container {
          padding: 0;
        }
      }
    }

    .oxfcms-footer-mid {
      border-top: 1px solid var(--footer--mid--border_colour);
      padding-top: var(--oxfcms-padding-mid-y);
      padding-bottom: var(--oxfcms-padding-mid-y);
      align-items: center;
      .text-formatted.field--name-field-wysiwyg-content, .oxfcms-heading {
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          color: var(--footer--mid--text_colour);
          margin: 0;
        }
      }
    }

    .oxfcms-footer-top {
      .text-formatted.field--name-field-wysiwyg-content, .oxfcms-heading {
        h1,
        h2,
        h3,
        h4,
        h5,
        h6 {
          color: var(--footer--top--text_colour);
          font-size: var(--oxfcms-footer-heading--font_size);
          margin: var(--oxfcms-footer-heading--margin);
        }
      }
    }

    .oxfcms-footer-mid .oxfcms-footer-connect-prefix {
      flex: 1;
      min-width: 0;
      flex-shrink: 0;
      display: flex;
    }

    .oxfcms-footer-mid .oxfcms-footer-connect {
      flex: 3;
      min-width: 0;
      display: flex;
    }

    .oxfcms-footer-mid .oxfcms-footer-connect-prefix .oxfcms-text .field--name-field-wysiwyg-content {
      color: var(--footer--mid--text_colour);
      font-size: var(--footer--mid--font_size);
      font-style: var(--footer--mid--font_style);
      font-family: var(--footer--mid--font_family);
      font-weight: var(--footer--mid--font_weight);
      line-height: var(--footer--mid--line_height);
    }

    .oxfcms-footer-mid .oxfcms-flexbox-container {
      min-width: 100%;
      .paragraph--type--oxfcms-layout-flexbox {
        min-width: 100%;
      }
    }

    .oxfcms-footer-mid {
      .oxfcms-footer-connect {
        .oxfcms-flex-items {
          gap: var(--footer--mid--social-media--icon--gap);
          .oxfcms-icon-icon {
            width: var(--footer--mid--social-media--icon--size);
            height: var(--footer--mid--social-media--icon--size);
            max-width: var(--footer--mid--social-media--icon--size);
            max-height: var(--footer--mid--social-media--icon--size);
            gap: var(--oxfcms-icon-gap-large);
            border-radius: var(--oxfcms-rounded-corners);
            background-color: var(--footer--mid--social-media--icon--background_colour);
            color: var(--footer--mid--social-media--icon--text_colour);
            padding: 0;
            display: flex;
            justify-content: center;
            align-items: center;
            i {
              font-size: var(--footer--mid--social-media--icon--font_size);
              box-sizing: border-box;
              align-self: center;
              justify-self: center;
            }
          }
        }
      }
    }

    .oxfcms-footer-top .oxfcms-flexbox-container .oxfcms-flex-items img,
    .oxfcms-footer-mid .oxfcms-flexbox-container .oxfcms-flex-items img,
    .oxfcms-footer-bottom .oxfcms-flexbox-container .oxfcms-flex-items img {
      border-radius: 0;
    }

    .oxfcms-footer-mid .oxfcms-footer-connect .fontawesome-icon {
      display: flex;
    }

    .oxfcms-footer-bottom {
      background-color: var(--footer--bottom--background_colour);
      color: var(--footer--bottom--text_colour);
      padding-top: var(--oxfcms-gap-large);
      padding-bottom: var(--oxfcms-gap-large);
    }

    .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-button a,
    .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-button .oxfcms-button a:visited {
      border-radius: var(--oxfcms-rounded-corners);
      background-color: var(--footer--top--primary--button--background_colour);
      border-color: var(--footer--top--primary--button--border_colour);
      color: var(--footer--top--primary--button--text_colour);
    }

    .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-button .oxfcms-icon-icon,
    .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_button .oxfcms-button i {
      color: var(--footer--top--primary--button--icon--text_colour);
    }

    .oxfcms-footer-top .oxfcms-footer-top-container {
      width: 75%;
      display: flex;
      gap: inherit;
    }

    .oxfcms-footer-top .oxfcms-footer-secondary,
    .oxfcms-footer-top .oxfcms-footer-tertiary,
    .oxfcms-footer-top .oxfcms-footer-quaternary {
      flex: 1;
    }
  }
}
@media (width < 1280px) {
  .oxfcms-footer-container {
    --oxfcms-footer-heading--font_size: 1.875rem;
    --footer--mid--social-media--icon--font_size: 1.75rem;
    --footer--mid--social-media--icon--size: 60px;
    .oxfcms-footer-top,
    .oxfcms-footer-mid,
    .oxfcms-footer-bottom {
      padding: var(--oxfcms-padding-medium-y) var(--oxfcms-padding-medium-x);
      gap: var(--oxfcms-gap-medium);
    }

    .oxfcms-footer-container {
      font-size: var(--oxfcms-font-size-body-medium);
    }

    .oxfcms-footer-mid {
      padding: var(--oxfcms-padding-medium-x);
    }

    .oxfcms-footer-bottom {
      padding-top: var(--oxfcms-gap-medium);
      padding-bottom: var(--oxfcms-gap-medium);
    }

    .oxfcms-footer-mid .oxfcms-footer-connect .oxfcms-icon-icon {
      padding: 0;
      gap: var(--oxfcms-icon-gap-medium);
    }

    .oxfcms-footer-container{
      .oxfcms-footer {
        .oxfcms-footer-top {
          .text-formatted.field--name-field-wysiwyg-content, .oxfcms-heading {
            h1,
            h2,
            h3,
            h4,
            h5,
            h6 {
              font-size: 1.875rem;
            }
          }
        }

        .oxfcms-footer-top .oxfcms-text .field--name-field-wysiwyg-content,
        .oxfcms-text .field--name-field-wysiwyg-content a,
        .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-icon-text {
          font-size: 1.25rem;
        }
      }
    }
  }
}
@media (width < 961px) {
  .oxfcms-footer-container {
    --footer--top--columns--column_count: 2;
    --footer--mid--social-media--icon--gap: 14px;
    --footer--mid--social-media--icon--font_size: 1.625rem;
    --footer--mid--social-media--icon--size: 54px;
    .oxfcms-footer {
      .oxfcms-footer-top {
        row-gap: 54px;
        .oxfcms-footer-primary {
          flex-basis: 100%;
          width: 100%;
          display: flex;
          .footer_primary_logo {
            flex-basis: calc(100% / var(--footer--top--columns--column_count) - var(--footer--top--columns--column_gap) / var(--footer--top--columns--column_count) * (var(--footer--top--columns--column_count) - 1))
          }
          .oxfcms-footer-primary-content {
            flex-basis: calc(100% / var(--footer--top--columns--column_count) - var(--footer--top--columns--column_gap) / var(--footer--top--columns--column_count) * (var(--footer--top--columns--column_count) - 1))
          }
        }
        .oxfcms-footer-top-container {
          flex-basis: 100%;
          width: 100%;
          flex-wrap: wrap;
          .oxfcms-footer-column {
            flex-basis: calc(100% / var(--footer--top--columns--column_count) - var(--footer--top--columns--column_gap) / var(--footer--top--columns--column_count) * (var(--footer--top--columns--column_count) - 1))
          }
        }
      }
      .oxfcms-footer-mid {
        .oxfcms-footer-connect-prefix {
          width: 100%;
        }
        .oxfcms-footer-connect {
          width: 100%;
        }
      }
    }
  }
}
@media (width < 768px) {
  .oxfcms-footer {
    --footer--top--link--font_size: 1.125rem;
    --oxfcms-font-size-body: 1rem;
  }

  .oxfcms-footer-top {
    flex-direction: column;
  }

  .oxfcms-footer-top .oxfcms-footer-primary {
    display: flex;
  }

  .oxfcms-footer-top .oxfcms-footer-primary,
  .oxfcms-footer-top .oxfcms-footer-top-container {
    width: 100%
  }

  .oxfcms-footer-top .oxfcms-footer-top-container {
    flex-wrap: wrap;
    column-gap: 0;
  }

  .oxfcms-footer-top .oxfcms-footer-secondary,
  .oxfcms-footer-top .oxfcms-footer-tertiary,
  .oxfcms-footer-top .oxfcms-footer-quaternary {
    flex: 0 0 50%;
  }

  .oxfcms-footer-top .oxfcms-footer-quaternary {
    order: 3;
  }

  .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_logo {
    flex: 0 0 50%;
  }

  .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-footer-primary-content {
    flex: 0 0 50%;
    gap: var(--oxfcms-gap-large);
  }

  .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_address,
  .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_icons,
  .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_button {
    display: flex;
    flex-direction: column;
  }

  .oxfcms-footer-top .oxfcms-footer-primary .footer_primary_address p {
    margin-top: 0;
  }

  .oxfcms-footer-mid {
    align-items: flex-start;
    flex-direction: column;
    padding: var(--oxfcms-padding-small-x);
  }

  .oxfcms-footer-top,
  .oxfcms-footer-bottom {
    padding: var(--oxfcms-padding-small-y) var(--oxfcms-padding-small-x);
    gap: var(--oxfcms-gap-small);
  }

  .oxfcms-footer-bottom {
    padding-top: var(--oxfcms-icon-padding-small);
    padding-bottom: var(--oxfcms-icon-padding-small);
  }

  .oxfcms-footer-mid .oxfcms-footer-connect {
    gap: var(--oxfcms-gap-connect-small);
    margin-right: -14px;
  }

  .oxfcms-footer-mid .oxfcms-footer-connect .oxfcms-icon-icon {
    padding: 0;
    gap: var(--oxfcms-icon-gap-small);
  }

  .oxfcms-footer-top .oxfcms-footer-column.is-empty {
    display: none;
    margin: 0 !important;
    padding: 0 !important;
  }

  .oxfcms-footer-mid .oxfcms-footer-connect .oxfcms-icon .oxfcms-icon-container {
    padding-left: 0;
  }

  .oxfcms-footer-container{
    --oxfcms-footer-heading--font_size: 1.5rem;
    .oxfcms-footer {
      .oxfcms-footer-top .oxfcms-text .field--name-field-wysiwyg-content,
      .oxfcms-text .field--name-field-wysiwyg-content a,
      .oxfcms-footer-top .oxfcms-footer-primary .oxfcms-icon-text {
        font-size: 1.125rem;
      }
    }
  }

}
@media (width < 481px) {
  .oxfcms-footer-container {
    --footer--outer--padding: 80px 24px;
    --footer--top--columns--column_count: 1;
    --oxfcms-footer-heading--margin: 0 0 24px;
    --footer--top--columns--paragraph--margin: 0 0 5px;
    --footer--mid--social-media--icon--font_size: 1.5rem;
    --footer--mid--social-media--icon--size: 50px;
    .oxfcms-footer {
      .oxfcms-footer-top {
        .oxfcms-footer-primary {
          flex-wrap: wrap;
          gap: 32px;
          .footer_primary_logo {
            flex-basis: 100%;
          }
          .oxfcms-footer-primary-content {
            flex-basis: 100%;
            .footer_primary_button {
              .oxfcms-button {
                a {
                  width: 100%;
                }
              }
            }
          }
        }
      }
      .oxfcms-footer-mid {
        .oxfcms-footer-connect {
          .oxfcms-flex-items {
            align-items: flex-start;
            justify-content: flex-start;
            gap: 8px;
            .oxfcms-icon-container {
              padding: 0;
            }
          }
        }
      }
    }
  }
}

/* Hide only the first .lpb-btn--add inside a region that already contains components */
.oxfcms-footer-container .oxfcms-footer-top .footer_primary_logo.js-lpb-region:has(.js-lpb-component) .lpb-btn--add,
.oxfcms-footer-container .oxfcms-footer-mid .js-lpb-region:has(.js-lpb-component) .lpb-btn--add,
.oxfcms-footer-container .oxfcms-footer-bottom .js-lpb-region:has(.js-lpb-component) .lpb-btn--add{
  display: none !important;
}
/* Show only nested .lpb-btn--add buttons inside .js-lpb-region within .js-lpb-component in .oxfcms-footer-mid */
.oxfcms-footer-container .oxfcms-footer-mid .js-lpb-region:has(.js-lpb-component) .js-lpb-component .js-lpb-region .lpb-btn--add {
  display: block !important;
}
