/* ---------- Giving season page ---------- */

.giving-hero{ text-align:center; }
.giving-hero h1{
  margin:14px auto 0;
  max-width:22ch;
  font-size:clamp(2rem, 4.6vw, 3.4rem);
  line-height:1.08;
}
.giving-hero h1 em{
  font-style:normal;
  color:var(--gen-gold);
}
.giving-hero p{
  margin:20px auto 0;
  max-width:60ch;
  font-size:16px;
}

/* ---------- Tracker ---------- */
.giving-tracker{
  margin:36px auto 0;
  max-width:560px;
  padding:24px 20px;
  background:var(--gen-white);
  border:2px solid var(--gen-gold);
  border-radius:3px;
  color:var(--gen-navy);
  text-align:left;
}
.giving-raised{
  display:flex;
  flex-wrap:wrap;
  align-items:flex-end;
  justify-content:space-between;
  gap:4px 16px;
}
.giving-total{
  display:block;
  font-size:2.4rem;
  font-weight:700;
  line-height:1.1;
}
.giving-goal{
  font-size:14px;
  color:var(--gen-text-dim);
}
.giving-goal strong{ color:var(--gen-navy); }

.giving-bar{
  display:block;
  width:100%;
  height:10px;
  margin-top:18px;
  appearance:none;
  -webkit-appearance:none;
  border:none;
  border-radius:5px;
  overflow:hidden;
  background:var(--gen-frost-2);
}
.giving-bar::-webkit-progress-bar{ background:var(--gen-frost-2); }
.giving-bar::-webkit-progress-value{ background:var(--gen-gold); }
.giving-bar::-moz-progress-bar{ background:var(--gen-gold); }

.giving-scale{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:6px;
  font-size:11px;
  color:var(--gen-text-dim);
  text-align:right;
}

.giving-counts{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  margin:20px 0 0;
  padding:16px 0;
  border-top:1px solid var(--gen-navy-line);
  border-bottom:1px solid var(--gen-navy-line);
  text-align:center;
}
.giving-counts div{ display:flex; flex-direction:column-reverse; }
.giving-counts dt{
  font-size:12px;
  color:var(--gen-text-dim);
}
.giving-counts dd{
  margin:0;
  font-size:1.4rem;
  font-weight:700;
}

.giving-actions{
  display:flex;
  flex-direction:column;
  gap:10px;
  margin-top:20px;
}

@media (min-width:520px){
  .giving-tracker{ padding:28px; }
  .giving-actions{ flex-direction:row; }
  .giving-actions .gen-btn-gold{ flex:1; }
}

@media (min-width:860px){
  .giving-hero{ padding:80px 0 72px; }
}

/* ---------- Closing band ---------- */
.giving-close{ text-align:center; }
.giving-close h2{ font-size:clamp(1.6rem, 3.4vw, 2.4rem); }
.giving-close p{ margin:16px auto 24px; max-width:52ch; }
