/* Halo Risk Advisors — Base primitives & helper classes
   Lightweight, opt-in. Uses only design tokens. */

/* Optional page reset for specimen/kit pages */
.hra-page{
  margin:0;
  background:var(--surface-page);
  color:var(--text-body);
  font-family:var(--font-sans);
  font-size:var(--fs-body);
  line-height:var(--lh-body);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

/* Type helpers */
.hra-display{font-family:var(--font-display);font-weight:var(--fw-regular);font-size:var(--fs-display);line-height:var(--lh-tight);letter-spacing:var(--ls-display);color:var(--text-strong);}
.hra-h1{font-family:var(--font-display);font-weight:var(--fw-regular);font-size:var(--fs-h1);line-height:var(--lh-heading);letter-spacing:var(--ls-display);color:var(--text-strong);}
.hra-h2{font-family:var(--font-display);font-weight:var(--fw-regular);font-size:var(--fs-h2);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--text-strong);}
.hra-h3{font-family:var(--font-display);font-weight:var(--fw-medium);font-size:var(--fs-h3);line-height:var(--lh-heading);letter-spacing:var(--ls-heading);color:var(--text-strong);}
.hra-h4{font-family:var(--font-sans);font-weight:var(--fw-bold);font-size:var(--fs-h4);line-height:var(--lh-snug);letter-spacing:var(--ls-heading);color:var(--text-strong);}
.hra-lead{font-family:var(--font-sans);font-weight:var(--fw-regular);font-size:var(--fs-body-lg);line-height:var(--lh-relaxed);color:var(--text-muted);}
.hra-eyebrow{font-family:var(--font-mono);font-weight:var(--fw-medium);font-size:var(--fs-eyebrow);letter-spacing:var(--ls-eyebrow);text-transform:uppercase;color:var(--text-accent);}

/* Accent rule — the gold hairline used under eyebrows / dividers */
.hra-rule{height:2px;width:48px;background:var(--brand-accent);border:0;}

/* Links */
a{color:var(--navy-600);text-decoration:none;transition:color var(--dur-fast) var(--ease-standard);}
a:hover{color:var(--gold-700);}

/* Layout container */
.hra-container{width:100%;max-width:var(--container-xl);margin-inline:auto;padding-inline:var(--gutter);}
