:root {
      --ucla-blue: #2774AE;
      --ucla-gold: #FFD100;
      --ucla-dark-blue: #003B5C;
      --text-primary: #1a1a1a;
      --text-secondary: #4a4a4a;
      --text-light: #767676;
      --bg: #ffffff;
      --bg-accent: #f7f9fc;
      --border: #e2e8f0;
      --rule: #d4a017;
    }

    *, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

    body {
      font-family: 'Source Serif 4', Georgia, serif;
      font-weight: 300;
      background: var(--bg);
      color: var(--text-primary);
      line-height: 1.8;
      -webkit-font-smoothing: antialiased;
    }

    /* ── Header ── */
    .site-header {
      background: var(--ucla-dark-blue);
      padding: 18px 40px;
      display: flex;
      align-items: center;
      gap: 14px;
    }

    .site-header .org-name {
      font-family: 'Playfair Display', serif;
      font-size: 1rem;
      font-weight: 700;
      color: #fff;
      letter-spacing: 0.04em;
      text-transform: uppercase;
    }

    .site-header .tagline {
      font-family: 'Source Serif 4', serif;
      font-size: 0.75rem;
      color: var(--ucla-gold);
      letter-spacing: 0.12em;
      text-transform: uppercase;
      font-style: italic;
    }

    .header-divider {
      width: 1px;
      height: 36px;
      background: rgba(255,255,255,0.25);
    }

    /* ── Hero ── */
    .hero {
      background: var(--ucla-dark-blue);
      padding: 72px 40px 64px;
      text-align: center;
      position: relative;
      overflow: hidden;
    }

    .hero::before {
      content: '';
      position: absolute;
      inset: 0;
      background: radial-gradient(ellipse at 60% 0%, rgba(39,116,174,0.45) 0%, transparent 65%),
                  radial-gradient(ellipse at 20% 100%, rgba(255,209,0,0.12) 0%, transparent 55%);
      pointer-events: none;
    }

    .hero-label {
      display: inline-block;
      font-family: 'Source Serif 4', serif;
      font-size: 0.7rem;
      font-weight: 600;
      letter-spacing: 0.22em;
      text-transform: uppercase;
      color: var(--ucla-gold);
      margin-bottom: 22px;
    }

    .hero h1 {
      font-family: 'Playfair Display', serif;
      font-size: clamp(2rem, 5vw, 3.4rem);
      font-weight: 900;
      color: #fff;
      line-height: 1.2;
      max-width: 780px;
      margin: 0 auto 24px;
    }

    .hero-meta {
      font-size: 0.82rem;
      color: rgba(255,255,255,0.55);
      letter-spacing: 0.08em;
      text-transform: uppercase;
    }

    .gold-rule {
      width: 56px;
      height: 3px;
      background: var(--ucla-gold);
      margin: 28px auto 0;
      border-radius: 2px;
    }

    /* ── Article layout ── */
    .article-wrap {
      max-width: 740px;
      margin: 0 auto;
      padding: 64px 32px 80px;
    }

    .lede {
      font-size: 1.2rem;
      font-weight: 400;
      color: var(--text-primary);
      line-height: 1.75;
      margin-bottom: 48px;
      padding-bottom: 40px;
      border-bottom: 1px solid var(--border);
    }

    /* ── Sections ── */
    .section {
      margin-bottom: 52px;
    }

    .section-heading {
      font-family: 'Playfair Display', serif;
      font-size: 1.35rem;
      font-weight: 700;
      color: var(--ucla-dark-blue);
      margin-bottom: 16px;
      display: flex;
      align-items: center;
      gap: 12px;
    }

    .section-heading::before {
      content: '';
      display: block;
      width: 22px;
      height: 3px;
      background: var(--ucla-gold);
      flex-shrink: 0;
      border-radius: 2px;
    }

    p {
      margin-bottom: 20px;
      color: var(--text-secondary);
      font-size: 1.05rem;
    }

    /* ── Honorees table ── */
    .honorees {
      margin: 24px 0 8px;
      border-collapse: collapse;
      width: 100%;
    }

    .honorees tr {
      border-bottom: 1px solid var(--border);
    }

    .honorees tr:first-child {
      border-top: 2px solid var(--ucla-blue);
    }

    .honorees td {
      padding: 14px 12px;
      font-size: 0.97rem;
      vertical-align: top;
      color: var(--text-secondary);
    }

    .honorees td:first-child {
      font-weight: 600;
      color: var(--text-primary);
      width: 52%;
      padding-right: 20px;
    }

    .honorees td:last-child {
      font-style: italic;
      color: var(--ucla-blue);
      font-size: 0.9rem;
    }

    /* ── Impact callout ── */
    .impact-callout {
      background: var(--bg-accent);
      border-left: 4px solid var(--ucla-gold);
      padding: 28px 32px;
      margin: 40px 0;
      border-radius: 0 6px 6px 0;
    }

    .impact-callout .stat {
      font-family: 'Playfair Display', serif;
      font-size: 2.6rem;
      font-weight: 900;
      color: var(--ucla-dark-blue);
      line-height: 1.1;
    }

    .impact-callout .stat-label {
      font-size: 0.88rem;
      color: var(--text-light);
      letter-spacing: 0.06em;
      text-transform: uppercase;
      margin-top: 4px;
      margin-bottom: 16px;
    }

    .impact-callout p {
      font-size: 0.97rem;
      margin-bottom: 0;
    }

    /* ── CTA block ── */
    .cta-block {
      background: var(--ucla-dark-blue);
      border-radius: 8px;
      padding: 44px 40px;
      text-align: center;
      margin: 52px 0;
      position: relative;
      overflow: hidden;
    }

    .cta-block::before {
      content: '';
      position: absolute;
      top: -40px; right: -40px;
      width: 200px; height: 200px;
      border-radius: 50%;
      background: rgba(255,209,0,0.07);
      pointer-events: none;
    }

    .cta-block h2 {
      font-family: 'Playfair Display', serif;
      font-size: 1.6rem;
      font-weight: 700;
      color: #fff;
      margin-bottom: 14px;
    }

    .cta-block p {
      color: rgba(255,255,255,0.75);
      font-size: 1rem;
      max-width: 520px;
      margin: 0 auto 28px;
    }

    .cta-btn {
      display: inline-block;
      background: var(--ucla-gold);
      color: var(--ucla-dark-blue);
      font-family: 'Source Serif 4', serif;
      font-weight: 600;
      font-size: 0.95rem;
      letter-spacing: 0.05em;
      text-decoration: none;
      padding: 14px 36px;
      border-radius: 4px;
      transition: background 0.2s, transform 0.15s;
    }

    .cta-btn:hover {
      background: #ffe033;
      transform: translateY(-1px);
    }

    /* ── Footer links ── */
    .resource-links {
      display: flex;
      flex-direction: column;
      gap: 14px;
      padding-top: 40px;
      border-top: 1px solid var(--border);
      margin-top: 52px;
    }

    .resource-link {
      display: flex;
      align-items: center;
      gap: 14px;
      text-decoration: none;
      color: var(--ucla-blue);
      font-size: 0.95rem;
      font-weight: 600;
      transition: color 0.2s;
    }

    .resource-link:hover { color: var(--ucla-dark-blue); }

    .resource-link .link-icon {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 38px; height: 38px;
      background: var(--bg-accent);
      border-radius: 50%;
      flex-shrink: 0;
      font-size: 1rem;
      border: 1px solid var(--border);
    }

    /* ── Page footer ── */
    .page-footer {
      background: var(--ucla-dark-blue);
      text-align: center;
      padding: 32px 20px;
      font-size: 0.78rem;
      color: rgba(255,255,255,0.45);
      letter-spacing: 0.06em;
    }

    .page-footer strong {
      color: var(--ucla-gold);
      font-weight: 600;
    }