/**
 * PMO-Header-Footer-CSS | V10 | 2026-06-21 13:55 CDT | mega-menu refinement (Sam)
 * V50 sticky bar + mega menu + dropdowns + mobile hamburger drawer CSS.
 * V206+15+8: V37 top bar made sticky (always visible on scroll) on V1 pages.
 * Menu stickybar offset by ~36px to sit below the dark navy top bar.
 * V6/V7 2026-06-21: mega + dropdown top borders amber->hub-link blue #1f78d1
 *   (V6 first used #2E86AB; V7 corrected to match the Ant Control / Bee Removal hub links per Sam);
 *   species rows use a hairline guide rule (variant 4, no blue dot);
 *   Bed Bug + Flea & Tick get the amber specialty standout (pmo-mm-spec).
 * V8 2026-06-21: whole Specialty column highlighted amber via .pmo-col-specialty (Bed Bug moved in; Commercial + Rodent Proofing + Termite all amber). Flea & Tick un-highlighted so Specialty owns the gold. Hub chevron (the > after Ant Control etc.) recolored amber -> hub blue #1f78d1.
 * V9 2026-06-21: removed .pmo-col-specialty rule - Specialty items no longer colored or bolded (Termite keeps its own pmo-mm-termite amber standout). Sam.
 * V10 2026-06-21: Specialty items GOLD but NOT bold - .pmo-col-specialty sets color only (no font-weight); mobile mtermite + mspec drop font-weight:800. Sam.
 */

/* ============================================================
   PMO V2 MENU CSS | V206+15+5 | 2026-05-21 09:30 CDT
   Powers the sitewide menu on all V1 pages (CP/SP/PL/Hub/Main).
   V2 pages have this inline in their widget.
   ============================================================ */

/* CSS variables in case parent page doesn't define them (V1 pages don't) */
.pmo-stickybar, .pmo-v37-topbar, .pmo-mobile-drawer {
  --primary: #3A5468;
  --primary-dark: #1D3A4F;
  --accent: #2E86AB;
  --cta: #F5A623;
  --cta-dark: #d68910;
  --ink: #0a0a0a;
  --gray-1: #3a3a3a;
  --gray-2: #666;
  --gray-3: #999;
  --gray-line: #e3e8ee;
  --surface-tint: #F4F7FB;
}

/* SUPPRESS GENERATEPRESS HEADER/FOOTER */
#masthead { display: none !important; }
.site-footer, .site-info { display: none !important; }

/* TOP BAR - sticky V206+15+8 (always visible on scroll, sits above menu) */
.pmo-v37-topbar {
  position: sticky;
  position: -webkit-sticky;
  top: 0;
  z-index: 10000;
  background: #1D3A4F;
  color: #fff;
  font-size: 13px;
  padding: 9px 16px;
  text-align: center;
  letter-spacing: 0.2px;
  line-height: 1.4;
}
.pmo-v37-topbar-inner { max-width: 1320px; margin: 0 auto; }
.pmo-v37-topbar i { color: #F5A623; margin-right: 8px; font-size: 15px; vertical-align: -2px; }
.pmo-v37-topbar strong { color: #F5A623; font-weight: 700; }

/* STICKY BAR - sits below the sticky top bar (~36px) so both stay on scroll */
body { margin: 0; }
.pmo-stickybar {
  position: sticky;
  position: -webkit-sticky;
  top: 36px;
  z-index: 9999;
  background: #fff;
  border-bottom: 3px solid #1D3A4F;
  box-shadow: 0 4px 16px rgba(13,33,55,0.08);
  width: 100%;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.pmo-stickybar-inner {
  max-width: 1320px;
  margin: 0 auto;
  padding: 0 24px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  height: 72px;
}
.pmo-stickybar-logo { display: flex; align-items: center; text-decoration: none; }
.pmo-stickybar-logo img { display: block; height: 46px; width: auto; max-width: 200px; object-fit: contain; }
.pmo-stickybar-menu { list-style: none; margin: 0; padding: 0; display: flex; align-items: center; gap: 0; height: 100%; }
.pmo-stickybar-menu > li { position: relative; height: 100%; display: flex; align-items: center; }
.pmo-stickybar-menu > li > a {
  display: flex;
  align-items: center;
  padding: 0 18px;
  height: 100%;
  color: #3A5468;
  font-size: 14px;
  font-weight: 600;
  text-decoration: none;
  white-space: nowrap;
  transition: color 0.15s, background 0.15s;
}
.pmo-stickybar-menu > li > a:hover { color: #2E86AB; background: #F4F7FB; }
.pmo-stickybar-menu > li.has-caret > a::after,
.pmo-stickybar-menu > li.has-mega > a::after { content: " \25BE"; font-size: 9px; margin-left: 5px; opacity: 0.7; }
.pmo-stickybar-cta { display: flex; align-items: center; gap: 12px; }
.pmo-stickybar-phone { color: #3A5468; font-weight: 700; font-size: 14px; text-decoration: none; display: inline-flex; align-items: center; gap: 6px; }
.pmo-stickybar-phone i { color: #2E86AB; font-size: 16px; }
.pmo-stickybar-est {
  background: #F5A623;
  color: #1D3A4F;
  padding: 10px 18px;
  border-radius: 8px;
  font-size: 13.5px;
  font-weight: 800;
  text-decoration: none;
  transition: transform 0.15s, background 0.15s;
}
.pmo-stickybar-est:hover { background: #d68910; color: #fff; transform: translateY(-1px); }

/* SIMPLE DROPDOWNS (Service Areas, About, Pest Library) */
.pmo-stickybar-dropdown {
  list-style: none;
  margin: 0;
  padding: 8px 0;
  position: absolute;
  top: 100%;
  left: 0;
  min-width: 240px;
  background: #fff;
  border: 1px solid #e3e8ee;
  border-top: 3px solid #1f78d1;
  box-shadow: 0 14px 36px rgba(13,33,55,0.20);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s;
  z-index: 100;
}
.pmo-stickybar-menu > li.has-caret:hover .pmo-stickybar-dropdown,
.pmo-stickybar-menu > li.has-caret:focus-within .pmo-stickybar-dropdown {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.pmo-stickybar-dropdown li a {
  display: block;
  padding: 8px 18px;
  color: #0a0a0a;
  font-size: 13.5px;
  font-weight: 500;
  text-decoration: none;
  white-space: nowrap;
  line-height: 1.3;
  transition: background 0.12s, color 0.12s;
}
.pmo-stickybar-dropdown li a:hover { background: #F4F7FB; color: #2E86AB; }
.pmo-stickybar-dropdown-2col { min-width: 440px; display: grid; grid-template-columns: 1fr 1fr; gap: 0 4px; }

/* MEGA MENU (Pest Services) */
.pmo-stickybar-mega {
  position: absolute;
  top: 100%;
  left: 0;
  width: 980px;
  background: #fff;
  border: 1px solid #e3e8ee;
  border-top: 3px solid #1f78d1;
  box-shadow: 0 16px 40px rgba(13,33,55,0.22);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: opacity 0.15s ease, transform 0.15s ease, visibility 0.15s;
  z-index: 200;
  padding: 0;
}
.pmo-stickybar-menu > li.has-mega:hover .pmo-stickybar-mega,
.pmo-stickybar-menu > li.has-mega:focus-within .pmo-stickybar-mega {
  opacity: 1; visibility: visible; transform: translateY(0);
}
.pmo-stickybar-mega-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.pmo-stickybar-mega-col { padding: 20px 22px 22px; border-right: 1px solid #e3e8ee; }
.pmo-stickybar-mega-col:last-child { border-right: none; }
.pmo-stickybar-col-head {
  font-size: 10.5px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #1D3A4F;
  font-weight: 800;
  margin-bottom: 9px;
  padding-bottom: 6px;
  border-bottom: 2px solid #F4F7FB;
}
.pmo-stickybar-col-head.second { margin-top: 18px; }
.pmo-stickybar-col-head a { color: #1D3A4F; text-decoration: none; }
.pmo-stickybar-col-head a:hover { color: #d68910; }
.pmo-stickybar-col-list { list-style: none; margin: 0; padding: 0; }
.pmo-stickybar-col-list li { margin: 0; }
.pmo-stickybar-col-list li a {
  color: #0a0a0a;
  text-decoration: none;
  font-size: 13px;
  display: block;
  padding: 4px 0;
  line-height: 1.3;
  transition: color 0.12s, padding 0.12s;
}
.pmo-stickybar-col-list li a:hover { color: #2E86AB; padding-left: 4px; }

/* A-15 V2 mega structure (2026-06-11): family hubs + species rows + coverage rows + Termite standout */
.pmo-stickybar-col-list li a.pmo-mm-hub { font-weight: 800; color: #1f78d1; }
.pmo-stickybar-col-list li a.pmo-mm-hub::after { content: "›"; margin-left: 6px; color: #1f78d1; font-weight: 800; }
.pmo-stickybar-col-list li a.pmo-mm-hub:hover { color: #16548f; padding-left: 4px; }
/* Variant 4 "guide rule" (Sam 2026-06-21): no bullet dot; a thin hairline ties each species group to its hub. */
.pmo-stickybar-col-list li a.pmo-mm-sub { border-left: 2px solid #e7edf3; margin-left: 7px; padding-left: 11px; font-size: 13px; }
.pmo-stickybar-col-list li a.pmo-mm-sub:hover { padding-left: 15px; }
.pmo-stickybar-col-list li a.pmo-mm-more { padding-left: 18px; font-size: 12px; font-style: italic; color: #7d8e9e; font-weight: 600; }
.pmo-stickybar-col-list li a.pmo-mm-more:hover { padding-left: 22px; color: #1f78d1; }
/* Specialty column: every item gold, NOT bold - same weight as a normal menu row (Sam 2026-06-21). */
.pmo-col-specialty .pmo-stickybar-col-list li a { color: #d68910; }
.pmo-col-specialty .pmo-stickybar-col-list li a:hover { color: #b8770a; padding-left: 4px; }
.pmo-mobile-sub li.pmo-mobile-grouphead { font-size: 11px; font-weight: 800; letter-spacing: 1px; text-transform: uppercase; color: #d68910; padding: 12px 0 3px; list-style: none; }
.pmo-mobile-sub li a.pmo-mm-msub { padding-left: 18px; font-size: 14px; }
.pmo-mobile-sub li a.pmo-mm-mtermite { color: #d68910; }
.pmo-mobile-sub li a.pmo-mm-mspec { color: #d68910; }
.pmo-stickybar-mega-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 14px 22px;
  background: #F4F7FB;
  border-top: 1px solid #e3e8ee;
  font-size: 13px;
  color: #0a0a0a;
}
.pmo-stickybar-mega-cta strong { color: #1D3A4F; }

/* MOBILE HAMBURGER + DRAWER */
.pmo-mobile-toggle {
  display: none;
  width: 32px;
  height: 32px;
  padding: 0;
  background: transparent;
  border: 0;
  cursor: pointer;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.pmo-mobile-toggle span {
  display: block;
  width: 24px;
  height: 3px;
  background: #3A5468;
  border-radius: 2px;
  transition: transform 0.2s, opacity 0.2s;
}
.pmo-mobile-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.pmo-mobile-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.pmo-mobile-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }

.pmo-mobile-backdrop {
  position: fixed;
  inset: 0;
  background: rgba(13,33,55,0.6);
  z-index: 9998;
  opacity: 0;
  transition: opacity 0.25s;
}
.pmo-mobile-backdrop[aria-hidden="false"] { opacity: 1; }

.pmo-mobile-drawer {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  width: 320px;
  max-width: 85vw;
  background: #fff;
  z-index: 9999;
  transform: translateX(100%);
  transition: transform 0.25s ease-out;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  font-family: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, sans-serif;
}
.pmo-mobile-drawer[aria-hidden="false"] { transform: translateX(0); }

.pmo-mobile-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  border-bottom: 1px solid #e3e8ee;
  background: #F4F7FB;
}
.pmo-mobile-drawer-head img { display: block; height: 36px; width: auto; }
.pmo-mobile-drawer-close {
  width: 36px;
  height: 36px;
  background: transparent;
  border: 0;
  font-size: 28px;
  color: #3A5468;
  cursor: pointer;
  line-height: 1;
}

.pmo-mobile-drawer-menu {
  list-style: none;
  margin: 0;
  padding: 12px 0;
  flex: 1;
}
.pmo-mobile-drawer-menu > li { margin: 0; }
.pmo-mobile-drawer-menu > li > a,
.pmo-mobile-drawer-menu > li .pmo-mobile-acc {
  display: flex;
  width: 100%;
  padding: 16px 20px;
  color: #3A5468;
  font-weight: 700;
  font-size: 16px;
  text-decoration: none;
  background: transparent;
  border: 0;
  text-align: left;
  cursor: pointer;
  border-bottom: 1px solid #f0f3f7;
  align-items: center;
  justify-content: space-between;
  font-family: inherit;
}
.pmo-mobile-drawer-menu > li > a:hover,
.pmo-mobile-drawer-menu > li .pmo-mobile-acc:hover { background: #F4F7FB; color: #2E86AB; }
.pmo-mobile-acc-icon {
  font-size: 22px;
  font-weight: 300;
  color: #2E86AB;
  width: 24px;
  text-align: center;
}
.pmo-mobile-sub {
  list-style: none;
  padding: 0;
  margin: 0;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.25s;
  background: #F4F7FB;
}
.pmo-mobile-drawer-menu > li.is-open .pmo-mobile-sub { max-height: 1200px; }
.pmo-mobile-sub li a {
  display: block;
  padding: 11px 20px 11px 36px;
  color: #3a3a3a;
  font-size: 14px;
  font-weight: 500;
  text-decoration: none;
  border-bottom: 1px solid rgba(58,84,104,0.06);
}
.pmo-mobile-sub li:last-child a { border-bottom: 0; }
.pmo-mobile-sub li a:hover { background: rgba(46,134,171,0.10); color: #2E86AB; }

.pmo-mobile-drawer-cta {
  padding: 18px 20px;
  border-top: 1px solid #e3e8ee;
  display: flex;
  flex-direction: column;
  gap: 10px;
  background: #fff;
}
.pmo-mobile-drawer-phone {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 12px 16px;
  text-align: center;
  border: 2px solid #3A5468;
  border-radius: 8px;
  color: #3A5468;
  font-weight: 700;
  font-size: 15px;
  text-decoration: none;
}
.pmo-mobile-drawer-phone i { color: #2E86AB; font-size: 18px; }
.pmo-mobile-drawer-est {
  display: block;
  padding: 12px 16px;
  text-align: center;
  background: #F5A623;
  color: #1D3A4F;
  border-radius: 8px;
  font-weight: 800;
  font-size: 15px;
  text-decoration: none;
}
.pmo-mobile-drawer-est:hover { background: #d68910; color: #fff; }

/* RESPONSIVE BREAKPOINTS */
@media (max-width: 960px) {
  .pmo-stickybar-nav-desktop { display: none; }
  .pmo-stickybar-phone { display: none; }
  .pmo-stickybar-est { display: none; }
  .pmo-mobile-toggle { display: flex; }
  .pmo-stickybar-inner { height: 60px; padding: 0 16px; }
  .pmo-stickybar-logo img { height: 40px; }
}
@media (min-width: 961px) {
  .pmo-mobile-toggle { display: none; }
  .pmo-mobile-drawer, .pmo-mobile-backdrop { display: none !important; }
}

/* FOOTER - keep V1 footer markup loaded via Snippet 8 */

/* ============================================================
   V1 PAGE LAYOUT SUPPRESSION - V206+15+6 A-15 polish
   GP reserves 30% for empty right sidebar. Hide it + lift content-area
   to 100% width. Same treatment Snippet 51 applies for V2 pages.
   ============================================================ */
.widget-area.sidebar,
.widget-area#right-sidebar,
.widget-area#left-sidebar { display: none !important; }
.site-content,
#content { display: block !important; max-width: none !important; padding: 0 !important; }
.content-area,
#primary { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; float: none !important; }
#main,
.site-main { width: 100% !important; max-width: none !important; padding: 0 !important; margin: 0 !important; }
.site.grid-container,
#page.site { max-width: none !important; padding: 0 !important; margin: 0 !important; background: #fff !important; }
.separate-containers .inside-article,
article.page,
.inside-article { padding: 0 !important; margin: 0 !important; max-width: none !important; background: transparent !important; box-shadow: none !important; border: 0 !important; }
.entry-content { padding: 0 !important; margin: 0 !important; max-width: none !important; }


/* =============================================================
   SITE FOOTER
   Moved here from Global-CSS-PMO.css on 2026-08-02.

   The footer used to be defined in the LEGACY sheet only. Rebuilt pages do not
   load that sheet, so to stop them losing their footer the same rules were COPIED
   into the v2 sheet. That left one footer maintained in two files, kept in step by
   hand. They had not drifted yet, checked selector by selector, 42 shared and 0
   different, but "not yet" is not a safety property: the city styling was fine too
   until the day it was not.

   This file loads on EVERY page, legacy and rebuilt alike, which makes it the only
   correct home for anything the whole site shares. The copies in the other two
   sheets are removed in the same change.
   ============================================================= */
/* ── FOOTER ─────────────────────────────────────────────────*/

.footer { background: var(--navy); color: rgba(255,255,255,.55); padding: 48px 0 0; font-size: 17px; line-height: 1.5; }
/* font-size pinned 2026-08-02. The footer used to inherit each page base font, so the
   homepage, which runs 15px against everyone else 17px, rendered a footer 21px shorter
   than the rest of the site. Pinning it here makes the footer identical everywhere and
   independent of whatever a page does with its own typography. */

.footer-grid { display: grid; grid-template-columns: 1fr; gap: 28px; padding: 0 20px 36px; max-width: 1140px; margin: 0 auto; }@media(min-width:600px) { .footer-grid { grid-template-columns: repeat(2,1fr); } }@media(min-width:900px) { .footer-grid { grid-template-columns: 2fr 1fr 1fr 1fr 1fr; } }

.fb-nap { font-size: 13px; line-height: 2.1; color: rgba(255,255,255,.55); }

.fb-nap strong { color: #fff; }

.fb-nap a { color: var(--blue-l); }

.footer-col h4 { font-size: 10px; letter-spacing: .18em; text-transform: uppercase; color: var(--blue-l); margin-bottom: 11px; font-weight: 700; }

.footer-col ul { list-style: none; padding: 0; margin: 0; }

.footer-col li { margin-bottom: 6px; }

.footer-col a { font-size: 13px; color: rgba(255,255,255,.45); transition: color .15s; }

.footer-col a:hover { color: var(--blue-l); }

.footer-bottom { max-width: 1140px; margin: 0 auto; padding: 14px 20px; border-top: 1px solid rgba(255,255,255,.07); display: flex; justify-content: space-between; font-size: 11px; color: rgba(255,255,255,.28); flex-wrap: wrap; gap: 8px; }







/* ── FOOTER CHROME (V76-V82 consolidated) ───────────────────

   Overrides the base .footer rules above using footer.footer

   specificity (0,1,1 vs 0,0,1) plus !important to bulletproof

   against caching. All redundant V76-V81 addition layers removed.

   These are the settled final rules only.

*/



/* Background + gold accent line */

footer.footer {

  background: #081826 !important;

  position: relative !important;

  padding: 0 !important;

  margin-top: 48px !important;

}

footer.footer::before {

  content: "" !important;

  position: absolute !important;

  top: 0 !important; left: 0 !important; right: 0 !important;

  height: 3px !important;

  background: linear-gradient(90deg, transparent 0%, #F5A623 20%, #F5A623 80%, transparent 100%) !important;

  pointer-events: none !important;

  z-index: 1;

}@media(min-width:900px) {

  footer.footer .footer-grid {

    grid-template-columns: 1.4fr 1fr 1fr 1fr 1fr !important;

    align-items: stretch !important;

  }

}

footer.footer .footer-grid { padding: 36px 20px 32px !important; }



/* Every column: flex column so H4 always stays at the top */

footer.footer .footer-col {

  display: flex !important;

  flex-direction: column !important;

  align-self: stretch !important;

}



/* H4: gold, normalized across all 5 columns */

footer.footer .footer-col h4 {

  color: #F5A623 !important;

  font-size: 11px !important;

  letter-spacing: .14em !important;

  text-transform: uppercase !important;

  font-weight: 800 !important;

  line-height: 1.4 !important;

  padding: 0 !important;

  margin: 0 0 14px 0 !important;

  flex-shrink: 0 !important;

}



/* THE FIX: zero browser default ul padding-left (40px) that pushes list items right of H4 */

footer.footer .footer-col ul { list-style: none !important; padding: 0 !important; margin: 0 !important; }

footer.footer .footer-col li { margin-bottom: 6px !important; padding-left: 0 !important; }



/* Brand column: block display, manual margins between children */

footer.footer .footer-brand { display: block !important; }

footer.footer .footer-brand h4 { margin: 0 0 14px 0 !important; }

footer.footer .footer-brand .fb-nap { margin: 0 0 14px 0 !important; }

footer.footer .footer-brand .footer-hours { margin: 0 0 14px 0 !important; }

footer.footer .footer-brand .footer-social { margin: 0 !important; }



/* Hours */

.footer-hours { font-size: 13px; line-height: 1.7; color: rgba(255,255,255,.55); }

.footer-hours strong { color: #fff; font-weight: 700; }



/* Social icon row */

.footer-social { display: flex; flex-wrap: wrap; gap: 8px; }

.footer-social-link {

  display: inline-flex; align-items: center; justify-content: center;

  width: 34px; height: 34px; border-radius: 50%;

  background: rgba(255,255,255,.06);

  color: rgba(255,255,255,.65) !important;

  border: 1px solid rgba(255,255,255,.08);

  transition: background .15s, color .15s, border-color .15s, transform .15s;

}

.footer-social-link svg { display: block; }

footer.footer .footer-social-link:hover {

  background: #F5A623 !important;

  color: #0D2137 !important;

  border-color: #F5A623 !important;

  transform: translateY(-1px);

}



/* Letter-form glyph (Yelp Y) */

.footer-social-letter {

  font-family: "Bebas Neue", sans-serif !important;

  font-weight: 900 !important;

  font-size: 18px !important;

  line-height: 1 !important;

  letter-spacing: 0 !important;

  display: block !important;

  color: inherit !important;

}



/* Bottom row */

footer.footer .footer-bottom {

  max-width: 1140px !important;

  margin: 0 auto !important;

  padding: 18px 20px !important;

  border-top: 1px solid rgba(255,255,255,.14) !important;

  display: flex !important;

  justify-content: space-between !important;

  align-items: center !important;

  flex-wrap: wrap !important;

  gap: 14px !important;

  font-size: 11.5px !important;

  color: rgba(255,255,255,.45) !important;

}



/* Bottom-left: logo + stacked copyright/license */

footer.footer .footer-bottom-left {

  display: flex !important;

  flex-direction: row !important;

  align-items: center !important;

  gap: 16px !important;

}

footer.footer .footer-logo-small {

  display: inline-block !important;

  line-height: 0 !important;

  flex-shrink: 0;

}

footer.footer .footer-logo-small img {

  max-width: 110px !important;

  height: auto !important;

  opacity: .7;

  transition: opacity .15s;

}

footer.footer .footer-logo-small:hover img { opacity: 1; }

footer.footer .footer-bottom-text {

  display: flex !important;

  flex-direction: column !important;

  gap: 3px !important;

}

footer.footer .footer-copyright { color: rgba(255,255,255,.6) !important; font-weight: 600; }

footer.footer .footer-license {

  font-size: 10.5px !important;

  color: rgba(255,255,255,.4) !important;

  letter-spacing: .04em !important;

}



/* Bottom-right: BoM pill + sitemap */

footer.footer .footer-bottom-right {

  display: flex !important;

  align-items: center !important;

  gap: 16px !important;

  flex-wrap: wrap;

}

footer.footer .footer-bom-pill {

  display: inline-flex !important;

  align-items: center !important;

  gap: 6px !important;

  background: rgba(245,166,35,.12) !important;

  border: 1px solid rgba(245,166,35,.35) !important;

  color: #F5A623 !important;

  font-weight: 800 !important;

  font-size: 11px !important;

  padding: 5px 11px !important;

  border-radius: 20px !important;

  letter-spacing: .03em;

  white-space: nowrap;

}

footer.footer .footer-bom-pill svg { flex-shrink: 0; display: inline-block; vertical-align: middle; }

footer.footer .footer-sitemap-link {

  color: rgba(255,255,255,.55) !important;

  font-weight: 600 !important;

  font-size: 11.5px !important;

  text-decoration: none !important;

  transition: color .15s;

}

footer.footer .footer-sitemap-link:hover { color: #F5A623 !important; }@media(max-width:680px) {

  footer.footer .footer-bottom {

    flex-direction: column !important;

    align-items: flex-start !important;

    gap: 10px !important;

  }

  footer.footer .footer-bottom-left {

    flex-direction: column !important;

    align-items: flex-start !important;

    gap: 10px !important;

  }

  footer.footer .footer-logo-small img { max-width: 90px !important; }

}



/* V82 FINAL: nuclear H4 margin-top zero.

   Covers any theme H4 reset that outlasts the above rules. */

footer.footer .footer-col h4,

footer.footer .footer-brand h4 {

  margin-top: 0 !important;

  padding-top: 0 !important;

}



/* V82 FINAL: force left-align on all footer column content. */

footer.footer .footer-col,

footer.footer .footer-col h4,

footer.footer .footer-col ul,

footer.footer .footer-col li,

footer.footer .footer-col a,

footer.footer .footer-brand,

footer.footer .footer-brand h4,

footer.footer .fb-nap,

footer.footer .footer-hours,

footer.footer .footer-social {

  text-align: left !important;

}
