/* ==========================================================================
   Make My Floors: global styles (loaded once, cached on every page)

   COLOURS ARE FIXED. Change them only here, in :root below.
   Light palette taken from the logo:
     walnut #76513B (brand)   oak #C89A61 (accent)
   Link and button colours are locked with !important at the bottom of this file,
   so neither the parent theme nor an Elementor "Site Settings" kit can recolour them.
   ========================================================================== */

:root {
  --walnut: #76513b;
  --walnut-hover: #8a6048;   /* lighter walnut for hover */
  --walnut-deep: #5a3d2b;    /* focus rings */
  --oak: #c89a61;
  --oak-hover: #d9b27f;      /* lighter oak for hover */
  --oak-text: #8a5c28;       /* oak that passes contrast for small text */
  --cream: #fbf7f1;
  --linen: #f2e9dc;
  --sand: #e6d6bf;
  --white: #ffffff;
  --ink: #2b1e16;
  --muted: #6a5446;
  --error: #9e2f22;
  --success: #2f6b45;

  --font-display: "Fraunces", Georgia, "Times New Roman", serif;
  --font-sans: "DM Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --ease: cubic-bezier(.2, .7, .2, 1);
  --shadow: 0 18px 40px rgba(43, 30, 22, .14);
}

/* ---------- Base ---------- */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 130px; background: var(--cream); }
body.mmf { margin: 0; background: var(--cream); color: var(--ink); font: 400 16px/26px var(--font-sans); -webkit-font-smoothing: antialiased; }
body.mmf::before { content: ""; position: fixed; inset: 0 0 auto; height: env(safe-area-inset-top, 0px); background: var(--cream); z-index: 150; }
[hidden] { display: none !important; }
.mmf img { max-width: 100%; }
.mmf :focus-visible { outline: 2px solid var(--walnut-deep); outline-offset: 3px; }
.wrap { width: min(1280px, 100% - 64px); margin-inline: auto; }
.sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.skip { position: absolute; left: -999px; top: 8px; background: var(--walnut); padding: 8px 16px; border-radius: 999px; z-index: 400; }
.skip:focus { left: 8px; }
.eb { font: 700 11px/16px var(--font-sans); letter-spacing: .2em; text-transform: uppercase; color: var(--oak-text); margin: 0; }
.mmf em { font-style: italic; }

/* ---------- Buttons ---------- */
.btn { display: inline-flex; align-items: center; gap: 10px; font: 600 14px/20px var(--font-sans); letter-spacing: .04em; border-radius: 999px; padding: 13px 26px; border: 1.5px solid transparent; cursor: pointer; text-decoration: none; transition: background-color .25s, border-color .25s, transform .25s var(--ease); }
.btn:hover { transform: translateY(-2px); }
.btn[disabled] { opacity: .65; cursor: progress; }
.btn-acc { background: var(--oak); }
.btn-pri { background: var(--walnut); }
.btn-out { background: transparent; border-color: var(--walnut); }
.btn-ghost { background: transparent; border-color: var(--cream); }

/* ---------- Top bar ---------- */
.topbar { background: var(--linen); border-bottom: 1px solid var(--sand); max-height: 44px; overflow: hidden; transition: max-height .35s var(--ease), opacity .25s, border-color .25s; }
.hdr.solid .topbar { max-height: 0; opacity: 0; border-color: transparent; }
.tb-in { display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 40px; }
.tb-in ul { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 22px; }
.tb-in a { font: 500 12.5px/20px var(--font-sans); letter-spacing: .02em; display: inline-flex; align-items: center; gap: 8px; white-space: nowrap; text-decoration: none; }
.tb-in svg { width: 15px; height: 15px; flex: none; fill: none; stroke: var(--walnut); stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.tb-in .tb-s { gap: 6px; }
.tb-in .tb-s a { width: 28px; height: 28px; justify-content: center; border: 1px solid var(--sand); border-radius: 50%; background: var(--cream); transition: background-color .2s, border-color .2s; }
.tb-in .tb-s a:hover { border-color: var(--walnut); }
.tb-in .tb-s a:hover svg { stroke: var(--cream); }
.tb-in .tb-s svg { width: 13px; height: 13px; }

/* ---------- Header ---------- */
.hdr { position: sticky; top: env(safe-area-inset-top, 0px); z-index: 100; background: rgba(251, 247, 241, .97); -webkit-backdrop-filter: blur(10px); backdrop-filter: blur(10px); border-bottom: 1px solid var(--sand); transition: box-shadow .3s; }
.hdr.solid { box-shadow: 0 6px 24px rgba(43, 30, 22, .08); }
.admin-bar .hdr { top: calc(32px + env(safe-area-inset-top, 0px)); }
@media (max-width: 782px) { .admin-bar .hdr { top: calc(46px + env(safe-area-inset-top, 0px)); } }
.hdr-in { display: flex; align-items: center; gap: 24px; min-height: 88px; transition: min-height .3s; }
.hdr.solid .hdr-in { min-height: 72px; }
.logo { display: block; flex: none; }
.logo img { height: 68px; width: auto; display: block; transition: height .3s; }
.hdr.solid .logo img { height: 54px; }
.nav { margin-inline: auto; }
.nav > ul { list-style: none; margin: 0; padding: 0; display: flex; gap: 4px; align-items: center; }
.nav a.l, .nav button.mm { font: 600 13px/20px var(--font-sans); letter-spacing: .1em; text-transform: uppercase; background: none; border: 0; padding: 12px 14px; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; position: relative; text-decoration: none; border-radius: 0; box-shadow: none; }
.nav a.l::after, .nav button.mm::after { content: ""; position: absolute; left: 14px; right: 14px; bottom: 6px; height: 2px; background: var(--oak); transform: scaleX(0); transform-origin: left; transition: transform .35s var(--ease); }
.nav a.l:hover::after, .nav a.l[aria-current]::after, .nav button.mm:hover::after, .nav button.mm[aria-expanded="true"]::after { transform: scaleX(1); }
.nav .chev { width: 10px; height: 10px; stroke: currentColor; fill: none; stroke-width: 2; transition: transform .25s; }
.nav button[aria-expanded="true"] .chev { transform: rotate(180deg); }
.tel { font: 600 13px/20px var(--font-sans); letter-spacing: .06em; white-space: nowrap; text-decoration: none; }
.burger { display: none; background: none; border: 1.5px solid var(--walnut); border-radius: 999px; width: 46px; height: 46px; cursor: pointer; align-items: center; justify-content: center; padding: 0; box-shadow: none; }
.burger svg { width: 20px; height: 20px; stroke: currentColor; stroke-width: 1.8; fill: none; stroke-linecap: round; }

/* Simple dropdown (menu items with children but no mega menu) */
.nav .has-dd { position: relative; }
.nav .dd { position: absolute; left: 0; top: 100%; min-width: 230px; margin: 0; padding: 8px; list-style: none; background: var(--cream); border: 1px solid var(--sand); border-radius: 14px; opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .25s, transform .25s var(--ease), visibility 0s .25s; box-shadow: var(--shadow); }
.nav .has-dd:hover .dd, .nav .has-dd:focus-within .dd { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.nav .dd a { display: block; padding: 10px 14px; border-radius: 10px; font-size: 14px; text-decoration: none; }
.nav .dd a:hover { background: var(--linen); }

/* ---------- Mega menu ---------- */
.mega { position: absolute; left: 0; right: 0; top: 100%; background: var(--cream); border-top: 1px solid var(--sand); border-bottom: 3px solid var(--oak); box-shadow: var(--shadow); }
.mega-in { padding-block: 32px; }
.mega-view { display: grid; grid-template-columns: 240px 1fr; gap: 40px; animation: megaIn .5s var(--ease); }
.mega-view[hidden] { display: none; }
@keyframes megaIn { from { opacity: 0; transform: translateY(10px); } to { opacity: 1; transform: none; } }
.mega-back { display: inline-flex; align-items: center; gap: 8px; font: 600 12px/18px var(--font-sans); letter-spacing: .12em; text-transform: uppercase; background: none; border: 1.5px solid var(--walnut); border-radius: 999px; padding: 8px 16px; cursor: pointer; margin-bottom: 18px; box-shadow: none; }
.mega-view .mg { grid-template-columns: repeat(var(--cols, 5), minmax(0, 1fr)); align-content: start; }
.mg-dense { gap: 10px; }
.mg-dense .mi-img { aspect-ratio: 1 / 1; }
.mg-dense .mi b { font-size: 13.5px; line-height: 17px; padding: 8px 10px 12px; }
.mega-alt { display: inline-block; margin-top: 14px; font: 600 14px/20px var(--font-sans); text-decoration: underline; text-underline-offset: 4px; }
.dv .mega-alt { display: block; margin: 14px 0 0; text-align: center; }
.mg-ranges .mi b { font-size: 16px; line-height: 20px; padding-bottom: 8px; }
.mega-intro h3 { font: 500 28px/1.2 var(--font-display); margin: 12px 0; }
.mega-intro p.d { font-size: 14px; line-height: 22px; color: var(--muted); margin: 0 0 20px; }
.mg { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 14px; }

/* Image tile (mega menu + mobile screens): photo on top, name below on a light card */
.mi { display: flex; flex-direction: column; background: var(--white); border: 1px solid var(--sand); border-radius: 14px; overflow: hidden; text-decoration: none; transition: transform .45s var(--ease), box-shadow .45s, border-color .3s; }
.mi:hover { transform: translateY(-5px); box-shadow: var(--shadow); border-color: var(--walnut); }
.mi-img { display: block; aspect-ratio: 4 / 3; overflow: hidden; background: var(--sand); }
.mi-img img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s var(--ease); }
.mi:hover .mi-img img { transform: scale(1.07); }
.mi b { display: block; padding: 12px 14px 14px; font: 500 17px/22px var(--font-display); }
.mi small { display: block; margin-top: -8px; padding: 0 14px 14px; font: 700 11px/16px var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--oak-text); }
.mi small.more { color: var(--walnut); }
body.mmf .mi small { color: var(--oak-text) !important; }
body.mmf .mi small.more { color: var(--walnut) !important; }
.mi:hover small.more { text-decoration: underline; }

/* ---------- Mobile menu: drawer + full-screen tile screens ---------- */
.drawer { display: none; }
.dv { display: none; }
@media (max-width: 1100px) {
  .nav, .tel, .hdr .nav-quote { display: none; }
  .burger { display: inline-flex; margin-left: auto; }
  .logo img { height: 58px; } .hdr.solid .logo img { height: 50px; }
  .hdr-in { min-height: 76px; }
  .drawer { display: block; position: fixed; inset: 0; z-index: 200; background: var(--cream); padding: calc(env(safe-area-inset-top, 0px) + 18px) 28px 40px; overflow: auto; transform: translateY(-100%); visibility: hidden; transition: transform .6s var(--ease), visibility 0s .6s; }
  .drawer.open { transform: none; visibility: visible; transition: transform .6s var(--ease); }
  .drawer-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 28px; }
  .drawer-top img { height: 58px; width: auto; }
  .drawer > ul { list-style: none; margin: 0; padding: 0; }
  .drawer > ul > li { border-bottom: 1px solid var(--sand); }
  .drawer > ul > li > a, .drawer > ul > li > button { display: flex; width: 100%; justify-content: space-between; align-items: center; font: 500 30px/38px var(--font-display); background: none; border: 0; padding: 14px 0; text-decoration: none; cursor: pointer; text-align: left; border-radius: 0; box-shadow: none; }
  .drawer > .btn { margin-top: 28px; width: 100%; justify-content: center; }

  .dv { display: block; position: fixed; inset: 0; z-index: 5; background: var(--cream); padding: calc(env(safe-area-inset-top, 0px) + 14px) 20px calc(32px + env(safe-area-inset-bottom, 0px)); overflow: auto; transform: translateX(100%); visibility: hidden; transition: transform .55s var(--ease), visibility 0s .55s; }
  .dv.open { transform: none; visibility: visible; transition: transform .55s var(--ease); }
  .dv-top { display: flex; justify-content: space-between; align-items: center; margin-bottom: 22px; }
  .dv .back { font: 600 13px/20px var(--font-sans); letter-spacing: .14em; text-transform: uppercase; background: none; border: 1.5px solid var(--walnut); border-radius: 999px; padding: 11px 20px; cursor: pointer; display: inline-flex; gap: 8px; align-items: center; box-shadow: none; }
  .dv h2 { font: 500 clamp(32px, 9vw, 44px)/1.08 var(--font-display); letter-spacing: -.015em; margin: 10px 0 0; }
  .dv h2 em { color: var(--oak-text); }
  .dv-sub { margin: 12px 0 0; font-size: 15px; line-height: 24px; }
  .dtiles { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; margin: 24px 0; }
  .dtiles .mi:last-child:nth-child(odd) { grid-column: span 2; }
  .dtiles .mi:last-child:nth-child(odd) .mi-img { aspect-ratio: 16 / 9; }
  .dtiles .mi b { font-size: 18px; }
  .dv.open .mi { animation: tileIn .7s var(--ease) backwards; animation-delay: calc(.12s + var(--k, 0) * .07s); }
  .dv .btn { width: 100%; justify-content: center; }
  .dv-list { list-style: none; margin: 24px 0; padding: 0; }
  .dv-list li { border-bottom: 1px solid var(--sand); }
  .dv-list a { display: block; padding: 14px 0; font: 500 24px/30px var(--font-display); text-decoration: none; }
}
@keyframes tileIn { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: none; } }

/* ---------- Page structure ---------- */
.mmf-main { display: block; width: 100%; max-width: none; margin: 0; padding: 0; }
.sec { padding-block: clamp(56px, 8vw, 96px); background: var(--cream); }
.sec.alt { background: var(--linen); }
.sec-head { max-width: 760px; margin-bottom: 48px; }
.sec-head h2, .sec h2 { font: 500 clamp(30px, 3.8vw, 46px)/1.12 var(--font-display); letter-spacing: -.015em; margin: 12px 0 0; }
.sec h2 em { color: var(--oak-text); }
.lead { font-size: 17px; line-height: 28px; color: var(--muted); margin: 16px 0 0; max-width: 62ch; }

.page-hero { background: var(--linen); border-bottom: 1px solid var(--sand); padding: 44px 0 52px; }
.page-hero h1 { font: 500 clamp(34px, 5vw, 56px)/1.06 var(--font-display); letter-spacing: -.02em; margin: 14px 0 0; max-width: 20ch; }
.ph-lead { font-size: 18px; line-height: 29px; max-width: 62ch; color: var(--muted); margin: 18px 0 0; }
.crumbs { font-size: 13px; line-height: 20px; color: var(--muted); }
.crumbs a { text-decoration: none; }

.entry { max-width: 820px; }
.entry h2 { font: 500 clamp(28px, 3.2vw, 38px)/1.15 var(--font-display); margin: 44px 0 14px; }
.entry h3 { font: 500 24px/1.25 var(--font-display); margin: 32px 0 10px; }
.entry p, .entry li { font-size: 17px; line-height: 29px; }
.entry p { margin: 0 0 18px; }
.entry ul, .entry ol { margin: 0 0 22px; padding-left: 22px; }
.entry img { border-radius: 16px; height: auto; }
.entry table { width: 100%; border-collapse: collapse; margin: 0 0 24px; font-size: 15px; }
.entry th, .entry td { border: 1px solid var(--sand); padding: 10px 14px; text-align: left; }
.entry th { background: var(--linen); }

.cta-band { background: var(--walnut); color: var(--cream); padding-block: clamp(48px, 7vw, 80px); }
.cta-band .wrap { display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.cta-band .eb { color: #f0d9b8; }
.cta-band h2 { font: 500 clamp(30px, 4vw, 46px)/1.1 var(--font-display); letter-spacing: -.015em; margin: 10px 0 0; color: var(--cream); }
.cta-band h2 em { color: #f0d9b8; }
.cta-actions { display: flex; gap: 12px; flex-wrap: wrap; }

/* ---------- Cards (blog index, range cards) ---------- */
.rcards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.rc { background: var(--white); border: 1px solid var(--sand); border-radius: 18px; overflow: hidden; display: flex; flex-direction: column; transition: transform .4s var(--ease), box-shadow .4s; }
.rc:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.rc .ph { display: block; height: 190px; overflow: hidden; background: var(--sand); }
.rc .ph img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s var(--ease); }
.rc:hover .ph img { transform: scale(1.06); }
.rc .bd { padding: 24px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.rc h3 { font: 500 24px/1.2 var(--font-display); margin: 0; }
.rc h3 a { text-decoration: none; }
.rc p { margin: 0; font-size: 15px; line-height: 24px; color: var(--muted); }
.rc p.eb2 { font: 700 11px/16px var(--font-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--oak-text); }
.tl { font-weight: 600; font-size: 15px; text-decoration: underline; text-underline-offset: 4px; margin-top: auto; padding-top: 10px; }
.pager { margin-top: 40px; }
.pager .nav-links { display: flex; gap: 8px; flex-wrap: wrap; }
.pager a, .pager span { padding: 8px 16px; border: 1px solid var(--sand); border-radius: 999px; text-decoration: none; }
.pager .current { background: var(--walnut); border-color: var(--walnut); }
.chip-row { display: flex; gap: 12px; flex-wrap: wrap; }

/* ---------- Forms (shared by every lead form) ---------- */
.fd { margin-bottom: 16px; }
.fd label { display: block; font: 600 13px/20px var(--font-sans); letter-spacing: .04em; margin-bottom: 6px; }
.fd input, .fd select, .fd textarea { width: 100%; font: 400 16px/24px var(--font-sans); color: var(--ink); background: var(--white); border: 1.5px solid var(--walnut); border-radius: 12px; padding: 12px 14px; }
.fd textarea { min-height: 92px; resize: vertical; }
.fd .err { display: none; color: var(--error); font-size: 13px; line-height: 18px; margin-top: 4px; }
.fd.bad input, .fd.bad select { border-color: var(--error); }
.fd.bad .err { display: block; }
.r2 { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.hp { position: absolute; left: -9999px; width: 1px; height: 1px; overflow: hidden; }
.form-msg { margin: 12px 0 0; font-size: 14px; line-height: 20px; color: var(--error); }
.qf { background: var(--linen); border: 1px solid var(--sand); border-radius: 22px; padding: 36px; }
.qf .ok { display: none; text-align: center; padding: 36px 0; }
.qf.done form { display: none; }
.qf.done .ok { display: block; }
.faq details { border-bottom: 1px solid var(--sand); padding: 18px 0; }
.faq summary { list-style: none; cursor: pointer; font: 500 22px/30px var(--font-display); display: flex; justify-content: space-between; gap: 16px; align-items: center; }
.faq summary::-webkit-details-marker { display: none; }
.faq summary::after { content: "+"; font: 400 28px/1 var(--font-sans); color: var(--walnut); flex: none; }
.faq details[open] summary::after { content: "–"; }
.faq details p { margin: 12px 0 0; color: var(--muted); max-width: 70ch; }

/* ---------- Footer (light) ---------- */
.mmf-footer { --ink: #000; --muted: #000; --oak-text: #6e4519; color: #000; display: block; width: 100%; max-width: none; margin: 0; background: var(--linen); border-top: 4px solid var(--oak); padding-top: clamp(56px, 8vw, 96px); }
.mmf-footer .big { display: flex; justify-content: space-between; align-items: flex-end; gap: 40px; flex-wrap: wrap; padding-bottom: 48px; border-bottom: 1px solid var(--sand); }
.mmf-footer .big h2 { font: 500 clamp(38px, 6vw, 84px)/.98 var(--font-display); letter-spacing: -.025em; max-width: 11ch; margin: 0; }
.mmf-footer .big h2 em { color: var(--oak-text); }
.mmf-footer .big-contact { display: flex; flex-direction: column; align-items: flex-end; gap: 16px; }
.mmf-footer .mail, .mmf-footer .tel-big { font: 500 clamp(20px, 2.4vw, 32px)/1.2 var(--font-display); text-decoration: none; border-bottom: 2px solid var(--oak); padding-bottom: 6px; overflow-wrap: anywhere; }
.fg { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr 1.3fr; gap: 36px; padding-block: 48px; }
.fg img { height: 100px; width: auto; margin-bottom: 16px; display: block; }
.fg p { font-size: 14px; line-height: 22px; margin: 0 0 14px; max-width: 34ch; color: var(--muted); }
.fg h4 { font: 700 11px/16px var(--font-sans); letter-spacing: .2em; text-transform: uppercase; color: var(--oak-text); margin: 0 0 16px; }
.fg ul { list-style: none; margin: 0; padding: 0; display: grid; gap: 10px; font-size: 14px; }
.fg a { text-decoration: none; }
.fg a:hover { text-decoration: underline; }
.soc, .fg .soc { display: flex; flex-wrap: wrap; gap: 8px; margin: 18px 0 0; padding: 0; list-style: none; }
.soc a { width: 38px; height: 38px; border: 1px solid var(--sand); border-radius: 50%; display: grid; place-items: center; background: var(--cream); transition: background-color .2s, border-color .2s; text-decoration: none; }
.soc a:hover { border-color: var(--walnut); text-decoration: none; }
.soc svg { width: 16px; height: 16px; fill: none; stroke: var(--walnut); stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.soc a:hover svg { stroke: var(--cream); }
.fb { border-top: 1px solid var(--sand); padding-block: 22px calc(22px + env(safe-area-inset-bottom, 0px)); font-size: 13px; color: var(--muted); display: flex; justify-content: space-between; gap: 8px 12px; flex-wrap: wrap; }
.fb .reg { flex-basis: 100%; }

/* Mobile call button (mobile only; hidden on tablet and desktop) */
.callfab { display: none; }
@media (max-width: 680px) {
  .callfab { display: flex; position: fixed; right: 16px; bottom: calc(16px + env(safe-area-inset-bottom, 0px)); z-index: 90; width: 56px; height: 56px; border-radius: 50%; align-items: center; justify-content: center; box-shadow: 0 10px 28px rgba(43, 30, 22, .28); text-decoration: none; }
  .callfab svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .wrap { width: min(1280px, 100% - 40px); }
  .rcards { grid-template-columns: 1fr 1fr; }
  .fg { grid-template-columns: 1fr 1fr; }
  .mmf-footer .big-contact { align-items: flex-start; }
  .cta-band .wrap { align-items: flex-start; }
  .tb-addr { display: none; }
}
@media (max-width: 640px) {
  .tb-in .tb-s { display: none; }
  .tb-in { justify-content: center; }
  .tb-in ul { gap: 16px; }
  .rcards, .fg, .r2 { grid-template-columns: 1fr; }
  .qf { padding: 24px; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; animation: none !important; scroll-behavior: auto !important; } }

/* ==========================================================================
   COLOUR LOCK
   Every link and button colour is set here with !important. The parent theme
   (Hello Elementor turns links dark blue on hover) and Elementor's kit settings
   cannot override these. To change a colour, edit it here once.
   ========================================================================== */
/* default links on light grounds */
body.mmf a { color: var(--walnut) !important; }
body.mmf a:hover, body.mmf a:active, body.mmf a:focus { color: var(--walnut-hover) !important; }

/* ink links: navigation, top bar, footer, tiles, headings */
body.mmf .tb-in a, body.mmf .nav a.l, body.mmf .nav .dd a, body.mmf .tel,
body.mmf .fg a, body.mmf .mi, body.mmf .mi b, body.mmf .crumbs a, body.mmf .rc h3 a,
body.mmf .mmf-footer .mail, body.mmf .mmf-footer .tel-big, body.mmf .drawer > ul > li > a, body.mmf .dv-list a,
body.mmf .logo, body.mmf .pager a { color: var(--ink) !important; }
body.mmf .tb-in a:hover, body.mmf .nav a.l:hover, body.mmf .nav .dd a:hover, body.mmf .tel:hover,
body.mmf .fg a:hover, body.mmf .mi:hover, body.mmf .mi:hover b, body.mmf .crumbs a:hover, body.mmf .rc h3 a:hover,
body.mmf .mmf-footer .mail:hover, body.mmf .mmf-footer .tel-big:hover, body.mmf .drawer > ul > li > a:hover, body.mmf .dv-list a:hover,
body.mmf .pager a:hover { color: var(--walnut) !important; }
body.mmf .nav a.l[aria-current] { color: var(--walnut) !important; }
body.mmf .tb-in .tb-s a:hover, body.mmf .soc a:hover { color: var(--cream) !important; }

/* <button> elements: menu triggers, burger, back button */
body.mmf .nav button.mm, body.mmf .drawer > ul > li > button, body.mmf .burger, body.mmf .dv .back, body.mmf .mega-back { color: var(--ink) !important; background-color: transparent !important; }
body.mmf .nav button.mm:hover, body.mmf .nav button.mm:focus, body.mmf .nav button.mm[aria-expanded="true"],
body.mmf .drawer > ul > li > button:hover, body.mmf .drawer > ul > li > button:focus,
body.mmf .burger:hover, body.mmf .burger:focus, body.mmf .dv .back:hover, body.mmf .dv .back:focus, body.mmf .mega-back:hover, body.mmf .mega-back:focus { color: var(--walnut) !important; background-color: transparent !important; }
body.mmf .burger, body.mmf .dv .back, body.mmf .mega-back { border-color: var(--walnut) !important; }
body.mmf .burger:hover, body.mmf .dv .back:hover, body.mmf .mega-back:hover { background-color: var(--linen) !important; }

/* headings inside menus */
body.mmf .mega-intro h3, body.mmf .dv h2 { color: var(--ink) !important; }

/* filled buttons */
body.mmf .btn-acc, body.mmf .btn-acc:hover, body.mmf .btn-acc:focus, body.mmf .btn-acc:active, body.mmf .callfab, body.mmf .callfab:hover { color: var(--ink) !important; }
body.mmf .btn-acc, body.mmf .callfab { background-color: var(--oak) !important; }
body.mmf .btn-acc:hover, body.mmf .btn-acc:focus, body.mmf .callfab:hover { background-color: var(--oak-hover) !important; }
body.mmf .btn-pri, body.mmf .btn-pri:hover, body.mmf .btn-pri:focus, body.mmf .btn-pri:active, body.mmf .pager .current, body.mmf .skip { color: var(--cream) !important; }
body.mmf .btn-pri { background-color: var(--walnut) !important; }
body.mmf .btn-pri:hover, body.mmf .btn-pri:focus { background-color: var(--walnut-hover) !important; }
body.mmf .btn-out, body.mmf .btn-out:active { color: var(--walnut) !important; background-color: transparent !important; border-color: var(--walnut) !important; }
body.mmf .btn-out:hover, body.mmf .btn-out:focus { color: var(--walnut) !important; background-color: var(--linen) !important; border-color: var(--walnut) !important; }
body.mmf .btn-ghost, body.mmf .btn-ghost:active { color: var(--cream) !important; background-color: transparent !important; border-color: var(--cream) !important; }
body.mmf .btn-ghost:hover, body.mmf .btn-ghost:focus { color: var(--cream) !important; background-color: rgba(251, 247, 241, .16) !important; border-color: var(--cream) !important; }

/* social circles */
body.mmf .tb-in .tb-s a, body.mmf .soc a { background-color: var(--cream) !important; }
body.mmf .tb-in .tb-s a:hover, body.mmf .soc a:hover { background-color: var(--walnut) !important; }

/* links on the walnut call-to-action band */
body.mmf .cta-band a:not(.btn) { color: var(--cream) !important; }

/* body-copy links inside page content */
body.mmf .entry a, body.mmf .tl { color: var(--walnut) !important; }
body.mmf .entry a:hover, body.mmf .tl:hover { color: var(--walnut-hover) !important; }
body.mmf .mega-alt { color: var(--walnut) !important; }
body.mmf .mega-alt:hover, body.mmf .mega-alt:focus { color: var(--walnut-hover) !important; }

/* ---- 404 page ---- */
.nf { color: #000; }
.nf h1, .nf h2 { color: #000; }
.nf-hero { background: #fff; padding-block: clamp(40px, 7vw, 96px) clamp(48px, 7vw, 96px); }
.nf-in { display: grid; grid-template-columns: 1.15fr .85fr; gap: clamp(32px, 6vw, 80px); align-items: center; }
.nf h1, .nf h2 { font-family: var(--font-display); font-weight: 500; }
.nf-copy h1 { font-size: clamp(36px, 5.2vw, 64px); line-height: 1.06; letter-spacing: -.02em; margin: 14px 0 0; max-width: 16ch; }
.nf-lead { font-size: 18px; line-height: 29px; margin: 18px 0 0; max-width: 52ch; }
.nf-near { display: block; margin-top: 26px; padding: 18px 22px; border: 1.5px solid var(--walnut); border-radius: 18px; background: #fff; text-decoration: none; max-width: 520px; transition: transform .3s var(--ease), box-shadow .3s; }
.nf-near:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(43,30,22,.14); }
.nf-near span { display: block; font: 700 11px/16px var(--font-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--oak-text); }
.nf-near b { display: block; margin-top: 4px; font: 500 24px/30px var(--font-display); }
.nf-near i { font-style: normal; color: var(--walnut); }
.nf-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 26px; }
.nf-search { margin-top: 30px; max-width: 520px; }
.nf-search label { display: block; font: 600 14px/20px var(--font-sans); margin-bottom: 8px; }
.nf-search-row { display: flex; gap: 10px; }
.nf-search input { flex: 1; min-width: 0; font: 400 16px/24px var(--font-sans); color: #000; background: #fff; border: 1.5px solid var(--walnut); border-radius: 999px; padding: 12px 20px; }
.nf-art svg { display: block; width: 100%; height: auto; max-width: 440px; margin-inline: auto; border-radius: 22px; box-shadow: 0 22px 50px rgba(43,30,22,.2); }
.nf-art .gap rect { fill: #fff; }
.nf-art .no { font: 500 78px/1 var(--font-display); fill: var(--walnut); }
.nf-art .pl rect { animation: nfPlank .8s var(--ease) backwards; }
.nf-art .pl rect:nth-child(2) { animation-delay: .06s; } .nf-art .pl rect:nth-child(3) { animation-delay: .12s; } .nf-art .pl rect:nth-child(4) { animation-delay: .18s; } .nf-art .pl rect:nth-child(5) { animation-delay: .24s; } .nf-art .pl rect:nth-child(6) { animation-delay: .3s; }
@keyframes nfPlank { from { opacity: 0; transform: translateX(-24px); } to { opacity: 1; transform: none; } }
.nf-explore { background: var(--linen); }
.nf-tiles-head { margin-top: 40px; }
.nf-explore .wrap > h2:first-child + .nf-list + .nf-tiles-head { margin-top: 48px; }
.nf-explore .wrap > .nf-tiles-head:first-child { margin-top: 0; }
.nf-explore h2, .nf-talk h2 { font-size: clamp(26px, 3.2vw, 38px); line-height: 1.15; margin: 0 0 22px; }
.nf-list { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.nf-list a { display: block; height: 100%; background: #fff; border: 1px solid var(--sand); border-radius: 18px; padding: 20px 22px; text-decoration: none; transition: transform .3s var(--ease), box-shadow .3s; }
.nf-list a:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(43,30,22,.12); }
.nf-list b { display: block; font: 500 21px/26px var(--font-display); }
.nf-list span { display: block; margin-top: 6px; font-size: 14px; line-height: 22px; }
.nf-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 16px; }
.nf-talk { background: #fff; }
.nf-talk-in { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(28px, 5vw, 64px); align-items: start; }
.nf-talk p { font-size: 17px; line-height: 28px; margin: 0; max-width: 46ch; }
.nf-contact { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.nf-contact li { display: grid; grid-template-columns: 92px 1fr; gap: 12px; font-size: 16px; line-height: 24px; align-items: baseline; }
.nf-contact b { font: 700 11px/18px var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--oak-text); }
@media (max-width: 900px) { .nf-in, .nf-talk-in { grid-template-columns: 1fr; } .nf-art { order: -1; max-width: 300px; margin-inline: auto; } .nf-list { grid-template-columns: 1fr; } }
@media (max-width: 520px) { .nf-search-row { flex-direction: column; } .nf-actions .btn { width: 100%; justify-content: center; } .nf-contact li { grid-template-columns: 1fr; gap: 2px; } }
@media (prefers-reduced-motion: reduce) { .nf-art .pl rect { animation: none; } }
/* link colours are locked like the rest of the theme, so Elementor/Hello cannot recolour them */
body.mmf .nf-near, body.mmf .nf-near b, body.mmf .nf-list a, body.mmf .nf-list b, body.mmf .nf-list span, body.mmf .nf-contact a, body.mmf .nf-contact span { color: #000 !important; }
body.mmf .nf-near span { color: var(--oak-text) !important; }
body.mmf .nf-near:hover b, body.mmf .nf-list a:hover b, body.mmf .nf-contact a:hover { color: var(--walnut) !important; }

/* ---- Blog ---- */
.bl { color: #000; }
.bl h1, .bl h2, .bl h3 { font-family: var(--font-display); font-weight: 500; color: #000; }
.bl-hero { background: #fff; padding-block: clamp(32px, 5vw, 72px) clamp(28px, 4vw, 44px); }
.bl-crumbs { font-size: 13px; line-height: 20px; }
.bl-crumbs a { text-decoration: none; color: var(--oak-text); }
.bl-crumbs a:hover { text-decoration: underline; }
.bl-h1 { font-size: clamp(34px, 5vw, 58px); line-height: 1.08; letter-spacing: -.02em; max-width: 24ch; margin: 12px 0 0; }
.bl-lead { font-size: 19px; line-height: 30px; max-width: 62ch; margin: 16px 0 0; }
.bl-lead p { margin: 0 0 10px; }
.bl-hero-tools { margin-top: 24px; max-width: 460px; }
.bl-search { position: relative; }
.bl-search input[type=search] { width: 100%; font: 400 16px/24px var(--font-sans); color: #000; background: #fff; border: 1.5px solid var(--walnut); border-radius: 999px; padding: 12px 54px 12px 20px; }
.bl-search button { position: absolute; right: 6px; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; border: 0; border-radius: 50%; background: var(--oak); cursor: pointer; display: grid; place-items: center; padding: 0; }
.bl-search button svg { width: 20px; height: 20px; stroke: #000; fill: none; stroke-width: 2; stroke-linecap: round; }
.screen-reader-text { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.bl-pills { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 26px; }
.bl-pill, .bl-chip { display: inline-block; font: 600 13px/18px var(--font-sans); padding: 8px 16px; border: 1.5px solid var(--walnut); border-radius: 999px; text-decoration: none; background: #fff; transition: background .25s, color .25s; }
.bl-pill:hover { background: var(--linen); }
.bl-pill.is-on { background: var(--walnut); color: #fff; }
.bl-chip { font-size: 11px; line-height: 16px; letter-spacing: .14em; text-transform: uppercase; padding: 5px 12px; border-color: var(--sand); background: var(--linen); width: fit-content; }
.bl-chip.is-static { border-color: var(--sand); }
.bl-list { background: var(--linen); padding-block: clamp(36px, 5vw, 72px); }
.bl-feature { display: grid; grid-template-columns: 1.1fr .9fr; background: #fff; border: 1px solid var(--sand); border-radius: 24px; overflow: hidden; margin-bottom: 28px; box-shadow: var(--shadow); }
.bl-feature .bl-ph { aspect-ratio: auto; min-height: 340px; height: 100%; }
.bl-feature .bl-bd { padding: clamp(24px, 3.5vw, 48px); display: flex; flex-direction: column; gap: 12px; justify-content: center; align-items: flex-start; }
.bl-feature h2 { font-size: clamp(28px, 3.2vw, 40px); line-height: 1.12; margin: 0; }
.bl-feature h2 a, .bl-card h3 a { text-decoration: none; color: #000; }
.bl-feature h2 a:hover, .bl-card h3 a:hover { color: var(--walnut); }
.bl-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.bl-card { background: #fff; border: 1px solid var(--sand); border-radius: 20px; overflow: hidden; display: flex; flex-direction: column; transition: transform .35s var(--ease), box-shadow .35s; }
.bl-card:hover { transform: translateY(-4px); box-shadow: 0 16px 34px rgba(43,30,22,.14); }
.bl-ph { display: block; aspect-ratio: 3 / 2; overflow: hidden; background: var(--sand); }
.bl-ph img { width: 100%; height: 100%; object-fit: cover; display: block; transition: transform .8s var(--ease); }
.bl-card:hover .bl-ph img, .bl-feature:hover .bl-ph img { transform: scale(1.04); }
.bl-ph.is-fallback { background: repeating-linear-gradient(180deg, #c89a61 0 30px, #a97a46 30px 32px, #d4aa72 32px 62px, #a97a46 62px 64px), #c89a61; position: relative; }
.bl-ph.is-fallback::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, transparent 22%, rgba(43,30,22,.22) 22% 22.5%, transparent 22.5% 61%, rgba(43,30,22,.22) 61% 61.5%, transparent 61.5%); }
.bl-bd { padding: 22px 24px 26px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.bl-card h3 { font-size: 23px; line-height: 1.2; margin: 0; }
.bl-ex { margin: 0; font-size: 15px; line-height: 24px; color: #000; }
.bl-meta { margin: auto 0 0; font-size: 13px; line-height: 20px; color: #000; }
.bl-meta a { color: #000; text-decoration: underline; text-underline-offset: 3px; }
.bl-meta-lg { font-size: 15px; margin-top: 18px; }
.eb2 { font: 700 11px/16px var(--font-sans); letter-spacing: .18em; text-transform: uppercase; color: var(--oak-text); margin: 0; }
.bl-empty { background: #fff; border: 1px solid var(--sand); border-radius: 24px; padding: clamp(28px, 5vw, 64px); text-align: center; max-width: 760px; margin-inline: auto; }
.bl-empty h2 { font-size: clamp(26px, 3.2vw, 38px); margin: 0 0 12px; }
.bl-empty p { font-size: 17px; line-height: 28px; margin: 0 auto 22px; max-width: 52ch; }
.bl-empty .nf-actions { justify-content: center; }
.bl-pager { margin-top: 36px; }
.bl-pager ul { list-style: none; display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 0; padding: 0; }
.bl-pager a, .bl-pager span { display: inline-block; min-width: 44px; text-align: center; padding: 10px 16px; border: 1.5px solid var(--walnut); border-radius: 999px; font: 600 14px/20px var(--font-sans); text-decoration: none; background: #fff; }
.bl-pager .current { background: var(--walnut); color: #fff; }
.bl-pager .dots { border-color: transparent; background: transparent; }

/* single post */
.bl-post-hero { padding-bottom: 0; }
.bl-post-hero .bl-chip { margin-top: 18px; }
.bl-post-hero .bl-h1 { max-width: 26ch; }
.bl-cover { margin: 32px 0 0; border-radius: 24px; overflow: hidden; box-shadow: var(--shadow); aspect-ratio: 16 / 8; background: var(--sand); }
.bl-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bl-body { background: #fff; padding-block: clamp(32px, 5vw, 64px) clamp(40px, 6vw, 80px); }
.bl-single { display: grid; grid-template-columns: minmax(0, 1fr) 330px; gap: clamp(32px, 5vw, 72px); align-items: start; }
.bl-main { min-width: 0; max-width: 740px; align-self: start; }
.bl-side { align-self: stretch; }
.bl-crumbs { margin-bottom: 14px; }
.bl-content { font-size: 18px; line-height: 31px; color: #000; }
.bl-content > *:first-child { margin-top: 0; }
.bl-content p { margin: 0 0 22px; }
.bl-content h2 { font-size: clamp(28px, 3vw, 36px); line-height: 1.15; margin: 48px 0 16px; scroll-margin-top: 110px; }
.bl-content h3 { font-size: 24px; line-height: 1.25; margin: 34px 0 12px; scroll-margin-top: 110px; }
.bl-content ul, .bl-content ol { margin: 0 0 24px; padding-left: 24px; }
.bl-content li { margin-bottom: 8px; }
.bl-content a { color: var(--walnut); text-decoration: underline; text-underline-offset: 3px; }
.bl-content img, .bl-content figure { max-width: 100%; height: auto; border-radius: 16px; }
.bl-content figure { margin: 28px 0; }
.bl-content figcaption { font-size: 14px; line-height: 22px; margin-top: 8px; }
.bl-content blockquote { margin: 28px 0; padding: 6px 0 6px 22px; border-left: 4px solid var(--oak); font: 500 22px/1.4 var(--font-display); }
.bl-content table { width: 100%; border-collapse: collapse; margin: 0 0 24px; font-size: 16px; display: block; overflow-x: auto; }
.bl-content th, .bl-content td { border: 1px solid var(--sand); padding: 10px 14px; text-align: left; }
.bl-content th { background: var(--linen); }
.bl-toc-m { display: none; background: var(--linen); border: 1px solid var(--sand); border-radius: 16px; padding: 14px 18px; margin-bottom: 26px; }
.bl-toc-m summary { font: 700 12px/18px var(--font-sans); letter-spacing: .14em; text-transform: uppercase; cursor: pointer; }
.bl-toc-m ol { margin: 12px 0 0; padding-left: 20px; font-size: 15px; line-height: 24px; }
.bl-toc-m li.l3 { margin-left: 14px; }
.bl-tags { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 36px; padding-top: 24px; border-top: 1px solid var(--sand); }
.bl-tags span, .bl-share span { font: 700 11px/16px var(--font-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--oak-text); margin-right: 4px; }
.bl-tags a, .bl-share a, .bl-share button { font: 600 13px/18px var(--font-sans); padding: 7px 14px; border: 1.5px solid var(--sand); border-radius: 999px; background: #fff; text-decoration: none; cursor: pointer; color: #000; }
.bl-tags a:hover, .bl-share a:hover, .bl-share button:hover { border-color: var(--walnut); }
.bl-share { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; margin-top: 18px; }
.bl-author { margin-top: 32px; background: var(--linen); border-radius: 18px; padding: 20px 24px; }
.bl-author p { margin: 0; font-size: 16px; line-height: 26px; }
.bl-author a { color: #000; }
.bl-prevnext { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin-top: 36px; }
.bl-prevnext a { display: block; border: 1.5px solid var(--sand); border-radius: 16px; padding: 16px 20px; text-decoration: none; background: #fff; transition: border-color .25s, transform .3s var(--ease); }
.bl-prevnext a:hover { border-color: var(--walnut); transform: translateY(-2px); }
.bl-prevnext .n { text-align: right; grid-column: 2; }
.bl-prevnext span { display: block; font: 700 11px/16px var(--font-sans); letter-spacing: .14em; text-transform: uppercase; color: var(--oak-text); }
.bl-prevnext b { display: block; margin-top: 4px; font: 500 18px/1.3 var(--font-display); color: #000; }
.bl-side-sticky { position: sticky; top: 112px; display: grid; gap: 18px; max-height: calc(100vh - 130px); overflow-y: auto; padding-right: 2px; }
.bl-card-side { background: #fff; border: 1px solid var(--sand); border-radius: 18px; padding: 20px 22px; }
.bl-side-h { font: 700 11px/16px var(--font-sans); letter-spacing: .16em; text-transform: uppercase; color: var(--oak-text); margin: 0 0 12px; }
.bl-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 2px; counter-reset: t; }
.bl-toc li a { display: block; font-size: 14.5px; line-height: 21px; text-decoration: none; padding: 6px 0 6px 12px; border-left: 2px solid var(--sand); color: #000; transition: border-color .2s, color .2s; }
.bl-toc li.l3 a { padding-left: 26px; font-size: 13.5px; }
.bl-toc li a:hover, .bl-toc li a.is-on { border-left-color: var(--walnut); color: var(--walnut); font-weight: 600; }
.bl-quote { background: var(--linen); border-color: var(--sand); }
.bl-quote p { font-size: 15px; line-height: 24px; margin: 0 0 14px; }
.bl-quote .bl-side-h { margin-bottom: 8px; font-size: 12px; }
.bl-quote .btn { width: 100%; justify-content: center; }
.bl-call { display: block; text-align: center; margin-top: 12px; font: 600 14px/20px var(--font-sans); color: #000; }
.bl-side-list, .bl-side-ranges { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.bl-side-list a { display: block; padding: 7px 0; font-size: 15px; text-decoration: none; border-bottom: 1px solid var(--linen); color: #000; }
.bl-side-list a:hover, .bl-side-ranges a:hover { color: var(--walnut); }
.bl-side-ranges a { display: flex; align-items: center; gap: 12px; padding: 6px 0; text-decoration: none; font-size: 15px; color: #000; }
.bl-rt { width: 48px; height: 48px; border-radius: 12px; overflow: hidden; flex: none; background: var(--sand); }
.bl-rt img { width: 100%; height: 100%; object-fit: cover; display: block; }
.bl-related { background: var(--linen); padding-block: clamp(40px, 6vw, 80px); }
.bl-related h2 { font-size: clamp(28px, 3.4vw, 40px); margin: 6px 0 24px; }
@media (max-width: 1000px) {
  .bl-single { grid-template-columns: 1fr; }
  .bl-main { max-width: none; }
  .bl-toc-m { display: block; }
  .bl-side-sticky { position: static; max-height: none; overflow: visible; }
  .bl-toc { display: none; }
  .bl-grid { grid-template-columns: repeat(2, 1fr); }
  .bl-feature { grid-template-columns: 1fr; }
  .bl-feature .bl-ph { min-height: 0; aspect-ratio: 16 / 9; }
}
@media (max-width: 620px) {
  .bl-grid { grid-template-columns: 1fr; }
  .bl-prevnext { grid-template-columns: 1fr; }
  .bl-prevnext .n { grid-column: auto; text-align: left; }
  .bl-content { font-size: 17px; line-height: 29px; }
  .bl-cover { aspect-ratio: 4 / 3; border-radius: 18px; }
}
body.mmf .bl-pill, body.mmf .bl-chip, body.mmf .bl-crumbs a { color: #000 !important; }
body.mmf .bl-crumbs a { color: var(--oak-text) !important; }
body.mmf .bl-pill.is-on, body.mmf .bl-pager .current { color: #fff !important; }
body.mmf .bl-content a { color: var(--walnut) !important; }
body.mmf .bl-pager a, body.mmf .bl-pager span { color: #000 !important; }
body.mmf .bl-card h3 a, body.mmf .bl-feature h2 a { color: #000 !important; }
body.mmf .bl-card h3 a:hover, body.mmf .bl-feature h2 a:hover { color: var(--walnut) !important; }
