/* Production palette: load after vendor themes. Only shared public components
   and the homepage consume these tokens; uploaded media is never recoloured. */
:root {
  --mb-brand-primary: #cc0000;
  --mb-brand-hover: #a80000;
  --mb-brand-ink: #111111;
  --mb-brand-muted: #666666;
  --mb-brand-white: #ffffff;
  --mb-brand-section: #f5f5f5;
  --mb-brand-border: #e5e5e5;
  --mb-brand-footer: #111111;
  --mb-brand-footer-bottom: #080808;
  --mb-brand-footer-copy: #cccccc;
  --mb-brand-soft: #fff3f3;
}

/* Plain page introductions share the existing Deals header's proportions. */
.mb-page-header {
  display: block; clear: both; width: 100%; padding: 38px 0 54px;
  background: var(--mb-brand-white); color: var(--mb-brand-ink); text-align: left;
  border-bottom: 1px solid var(--mb-brand-border);
}
.mb-page-header .mb-page-header-inner {
  box-sizing: border-box; width: 100%; max-width: 1220px; margin: 0 auto; padding: 0 28px;
}
.mb-page-header .mb-page-header-breadcrumb {
  display: flex; flex-wrap: wrap; align-items: center; gap: 13px; margin: 0 0 34px;
  font-size: 12px; line-height: 1.7; color: var(--mb-brand-muted); overflow-wrap: anywhere;
}
.mb-page-header-breadcrumb :is(a,span) { color: var(--mb-brand-muted); }
.mb-page-header-breadcrumb a { text-decoration: none; }
.mb-page-header-breadcrumb a:hover { color: var(--mb-brand-primary); text-decoration: underline; }
.mb-page-header .mb-page-header-chevron { font-size: 18px; line-height: 1; }
.mb-page-header .mb-page-header-kicker {
  display: block; float: none; width: auto; max-width: none; margin: 0; padding: 0;
  color: var(--mb-brand-primary); font-size: 10px; font-weight: 700; letter-spacing: 2px;
  line-height: 1.7; text-transform: uppercase; text-align: left;
}
.mb-page-header-kicker a { color: inherit; text-decoration: none; }
.mb-page-header-kicker a:hover { color: var(--mb-brand-hover); text-decoration: underline; }
.mb-page-header h1 {
  float: none; width: auto; max-width: 850px; margin: 11px 0 14px; padding: 0;
  color: var(--mb-brand-ink); font-family: Raleway,Roboto,"Segoe UI",sans-serif;
  font-size: 38px; font-weight: 700; line-height: 1.25; letter-spacing: -.8px;
  text-align: left; overflow-wrap: anywhere;
}
.mb-page-header .mb-page-header-lede {
  float: none; width: auto; max-width: 720px; margin: 0; padding: 0;
  color: var(--mb-brand-muted); font-size: 14px; line-height: 1.8; text-align: left;
}
.mb-page-header :where(a):focus-visible { outline: 3px solid var(--mb-brand-primary); outline-offset: 4px; }
@media (max-width: 700px) {
  .mb-page-header { padding: 32px 0; }
  .mb-page-header .mb-page-header-inner { padding: 0 16px; }
  .mb-page-header .mb-page-header-breadcrumb { margin-bottom: 26px; font-size: 11px; }
  .mb-page-header h1 { font-size: 29px; letter-spacing: -.4px; }
  .mb-page-header .mb-page-header-lede { font-size: 13px; }
}

.main-header.th-public-header {
  background: var(--mb-brand-white);
  border-bottom: 1px solid var(--mb-brand-border);
  box-shadow: 0 1px 4px #00000005;
}
.th-public-header .th-logo,
.th-public-header .th-account,
.th-public-header .th-account i,
.th-public-header .nav-holder nav li a,
.th-public-header .nav-holder.is-open nav li a {
  color: var(--mb-brand-ink);
}
.th-public-header .th-account { border-left-color: var(--mb-brand-border); }
.th-public-header .nav-holder nav li a:hover,
.th-public-header .nav-holder nav li a:focus-visible,
.th-public-header .nav-holder nav li a.act-link,
.th-public-header .nav-holder.is-open nav li a:hover,
.th-public-header .nav-holder.is-open nav li a:focus-visible,
.th-public-header .th-account:hover,
.th-public-header .th-account:focus-visible { color: var(--mb-brand-primary); }
.th-public-header .add-list {
  background: var(--mb-brand-primary);
  color: var(--mb-brand-white);
}
.th-public-header .add-list:hover,
.th-public-header .add-list:focus-visible { background: var(--mb-brand-hover); color: var(--mb-brand-white); }
.th-public-header .th-menu-toggle {
  color: var(--mb-brand-ink);
  border-color: var(--mb-brand-border);
  background: var(--mb-brand-white);
}
.th-public-header .th-menu-toggle:hover { color: var(--mb-brand-primary); background: var(--mb-brand-soft); }
.th-public-header :where(a,button):focus-visible { outline-color: var(--mb-brand-primary); }
.th-public-header .nav-holder.is-open {
  background: var(--mb-brand-white);
  border-bottom: 1px solid var(--mb-brand-border);
  box-shadow: 0 8px 18px #0000000d;
}
.th-public-footer { background: var(--mb-brand-footer); }
.th-public-footer .th-logo {
  background: var(--mb-brand-white);
  border-radius: 3px;
  padding: 5px 7px;
}
.th-public-footer p,
.th-public-footer .th-footer-grid>div>a:not(.th-logo),
.th-public-footer .th-footer-bottom,
.th-public-footer .th-footer-bottom a { color: var(--mb-brand-footer-copy); }
.th-public-footer h3 { color: var(--mb-brand-white); }
.th-public-footer .th-development-credit { margin-top: 14px; font-size: 12px; }
.th-public-footer .th-development-credit a { color: var(--mb-brand-footer-copy); text-decoration: underline; text-underline-offset: 3px; }
.th-public-footer .sub-footer { background: var(--mb-brand-footer-bottom); border-top-color: #ffffff14; }
.th-public-footer a:hover,
.th-public-footer a:focus-visible { color: var(--mb-brand-primary)!important; }
.th-public-footer a:focus-visible { outline-color: var(--mb-brand-primary); }

/* Native What / Where controls are shared with the directory and legacy form. */
.ww-field label,
.ww-field input,
.ww-option { color: var(--mb-brand-ink)!important; }
.ww-field label span,
.ww-field input::placeholder,
.ww-group,
.ww-option small,
.ww-match-reason { color: var(--mb-brand-muted); }
.ww-field input:focus { outline-color: var(--mb-brand-primary)!important; }
.ww-options { background: var(--mb-brand-white); border-color: var(--mb-brand-border); box-shadow: 0 10px 24px #0000001a; }
.ww-group { background: var(--mb-brand-section); }
.ww-option:hover,
.ww-option[aria-selected=true] { background: var(--mb-brand-soft); color: var(--mb-brand-primary)!important; }
.ww-resolution { border-color: var(--mb-brand-border); border-left-color: var(--mb-brand-primary); }
