.hc-nav .sub-menu {
  max-height: calc(100vh - 120px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

/* Cap the open hamburger nav panel so it scrolls within the viewport */
.hc-nav.open {
  max-height: calc(100vh - 72px);
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}
/* Honest Cattle — Montana Counties hub + county-card + map styles.
   Paste into Appearance → Customize → Additional CSS so these classes style every county page,
   instead of relying on a <style> block inside page content (which WordPress.com strips). */

/* ========================================================= Honest Cattle — Canonical Counties Hub Prototype All 56 Montana Counties Design system: cream + olive + barn-red, Georgia serif, rounded card stack. Matches /research/, /forecasting-tools/, and the Park County canonical prototype. ========================================================= */ :root{ --hc-bg: #F5F0E8; --hc-ink: #2C2C2C; --hc-muted: #6b6559; --hc-accent: #4a5e3a; --hc-accent-d: #3a4b2e; --hc-warn: #B5651D; --hc-alert: #8B0000; --hc-rule: #D4C9B8; --hc-card: #FEFCF9; --hc-callout: #EFEADE; }.hc-hub-wrap{ background: var(--hc-bg); color: var(--hc-ink); padding: clamp(22px, 4vw, 56px) 16px; font-family: Georgia, "Times New Roman", Times, ui-serif, serif; line-height: 1.65; } .hc-hub{ max-width: 1180px; margin: 0 auto; }/* ---------- Hero ---------------------------------------- */ .hc-hero{ background: linear-gradient(180deg, rgba(74,94,58,.10), rgba(74,94,58,0)); border: 1px solid var(--hc-rule); border-radius: 16px; padding: 24px 24px 20px; box-shadow: 0 10px 30px rgba(44,44,44,.06); } .hc-kicker{ text-transform: uppercase; letter-spacing: .14em; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; color: var(--hc-accent); font-weight: 800; margin-bottom: 10px; } .hc-title{ font-size: clamp(30px, 4vw, 44px); line-height: 1.08; font-weight: 700; margin: 0 0 8px; letter-spacing: -0.01em; } .hc-place{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; color: var(--hc-muted); font-size: 15px; margin: 0 0 14px; } .hc-use{ margin: 12px 0 0; padding: 12px 14px; background: var(--hc-callout); border-left: 3px solid var(--hc-accent); border-radius: 6px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 14px; } .hc-use strong{ color: var(--hc-accent); } .hc-use ul{ margin: 6px 0 0; padding-left: 20px; } .hc-use li{ margin: 3px 0; } .hc-stamp{ margin-top: 12px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; color: var(--hc-muted); }/* ---------- Worst-counties callout ---------------------- */ .hc-worst{ margin-top: 22px; background: var(--hc-card); border: 1px solid var(--hc-rule); border-radius: 16px; padding: 20px 22px; box-shadow: 0 10px 30px rgba(44,44,44,.04); } .hc-worst-head{ display: flex; align-items: center; justify-content: space-between; gap: 14px; margin-bottom: 4px; } .hc-worst h2{ font-size: 22px; margin: 0; letter-spacing: -0.01em; } .hc-worst-badge{ display: inline-block; padding: 4px 10px; border-radius: 999px; background: rgba(139,0,0,.10); color: var(--hc-alert); font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-weight: 800; font-size: 11px; letter-spacing: .12em; text-transform: uppercase; } .hc-worst-sub{ margin: 6px 0 14px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 13.5px; color: var(--hc-muted); } .hc-worst-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; } @media (max-width: 820px){ .hc-worst-grid{ grid-template-columns: repeat(2, 1fr); } } @media (max-width: 420px){ .hc-worst-grid{ grid-template-columns: 1fr; } }.hc-worst-card{ display: block; padding: 14px 16px; background: rgba(139,0,0,.05); border: 1px solid rgba(139,0,0,.20); border-radius: 12px; text-decoration: none; color: var(--hc-ink); transition: transform .12s ease, border-color .12s ease; } .hc-worst-card:hover{ transform: translateY(-1px); border-color: rgba(139,0,0,.35); } .hc-worst-name{ font-family: Georgia, serif; font-size: 18px; font-weight: 700; margin-bottom: 6px; } .hc-worst-stats{ display: flex; align-items: center; gap: 8px; margin-bottom: 4px; } .hc-worst-score{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-weight: 700; font-size: 13px; color: var(--hc-alert); } .hc-worst-drought{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 11px; font-weight: 800; padding: 2px 7px; border-radius: 999px; letter-spacing: .04em; } .hc-worst-note{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; color: var(--hc-muted); }/* ---------- Filter / search bar ------------------------- */ .hc-filter-bar{ margin-top: 22px; background: var(--hc-card); border: 1px solid var(--hc-rule); border-radius: 16px; padding: 16px 18px; box-shadow: 0 10px 30px rgba(44,44,44,.04); display: grid; grid-template-columns: 1fr auto; gap: 14px; align-items: center; } @media (max-width: 720px){ .hc-filter-bar{ grid-template-columns: 1fr; } } .hc-search-wrap{ position: relative; } .hc-search-wrap::before{ content: "⌕"; position: absolute; left: 14px; top: 50%; transform: translateY(-50%); color: var(--hc-muted); font-size: 16px; } .hc-search{ width: 100%; padding: 11px 14px 11px 36px; border: 1px solid var(--hc-rule); border-radius: 999px; background: var(--hc-bg); font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 14.5px; color: var(--hc-ink); box-sizing: border-box; } .hc-search:focus{ outline: none; border-color: var(--hc-accent); background: var(--hc-card); }.hc-region-pills{ display: flex; gap: 8px; flex-wrap: wrap; } .hc-region-pill{ padding: 8px 14px; border: 1px solid var(--hc-rule); border-radius: 999px; background: var(--hc-bg); color: var(--hc-ink); font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-weight: 600; font-size: 13px; cursor: pointer; transition: all .12s ease; } .hc-region-pill:hover{ border-color: var(--hc-accent); } .hc-region-pill.is-active{ background: var(--hc-accent); color: #FEFCF9; border-color: var(--hc-accent); }/* ---------- County grid --------------------------------- */ .hc-grid-wrap{ margin-top: 28px; } .hc-region-block{ margin-top: 28px; } .hc-region-block:first-child{ margin-top: 0; } .hc-region-h{ font-family: Georgia, serif; font-size: 18px; font-weight: 700; margin: 0 0 12px; padding-bottom: 8px; border-bottom: 1px solid var(--hc-rule); display: flex; align-items: baseline; justify-content: space-between; } .hc-region-count{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; text-transform: uppercase; letter-spacing: .12em; color: var(--hc-muted); font-weight: 700; } .hc-grid{ display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; } @media (max-width: 980px){ .hc-grid{ grid-template-columns: repeat(3, 1fr); } } @media (max-width: 720px){ .hc-grid{ grid-template-columns: repeat(2, 1fr); } } @media (max-width: 420px){ .hc-grid{ grid-template-columns: 1fr; } }/* ---------- County card --------------------------------- */ .hc-county-card{ display: block; text-decoration: none; color: var(--hc-ink); background: var(--hc-card); border: 1px solid var(--hc-rule); border-left: 4px solid var(--hc-rule); border-radius: 10px; padding: 12px 14px; transition: transform .12s ease, border-color .12s ease, box-shadow .12s ease; } .hc-county-card:hover{ transform: translateY(-1px); box-shadow: 0 8px 20px rgba(44,44,44,.06); border-color: var(--hc-accent); } .hc-band-poor{ border-left-color: var(--hc-alert); } .hc-band-fair{ border-left-color: var(--hc-warn); } .hc-band-good{ border-left-color: var(--hc-accent); } .hc-band-exc { border-left-color: var(--hc-accent-d); }.hc-cc-head{ display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 8px; } .hc-cc-name{ font-family: Georgia, serif; font-size: 15.5px; font-weight: 700; line-height: 1.15; } .hc-cc-drought{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 11px; font-weight: 800; padding: 2px 7px; border-radius: 999px; letter-spacing: .04em; } /* Drought class colors */ .hc-d-d0{ background: rgba(74,94,58,.10); color: var(--hc-accent); } .hc-d-d1{ background: rgba(74,94,58,.10); color: var(--hc-accent); } .hc-d-d2{ background: rgba(181,101,29,.14); color: var(--hc-warn); } .hc-d-d3{ background: rgba(139,0,0,.12); color: var(--hc-alert); } .hc-d-d4{ background: rgba(139,0,0,.20); color: var(--hc-alert); }.hc-cc-score{ margin-bottom: 8px; } .hc-cc-num{ font-family: Georgia, serif; font-size: 22px; font-weight: 700; line-height: 1.1; margin-bottom: 4px; } .hc-cc-of{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; font-weight: 500; color: var(--hc-muted); } .hc-cc-bar{ height: 6px; border-radius: 999px; background: var(--hc-callout); overflow: hidden; } .hc-cc-fill{ height: 100%; border-radius: 999px; } .hc-bar-poor{ background: var(--hc-alert); } .hc-bar-fair{ background: var(--hc-warn); } .hc-bar-good{ background: var(--hc-accent); } .hc-bar-exc { background: var(--hc-accent-d); }.hc-cc-foot{ font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12px; color: var(--hc-muted); padding-top: 8px; border-top: 1px dashed var(--hc-rule); } .hc-snow-pct strong{ color: var(--hc-ink); } .hc-snow-none{ font-style: italic; }/* ---------- Coverage transparency card ------------------- */ .hc-card{ margin-top: 28px; background: var(--hc-card); border: 1px solid var(--hc-rule); border-radius: 16px; padding: 22px 22px 20px; box-shadow: 0 10px 30px rgba(44,44,44,.04); scroll-margin-top: 24px; } .hc-card h2{ font-size: 22px; margin: 0 0 4px; padding-bottom: 10px; border-bottom: 1px solid var(--hc-rule); font-weight: 700; letter-spacing: -0.01em; } .hc-card .hc-sub{ margin: 6px 0 16px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 13.5px; color: var(--hc-muted); } .hc-coverage-grid{ display: grid; grid-template-columns: repeat(5, 1fr); gap: 10px; } @media (max-width: 880px){ .hc-coverage-grid{ grid-template-columns: repeat(2, 1fr); } } @media (max-width: 480px){ .hc-coverage-grid{ grid-template-columns: 1fr; } }.hc-cov-tile{ padding: 12px 14px; background: var(--hc-bg); border: 1px solid var(--hc-rule); border-radius: 10px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; } .hc-cov-name{ font-size: 12px; text-transform: uppercase; letter-spacing: .08em; color: var(--hc-accent); font-weight: 800; margin-bottom: 4px; } .hc-cov-num{ font-family: Georgia, serif; font-size: 24px; font-weight: 700; line-height: 1; color: var(--hc-ink); } .hc-cov-of{ font-size: 13px; color: var(--hc-muted); font-family: ui-sans-serif, system-ui, sans-serif; } .hc-cov-note{ margin-top: 6px; font-size: 12px; color: var(--hc-muted); }.hc-pipeline{ margin-top: 14px; padding: 12px 14px; background: var(--hc-callout); border-radius: 8px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 13px; color: var(--hc-ink); } .hc-pipeline strong{ color: var(--hc-accent); }/* ---------- Glossary (demoted, collapsible) -------------- */ .hc-gloss{ margin-top: 28px; background: transparent; border: 1px dashed var(--hc-rule); border-radius: 12px; padding: 16px 18px; color: var(--hc-muted); } .hc-gloss summary{ cursor: pointer; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 13px; text-transform: uppercase; letter-spacing: .1em; color: var(--hc-accent); font-weight: 800; list-style: none; } .hc-gloss summary::after{ content: " ▾"; } .hc-gloss[open] summary::after{ content: " ▴"; } .hc-gloss dl{ margin: 14px 0 0; font-size: 14px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; } .hc-gloss dt{ font-weight: 700; color: var(--hc-ink); margin-top: 10px; } .hc-gloss dd{ margin: 2px 0 0; padding-left: 0; }/* ---------- "No results" empty state -------------------- */ .hc-empty{ text-align: center; padding: 30px 20px; color: var(--hc-muted); font-style: italic; display: none; } .hc-empty.is-visible{ display: block; }/* ---------- Montana shape map -------------------------- */ .hc-map-card .hc-mt-map{ display: block; width: 100%; height: auto; margin: 6px 0 4px; background: var(--hc-bg); border: 1px solid var(--hc-rule); border-radius: 12px; } .hc-map-link{ cursor: pointer; } .hc-mapc{ stroke: #FEFCF9; stroke-width: 0.8; stroke-linejoin: round; transition: opacity .12s ease, stroke-width .12s ease, filter .12s ease; } .hc-mapc:hover{ stroke: var(--hc-ink); stroke-width: 1.4; filter: brightness(0.94); } .hc-map-poor{ fill: #8B0000; } .hc-map-fair{ fill: #B5651D; } .hc-map-good{ fill: #4a5e3a; } .hc-map-exc { fill: #3a4b2e; }.hc-map-legend{ display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-top: 8px; padding: 10px 14px; background: var(--hc-callout); border-radius: 10px; font-family: ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif; font-size: 12.5px; color: var(--hc-ink); } .hc-map-leg-label{ font-weight: 800; text-transform: uppercase; letter-spacing: .1em; font-size: 11px; color: var(--hc-accent); margin-right: 6px; } .hc-map-leg-chip{ display: inline-block; width: 14px; height: 14px; border-radius: 3px; margin-right: 4px; vertical-align: middle; } .hc-map-leg-txt{ vertical-align: middle; }

.hc-map-label{fill:#26211a;font-family:ui-sans-serif,system-ui,sans-serif;text-anchor:middle;dominant-baseline:central;paint-order:stroke;stroke:#fff;stroke-width:1.2px;stroke-linejoin:round;pointer-events:none}

/* Print / PDF cleanup - hides cookie banner, site header and footer when printed. Screen display unaffected. */
@media print{#cmplz-cookiebanner-container,.cmplz-cookiebanner,#cmplz-manage-consent,.cmplz-manage-consent,.cmplz-blocked-content-notice{display:none !important}[data-elementor-type=header],[data-elementor-type=footer],header.site-header,footer.site-footer{display:none !important}}