/*
 * AITCOH Theme — single entry point
 *
 * Import this one file from your page <head> or build pipeline. It pulls in
 * the canonical color tokens, design primitives, typography, glass system,
 * utilities, and components in the correct order.
 *
 * USAGE
 *   <link rel="stylesheet" href="../brand/styles/theme.css">
 *
 * OR in a CSS file:
 *   @import url('../brand/styles/theme.css');
 *
 * OR in a build tool (PostCSS, Vite, Next.js, etc.):
 *   @import '~/Desktop/Brand Builder/AITCOH/brand/styles/theme.css';
 *
 * Order matters — colors and tokens first (other files reference their custom
 * properties), then typography defaults, then glass primitives, then
 * utilities and components on top.
 */

@import url('../assets/colors/colors.css');
@import url('./tokens.css');
@import url('./typography.css');
@import url('./glass.css');
@import url('./utilities.css');
@import url('./components.css');

/* ------------------------------------------------------------------------
 * MINIMAL RESET — opinions limited to what the brand system needs.
 * For a full normalize.css or modern-css-reset, layer this on top.
 * ------------------------------------------------------------------------ */
*, *::before, *::after {
  box-sizing: border-box;
}

html {
  -webkit-text-size-adjust: 100%;
  scroll-behavior: smooth;
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

body {
  margin: 0;
  min-height: 100dvh;
  /* Division-aware page background. Defaults to Trust Blue Light (Products);
   * overridden to Light Linen for Dealerships and Legacy Plum Light for
   * Programs via body.division-* blocks in components.css. */
  background-color: var(--page-bg, #d9ecff);
  color: var(--color-charcoal, #333333);
}

img, picture, video, canvas, svg {
  display: block;
  max-width: 100%;
}

button, input, select, textarea {
  font: inherit;
}

button {
  background: none;
  border: none;
  cursor: pointer;
}

/* Remove default list styling when nested inside .glass-card and similar */
.glass ul, .glass ol {
  margin: 0;
  padding-inline-start: var(--space-5);
}

/* ------------------------------------------------------------------------
 * PRINT — strip glass effects, keep brand intact
 * ------------------------------------------------------------------------ */
@media print {
  .glass {
    background-color: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 1px solid currentColor !important;
    box-shadow: none !important;
  }
  .glass::before, .glass::after { display: none !important; }
  .hero { background: none !important; color: var(--color-charcoal, #333333) !important; }
  .hero-title, .hero-subtitle, .hero-eyebrow { color: inherit !important; }
}
