/*
 Theme Name:   GeneratePress Child – TECH Enterprises
 Theme URI:    https://techenterprises.com
 Description:  Child theme for TECH Enterprises built on GeneratePress.
 Author:       Peakside Strategic
 Author URI:   https://peaksidestrategic.com
 Template:     generatepress
 Version:      1.0.0
 Text Domain:  generatepress-child-tech
*/

/* ============================================================
   GLOBAL DESIGN TOKENS
   ============================================================ */

:root {
  /* Color System */
  --color-primary: #1C2B2D;
  --color-accent: #C65D32;
  --color-accent-muted: #5C6B4F;
  --color-background: #FFFFFF;
  --color-background-alt: #F5EFE6;
  --color-text: #2A2A2A;
  --color-text-inverse: #F5EFE6;
  --color-border: #E8E2D6;

  /* Spacing System */
  --space-section: 96px;
  --space-block: 48px;
  --space-element: 24px;
  --space-small: 16px;
  --space-xs: 8px;

  /* Container */
  --container-max: 1200px;

  /* GP Custom Property Overrides — map GP defaults to our system */
  --base: var(--color-background-alt);
  --base-2: var(--color-background);
  --base-3: var(--color-background-alt);
  --contrast: var(--color-primary);
  --contrast-2: var(--color-text);
  --contrast-3: var(--color-text);
  --accent: var(--color-accent);
  --accent-hover: #a84e2b;
}

@media (max-width: 768px) {
  :root {
    --space-section: 64px;
    --space-block: 32px;
    --space-element: 20px;
    --space-small: 14px;
  }
}

/* ============================================================
   TYPOGRAPHY
   ============================================================ */

/* Headings: Fraunces for h1–h3, Inter for h4–h6 */
h1, h2, h3 {
  font-family: 'Fraunces', serif;
  font-variation-settings: 'opsz' 144;
}

h4, h5, h6 {
  font-family: 'Inter', sans-serif;
}

h1 {
  font-size: 54px;
  line-height: 1.05;
  font-weight: 500;
  letter-spacing: -0.02em;
}

h2 {
  font-size: 40px;
  line-height: 1.1;
  font-weight: 500;
  letter-spacing: -0.015em;
}

h3 {
  font-size: 30px;
  line-height: 1.15;
  font-weight: 500;
  letter-spacing: -0.01em;
}

h4 {
  font-size: 22px;
  line-height: 1.3;
  font-weight: 500;
}

h5 {
  font-size: 19px;
  line-height: 1.35;
  font-weight: 500;
}

h6 {
  font-size: 16px;
  line-height: 1.4;
  font-weight: 500;
}

/* Mobile type scale (~20% reduction) */
@media (max-width: 768px) {
  h1 { font-size: 36px; line-height: 1.1; }
  h2 { font-size: 30px; line-height: 1.15; }
  h3 { font-size: 24px; line-height: 1.2; }
  h4 { font-size: 19px; }
  h5 { font-size: 17px; }
  h6 { font-size: 15px; }
}

/* Body */
body {
  font-family: 'Inter', sans-serif;
  font-size: 17px;
  line-height: 1.65;
  color: var(--color-text);
  background-color: var(--color-background);
}

/* ============================================================
   SPACING & LAYOUT OVERRIDES
   ============================================================ */

.site-content {
  max-width: var(--container-max);
}

/* Section padding: each .tech-* section manages its own padding. No global rule. */

/* Links */
a {
  color: var(--color-accent);
}

a:hover {
  color: var(--color-primary);
}
