/*
  FuelChief look, layer 3 (FC-1; map section 6): the old site's header and footer on master's partials
  (master.cshtml, site/header-menu, site/footer; MB-113 and MB-125 options set in Shared data). Header: fixed, 80 px,
  navy at 50 % over the hero, white menu words, the logo (Site settings › Logo, --fc-logo from FuelChiefLook.cs)
  180 x 53 in place of the site name. Footer: navy, the logo 250 px, light grey links. Hover 0.3 s (top links) as
  measured (motion.md row 15).
*/
/* The old site's page frame: no column limit (bands run the full width, their content between --page-gutter sides), and
   a fixed 80 px header over the top of every page; the first band starts under it when it is a Hero, else below it.
   Master's "Header over the first photo" needs a Hero background photo, which a timed hero (Slides) has not: master
   candidate in qa/build/FC-3.md. */
:root { --site-sticky-header-height: 80px; }
.site-main { max-width: none; margin: 0; padding: 80px 0 0; }
.site-main:has(> .umb-block-list > .hero:first-child) { padding-top: 0; }
.site-header.site-header--menu {
  position: fixed;
  inset: 0 0 auto 0;
  box-sizing: border-box;
  width: 100%;
  max-width: none;
  height: 80px;
  min-height: 80px;
  margin: 0;
  padding: 0 0 0 50px;
  flex-wrap: nowrap;
  align-items: center;
  background: rgba(45, 49, 65, 0.5);
  box-shadow: none;
  color: #eeeeee;
  font-family: var(--font-body);
}
@media (max-width: 575.98px) { .site-header.site-header--menu { padding-left: 15px; } }
.site-header--menu .site-header__name {
  flex: 0 0 auto;
  color: #eeeeee;
  font-size: var(--fc-logo-text, 1.375rem);
  font-weight: 800;
}
.site-header--menu .site-header__name::before {
  content: "";
  display: var(--fc-logo-show, none);
  width: 180px;
  height: 53px;
  background: var(--fc-logo) left center / contain no-repeat;
}
.site-header--menu .site-menu { flex: 1 1 auto; align-self: stretch; align-items: center; justify-content: flex-end; }
.site-header--menu .site-nav__link {
  color: #eeeeee;
  font-size: 0.875rem;
  font-weight: 700;
  transition: color 0.3s;
}
.site-header--menu .site-nav__link:hover { color: var(--fc-red); }

/* Computers (from 1200 px): the menu centred in the bar, the two phone numbers stacked at the right (13 px bold). */
@media (min-width: 1200px) {
  /* the phones take as much room as the logo (50 + 180 + 24 px), so the menu between them is centred in the window */
  .site-header--menu .site-nav { flex: 1 1 auto; display: flex; justify-content: center; }
  .site-header--menu .site-nav__list { gap: 0 26px; }
  .site-header--menu .site-nav__list > .site-nav__item > .site-nav__link { padding-inline: 0; }
  .site-header--menu .site-nav__list > .site-nav__item > .site-nav__toggle { margin: 0; padding: 0 0 0 4px; }
  .site-header--menu .site-nav__toggle svg { width: 9px; height: 9px; }
  .site-header--menu .site-menu__phones { width: 254px; }
}
.site-header--menu .site-menu__phones {
  flex-direction: column;
  flex-wrap: nowrap;
  align-items: flex-end;
  gap: 10px;
  width: 200px;
  padding-right: 25px;
}
.site-header--menu .site-menu__phone {
  min-height: 20px;
  gap: 15px;
  color: #eeeeee;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
}
.site-header--menu .site-menu__phone::before {
  content: "";
  width: 18px;
  height: 18px;
  background: url("/images/site/phone-light-grey.svg") center / contain no-repeat;
}

/* The menu button (below 1200 px): three red bars, 45 x 30, no box; its word stays for screen readers only. */
.site-header--menu .site-menu__toggle {
  min-height: 44px;
  margin-right: 15px;
  padding: 0 0 0 10px;
  border: 0;
  background: transparent;
  color: var(--fc-red);
}
.site-header--menu .site-menu__bars { gap: 7px; width: 45px; }
.site-header--menu .site-menu__bars span { height: 4px; }
.site-header--menu .site-menu__toggle-text {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
  white-space: nowrap;
}

/* Footer (capture: .fct-footer, 1440 px): navy, 100 px above; from 1200 px the link columns five to a row (224 px, 30 px
   apart) over a row of four (logo, Stay up to date, Follow, Acknowledgements), as a 20-track grid; headings 13 px capitals
   weight 800 over a 1 px rule (grey in the top row, red in the second), links 14 px, the acknowledgement 10 px; then a
   black bar with the legal links (12 px capitals) centred, copyright at the left. */
.site-footer {
  background: var(--fc-navy);
  color: #e1dfdf;
  font-family: var(--font-body);
}
.site-footer a { color: #e1dfdf; text-decoration: none; }
.site-footer a:hover { color: var(--c-white); }
.site-footer.site-footer--band { padding: 100px 100px 0; }
.site-footer--band .site-footer__heading,
.site-footer h2, .site-footer h3 {
  margin: 0 0 22px;
  padding-bottom: 18px;
  border-bottom: 1px solid #5c5f6a;
  color: #eeeeee;
  font-size: 0.8125rem;
  font-weight: 800;
  line-height: 1;
  letter-spacing: 0;
  text-transform: uppercase;
}
.site-footer--band .site-footer__column a { min-height: 0; font-size: 0.875rem; line-height: 1.25; }
.site-footer--band .site-footer__column li + li { margin-top: 20px; }
/* FC-FIX3: the items at the old 14 px, so a line is the old 18 px (16 px items made 19 px lines, columns 4 px taller) */
.site-footer--band .site-footer__column li { font-size: 0.875rem; line-height: 1.25; }
.site-footer__text-body { font-size: 0.625rem; line-height: 1.25; }
/* The old sitemap's order (its CSS: order 1-5 by page, Case studies before Company; the HTML has Company first). */
.site-footer.site-footer--band .site-footer__columns > .site-footer__column:nth-child(4) { order: 5; }
.site-footer.site-footer--band .site-footer__columns > .site-footer__column:nth-child(5) { order: 4; }
@media (min-width: 1200px) {
  .site-footer.site-footer--band .site-footer__top {
    display: grid;
    grid-template-columns: repeat(20, minmax(0, 1fr));
    column-gap: 30px;
    row-gap: 50px;
    margin-bottom: 100px;
  }
  .site-footer.site-footer--band .site-footer__columns { display: contents; }
  .site-footer.site-footer--band .site-footer__columns > .site-footer__column { grid-row: 1; grid-column: span 4; }
  .site-footer.site-footer--band .site-footer__brand { grid-row: 2; grid-column: 1 / span 5; }
  .site-footer.site-footer--band .site-footer__newsletter { grid-row: 2; grid-column: 6 / span 5; }
  .site-footer.site-footer--band .site-footer__profiles { grid-row: 2; grid-column: 11 / span 5; }
  .site-footer.site-footer--band .site-footer__text { grid-row: 2; grid-column: 16 / span 5; }
  .site-footer.site-footer--band .site-footer__brand + * , .site-footer--band .site-footer__top > * { margin: 0; }
}
/* 992-1199 px (old: .sitemap three to a row, 30 px apart, over .col-second: the 250 px logo, 44 px, then Stay up to date,
   Follow and Acknowledgements one under the other, 30 px apart; 50 px between the two rows). */
@media (min-width: 992px) and (max-width: 1199.98px) {
  .site-footer.site-footer--band .site-footer__top {
    display: grid;
    grid-template-columns: 250px minmax(0, 1fr);
    column-gap: 44px;
    row-gap: 30px;
    margin-bottom: 100px;
  }
  .site-footer.site-footer--band .site-footer__top > * { margin: 0; }
  .site-footer.site-footer--band .site-footer__columns { grid-column: 1 / -1; grid-row: 1; gap: 30px; margin-bottom: 20px; }
  .site-footer.site-footer--band .site-footer__brand { grid-column: 1; grid-row: 2 / span 3; }
  .site-footer.site-footer--band :is(.site-footer__newsletter, .site-footer__profiles, .site-footer__text) { grid-column: 2; }
  .site-footer.site-footer--band .site-footer__newsletter { grid-row: 2; }
  .site-footer.site-footer--band .site-footer__profiles { grid-row: 3; }
  .site-footer.site-footer--band .site-footer__text { grid-row: 4; }
}
.site-footer--band :is(.site-footer__newsletter, .site-footer__profiles, .site-footer__text) .site-footer__heading { border-bottom-color: var(--fc-red); }
.site-footer__logo-image { width: 246px; max-width: 100%; max-height: none; }
/* The legal row stays master's one wrapping row (MB-78); its full-width line becomes the old black bar behind it. */
.site-footer.site-footer--band { isolation: isolate; }
.site-footer.site-footer--band > .site-footer__bottom::before {
  position: relative;
  z-index: -1;
  flex: 0 0 calc(100% + 200px);
  height: 56px;
  margin: 0 -100px -56px;
  border-top: 0;
  background: #000000;
}
.site-footer.site-footer--band > .site-footer__bottom > *,
.site-footer.site-footer--band:has(> .site-footer__bottom) > p:not(.site-footer__name) {
  margin-block: 0;
  padding-block: 0;
  color: #e1dfdf;
  font-size: 0.75rem;
  line-height: 56px;
  text-transform: uppercase;
}
.site-footer.site-footer--band > .site-footer__bottom a,
.site-footer.site-footer--band:has(> .site-footer__bottom) > p a { font-size: 0.75rem; }
.site-footer.site-footer--band .site-footer__legal ul { margin: 0; padding: 0; }
/* Phones (below 768 px), as the old footer: 50 px / 15 px in, no link columns, then Stay up to date, Acknowledgements and
   the logo last; the legal row centred and wrapping on the black bar. */
@media (max-width: 767.98px) {
  .site-footer.site-footer--band { padding: 50px 15px 0; }
  .site-footer.site-footer--band .site-footer__top { display: flex; flex-direction: column; gap: 30px; }
  .site-footer.site-footer--band .site-footer__columns { display: none; }
  .site-footer.site-footer--band .site-footer__brand { order: 3; }
  .site-footer.site-footer--band > .site-footer__bottom {
    display: flex;
    flex: 0 0 calc(100% + 30px);
    flex-wrap: wrap;
    justify-content: center;
    gap: 0 12px;
    margin: 30px -15px 0;
    padding: 15px 15px 0;
    background: #000000;
  }
  .site-footer.site-footer--band > .site-footer__bottom::before { display: none; }
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p:not(.site-footer__name) {
    flex: 0 0 calc(100% + 30px);
    margin: 0 -15px;
    padding-bottom: 15px;
    background: #000000;
  }
  .site-footer.site-footer--band > .site-footer__bottom > *,
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p:not(.site-footer__name) { line-height: 18px; padding-block: 4px; text-align: center; }
  .site-footer.site-footer--band .site-footer__legal ul { justify-content: center; }
}

/* FC-FIX1 (QC B7, B9, M1, M2): the old footer's words. Link column headings are the old links (HOME, EXPERTISE, ...):
   each column's Heading link (MB-152, M-FIX-3), the heading's look kept (13 px 700 #eee capitals over the rule; the
   column's link sizes don't reach it). Old: links 14 px 500 #eee (-2 %), the second-row headings 700, the
   acknowledgement 10 px 400 #eee. */
.site-footer--band .site-footer__column .site-footer__heading a { font: inherit; line-height: inherit; letter-spacing: inherit; color: inherit; }
.site-footer--band .site-footer__column a { color: #eeeeee; font-weight: 500; letter-spacing: -2%; }
.site-footer--band .site-footer__heading { font-weight: 700; }
.site-footer--band .site-footer__text-body { color: #eeeeee; font-weight: 400; letter-spacing: -2%; }
/* The old bottom line (.copyright): a black bar, 10 px above and below, 40 px in (30 on phones); the legal links centred
   on the first row with "|" between; then the copyright (left), the credit (centre) and Client Login (right; the Footer's
   Legal links first and Extra bottom link, MB-152 M-FIX-5, so the markup has the old order). Below 1200 px the credit has
   its own row; below 992 everything is centred, one per row. 12 px capitals 400, the words #fff and the links #eee, 18 px lines. */
.site-footer.site-footer--band > .site-footer__bottom {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  flex: 0 0 calc(100% + 200px);
  gap: 0;
  margin: 0 -100px;
  padding: 10px 40px;
  border-top: 0;
  background: #000000;
}
/* the site's "Cookie settings" (map difference 3, not on the old site) on the same black, under the old bar, right */
.site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link {
  flex: 0 0 calc(100% + 200px);
  margin: 0 -100px;
  padding: 0 40px 10px;
  background: #000000;
  line-height: 18px;
  text-align: right;
}
.site-footer.site-footer--band .site-footer__legal :is(li, a) { min-height: 0; line-height: 18px; }
.site-footer.site-footer--band > .site-footer__bottom::before { display: none; }
.site-footer.site-footer--band > .site-footer__bottom > * {
  margin: 0;
  padding: 0;
  color: #ffffff;
  font-size: 0.75rem;
  font-weight: 400;
  line-height: 18px;
  text-transform: uppercase;
}
.site-footer.site-footer--band > .site-footer__bottom a { color: #eeeeee; font-size: 0.75rem; font-weight: 400; line-height: 18px; }
.site-footer.site-footer--band > .site-footer__bottom .site-footer__legal { grid-row: 1; grid-column: 1 / -1; }
.site-footer.site-footer--band .site-footer__legal ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 0; }
.site-footer.site-footer--band .site-footer__legal li + li::before { content: "|"; padding: 0 16px; color: #ffffff; }
.site-footer.site-footer--band > .site-footer__bottom .site-footer__name { grid-row: 2; grid-column: 1; text-align: left; }
.site-footer.site-footer--band > .site-footer__bottom .site-footer__credit { grid-row: 2; grid-column: 2; text-align: center; }
.site-footer.site-footer--band > .site-footer__bottom .site-footer__extra { grid-row: 2; grid-column: 3; text-align: right; }
/* FC-FIX3: from 992 px "Cookie settings" sits on the bar's first line, right (empty on the old bar), so the footer keeps
   the old height (it was its own 54 px row under the bar); the bar's first line is 10-28 px from its top. */
@media (min-width: 992px) {
  .site-footer.site-footer--band:has(> .site-footer__bottom) { position: relative; }
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link {
    position: absolute; right: 40px; bottom: 28px; z-index: 1; margin: 0; padding: 0; background: none; line-height: 18px;
  }
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link a { min-height: 0; line-height: 18px; }
}
@media (min-width: 992px) and (max-width: 1199.98px) {
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link { bottom: 46px; }
}
@media (max-width: 1199.98px) {
  .site-footer.site-footer--band > .site-footer__bottom { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .site-footer.site-footer--band > .site-footer__bottom .site-footer__credit { grid-column: 1 / -1; }
  .site-footer.site-footer--band > .site-footer__bottom .site-footer__name { grid-row: 3; }
  .site-footer.site-footer--band > .site-footer__bottom .site-footer__extra { grid-row: 3; grid-column: 2; }
}
@media (max-width: 991.98px) {
  .site-footer.site-footer--band > .site-footer__bottom { grid-template-columns: minmax(0, 1fr); }
  .site-footer.site-footer--band > .site-footer__bottom > * { grid-column: 1 !important; text-align: center !important; }
  .site-footer.site-footer--band > .site-footer__bottom .site-footer__extra { grid-row: 4; }
}
@media (max-width: 767.98px) {
  .site-footer.site-footer--band > .site-footer__bottom { display: grid; flex-basis: calc(100% + 30px); margin: 30px -15px 0; padding: 10px 30px; }
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link { flex-basis: calc(100% + 30px); margin: 0 -15px; padding: 0 30px 10px; text-align: center; }
}

/* FC-FIX1 (QC B10, M11): the drawer below 1200 px as the old .mobile-navigate (computed on the capture with .show): the
   whole window, navy at 50 % over the page blurred 25 px; the items from 140 px down, 40 px in (20 below 576), 32 px
   800 #eee capitals-free (-4 %, 115 % lines; 35 px from 1200, 30 below 992, 26 below 576), 20 px apart, thin white
   arrows; the sub-menus navy at 90 %, also blurred; the logo centred at the top (180 px, 15 px down) and the red ×
   45 x 27 at 28 px from the right (41 px down; 36 below 992, 34 below 576); the phones 13 px 700 #eee capitals with an
   arrow, a 1 px #eee line under each (15 px above and below the words, 25 px right). The bars are red everywhere. */
.site-header .site-menu__toggle .site-menu__bars span { background: var(--fc-red); }
.site-menu--wide-drawer.is-ready.is-drawer .site-nav {
  inset: 0;
  width: 100%;
  padding: 140px 40px 20px;
  background: rgba(45, 49, 65, 0.5);
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
  box-shadow: none;
}
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__list { gap: 20px; }
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__list > .site-nav__item:first-child { margin-top: 18px; }
.site-header--menu .site-menu--wide-drawer.is-ready.is-drawer :is(.site-nav__link, .site-nav__sublink, .site-nav__back) {
  width: auto;
  min-height: 0;
  padding: 0;
  color: #eeeeee;
  font-family: var(--font-body);
  font-size: 2rem;
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -4%;
  text-transform: none;
}
.site-header--menu .site-menu--wide-drawer.is-ready.is-drawer :is(.site-nav__link, .site-nav__sublink, .site-nav__back):hover { color: #ffffff; }
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__item { display: flex; align-items: center; gap: 14px; }
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__toggle { min-height: 0; padding: 0; color: #eeeeee; }
.site-header--menu .site-menu--wide-drawer.is-ready.is-drawer .site-nav__toggle svg { width: 20px; height: 20px; }
.site-menu.site-menu--slide.is-ready.is-drawer .site-nav__item--parent > .site-nav__sub {
  padding: 140px 40px 20px;
  background: rgba(45, 49, 65, 0.9);
  -webkit-backdrop-filter: blur(25px);
  backdrop-filter: blur(25px);
}
.site-menu.site-menu--slide.is-ready.is-drawer .site-nav__sub > li { margin: 0 0 20px; }
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__phones {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0;
  margin: 20px 0 0;
  padding: 0;
}
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__phone {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 15px 25px 15px 0;
  border-bottom: 1px solid #eeeeee;
  color: #eeeeee;
  font-size: 0.8125rem;
  font-weight: 700;
  line-height: 1;
  text-transform: uppercase;
}
.site-menu--wide-drawer.is-ready.is-drawer .site-nav__phone::after {
  content: "";
  width: 18px;
  height: 14px;
  margin-right: -25px;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 18 14' fill='none' stroke='%23eeeeee' stroke-width='2'%3E%3Cpath d='M0 7h16M10 1l6 6-6 6'/%3E%3C/svg%3E") center / contain no-repeat;
}
.site-header--menu:has(.site-menu.is-drawer-open) .site-header__name {
  position: fixed;
  top: 15px;
  left: 50%;
  z-index: 2001;
  transform: translateX(-50%);
}
.site-header--menu .site-menu.is-drawer-open .site-menu__toggle {
  top: 41px;
  right: 28px;
  width: 45px;
  min-height: 27px;
  height: 27px;
  margin: 0;
  padding: 0;
}
.site-header--menu .site-menu.is-drawer-open .site-menu__bars span { height: 5px; }
.site-header--menu .site-menu.is-drawer-open .site-menu__bars span:nth-child(1) { transform: translateY(11px) rotate(45deg); }
.site-header--menu .site-menu.is-drawer-open .site-menu__bars span:nth-child(2) { opacity: 0; }
.site-header--menu .site-menu.is-drawer-open .site-menu__bars span:nth-child(3) { transform: translateY(-11px) rotate(-45deg); }
@media (min-width: 1200px) {
  .site-header--menu .site-menu--wide-drawer.is-ready.is-drawer :is(.site-nav__link, .site-nav__sublink, .site-nav__back) { font-size: 2.1875rem; }
}
@media (max-width: 991.98px) {
  .site-header--menu .site-menu--wide-drawer.is-ready.is-drawer :is(.site-nav__link, .site-nav__sublink, .site-nav__back) { font-size: 1.875rem; }
  .site-header--menu .site-menu.is-drawer-open .site-menu__toggle { top: 36px; right: 26px; }
}
@media (max-width: 575.98px) {
  .site-menu--wide-drawer.is-ready.is-drawer .site-nav,
  .site-menu.site-menu--slide.is-ready.is-drawer .site-nav__item--parent > .site-nav__sub { padding-inline: 20px; }
  .site-header--menu .site-menu--wide-drawer.is-ready.is-drawer :is(.site-nav__link, .site-nav__sublink, .site-nav__back) { font-size: 1.625rem; }
  .site-header--menu .site-menu.is-drawer-open .site-menu__toggle { top: 34px; right: 28px; }
}

/* FC-FIX1 (QC M13, footer spacing): from 1200 px the second row as the old .col-second: the logo column 264 px, then
   Stay up to date, Follow and Acknowledgements in three equal columns 30 px apart (394 / 719 / 1045 px at 1440); the
   link columns keep their own row of five. */
@media (min-width: 1200px) {
  .site-footer.site-footer--band .site-footer__top { grid-template-columns: 264px repeat(3, minmax(0, 1fr)); }
  .site-footer.site-footer--band .site-footer__columns {
    display: grid;
    grid-row: 1;
    grid-column: 1 / -1;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    column-gap: 30px;
  }
  .site-footer.site-footer--band .site-footer__columns > .site-footer__column { grid-row: auto; grid-column: auto; }
  .site-footer.site-footer--band .site-footer__brand { grid-column: 1; }
  .site-footer.site-footer--band .site-footer__newsletter { grid-column: 2; }
  .site-footer.site-footer--band .site-footer__profiles { grid-column: 3; }
  .site-footer.site-footer--band .site-footer__text { grid-column: 4; }
}

/* FC-FIX2 (QC spacing/style rows, footer): as the old .fct-footer (computed on the capture): link rows 17.5 px lines
   (14 px, 125 %) 20 px apart; the Follow icons 32 x 32, 30 px apart, from the column's left edge (the block 87 px, as
   the old .col-socials); the legal links centred; the Subscribe button #eee. */
.site-footer--band .site-footer__columns .site-footer__column li { line-height: 17.5px; }
.site-footer--band .site-footer__profiles-list { gap: 30px; margin: 0; }
.site-footer--band .site-footer__profiles-list > li { display: flex; }
.site-footer--band .site-footer__profiles-list .site-footer__profile { width: 32px; height: 32px; min-width: 0; min-height: 0; }
.site-footer.site-footer--band .site-footer__legal :is(li, a) { text-align: center; }
.site-footer--band .site-footer__newsletter--one-box { --newsletter-button-bg: #eeeeee; }
/* the old email box is 16 px words below 576 px, so 52 px tall there (49.5 px above) */
@media (max-width: 575.98px) {
  .site-footer--band .site-footer__newsletter--one-box .site-form--one-box .site-form__control input[type="email"] { height: 52px; font-size: 1rem; }
}
/* FC-FIX3 (FC-QC2 look, footer below 768 px): as the old phone footer: 25 px above the logo, the logo 250 px wide (the old
   max-width: 250px with the picture at 100 %), 100 px from the logo to the black bar (old container 50 px + footer 50 px). */
@media (max-width: 767.98px) {
  .site-footer.site-footer--band .site-footer__brand { margin-top: -5px; }
  .site-footer.site-footer--band .site-footer__logo-image { width: 250px; }
  .site-footer.site-footer--band > .site-footer__bottom { margin-top: 60px; }
}

/* FC-FIX3 (FC-QC2 header rows): computers (from 1200 px), as the old bar. */
@media (min-width: 1200px) {
  /* the drop-down marker: the old small solid triangle (Bootstrap's caret: 0.3em, 0.255em after the words), no chevron */
  .site-header.site-header--menu .site-menu .site-nav__list > .site-nav__item > .site-nav__toggle { position: relative; min-width: 0; width: auto; gap: 0; margin: 0; padding: 0; color: inherit; }
  .site-header--menu .site-nav__list > .site-nav__item > .site-nav__toggle svg { display: none; }
  .site-header--menu .site-nav__list > .site-nav__item > .site-nav__toggle::after {
    content: ""; display: block; margin-left: 0.255em; border-top: 0.3em solid currentColor; border-right: 0.3em solid transparent;
    border-left: 0.3em solid transparent; font-size: 0.875rem; transform: translateY(1px);
  }
  /* the press area stays 24 px wide (WCAG 2.5.8) around the small marker */
  .site-header--menu .site-nav__list > .site-nav__item > .site-nav__toggle::before { content: ""; position: absolute; inset: 0 -6px 0 -4px; }
  /* the current page is not underlined on the old bar */
  .site-header--menu .site-nav__list > .site-nav__item.is-current > .site-nav__link { text-decoration: none; box-shadow: none; }
  /* FC-FIX6 (FC-QC5 E1): not on the drop-down button (also a .site-nav__link), so the current section keeps its caret, as the old */
  .site-header--menu .site-nav__list > .site-nav__item.is-current > .site-nav__link:not(.site-nav__toggle)::after { content: none; }
  /* the phones: one line each, centred in the old 200 px box at the window's right edge; the box keeps the logo's
     254 px so the menu stays centred in the window */
  .site-header--menu .site-menu__phones { width: 254px; padding: 0 0 0 54px; align-items: center; }
  /* the old menu sits 12 px further right (its words start at 364 px at 1440, as here after this) */
  .site-header--menu .site-nav__list { position: relative; left: 12px; }
}
/* FC-FIX3: the phones at every width they show, as the old buttons: one line each, centred on each other, the first line
   4 px lower (old text lines 17-33 and 47-63 px), 10 px from the icon to the words. */
.site-header--menu .site-menu__phones { align-items: center; }
.site-header--menu .site-menu__phone { white-space: nowrap; gap: 10px; }
.site-header--menu .site-menu__phones > li:first-child .site-menu__phone { position: relative; top: 4px; }
/* below 1200 px the old phone box sits 38 px further right, next to the menu button (words end 76 px from the edge at 1024) */
@media (max-width: 1199.98px) { .site-header--menu .site-menu__phones { position: relative; left: 38px; } }

/* FC-FIX3 (FC-QC2 drawer row): the open sub-menu as the old one: its list 5 % of the window further in than the main items (20 px at 390, 51 px at 1024), 51 px from
   line to line (the old 16 px gap; the items sit in the panel's link list, which the 20 px rule above never reached),
   the first line 20 px lower, and the Back arrow (FC-FIX4, below). */
.site-menu.site-menu--slide.is-ready.is-drawer .site-nav__item--parent > .site-nav__sub { padding-top: 160px; }
.site-menu.site-menu--slide.is-ready.is-drawer .site-nav__sub .site-nav__panel-links { padding-left: 5vw; }
.site-menu.site-menu--slide.is-ready.is-drawer .site-nav__sub .site-nav__panel-links > li { margin: 0 0 21px; }
/* FC-FIX4 (FC-QC3 drawer row): the old Back arrow is Bootstrap Icons' chevron-left glyph (`<i class="bi bi-chevron-left"></i> Back`)
   at the link's own size: 1em box, drawn about 0.8em tall (21 px at 390) with a thin line, 0.125em below the line, the old
   space (15 px at 390) before the word. Master's own chevron path is hidden and the old glyph drawn on its svg (a 1 em box), in the link's colour. */
.site-header--menu .site-menu--wide-drawer.is-ready.is-drawer .site-nav__back { column-gap: 0; }
.site-header--menu .site-menu--wide-drawer.is-ready.is-drawer .site-nav__back svg {
  display: inline-block; flex: none; width: 1em; height: 1em; margin: 0 0.22em 0 0; vertical-align: -0.125em;
  background: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill-rule='evenodd' d='M11.354 1.646a.5.5 0 0 1 0 .708L5.707 8l5.647 5.646a.5.5 0 0 1-.708.708l-6-6a.5.5 0 0 1 0-.708l6-6a.5.5 0 0 1 .708 0z'/%3E%3C/svg%3E") center / 100% 100% no-repeat;
}
.site-header--menu .site-menu--wide-drawer.is-ready.is-drawer .site-nav__back svg path { visibility: hidden; }

/* FC-FIX4 (FC-QC3 footer at 390, all 129 pages): below 576 px the old footer's first row (the site map) is empty, so its
   50 px gap adds to the 50 px padding: 100 px above "Stay up to date"; 52 px from the tagline to the black bar (old
   footer 703 px, new was the same height with the words 50 px higher). */
@media (max-width: 575.98px) {
  .site-footer.site-footer--band { padding-top: 100px; }
  .site-footer.site-footer--band > .site-footer__bottom { margin-top: 11px; }
}
/* "Cookie settings" (map difference 3) below 992 px: on the bar's last line, right, as FC-FIX3 put it on the first line
   from 992 px, so the footer keeps the old height (it was its own 54 px row); in the bar's own links' look (12 px 400 #eee). */
@media (max-width: 991.98px) {
  .site-footer.site-footer--band:has(> .site-footer__bottom) { position: relative; }
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link {
    position: absolute; right: 15px; bottom: 10px; z-index: 1; margin: 0; padding: 0; background: none; line-height: 18px;
  }
  .site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link a { min-height: 0; line-height: 18px; }
}
.site-footer.site-footer--band:has(> .site-footer__bottom) > p.site-consent-link a { font-weight: 400; color: #eeeeee; }
/* FC-FIX4 (FC-QC3 footer): every footer heading as the old .sitemap-header / .col-*-header: a red #da2031 rule with 20 px
   above and below it (the site-map column headings had the grey rule, and the rule sat 2 px high). */
.site-footer--band .site-footer__heading,
.site-footer.site-footer--band :is(h2, h3) { margin-bottom: 20px; padding-bottom: 20px; border-bottom-color: #da2031; }
