
  html { scroll-behavior: smooth; }
  body {
    font-family: "Libre Franklin", Arial, sans-serif;
    background-color: #F7F6F1;
    color: #1E3A2A;
    -webkit-font-smoothing: antialiased;
  }

  .eyebrow {
    letter-spacing: 0.32em;
    text-transform: uppercase;
    font-size: 0.72rem;
    font-weight: 500;
  }

  .gold-rule {
    display: block;
    width: 3.5rem;
    height: 2px;
    background: #C9A961;
  }

  .hero-rule {
    display: block;
    width: 100%;
    max-width: 26rem;
    height: 1px;
    background: rgba(201, 169, 97, 0.45);
  }

  /* subtle paper texture on dark hero using pure CSS */
  .hero-texture {
    background-color: #1E3A2A;
    background-image:
      radial-gradient(rgba(255,255,255,0.028) 1px, transparent 1px),
      radial-gradient(rgba(255,255,255,0.02) 1px, transparent 1px);
    background-size: 26px 26px, 26px 26px;
    background-position: 0 0, 13px 13px;
  }

  .practice-row {
    transition: background-color 0.35s ease, border-color 0.35s ease;
    border-left: 2px solid transparent;
  }
  .practice-row:hover {
    background-color: #FFFFFF;
    border-left-color: #C9A961;
  }

  .reveal {
    opacity: 0;
    transform: translateY(24px);
    transition: opacity 0.8s ease, transform 0.8s ease;
  }
  .reveal.visible {
    opacity: 1;
    transform: translateY(0);
  }

  .field-blank {
    border-bottom: 1px dashed rgba(201, 169, 97, 0.7);
    color: rgba(30, 58, 42, 0.45);
    font-style: italic;
  }

  ::selection { background: #C9A961; color: #FFFFFF; }
