/* OBRITEK Typography - Brand Font System */

/* Fonts are loaded in HTML head for better performance */
/* @import removed - fonts loaded via preload in index.html */

/* OBRITEK Brand Typography Classes */

/* Logo and Brand Elements */
.obritek-logo {
  font-family: var(--font-logo);
  font-weight: var(--font-weight-black);
  font-size: 2rem;
  letter-spacing: -0.03em;
  color: var(--obrk-black);
  text-transform: uppercase;
}

.obritek-logo-white {
  color: var(--obrk-white);
}

.obritek-logo-large {
  font-size: 3rem;
  letter-spacing: -0.04em;
}

.obritek-tagline {
  font-family: var(--font-primary);
  font-size: 0.875rem;
  font-weight: var(--font-weight-medium);
  color: var(--obrk-green-secondary);
  text-transform: uppercase;
  letter-spacing: 0.15em;
  margin-top: 0.25rem;
}

/* Headings with OBRITEK Style */
.obritek-heading-xl {
  font-family: var(--font-heading);
  font-size: clamp(2.25rem, 5vw, 3rem);
  font-weight: var(--font-weight-black);
  line-height: var(--line-height-tight);
  letter-spacing: -0.03em;
  color: var(--obrk-black);
}

.obritek-heading-lg {
  font-family: var(--font-heading);
  font-size: clamp(1.75rem, 4vw, 2.25rem);
  font-weight: var(--font-weight-bold);
  line-height: var(--line-height-tight);
  letter-spacing: -0.02em;
  color: var(--obrk-black);
}

.obritek-heading-md {
  font-family: var(--font-heading);
  font-size: clamp(1.375rem, 3vw, 1.5rem);
  font-weight: var(--font-weight-semibold);
  line-height: 1.35;
  letter-spacing: -0.01em;
  color: var(--obrk-black);
}

/* Body Text Styles */
.obritek-text-lead {
  font-family: var(--font-primary);
  font-size: var(--text-lg);
  font-weight: var(--font-weight-normal);
  line-height: 1.6;
  color: var(--obrk-text-secondary);
}

.obritek-text-body {
  font-family: var(--font-primary);
  font-size: var(--text-base);
  font-weight: var(--font-weight-normal);
  line-height: var(--line-height-base);
  color: var(--obrk-text-primary);
}

.obritek-text-small {
  font-family: var(--font-primary);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-normal);
  line-height: 1.5;
  color: var(--obrk-text-secondary);
}

/* Professional/Technical Text */
.obritek-tech-text {
  font-family: var(--font-primary);
  font-size: var(--text-base);
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.01em;
  color: var(--obrk-black);
}

.obritek-specs {
  font-family: var(--font-primary);
  font-size: var(--text-sm);
  font-weight: var(--font-weight-normal);
  letter-spacing: 0.005em;
  color: var(--obrk-text-secondary);
  line-height: 1.4;
}

/* Button Typography */
.obritek-btn-text {
  font-family: var(--font-primary);
  font-weight: var(--font-weight-semibold);
  letter-spacing: 0.02em;
  text-transform: uppercase;
  font-size: var(--text-sm);
}

/* Navigation Typography */
.obritek-nav-text {
  font-family: var(--font-primary);
  font-weight: var(--font-weight-medium);
  letter-spacing: 0.01em;
  font-size: var(--text-base);
}

/* Product Names and Technical Terms */
.obritek-product-name {
  font-family: var(--font-heading);
  font-weight: var(--font-weight-semibold);
  color: var(--obrk-black);
  letter-spacing: -0.01em;
  font-size: var(--text-xl);
  line-height: 1.35;
}

.obritek-model-number {
  font-family: var(--font-primary);
  font-weight: var(--font-weight-bold);
  font-size: var(--text-sm);
  color: var(--obrk-green-secondary);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

/* Color Variants */
.obritek-text-green {
  color: var(--obrk-green-secondary);
}

.obritek-text-white {
  color: var(--obrk-white);
}

.obritek-text-black {
  color: var(--obrk-black);
}

.obritek-text-muted {
  color: var(--obrk-text-secondary);
}

/* Weight Variants */
.obritek-font-light {
  font-weight: 300;
}

.obritek-font-normal {
  font-weight: var(--font-weight-normal);
}

.obritek-font-medium {
  font-weight: var(--font-weight-medium);
}

.obritek-font-semibold {
  font-weight: var(--font-weight-semibold);
}

.obritek-font-bold {
  font-weight: var(--font-weight-bold);
}

.obritek-font-black {
  font-weight: var(--font-weight-black);
}

/* Responsive Typography */
@media (max-width: 768px) {
  .obritek-logo-large {
    font-size: 2.5rem;
  }

  .obritek-heading-xl {
    font-size: clamp(2rem, 6vw, 2.5rem);
  }

  .obritek-heading-lg {
    font-size: clamp(1.5rem, 5vw, 2rem);
  }

  .obritek-heading-md {
    font-size: clamp(1.25rem, 4vw, 1.4rem);
  }
}

@media (max-width: 480px) {
  .obritek-logo-large {
    font-size: 2rem;
  }

  .obritek-heading-xl {
    font-size: clamp(1.75rem, 7vw, 2.25rem);
  }

  .obritek-heading-lg {
    font-size: clamp(1.35rem, 6vw, 1.75rem);
  }
}
