/* ============================================
   MODERN TYPOGRAPHY SYSTEM
   Clean, readable sans-serif fonts with proper hierarchy
   ============================================ */

/* Import local serif fonts */
@import url('../font/serif-fonts.css');

/* Import local sans-serif fonts */
@import url('../font/sans-serif-fonts.css');

/* CSS Custom Properties for consistent theming */
:root {
    /* ===== FONT OPTIONS - CHANGE THESE TO SWITCH FONTS ===== */
    /* CURRENT: SERIF FONTS */
    /*--font-primary: 'Merriweather', Georgia, serif;
    --font-heading: 'Playfair Display', Georgia, serif;*/
    /* ===== SANS-SERIF OPTIONS - UNCOMMENT TO USE ===== */
    /* INTER (Modern, Tech-focused) */
     --font-primary: 'Inter', Arial, sans-serif; 
     --font-heading: 'Inter', Arial, sans-serif; 
    /* SOURCE SANS PRO (Government Standard) */
    /* --font-primary: 'Source Sans Pro', Arial, sans-serif; */
    /* --font-heading: 'Source Sans Pro', Arial, sans-serif; */
    /* ROBOTO (Google's Choice) */
   /* --font-primary: 'Roboto', Arial, sans-serif;
    --font-heading: 'Roboto', Arial, sans-serif;*/
 /*   --font-primary: 'Roboto', sans-serif;
    --font-heading: 'Roboto',  sans-serif;*/
    /* OPEN SANS (Very Popular) */
    /* --font-primary: 'Open Sans', Arial, sans-serif; */
    /* --font-heading: 'Open Sans', Arial, sans-serif; */
    /* POPPINS (Modern & Trendy) */
    /* --font-primary: 'Poppins', Arial, sans-serif; */
    /* --font-heading: 'Poppins', Arial, sans-serif; */
    /* ===== SYSTEM FONTS (NO DOWNLOAD NEEDED) ===== */
    /* SYSTEM UI (Native OS fonts) */
    /* --font-primary: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; */
    /* --font-heading: -apple-system, BlinkMacSystemFont, 'Segoe UI', Arial, sans-serif; */
    /* ARIAL (Classic & Safe) */
    /* --font-primary: Arial, Helvetica, sans-serif; */
    /* --font-heading: Arial, Helvetica, sans-serif; */
    /*--font-heading: 'Poppins', -apple-system, sans-serif;*/
    /* ===== FONT OPTIONS - CHANGE THESE TO sans-serif ===== */
    /* Inter - Tech/Modern */
    /*--font-primary: 'Inter', Arial, sans-serif;
    --font-heading: 'Inter', Arial, sans-serif;*/
    /* Source Sans Pro - Government */
    /*--font-primary: 'Source Sans Pro', Arial, sans-serif;
    --font-heading: 'Source Sans Pro', Arial, sans-serif;*/
    /* Roboto - Google Style */
    /*  --font-primary: 'Roboto', Arial, sans-serif;
    --font-heading: 'Roboto', Arial, sans-serif;*/
    /* Open Sans - Popular */
    /*--font-primary: 'Open Sans', Arial, sans-serif;
    --font-heading: 'Open Sans', Arial, sans-serif;*/
    /* Poppins - Trendy */
    /*  --font-primary: 'Poppins', Arial, sans-serif;
    --font-heading: 'Poppins', Arial, sans-serif;*/
    --font-xs: 0.75rem; /* 12px */
    --font-sm: 0.875rem; /* 14px */
    --font-base: 0.9375rem; /* 15px - Reduced from 16px */
    --font-md: 1rem; /* 16px */
    --font-lg: 1.125rem; /* 18px */
    --font-xl: 1.25rem; /* 20px */
    --font-2xl: 1.5rem; /* 24px */
    --font-3xl: 1.875rem; /* 30px */
    --font-4xl: 2.25rem; /* 36px */
    /* Line Heights */
    --leading-tight: 1.25;
    --leading-normal: 1.5;
    --leading-relaxed: 1.625;
    --leading-loose: 2;
    /* Font Weights */
    --font-light: 300;
    --font-normal: 400;
    --font-medium: 500;
    --font-semibold: 600;
    --font-bold: 700;
    /* Colors - Modern Palette */
    --color-primary: #1e40af;
    --color-secondary: #64748b;
    --color-accent: #f59e0b;
    --color-text-primary: #1f2937;
    --color-text-secondary: #6b7280;
    --color-text-muted: #9ca3af;
    --color-background: #ffffff;
    --color-surface: #f9fafb;
    --color-border: #e5e7eb;
}

/* Base Typography Reset */
* {
    box-sizing: border-box;
}

body {
    font-family: var(--font-primary);
    font-size: var(--font-base);
    line-height: var(--leading-normal);
    color: var(--color-text-primary);
    font-weight: var(--font-normal);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizeLegibility;
}

/* Heading Hierarchy */
h1, h2, h3, h4, h5, h6 {
    font-family: var(--font-heading);
    font-weight: var(--font-semibold);
    line-height: var(--leading-tight);
    color: var(--color-text-primary);
    margin-top: 0;
    margin-bottom: 0.75rem;
}

h1 {
    font-size: var(--font-4xl);
    font-weight: var(--font-bold);
    letter-spacing: -0.025em;
}

h2 {
    font-size: var(--font-3xl);
    font-weight: var(--font-semibold);
    letter-spacing: -0.025em;
}

h3 {
    font-size: var(--font-2xl);
    font-weight: var(--font-semibold);
}

h4 {
    font-size: var(--font-xl);
    font-weight: var(--font-medium);
}

h5 {
    font-size: var(--font-lg);
    font-weight: var(--font-medium);
}

h6 {
    font-size: var(--font-md);
    font-weight: var(--font-medium);
    text-transform: uppercase;
    letter-spacing: 0.05em;
}

/* Paragraph and Text */
p {
    font-size: var(--font-base);
    line-height: var(--leading-relaxed);
    color: var(--color-text-secondary);
    margin-bottom: 1rem;
}

p:last-child {
    margin-bottom: 0;
}

/* Text Sizes */
.text-xs { font-size: var(--font-xs); }
.text-sm { font-size: var(--font-sm); }
.text-base { font-size: var(--font-base); }
.text-lg { font-size: var(--font-lg); }
.text-xl { font-size: var(--font-xl); }
.text-2xl { font-size: var(--font-2xl); }
.text-3xl { font-size: var(--font-3xl); }
.text-4xl { font-size: var(--font-4xl); }

/* Font Weights */
.font-light { font-weight: var(--font-light); }
.font-normal { font-weight: var(--font-normal); }
.font-medium { font-weight: var(--font-medium); }
.font-semibold { font-weight: var(--font-semibold); }
.font-bold { font-weight: var(--font-bold); }

/* Text Colors */
.text-primary { color: var(--color-text-primary); }
.text-secondary { color: var(--color-text-secondary); }
.text-muted { color: var(--color-text-muted); }

/* Links */
a {
    color: var(--color-primary);
    text-decoration: none;
    transition: color 0.2s ease;
}

a:hover {
    color: #1d4ed8;
    /*text-decoration: underline;*/
}

/* Lists */
ul, ol {
    padding-left: 1.5rem;
    margin-bottom: 1rem;
}

li {
    margin-bottom: 0.25rem;
    line-height: var(--leading-relaxed);
}

/* Responsive Typography */
@media (max-width: 768px) {
    :root {
        --font-base: 0.875rem;  /* 14px on mobile */
        --font-lg: 1rem;       /* 16px */
        --font-xl: 1.125rem;   /* 18px */
        --font-2xl: 1.25rem;   /* 20px */
        --font-3xl: 1.5rem;    /* 24px */
        --font-4xl: 1.875rem;  /* 30px */
    }
    
    h1, h2, h3, h4, h5, h6 {
        margin-bottom: 0.5rem;
    }
    
    p {
        margin-bottom: 0.75rem;
    }
}

@media (max-width: 480px) {
    :root {
        --font-base: 0.8125rem; /* 13px on small mobile */
        --font-2xl: 1.125rem;   /* 18px */
        --font-3xl: 1.25rem;    /* 20px */
        --font-4xl: 1.5rem;     /* 24px */
    }
}

/* Print Styles */
@media print {
    body {
        font-size: 12pt;
        line-height: 1.4;
        color: #000;
    }
    
    h1, h2, h3, h4, h5, h6 {
        color: #000;
        page-break-after: avoid;
    }
    
    p {
        orphans: 3;
        widows: 3;
    }
}