/* ==========================================================================
   Huntingdonshire Business Directory - ABOUT US PAGE
   ========================================================================== */

/* Page head (green banner) */
.page-head { background: linear-gradient(180deg, var(--accent), var(--accent-dark)); color: #fff; text-align: center; padding-block: clamp(2.4rem, 6vw, 4.2rem); }
.page-head h1 { color: #fff; font-size: clamp(1.9rem, 4.4vw, 3rem); margin-bottom: .5rem; }
.page-head p { color: rgba(255,255,255,.92); font-size: clamp(1.02rem, 2vw, 1.2rem); max-width: 660px; margin: 0 auto; }
.page-head .eyebrow { color: var(--accent-2); }

/* Intro */
.about-intro { max-width: 820px; margin: 0 auto clamp(2.6rem, 4vw, 3.6rem); text-align: center; }
.about-intro::before { content: ""; display: block; width: 56px; height: 4px; background: var(--accent); border-radius: 2px; margin: 0 auto 1.5rem; }
.about-intro .lead { font-size: clamp(1.2rem, 2.5vw, 1.5rem); color: var(--brand); font-weight: 500; line-height: 1.55; margin: 0; }
.about-intro strong { color: var(--accent-dark); font-weight: 700; }

/* Stats band (navy panel, gold icons) */
.about-stats-head { text-align: center; margin-bottom: 1.4rem; }
.about-stats-head h2 { font-size: clamp(1.4rem, 2.6vw, 1.9rem); color: var(--brand); margin-bottom: .35rem; }
.about-stats-head p { color: var(--muted); margin: 0; }
.stats { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1.2rem; background: linear-gradient(135deg, var(--brand), var(--brand-deep)); border-radius: var(--radius-lg); padding: clamp(1.8rem, 3vw, 2.4rem) 1.8rem; }
.stat { text-align: center; color: #fff; }
.stat i { color: var(--accent-2); font-size: 1.6rem; margin-bottom: .55rem; display: block; }
.stat__num { display: block; font-family: var(--font-head); font-weight: 800; font-size: clamp(1.6rem, 3vw, 2.2rem); color: #fff; line-height: 1; }
.stat__label { display: block; color: #C7CDD8; font-size: .9rem; margin-top: .45rem; line-height: 1.35; }
.stats__source { text-align: center; color: var(--muted); font-size: .82rem; margin-top: .9rem; }

/* Value cards */
.about-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.5rem; margin-top: clamp(2.6rem, 4vw, 3.6rem); }
.about-card { background: #fff; border: 1px solid var(--grey-line); border-radius: var(--radius-lg); padding: 2rem 1.8rem; transition: all .18s var(--ease); }
.about-card:hover { border-color: var(--accent); box-shadow: var(--shadow-md); transform: translateY(-3px); }
.about-card__icon { width: 56px; height: 56px; border-radius: 14px; background: rgba(47,125,85,.12); color: var(--accent-dark); display: grid; place-items: center; font-size: 1.5rem; margin-bottom: 1.1rem; }
.about-card h3 { font-size: 1.25rem; color: var(--brand); margin-bottom: .5rem; }
.about-card p { color: var(--muted); line-height: 1.65; margin: 0; }

/* CTA */
.about-cta { display: flex; gap: 1rem; justify-content: center; flex-wrap: wrap; margin-top: clamp(2.6rem, 4vw, 3.6rem); }

@media (max-width: 900px) {
    .stats { grid-template-columns: repeat(2, 1fr); gap: 1.6rem 1.2rem; }
    .about-cards { grid-template-columns: 1fr; max-width: 540px; margin-inline: auto; }
}
@media (max-width: 560px) {
    .about-cta { flex-direction: column; }
    .about-cta .btn { width: 100%; max-width: 320px; margin-inline: auto; }
}
