/* ============================================================
   DEVILS OF DIRT HAWKING — TYPOGRAPHY
   ============================================================ */

:root {
  /* --- Font stacks ---------------------------------------- */
  --font-display: 'Anton', 'Arial Narrow', sans-serif;       /* huge impact */
  --font-condensed: 'Oswald', 'Arial Narrow', sans-serif;     /* subheads/nav */
  --font-body: 'Barlow', 'Helvetica Neue', Arial, sans-serif; /* body */
  --font-mono: 'Space Mono', 'Courier New', monospace;        /* labels/meta */

  /* --- Weights -------------------------------------------- */
  --fw-regular: 400; /* @kind font */
  --fw-medium: 500; /* @kind font */
  --fw-semibold: 600; /* @kind font */
  --fw-bold: 700; /* @kind font */

  /* --- Type scale (fluid-ish, fixed px for predictability) -
     Display is built for SHOUTING — posters, hero, sold-out
     stamps. Body stays tight and industrial. ---------------- */
  --text-display-xl: 96px;  /* hero poster */
  --text-display-lg: 68px;
  --text-display-md: 48px;
  --text-display-sm: 36px;

  --text-title-lg: 30px;   /* section titles (Oswald) */
  --text-title-md: 24px;
  --text-title-sm: 20px;

  --text-body-lg: 18px;
  --text-body-md: 16px;   /* base */
  --text-body-sm: 14px;

  --text-label: 13px;     /* mono eyebrows / tags */
  --text-micro: 11px;     /* fine print, legal */

  /* --- Line heights --------------------------------------- */
  --leading-tight: 0.95;  /* stacked display */
  --leading-snug: 1.1;
  --leading-normal: 1.5;
  --leading-relaxed: 1.65;

  /* --- Letter spacing ------------------------------------- */
  --tracking-display: -0.01em;  /* big condensed wants slight negative */
  --tracking-normal: 0;
  --tracking-wide: 0.08em;      /* mono eyebrows */
  --tracking-wider: 0.18em;     /* ALL-CAPS labels / stamps */
}

/* ---- Optional helper classes (consumers may use the tokens
   directly instead). Display & labels default to UPPERCASE —
   the brand shouts in caps. ----------------------------------- */
.dodh-display, h1, .entry-title {
  font-family: var(--font-display);
  font-weight: 400;
  line-height: var(--leading-tight);
  letter-spacing: var(--tracking-display);
  text-transform: uppercase;
  color: var(--bone-100);
}
.dodh-title, h2, h3 ,h4, h5, h6  {
  font-family: var(--font-condensed);
  font-weight: var(--fw-600, 600);
  font-weight: 600;
  line-height: var(--leading-snug);
  text-transform: uppercase;
}
.dodh-body, p, .woocommerce-terms-and-conditions-wrapper .woocommerce-privacy-policy-text p, .wc_payment_method .payment_box  {
  font-family: var(--font-body);
  font-weight: var(--fw-regular);
  line-height: var(--leading-relaxed);
  font-size: 18px;
  line-height: 1.55;
}
.dodh-label {
  font-family: var(--font-mono);
  font-weight: 700;
  font-size: var(--text-label);
  letter-spacing: var(--tracking-wider);
  text-transform: uppercase;
}
/* Buttons */
.dodh-btn--lg {
    height: var(--control-h-lg);
    padding: 0 28px;
    font-size: 18px;
}
.dodh-btn--md {
    height: var(--control-h-md);
    padding: 0 10px;
    font-size: 18px;
}
.dodh-btn--sm {
    height: var(--control-h-sm);
    padding: 0 10px;
    font-size: 10px;
}
.dodh-btn {
    --_shadow: var(--ink-950);
    font-family: var(--font-condensed);
    text-transform: uppercase;
    font-weight: 600;
    letter-spacing: .04em;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border: var(--border-thick) solid var(--ink-950);
    border-radius: var(--radius-sm);
    cursor: pointer;
    text-decoration: none;
    white-space: nowrap;
    transition: transform var(--dur-fast) var(--ease-snap), box-shadow var(--dur-fast) var(--ease-snap), background var(--dur-fast) var(--ease-snap);
    box-shadow: 4px 4px 0 var(--ink-950);
}
.dodh-btn--primary {
    background: var(--gold-500)!important;
    color: var(--ink-950)!important;
}
.dodh-btn--bone {
    background: var(--bone-200)!important;
    color: var(--ink-950)!important;
}
.dodh-btn--ghost {
    background: transparent;
    color: var(--bone-100);
    border-color: var(--concrete-500);
    box-shadow: none;
}
.dodh-btn--primary:hover, .dodh-btn--primary:focus {
    background: var(--gold-400)!important;
}
.dodh-btn--bone:hover, .dodh-btn--bone:focus {
    background: var(--bone-100)!important;
}
.dodh-btn:hover, .dodh-btn:focus {
    transform: translate(-1px, -1px);
    box-shadow: 5px 5px 0 var(--ink-950);
}
.dodh-btn--ghost:hover, .dodh-btn--ghost:focus {
    background: var(--ink-700);
    border-color: var(--bone-200);
    box-shadow: none;
    transform: none;
}
.dodh-secthead__title {
    font-family: var(--font-display);
    text-transform: uppercase;
    line-height: .92;
    letter-spacing: var(--tracking-display);
    color: var(--text-strong);
    margin: 0;
}
.dodh-secthead--lg.dodh-secthead__title {
    font-size: 56px;
}
.dodh-secthead__eyebrow {
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--gold-500);
    margin: 0 0 8px;
}
.site-main .woocommerce-breadcrumb {
    font-family: var(--font-mono);
    font-weight: 700;
    font-size: 13px;
    letter-spacing: .18em;
    text-transform: uppercase;
    color: var(--gold-500);
    margin: 0 0 8px;
}
.dodh-secthead__rule {
    height: var(--border-thick)!important;
    background: var(--gold-500)!important;
    border: none!important;
    margin: 14px 0 0!important;
    width: 64px!important;
}

