/* AirKit Design System - Typography */
/* Adapted for PayLoadz WordPress Theme with Inter Font */

/* Typography Scale */
:root {
  /* Base font size - 16px default */
  --base-font-size: 16px;
  
  /* Font Family - Inter as primary */
  --font-family-primary: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;
  
  /* Font Weights */
  --font-weight-regular: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  
  /* Font Sizes in rem (based on 16px = 1rem) */
  --font-size-micro: 0.625rem;      /* 10px */
  --font-size-small: 0.75rem;       /* 12px */
  --font-size-small-plus: 0.8125rem; /* 13px */
  --font-size-base: 0.875rem;       /* 14px */
  --font-size-base-plus: 1rem;      /* 16px */
  --font-size-large: 1.125rem;      /* 18px */
  --font-size-xlarge: 1.25rem;      /* 20px */
  --font-size-header: 1.375rem;     /* 22px */
  --font-size-title: 1.5rem;        /* 24px */
  --font-size-hero: 2rem;           /* 32px */
  
  --line-height-tight: 1.2;
  --line-height-normal: 1.5;
  --line-height-relaxed: 1.75;
}

/* Base Typography */
body {
  font-family: var(--font-family-primary);
  font-size: var(--font-size-base-plus);
  line-height: var(--line-height-normal);
  color: var(--color-shade-02);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/* Headings */
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-family-primary);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
  color: var(--color-shade-02);
  margin-bottom: 0.5em;
}

h1 { 
  font-size: 1.375rem;
  font-weight: 590;
}
h2 { font-size: var(--font-size-title); }
h3 { font-size: var(--font-size-header); }
h4 { font-size: var(--font-size-large); }
h5 { font-size: var(--font-size-base-plus); }
h6 { font-size: var(--font-size-base); }

/* Paragraph */
p {
  margin-bottom: 1rem;
  line-height: var(--line-height-normal);
}

/* Links */
a {
  color: var(--color-link);
  text-decoration: none;
  transition: color 0.2s ease;
}

a:hover {
  color: var(--color-primary-02);
  text-decoration: underline;
}

/* Text Utility Classes */
.text-micro {
  font-size: var(--font-size-micro);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

.text-small {
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-tight);
}

.text-small-semibold {
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

.text-base {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-tight);
}

.text-base-semibold {
  font-size: var(--font-size-base);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

.text-base-plus {
  font-size: var(--font-size-base-plus);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-normal);
}

.text-base-plus-semibold {
  font-size: var(--font-size-base-plus);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

.text-large {
  font-size: var(--font-size-large);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-normal);
}

.text-large-semibold {
  font-size: var(--font-size-large);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

.text-header {
  font-size: var(--font-size-header);
  font-weight: var(--font-weight-regular);
  line-height: var(--line-height-tight);
}

.text-header-semibold {
  font-size: var(--font-size-header);
  font-weight: var(--font-weight-semibold);
  line-height: var(--line-height-tight);
}

/* Semantic Classes */
.text-caption {
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-regular);
  color: var(--color-neutral-07);
  line-height: var(--line-height-normal);
}

.text-label {
  font-size: var(--font-size-small);
  font-weight: var(--font-weight-semibold);
  color: var(--color-neutral-08);
  text-transform: uppercase;
  letter-spacing: 0.05em;
}

.text-body {
  font-size: var(--font-size-base-plus);
  font-weight: var(--font-weight-regular);
  color: var(--color-shade-02);
  line-height: var(--line-height-normal);
}

/* Utility Classes */
.text-uppercase { text-transform: uppercase; }
.text-lowercase { text-transform: lowercase; }
.text-capitalize { text-transform: capitalize; }
.text-center { text-align: center; }
.text-left { text-align: left; }
.text-right { text-align: right; }

/* Color Utilities */
.text-primary { color: var(--color-shade-02); }
.text-secondary { color: var(--color-neutral-07); }
.text-muted { color: var(--color-neutral-06); }
.text-success { color: var(--color-success); }
.text-error { color: var(--color-error-02); }
.text-warning { color: var(--color-warning); }

/* Responsive Typography */
@media (max-width: 768px) {
  h1 { font-size: 1.25rem; }
  h2 { font-size: 1.375rem; }
  h3 { font-size: 1.25rem; }
}

@media (max-width: 480px) {
  h1 { font-size: 1.125rem; }
  h2 { font-size: 1.25rem; }
  h3 { font-size: 1.125rem; }
}

