/* ============================================================
   Demo Day — shared design system
   Masters' Union DNA: warm paper, pastel cards, editorial
   Fraunces serif with italic emphasis, rounded corners, pill
   tags & buttons, big serif numbers. Vivid gradient kept rare.
   ============================================================ */

:root {
  --ink: #0B0B0B;
  --ink-soft: #2B2722;
  --paper: #FBFAF6;        /* warm white page */
  --cream: #F3EEE2;        /* neutral card */
  --cream-2: #EDE7D8;

  /* the four pastels */
  --butter: #FBEBBB;
  --sky: #B9E5EF;
  --mint: #DCEAD5;
  --peach: #F8E2CB;

  /* derived ink-on-pastel tints for borders/labels */
  --line: rgba(11, 11, 11, .13);
  --line-2: rgba(11, 11, 11, .07);
  --dim: #746E60;

  /* the rare touch */
  --grad: linear-gradient(97deg, #39B6D8 1%, #F7D344 47%, #E38330 100%);
  --grad-soft: linear-gradient(97deg, rgba(57,182,216,.16), rgba(247,211,68,.16) 48%, rgba(227,131,48,.16));

  --font: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
  --font-display: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;

  --r-xl: 30px;
  --r-lg: 22px;
  --r-md: 16px;
  --r-sm: 11px;
  --r-pill: 999px;

  --maxw: 1680px;
  --ease: cubic-bezier(.22, 1, .36, 1);
  --ease-out: cubic-bezier(.16, 1, .3, 1);
}

* { box-sizing: border-box; margin: 0; padding: 0; }
html { -webkit-text-size-adjust: 100%; }
body {
  font-family: var(--font);
  font-optical-sizing: auto;
  font-weight: 400;
  color: var(--ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; color: inherit; }
button { cursor: pointer; border: none; background: none; }
a { color: inherit; text-decoration: none; }
em { font-style: italic; }

.tnum { font-variant-numeric: lining-nums tabular-nums; }
.display { font-family: var(--font-display); }
.grad-text {
  background: var(--grad);
  -webkit-background-clip: text; background-clip: text;
  -webkit-text-fill-color: transparent; color: transparent;
}

/* uppercase tracked eyebrow */
.eyebrow {
  font-weight: 500;
  text-transform: uppercase;
  letter-spacing: .19em;
  font-size: clamp(10px, .8vw, 13px);
  line-height: 1;
  color: var(--dim);
}

/* pill tag (MU "ON CAMPUS · 4 YEARS" chips) */
.tag {
  display: inline-flex; align-items: center; gap: .5em;
  border: 1px solid var(--line); border-radius: var(--r-pill);
  padding: .5em .9em; font-size: clamp(10px, .8vw, 13px);
  text-transform: uppercase; letter-spacing: .12em; font-weight: 500;
}

.arrow::before { content: '→'; display: inline-block; }
.rule { height: 1px; width: 100%; background: var(--line); }

/* logo tile with initials fallback */
.logo-tile {
  display: grid; place-items: center; overflow: hidden;
  background: var(--cream); color: var(--ink);
  border-radius: var(--r-md);
  font-family: var(--font-display); font-weight: 600; line-height: 1;
}
.logo-tile img { width: 100%; height: 100%; object-fit: contain; }

@media (prefers-reduced-motion: reduce) {
  * { animation-duration: .001ms !important; transition-duration: .001ms !important; }
}
