/* ============================================================
   INTERSOLIS — Typography tokens + semantic type classes
   Typeface: Nunito Sans (Museo Sans substitute — see fonts.css).
   Marketing collateral favours heavy weights (black 900 for display /
   headlines), tight tracking on big type, uppercase yellow eyebrows.
   ============================================================ */
:root{
  --font-sans: 'Nunito Sans', 'Museo Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;

  /* Type scale (~1.25 major-third, tuned for marketing collateral) */
  --text-xs:   12px;
  --text-sm:   14px;
  --text-base: 16px;
  --text-md:   18px;
  --text-lg:   22px;
  --text-xl:   28px;
  --text-2xl:  36px;
  --text-3xl:  46px;
  --text-4xl:  60px;
  --text-5xl:  80px;

  --weight-regular:  400;
  --weight-medium:   600;
  --weight-semibold: 700;
  --weight-bold:     800;
  --weight-black:    900;

  --leading-tight: 1.04;
  --leading-snug:  1.18;
  --leading-body:  1.5;

  --tracking-tight: -0.02em;
  --tracking-flat:   0;
  --tracking-wide:   0.06em;
}

/* ============================================================
   SEMANTIC TYPE CLASSES
   ============================================================ */
.display{font-family:var(--font-sans);font-weight:var(--weight-black);font-size:var(--text-5xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--navy)}
h1,.h1{font-family:var(--font-sans);font-weight:var(--weight-black);font-size:var(--text-4xl);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);color:var(--navy)}
h2,.h2{font-family:var(--font-sans);font-weight:var(--weight-bold);font-size:var(--text-2xl);line-height:var(--leading-snug);letter-spacing:var(--tracking-tight);color:var(--navy)}
h3,.h3{font-family:var(--font-sans);font-weight:var(--weight-bold);font-size:var(--text-xl);line-height:var(--leading-snug);color:var(--navy)}
.eyebrow{font-family:var(--font-sans);font-weight:var(--weight-bold);font-size:var(--text-sm);letter-spacing:var(--tracking-wide);text-transform:uppercase;color:var(--yellow)}
p,.body{font-family:var(--font-sans);font-weight:var(--weight-regular);font-size:var(--text-base);line-height:var(--leading-body);color:var(--fg)}
.lead{font-size:var(--text-md);line-height:var(--leading-body);color:var(--fg-2);font-weight:var(--weight-medium)}
.caption{font-size:var(--text-sm);color:var(--fg-2);font-weight:var(--weight-medium)}
.label-cta{font-family:var(--font-sans);font-weight:var(--weight-bold);font-size:var(--text-sm);letter-spacing:0.01em}
a,.link{color:var(--fg-link);text-decoration:none}
a:hover{text-decoration:underline}
