{
  "$description": "Good Journey design tokens, W3C DTCG format, generated from the style-guide master's effective guide (brand goodjourney v2 on channel stable, theme marketing).",
  "color": {
    "marketing": {
      "$description": "Cream page",
      "light": {
        "$description": "Cream page",
        "gj-accent": {
          "$description": "The signal FILL — stickers, badges, display-size emphasis",
          "$type": "color",
          "$value": "#F15627"
        },
        "gj-accent-ink": {
          "$description": "Orange as small text — prices, ratings, review links, labels below 24px",
          "$type": "color",
          "$value": "#C5380D"
        },
        "gj-action": {
          "$description": "The primary pill — orange, with a LARGE cream label",
          "$type": "color",
          "$value": "#F15627"
        },
        "gj-action-hover": {
          "$description": "The primary pill at hover — navy",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-action-small": {
          "$description": "An orange action whose label is below 24px",
          "$type": "color",
          "$value": "#C5380D"
        },
        "gj-border": {
          "$description": "The default hairline",
          "$type": "color",
          "$value": "rgba(49, 46, 124, 0.16)"
        },
        "gj-border-strong": {
          "$description": "The 2px navy rule — tables, cards, boxes",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-brick": {
          "$description": "Donuts · Horchata flavour — brick red",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "15, 85, 100, 0",
                "pantone": "2347 U"
              }
            }
          },
          "$type": "color",
          "$value": "#D34D2A"
        },
        "gj-butter": {
          "$description": "Cookies · Churro flavour — butter",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 13, 40, 0",
                "pantone": "1205 C"
              }
            }
          },
          "$type": "color",
          "$value": "#FFDD98"
        },
        "gj-chocolate": {
          "$description": "Donuts · Dark Chocolate flavour — chocolate brown",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "50, 67, 67, 50",
                "pantone": "7582 U"
              }
            }
          },
          "$type": "color",
          "$value": "#543A34"
        },
        "gj-cream": {
          "$description": "Cream — the screen page, card grounds, labels on navy and orange",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 3, 6, 0",
                "notes": "Print RGB 255, 248, 239 (#FFF8EF), p.34. Screens use #FFFBF7 (decision G-17).",
                "pantone": "9226 U"
              }
            }
          },
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-denim": {
          "$description": "Donuts · Dark Chocolate flavour — the deeper blue",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "70, 30, 0, 15",
                "pantone": "2143 U"
              }
            }
          },
          "$type": "color",
          "$value": "#63A1D6"
        },
        "gj-emphasis": {
          "$description": "Colour-shift emphasis inside a display headline",
          "$type": "color",
          "$value": "#F15627"
        },
        "gj-fill-soft": {
          "$description": "A navy wash — empty states, chips",
          "$type": "color",
          "$value": "rgba(49, 46, 124, 0.06)"
        },
        "gj-focus-ring": {
          "$description": "The focus outline",
          "$type": "color",
          "$value": "#5D59C4"
        },
        "gj-hairline": {
          "$description": "A soft rule",
          "$type": "color",
          "$value": "#D3D3EB"
        },
        "gj-highlight": {
          "$description": "The highlighter — lime behind a phrase",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-info": {
          "$description": "Information as text and rule",
          "$type": "color",
          "$value": "#0D6DBE"
        },
        "gj-ink": {
          "$description": "Body copy, headlines, the wordmark",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-ink-muted": {
          "$description": "Secondary copy, captions, persona body",
          "$type": "color",
          "$value": "#646491"
        },
        "gj-ink-secondary": {
          "$description": "Secondary text — the violet copy (FAQ, inputs, option pills)",
          "$type": "color",
          "$value": "#5D59C4"
        },
        "gj-ink-soft": {
          "$description": "The book's soft body ink — persona copy",
          "$type": "color",
          "$value": "#646491"
        },
        "gj-lavender": {
          "$description": "Lavender — persona panels, quote cards, the small-scale table cells",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "10, 10, 0, 8",
                "pantone": "7443 C"
              }
            }
          },
          "$type": "color",
          "$value": "#D3D3EB"
        },
        "gj-lilac": {
          "$description": "Lilac — light band ground (reviews), comparison header cells and keylines, emphasis on navy",
          "$type": "color",
          "$value": "#DED9FF"
        },
        "gj-lime": {
          "$description": "Lime — secondary pills, the DONUTS pill, the starburst and smiley seal, accents on navy",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "20, 0, 100, 0",
                "pantone": "394 C or 388 U"
              }
            }
          },
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-lime-tint": {
          "$description": "Pale lime — persona panels, quote cards, the large-scale table cells",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 0, 19, 5",
                "pantone": "0131 C"
              }
            }
          },
          "$type": "color",
          "$value": "#F1F2C4"
        },
        "gj-lime-wash": {
          "$description": "Lime-wash — the pale-lime panel (creators split) and ingredient circles",
          "$type": "color",
          "$value": "#F0F6D3"
        },
        "gj-link": {
          "$description": "A link at rest — navy, underlined",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-link-hover": {
          "$description": "A link at hover and focus",
          "$type": "color",
          "$value": "#5D59C4"
        },
        "gj-marigold": {
          "$description": "Cookies · Churro flavour — marigold",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 32, 100, 0",
                "pantone": "143 C"
              }
            }
          },
          "$type": "color",
          "$value": "#FDB515"
        },
        "gj-navy": {
          "$description": "The brand ink: the wordmark, headlines, body copy, the navy blocks",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "92, 97, 29, 19",
                "notes": "p.34 and p.52. p.43 prints this hex beside CMYK 43, 58, 0, 60 under a PINK swatch — see drift.",
                "pantone": "669 C"
              }
            }
          },
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-navy-deep": {
          "$description": "The book's deep navy — gradient shadows on navy pages",
          "$type": "color",
          "$value": "#181752"
        },
        "gj-negative": {
          "$description": "Error as text and rule",
          "$type": "color",
          "$value": "#BB4425"
        },
        "gj-on-action": {
          "$description": "Label on the primary button",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-on-highlight": {
          "$description": "Text on the highlighter",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-on-ink": {
          "$description": "Ink on a navy fill",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-orange": {
          "$description": "The signal colour: primary pills, emphasis at display size, stickers, the promo band",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 82, 96, 0",
                "pantone": "1585 C or 1655 U"
              }
            }
          },
          "$type": "color",
          "$value": "#F15627"
        },
        "gj-orange-light": {
          "$description": "The promo band’s second orange — a FILL beside --gj-orange behind a scalloped edge",
          "$type": "color",
          "$value": "#F78650"
        },
        "gj-peach": {
          "$description": "Donuts · Horchata flavour — peach",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 20, 40, 0",
                "pantone": "4029 U"
              }
            }
          },
          "$type": "color",
          "$value": "#FED09E"
        },
        "gj-periwinkle": {
          "$description": "The manual’s periwinkle — print and brand-book only; never on screen",
          "$type": "color",
          "$value": "#7878FA"
        },
        "gj-periwinkle-grey": {
          "$description": "Cookies · Churro flavour — periwinkle grey",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "30, 29, 0, 23",
                "pantone": "7446 C"
              }
            }
          },
          "$type": "color",
          "$value": "#8A8BC4"
        },
        "gj-pink": {
          "$description": "Pink — the Horchata pack and sticker grounds",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 37, 0, 0",
                "pantone": "203 U"
              }
            }
          },
          "$type": "color",
          "$value": "#FFD0E5"
        },
        "gj-pink-rule": {
          "$description": "Pink rule — the 2px divider between FAQ rows",
          "$type": "color",
          "$value": "#F3A1C4"
        },
        "gj-positive": {
          "$description": "Success as text and rule",
          "$type": "color",
          "$value": "#1E7A46"
        },
        "gj-sky": {
          "$description": "Sky blue — the Dark Chocolate pack, the website announcement rail",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "60, 26, 0, 0",
                "pantone": "284 U"
              }
            }
          },
          "$type": "color",
          "$value": "#5DAFF4"
        },
        "gj-surface": {
          "$description": "The page — cream",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-surface-raised": {
          "$description": "Cards on the page — cream, framed by the navy keyline",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-surface-soft": {
          "$description": "Lilac band — reviews, quote cards",
          "$type": "color",
          "$value": "#DED9FF"
        },
        "gj-surface-tint": {
          "$description": "Lime-wash band — the pale-lime panel",
          "$type": "color",
          "$value": "#F0F6D3"
        },
        "gj-tangerine": {
          "$description": "Cookies · Churro flavour — tangerine",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 52, 86, 4",
                "pantone": "158 C"
              }
            }
          },
          "$type": "color",
          "$value": "#F47522"
        },
        "gj-violet": {
          "$description": "Secondary brand colour — a cooler, lighter navy",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "78, 78, 9, 1",
                "pantone": "7670 C"
              }
            }
          },
          "$type": "color",
          "$value": "#5D59C4"
        },
        "gj-violet-ink": {
          "$description": "The book's violet text colour",
          "$type": "color",
          "$value": "#5351BD"
        },
        "gj-warning": {
          "$description": "Warning as text and rule",
          "$type": "color",
          "$value": "#8F6301"
        },
        "gj-white": {
          "$description": "White",
          "$extensions": {
            "ai.strietzel.styleguide": {
              "print": {
                "cmyk": "0, 0, 0, 0",
                "pantone": "WHITE INK"
              }
            }
          },
          "$type": "color",
          "$value": "#FFFFFF"
        }
      }
    },
    "navy": {
      "$description": "Navy block",
      "light": {
        "$description": "Cream page",
        "gj-accent": {
          "$description": "The signal on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-accent-ink": {
          "$description": "Signal text on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-action": {
          "$description": "The primary button on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-action-hover": {
          "$description": "The button at hover on navy",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-action-small": {
          "$description": "A small-label action on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-border": {
          "$description": "Hairline on navy",
          "$type": "color",
          "$value": "rgba(255, 251, 247, 0.18)"
        },
        "gj-border-strong": {
          "$description": "Strong rule on navy",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-emphasis": {
          "$description": "Colour-shift emphasis on navy",
          "$type": "color",
          "$value": "#DED9FF"
        },
        "gj-fill-soft": {
          "$description": "A cream wash on navy",
          "$type": "color",
          "$value": "rgba(255, 251, 247, 0.08)"
        },
        "gj-focus-ring": {
          "$description": "Focus outline on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-hairline": {
          "$description": "Soft rule on navy",
          "$type": "color",
          "$value": "rgba(255, 251, 247, 0.12)"
        },
        "gj-highlight": {
          "$description": "The highlighter on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-info": {
          "$description": "Information on navy",
          "$type": "color",
          "$value": "#5DAFF4"
        },
        "gj-ink": {
          "$description": "Copy on navy",
          "$type": "color",
          "$value": "#FFFBF7"
        },
        "gj-ink-muted": {
          "$description": "Secondary copy on navy",
          "$type": "color",
          "$value": "#D3D3EB"
        },
        "gj-ink-secondary": {
          "$description": "Supporting text on navy",
          "$type": "color",
          "$value": "#F0F6D3"
        },
        "gj-link": {
          "$description": "A link on navy",
          "$type": "color",
          "$value": "#E9E72F"
        },
        "gj-link-hover": {
          "$description": "A link at hover on navy",
          "$type": "color",
          "$value": "#DED9FF"
        },
        "gj-negative": {
          "$description": "Error on navy",
          "$type": "color",
          "$value": "#F58461"
        },
        "gj-on-action": {
          "$description": "Label on the lime button",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-on-highlight": {
          "$description": "Text on the highlighter",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-on-ink": {
          "$description": "Ink on a cream fill",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-positive": {
          "$description": "Success on navy",
          "$type": "color",
          "$value": "#7BD4A4"
        },
        "gj-surface": {
          "$description": "The navy block",
          "$type": "color",
          "$value": "#312E7C"
        },
        "gj-surface-raised": {
          "$description": "A card on navy — recessed",
          "$type": "color",
          "$value": "#26236B"
        },
        "gj-surface-soft": {
          "$description": "A soft band on navy",
          "$type": "color",
          "$value": "#2A2774"
        },
        "gj-surface-tint": {
          "$description": "The deep band",
          "$type": "color",
          "$value": "#181752"
        },
        "gj-warning": {
          "$description": "Warning on navy",
          "$type": "color",
          "$value": "#FDB515"
        }
      }
    }
  },
  "cubicBezier": {
    "gj-ease": {
      "$description": "Reveals and hovers (G-8)",
      "$type": "cubicBezier",
      "$value": [
        0.22,
        1,
        0.36,
        1
      ]
    }
  },
  "dimension": {
    "radius": {
      "max": {
        "$description": "The brand's maximum corner radius (rules.radius.max).",
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 20
        }
      }
    },
    "space": {
      "gj-space-1": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 4
        }
      },
      "gj-space-2": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 8
        }
      },
      "gj-space-3": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 16
        }
      },
      "gj-space-4": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 24
        }
      },
      "gj-space-5": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 40
        }
      },
      "gj-space-6": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 64
        }
      },
      "gj-space-7": {
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 96
        }
      }
    },
    "structure": {
      "gj-card-border": {
        "$description": "The sticker card’s navy keyline (decision G-31)",
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 4
        }
      },
      "gj-header-height": {
        "$description": "Site header — 128px desktop, 80px mobile, sticky, hides on scroll (decision G-34)",
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 128
        }
      },
      "gj-header-height-mobile": {
        "$description": "Site header on mobile",
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 80
        }
      },
      "gj-page-max": {
        "$description": "Content measure (the website runs 1162–1300px)",
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 1280
        }
      },
      "gj-rule-width": {
        "$description": "Box rules and table borders (pp. 15, 32–33)",
        "$type": "dimension",
        "$value": {
          "unit": "px",
          "value": 2
        }
      }
    },
    "type": {
      "gj-text-base": {
        "$description": "Body — --font-sans, line-height 1.6",
        "$type": "dimension",
        "$value": {
          "unit": "rem",
          "value": 1
        }
      },
      "gj-text-label": {
        "$description": "Labels and eyebrows — --font-label, uppercase, +0.04em (20px)",
        "$type": "dimension",
        "$value": {
          "unit": "rem",
          "value": 1.25
        }
      },
      "gj-text-lead": {
        "$description": "Lead — --font-sans-medium, line-height 1.2 (24px; 16px mobile)",
        "$type": "dimension",
        "$value": {
          "unit": "rem",
          "value": 1.5
        }
      },
      "gj-text-price": {
        "$description": "Prices and claim badges — --font-price, +1.2px (20px)",
        "$type": "dimension",
        "$value": {
          "unit": "rem",
          "value": 1.25
        }
      },
      "gj-text-small": {
        "$description": "Captions, legal lines — the marketing floor",
        "$type": "dimension",
        "$value": {
          "unit": "rem",
          "value": 0.875
        }
      },
      "gj-text-subtitle": {
        "$description": "Band subtitle — --font-headline, sentence case, line-height 1.6 (29.6px)",
        "$type": "dimension",
        "$value": {
          "unit": "rem",
          "value": 1.85
        }
      }
    }
  },
  "duration": {
    "gj-duration-base": {
      "$description": "Sticker pop, card lift",
      "$type": "duration",
      "$value": {
        "unit": "ms",
        "value": 250
      }
    },
    "gj-duration-header": {
      "$description": "The header hiding on scroll-down and returning",
      "$type": "duration",
      "$value": {
        "unit": "ms",
        "value": 350
      }
    },
    "gj-duration-quick": {
      "$description": "Hover colour",
      "$type": "duration",
      "$value": {
        "unit": "ms",
        "value": 150
      }
    },
    "gj-duration-reveal": {
      "$description": "A band revealing once",
      "$type": "duration",
      "$value": {
        "unit": "ms",
        "value": 400
      }
    }
  },
  "fontFamily": {
    "font-display": {
      "$description": "Section titles, H1s, page-template headings and document titles — uppercase on marketing bands.",
      "$type": "fontFamily",
      "$value": [
        "Obviously Narrow",
        "obviously-narrow",
        "Barlow Condensed Black",
        "Barlow Condensed",
        "Arial Narrow",
        "sans-serif"
      ]
    },
    "font-headline": {
      "$description": "Button labels (uppercase), card and plan titles (Title Case), band subtitles, benefit labels; the manual’s statements.",
      "$type": "fontFamily",
      "$value": [
        "Barlow Condensed SemiBold",
        "Barlow Condensed",
        "Arial Narrow",
        "sans-serif"
      ]
    },
    "font-label": {
      "$description": "Labels, eyebrows, footer headings, FAQ questions, table headers.",
      "$type": "fontFamily",
      "$value": [
        "Barlow Condensed Bold",
        "Barlow Condensed",
        "Arial Narrow",
        "sans-serif"
      ]
    },
    "font-marquee": {
      "$description": "The marquee band — one repeating line, uppercase, 128px. Never in documents.",
      "$type": "fontFamily",
      "$value": [
        "Bicyclette Black",
        "bicyclette",
        "Barlow Black",
        "Arial Black",
        "sans-serif"
      ]
    },
    "font-price": {
      "$description": "Prices and figures, navigation links, claim badges, product sub-headings.",
      "$type": "fontFamily",
      "$value": [
        "Barlow SemiBold",
        "Barlow",
        "Arial Narrow",
        "sans-serif"
      ]
    },
    "font-prose": {
      "$description": "Print and collateral body copy in the brand book; on screen only where a licensed copy is loaded.",
      "$type": "fontFamily",
      "$value": [
        "Bicyclette",
        "bicyclette",
        "Poppins",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ]
    },
    "font-sans": {
      "$description": "Every running word on screen — body, navigation, forms, operator UI.",
      "$type": "fontFamily",
      "$value": [
        "Poppins",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ]
    },
    "font-sans-bold": {
      "$description": "Buttons, labels, table headers, emphasis.",
      "$type": "fontFamily",
      "$value": [
        "Poppins Bold",
        "Poppins",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ]
    },
    "font-sans-medium": {
      "$description": "Lead paragraphs (24px / 1.2), footer links, small meta lines.",
      "$type": "fontFamily",
      "$value": [
        "Poppins Medium",
        "Poppins",
        "Helvetica Neue",
        "Arial",
        "sans-serif"
      ]
    },
    "font-script": {
      "$description": "Artwork only — packaging flavour lines and stickers. Never live UI text.",
      "$type": "fontFamily",
      "$value": [
        "alkaline",
        "Brush Script MT",
        "cursive"
      ]
    },
    "font-title": {
      "$description": "Wide titles; the manual’s divider titles.",
      "$type": "fontFamily",
      "$value": [
        "Obviously Black",
        "Obviously",
        "obviously",
        "Barlow Black",
        "Arial Black",
        "sans-serif"
      ]
    }
  }
}
