Theme.json gives you two levels of control over the block editor experience in your block theme: global settings that apply to all blocks, and block-specific settings for fine-tuned control.
Global settings go directly under the “settings” section and affect every block that supports those features. For example, disabling custom colors globally removes that option from paragraphs, headings, and all other blocks.
Block-specific settings live under “settings > blocks” where you target individual block types. You might remove font size controls from headings while keeping them for paragraphs, or create custom color palettes that only apply to specific blocks.
This two-tier approach lets you create a curated editing experience – remove unwanted options globally, then fine-tune specific blocks to match your design system. The result is a clean, purposeful interface that guides users toward good design choices.