/* Home only. Breakpoints follow usable content width, including sidebar changes. */
.home-redesign.has-nav-side .home-main {
  container: furmap-home / inline-size;
  --home-gutter: clamp(16px, 2.4vw, 40px);
  width: auto;
  max-width: none;
  margin: 0;
  padding: 0 0 40px;
  font-family: Arial, Helvetica, sans-serif;
  color: #f6f3ff;
  background:
    radial-gradient(circle at 82% 4%, rgba(98, 49, 205, 0.13), transparent 26%),
    linear-gradient(135deg, #060714, #080817 62%, #090616);
}
@media (min-width: 1025px) {
  .home-redesign.has-nav-side:not(.sidebar-collapsed) .home-main {
    width: auto !important;
    max-width: none !important;
    margin: 0 0 0 246px !important;
    padding: 0 0 40px !important;
  }
  .home-redesign.sidebar-collapsed.has-nav-side .home-main {
    width: auto !important;
    max-width: none !important;
    margin: 0 0 0 72px !important;
    padding: 0 0 40px !important;
  }
}
.home-redesign .home-hero {
  position: relative;
  isolation: isolate;
  display: flex;
  align-items: center;
  min-height: 184px;
  margin: 0 0 4px;
  padding: 30px var(--home-gutter) 24px;
  box-sizing: border-box;
  overflow: hidden;
  border: 0;
  background: linear-gradient(110deg, #070814, #100a21 62%, #15091e);
}
.home-redesign .home-hero::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 0 0 0 35%;
  opacity: 0;
  background-image: linear-gradient(90deg, #090912, #090912a0 28%, #09091225 65%), var(--home-banner-image);
  background-position: center;
  background-size: cover;
}
.home-redesign .home-hero.has-home-banner::before { opacity: 1; }
.home-redesign .home-hero-copy { min-width: 0; max-width: 1050px; }
.home-redesign .home-hero-copy h1 {
  margin: 0 0 14px;
  font-size: clamp(30px, 3cqi, 46px);
  line-height: 1.13;
  letter-spacing: -0.025em;
  font-weight: 750;
}
.home-redesign .home-hero-copy h1 span { color: #f13cb8; }
.home-redesign .home-hero-copy p {
  margin: 0;
  color: #e7e3f1;
  font-size: clamp(14px, 1.14cqi, 18px);
  line-height: 1.5;
}
.home-redesign .home-hero-copy p + p { margin-top: 7px; }
.home-redesign .home-security {
  display: grid;
  grid-template-areas: "shield copy warning more";
  grid-template-columns: 82px minmax(0, 1.4fr) minmax(0, 1fr) auto;
  align-items: center;
  gap: 20px;
  height: auto;
  min-height: 88px;
  margin: 0 var(--home-gutter) 22px;
  padding: 8px 24px;
  box-sizing: border-box;
  border: 1px solid #bd674d;
  border-radius: 10px;
  background: linear-gradient(110deg, #26131d, #120d19 36%, #180d18);
  box-shadow: inset 0 0 24px rgba(255, 140, 94, 0.055);
}
.home-redesign .home-security > * { min-width: 0; }
.home-redesign .home-security-copy,
.home-redesign .home-security-warning { max-width: none; text-align: left; }
.home-redesign .home-security-shield {
  grid-area: shield;
  width: 70px;
  height: 70px;
  object-fit: contain;
  filter: sepia(0.45) saturate(1.32) hue-rotate(326deg) brightness(1.18);
}
.home-redesign .home-security-copy { grid-area: copy; }
.home-redesign .home-security h2 {
  margin: 0 0 6px;
  color: #ffb078;
  font: 700 20px/1.2 Arial, Helvetica, sans-serif;
}
.home-redesign .home-security p { margin: 0; color: #f1f0ee; font-size: 15px; line-height: 1.45; }
.home-redesign .home-security-warning {
  grid-area: warning;
  display: grid;
  grid-template-columns: 38px minmax(0, 1fr);
  align-items: center;
  gap: 12px;
  padding: 0 0 0 26px;
  min-height: 38px;
  border: 0;
  border-left: 1px solid rgba(198, 102, 73, 0.58);
}
.home-redesign .home-security-warning img {
  width: 36px;
  height: 36px;
  filter: sepia(0.42) saturate(1.25) hue-rotate(326deg) brightness(1.18);
}
.home-redesign .home-security-more {
  grid-area: more;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  min-width: 150px;
  min-height: 44px;
  padding: 9px 18px;
  border: 1px solid #d0714c;
  border-radius: 12px;
  background: #1c1018;
  color: #ffb078;
  font: 700 14px/1.3 Arial, Helvetica, sans-serif;
  text-decoration: none;
}
.home-redesign .home-security-more:hover { background: #311722; }
.home-redesign .home-map-layout {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(244px, 24.2%);
  align-items: stretch;
  gap: 18px;
  margin: 0 var(--home-gutter);
}
.home-redesign .home-map-card {
  min-width: 0;
  margin: 0;
  overflow: hidden;
  border: 1px solid #4b3a72;
  border-radius: 9px;
  background: #070912;
  box-shadow: none;
}
.home-redesign .home-map-card #map {
  width: 100%;
  height: clamp(400px, calc(100svh - 390px), 550px);
  min-height: 0;
  background: #070912;
}
.home-redesign .home-donors {
  min-width: 0;
  height: auto;
  min-height: 0;
  max-height: none;
  display: grid;
  grid-template-rows: auto minmax(0, 1fr) auto;
  overflow: hidden;
  border: 1px solid #8f6900;
  border-radius: 9px;
  background: linear-gradient(160deg, #15110b, #090b13 35%);
  box-shadow: none;
}
.home-redesign .home-donors header {
  display: flex;
  flex-wrap: wrap;
  align-items: end;
  justify-content: space-between;
  gap: 8px;
  min-height: 78px;
  margin: 0 15px;
  padding: 20px 0 16px;
  box-sizing: border-box;
  border-bottom: 1px solid rgba(222, 166, 29, 0.26);
}
.home-redesign .home-donors header > div > span {
  color: #e0bc5c;
  font: 700 11px/1.3 Arial, Helvetica, sans-serif;
  letter-spacing: 0.025em;
  text-transform: uppercase;
}
.home-redesign .home-donors h2 {
  display: flex;
  align-items: center;
  gap: 8px;
  margin: 5px 0 0;
  color: #f0c94e;
  font: 700 24px/1.1 Arial, Helvetica, sans-serif;
}
.home-redesign .home-donors h2 > span,
.home-redesign .home-donors header .home-donors-all span {
  color: inherit;
  font: inherit;
  letter-spacing: normal;
  text-transform: none;
}
.home-redesign .home-donors h2 img { width: 20px; height: 20px; }
.home-redesign .home-donors-all {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  color: #e2b83c;
  font: 600 13px/1.3 Arial, Helvetica, sans-serif;
  text-decoration: none;
  white-space: nowrap;
}
.home-redesign .home-donors-list {
  min-height: 0;
  max-height: none;
  overflow-y: auto;
  padding: 8px 10px;
  scrollbar-color: #8a6b24 transparent;
}
.home-redesign .home-donor-card {
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr);
  align-items: center;
  gap: 14px;
  min-height: 0;
  margin: 0;
  padding: 10px 8px;
  box-sizing: border-box;
  border: 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.075);
  border-radius: 0;
  background: transparent;
}
.home-redesign .home-donor-avatar {
  width: 44px; height: 44px;
  border: 2px solid rgba(230, 181, 55, 0.58);
  background: #242127;
}
.home-redesign .home-donor-copy strong { font: 700 14px/1.35 Arial, Helvetica, sans-serif; }
.home-redesign .home-donor-amount { color: #f0bf37; font: 700 12px/1.35 Arial, Helvetica, sans-serif; }
.home-redesign .home-donor-copy span { margin-top: 2px; color: #c8b578; font: 400 11px/1.35 Arial, Helvetica, sans-serif; }
.home-redesign .home-donors-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 45px;
  margin: 11px;
  padding: 9px 16px;
  border: 0;
  border-radius: 8px;
  background: linear-gradient(135deg, #f5d465, #dda522);
  color: #171000;
  text-align: center;
  text-decoration: none;
}
.home-redesign .home-donors-action:hover { background: linear-gradient(135deg, #ffe485, #ebb52f); }
.home-redesign .home-donors-action img { width: 19px; height: 19px; filter: brightness(0); }
.home-redesign .home-donors-action span,
.home-redesign .home-donors-action strong,
.home-redesign .home-donors-action small { display: block; }
.home-redesign .home-donors-action strong { color: #171000; font: 750 15px/1.35 Arial, Helvetica, sans-serif; }
.home-redesign .home-donors-action small { display: none; }
.home-redesign .home-bottom-grid { margin: 22px var(--home-gutter) 0; }

@container furmap-home (max-width: 1200px) {
  .home-redesign .home-hero { min-height: 164px; padding-top: 26px; }
  .home-redesign .home-security {
    grid-template-areas: "shield copy more" "shield warning more";
    grid-template-columns: 64px minmax(0, 1fr) auto;
    gap: 9px 16px;
    padding: 16px;
  }
  .home-redesign .home-security-shield { width: 60px; height: 68px; }
  .home-redesign .home-security-warning {
    grid-template-columns: 22px minmax(0, 1fr);
    min-height: 0;
    padding: 8px 0 0;
    border: 0;
    border-top: 1px solid rgba(198, 102, 73, 0.4);
    gap: 8px;
  }
  .home-redesign .home-security-warning img { width: 22px; height: 22px; }
  .home-redesign .home-security h2 { font-size: 18px; }
  .home-redesign .home-security p { font-size: 13px; }
  .home-redesign .home-security-more { min-width: 114px; padding: 9px 12px; }
  .home-redesign .home-map-layout { gap: 14px; grid-template-columns: minmax(0, 1fr) minmax(244px, 29%); }
  .home-redesign .home-donors header { min-height: 80px; padding-top: 14px; }
  .home-redesign .home-donor-card { grid-template-columns: 40px minmax(0, 1fr); gap: 10px; padding: 9px 7px; }
  .home-redesign .home-donor-avatar { width: 40px; height: 40px; }
  .home-redesign .home-donors-action { gap: 8px; padding: 10px 12px; }
  .home-redesign .home-donors-action img { width: 18px; height: 18px; }
}
@container furmap-home (max-width: 780px) {
  .home-redesign .home-map-layout { grid-template-columns: minmax(0, 1fr); }
  .home-redesign .home-donors { height: auto; grid-template-rows: auto auto auto; }
  .home-redesign .home-donors-list { max-height: 280px; }
  .home-redesign .home-donors-action { min-height: 0; }
}
@container furmap-home (max-width: 560px) {
  .home-redesign .home-hero { min-height: 0; padding: 24px var(--home-gutter); }
  .home-redesign .home-hero-copy { max-width: 100%; }
  .home-redesign .home-hero-copy h1 { font-size: clamp(25px, 6.9cqi, 34px); margin-bottom: 12px; }
  .home-redesign .home-hero-copy p { font-size: 14px; }
  .home-redesign .home-hero::before { inset: 0; }
  .home-redesign .home-hero.has-home-banner::before { opacity: 0.35; }
  .home-redesign .home-security {
    grid-template-areas: "shield copy" "warning warning" "more more";
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 12px;
    margin-bottom: 16px;
    padding: 14px;
  }
  .home-redesign .home-security-shield { width: 46px; height: 56px; }
  .home-redesign .home-security h2 { font-size: 16px; }
  .home-redesign .home-security p { font-size: 13px; }
  .home-redesign .home-security-more { width: 100%; }
  .home-redesign .home-map-card #map { height: 420px; min-height: 0; }
}
@media (max-width: 1024px) {
  body.home-redesign.has-nav-side .home-main {
    width: auto !important;
    margin: 0 !important;
    padding: 0 0 96px;
  }
}
