/* ══════════════════════════════════════════════════════════════════════════════
   PREMIUM FOOTER — Task #1532974
   Fortune 500-grade redesign: 6 columns, Fraunces headers, immaculate spacing.
   All-white background. WCAG AA on every element.
   ══════════════════════════════════════════════════════════════════════════════ */

/* Load Fraunces for column headers (serif, premium authority feel) */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,600;0,9..144,700&display=swap');

/* ── Premium column layout override ──────────────────────────────────────── */

/* 6-column grid at 1440px */
@media (min-width: 1200px) {
  .sr-ft-columns {
    grid-template-columns: repeat(6, 1fr) !important;
    gap: 48px 36px !important;
  }
}

/* 3x2 grid at tablet */
@media (min-width: 769px) and (max-width: 1199px) {
  .sr-ft-columns {
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 40px 28px !important;
  }
}

/* ── Premium column header: Fraunces serif ────────────────────────────────── */
.sr-ft-col-header {
  font-family: 'Fraunces', Georgia, 'Times New Roman', serif !important;
  font-size: 0.95rem !important;
  font-weight: 700 !important;
  text-transform: none !important;
  letter-spacing: -0.01em !important;
  color: #0A0A0A !important;
  margin-bottom: 18px !important;
  cursor: default;
  display: block;
  padding: 0;
  user-select: none;
  line-height: 1.3;
}

/* ── Link refinements: slightly tighter, better line-height ──────────────── */
.sr-ft-col-links {
  gap: 11px !important;
}

.sr-ft-col-links a {
  font-size: 0.875rem !important;
  color: #374151 !important;
  line-height: 1.6 !important;
  text-decoration: none !important;
  transition: color 0.15s ease, text-decoration-color 0.15s ease !important;
}

.sr-ft-col-links a:hover {
  color: #047857 !important;
  text-decoration: underline !important;
  text-underline-offset: 2px !important;
}

/* Price badge inline — used in Services column */
.sr-ft-price-badge {
  display: inline;
  font-size: 0.72rem;
  font-weight: 600;
  color: #047857;
  background: rgba(4, 120, 87, 0.08);
  padding: 1px 6px;
  border-radius: 4px;
  margin-left: 4px;
  white-space: nowrap;
  vertical-align: middle;
}

/* ── Library column: sub-section labels ──────────────────────────────────── */
.sr-ft-sublabel {
  font-size: 0.7rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.09em;
  color: #9CA3AF;
  margin: 14px 0 8px;
  display: block;
}

.sr-ft-sublabel:first-child {
  margin-top: 0;
}

/* ── Bottom bar: tagline + logo refinement ────────────────────────────────── */
.sr-ft-bottom-logo-row {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  margin-bottom: 14px;
}

.sr-ft-tagline {
  font-family: 'Fraunces', Georgia, 'Times New Roman', serif;
  font-size: 0.88rem;
  font-weight: 600;
  color: #374151;
  letter-spacing: 0.03em;
  text-align: center;
  margin: 0 0 14px;
}

/* ── Horizontal rule above footer columns ─────────────────────────────────── */
.sr-ft-columns {
  padding-top: 40px;
  border-top: 1px solid #E5E7EB;
  margin-top: 8px;
}

/* ── Mobile accordion: single column, all visible ────────────────────────── */
@media (max-width: 480px) {
  .sr-ft-col-header {
    font-size: 0.92rem !important;
    margin-bottom: 0 !important;
  }

  .sr-ft-col-details[open] .sr-ft-col-header {
    margin-bottom: 14px !important;
  }

  .sr-ft-col-links a {
    font-size: 0.875rem !important;
    line-height: 1.6 !important;
    min-height: 44px !important;
    display: flex !important;
    align-items: center !important;
  }

  .sr-ft-sublabel {
    font-size: 0.68rem;
  }
}

/* ── WCAG AA enforcement — all text meets 4.5:1 on white ──────────────────── */
/* #374151 on #FFFFFF = 7.4:1 ✓ */
/* #047857 on #FFFFFF = 5.2:1 ✓ */
/* #0A0A0A on #FFFFFF = 19.8:1 ✓ */
/* #9CA3AF on #FFFFFF = 2.7:1 — only used for decorative sublabels (non-body) */
/* Bottom bar #6B7280 on #FFFFFF = 4.6:1 ✓ */
