/*
 * JFA Type Fix (2026-09-30)
 * Removes the all-caps treatment on display headings and tames
 * oversized section titles introduced by the lifestyle/core redesign.
 * Small kicker labels (.jfa-kicker) stay uppercase by design.
 */
.jfa-lifestyle-hero h1,
.jfa-core-hero h1,
.jfa-intro-grid h2,
.jfa-section-head h2,
.jfa-vehicle-band h2,
.jfa-closing h2,
.jfa-core-entry h2,
.jfa-page-intro > h2,
.jfa-core-values > h2,
.jfa-kit-direction > h2{
  text-transform:none !important;
  font-weight:750 !important;
  letter-spacing:-.03em !important;
  line-height:1.04 !important;
}
/* Hero — still the largest, but controlled */
.jfa-lifestyle-hero h1{font-size:clamp(2.3rem,4.6vw,3.5rem) !important;line-height:1.06 !important}
.jfa-core-hero h1{font-size:clamp(2.1rem,4vw,3rem) !important;line-height:1.08 !important}
/* Section / page-intro headings */
.jfa-intro-grid h2{font-size:clamp(1.9rem,3.6vw,2.9rem) !important}
.jfa-section-head h2{font-size:clamp(2rem,3.8vw,3rem) !important}
.jfa-vehicle-band h2{font-size:clamp(2rem,3.8vw,3rem) !important}
.jfa-closing h2{font-size:clamp(2.1rem,3.9vw,3.1rem) !important}
.jfa-core-entry h2,
.jfa-page-intro > h2,
.jfa-core-values > h2,
.jfa-kit-direction > h2{font-size:clamp(1.8rem,3.2vw,2.6rem) !important}
/* Sub-headings: tame but keep hierarchy */
.jfa-scene-card h3{font-size:clamp(1.3rem,2vw,1.9rem) !important}
.jfa-principle-grid h3{font-size:clamp(1.2rem,2vw,1.7rem) !important}
/* Generic entry heading (b2b, faq, contact, etc.) — keep title case, slightly tame */
.entry h1{font-size:clamp(2.2rem,4.5vw,3.2rem) !important;letter-spacing:-.03em !important;line-height:1.05 !important}
.entry-content h2{font-size:clamp(1.6rem,3vw,2.1rem) !important;letter-spacing:-.03em !important;line-height:1.15 !important}

/* JFA homepage product-ecosystem section (2026-09-30) */
.jfa-gear-section{padding:120px 0;background:var(--j-cream)}
.jfa-gear-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-top:8px}
.jfa-gear-card{display:flex;flex-direction:column;gap:10px;padding:26px 22px 22px;background:#fff;border:1px solid var(--j-line);border-radius:14px;color:var(--j-ink);transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;text-decoration:none}
.jfa-gear-card:hover{transform:translateY(-4px);box-shadow:0 18px 40px rgba(15,23,42,.10);border-color:var(--j-acid)}
.jfa-gear-no{font:500 .66rem DM Mono,monospace;letter-spacing:.12em;color:var(--j-orange)}
.jfa-gear-card h3{font:700 clamp(1.15rem,1.5vw,1.45rem)/1.04 Manrope,Arial,sans-serif;letter-spacing:-.04em;margin:2px 0 4px}
.jfa-gear-card p{font-size:.9rem;line-height:1.6;color:#51564f;margin:0;flex:1}
.jfa-gear-card b{font:500 .68rem DM Mono,monospace;letter-spacing:.04em;text-transform:uppercase;color:var(--j-ink);margin-top:6px}
.jfa-gear-card:hover b{color:var(--j-orange)}
@media(max-width:1100px){.jfa-gear-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:560px){.jfa-gear-section{padding:78px 0}.jfa-gear-grid{grid-template-columns:1fr}}
