/* DesiCrew design tokens, from the Brand Identity Guidelines.
   Values noted as "recommended" are defaults not specified in the brand book. */

:root {
  /* --- color: brand (primary) --- */
  --color-oxford-blue: #011C46;   /* dominant dark surface and text */
  --color-persian-blue: #0B44CF;
  --color-tufts-blue: #1892E5;    /* also the cobalt icon accent */
  --color-mint: #22D2A2;          /* also the mint icon accent */

  /* --- color: accent (one per layout) --- */
  --color-french-rose: #FD4C8C;
  --color-sunglow: #FFD23F;
  --color-raisin-black: #1C1C1C;

  /* --- color: surface (neutrals) --- */
  --color-white: #FFFFFF;         /* most-used color, preferred logo background */
  --color-lavender: #E7EDFB;
  --color-mint-green: #DEF8F1;
  --color-alice-blue: #E8F5FD;

  /* --- gradient --- */
  /* signature / hero field. stops interpreted from artwork. */
  --gradient-signature: linear-gradient(90deg, #22D2A2 0%, #1892E5 50%, #0B44CF 100%);

  /* --- typography: families --- */
  --font-sans: "Helvetica", Arial, sans-serif;   /* display, heading, subhead */
  --font-mono: "Space Mono", monospace;          /* body + labels, always uppercase */

  /* --- typography: weights --- */
  --font-weight-regular: 400;
  --font-weight-bold: 700;        /* recommended, used for part titles */

  /* --- typography: sizes (px from brand book; base 16px for rem) --- */
  --font-size-display: 64px;
  --font-size-heading: 33px;
  --font-size-subhead: 22px;
  --font-size-body: 15px;

  /* --- typography: tracking (brand book -60 / +60 in 1/1000 em) --- */
  --letter-spacing-tight: -0.06em;  /* Helvetica */
  --letter-spacing-wide: 0.06em;    /* Space Mono */

  /* --- typography: line height (recommended) --- */
  --line-height-display: 1.05;
  --line-height-heading: 1.15;
  --line-height-subhead: 1.3;
  --line-height-body: 1.6;

  /* --- borders / strokes --- */
  --icon-stroke-width: 2.3px;       /* navy stroke, single cobalt or mint accent */

  /* --- logo --- */
  --logo-min-width-screen: 110px;
  --logo-min-width-print: 28mm;
}

/* --- ready-made type styles --- */

.display {
  font-family: var(--font-sans);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-display);
  letter-spacing: var(--letter-spacing-tight);
  line-height: var(--line-height-display);
}

.heading {
  font-family: var(--font-sans);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-heading);
  letter-spacing: var(--letter-spacing-tight);
  line-height: var(--line-height-heading);
}

.subhead {
  font-family: var(--font-sans);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-subhead);
  letter-spacing: var(--letter-spacing-tight);
  line-height: var(--line-height-subhead);
}

.body {
  font-family: var(--font-mono);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-body);
  letter-spacing: var(--letter-spacing-wide);
  line-height: var(--line-height-body);
}

/* section labels and eyebrows */
.label {
  font-family: var(--font-mono);
  font-weight: var(--font-weight-regular);
  font-size: var(--font-size-body);
  letter-spacing: var(--letter-spacing-wide);
  line-height: var(--line-height-body);
  text-transform: uppercase;
}
