{
  "version": 1,
  "description": "Platform-owned presentation meanings. Templates declare supported choices; saved values remain tenant-owned. An absent override inherits the exact artifact's authored default. Hidden or unsupported values remain stored but are not projected into template rendering.",
  "sectionTypes": ["hero", "values", "cta", "homeHero", "impact", "events", "articles", "campaigns", "emergency", "stats", "appealGrid", "services", "documents", "people", "impactMap", "courses", "form"],
  "legacySectionAliases": {"programmes": "services", "resources": "documents", "whatsOn": "events"},
  "controls": {
    "sectionLayout": {
      "label": "Section layout",
      "kind": "choice",
      "scope": "section",
      "sectionTypes": ["hero"],
      "contentFields": {"imageUrl": "image", "imageAlt": "text"},
      "address": ["presentation", "sectionLayout"],
      "options": ["image-start", "image-end", "stacked"],
      "labels": {"image-start": "Image at start", "image-end": "Image at end", "stacked": "Image above"},
      "minimumOptions": 2,
      "reset": "remove",
      "target": "section-layout",
      "responsive": "author-defined",
      "attribute": "data-p60-section-layout",
      "description": "Author-owned image/text layout for an explicitly supported About introduction. Start/end follow the site direction. Mark the single natural outer root and existing frame/media/content slots; token CSS changes only bounded grid tracks and slot placement when a photograph exists. Missing/reset preserves authored styling. Preserve copy, imagery, reading order, links, gutters and narrow-screen stacking; never invent absent media, add arbitrary containers or target platform islands. Every exact section declaration is independent; missing support is unsupported."
    },
    "colourTreatment": {
      "label": "Colour treatment",
      "kind": "choice",
      "scope": "section",
      "sectionTypes": ["hero", "values", "cta", "impact", "events", "articles", "campaigns", "emergency", "stats", "appealGrid", "services", "documents", "people", "courses"],
      "address": ["presentation", "colourTreatment"],
      "options": ["standard", "soft", "contrast"],
      "labels": {"standard": "Standard", "soft": "Soft", "contrast": "Contrast"},
      "minimumOptions": 2,
      "reset": "remove",
      "target": "section-colour-treatment",
      "responsive": "author-defined",
      "attribute": "data-p60-colour-treatment",
      "description": "Coordinated author-owned section surface, copy, links and buttons within the selected Look. Missing/reset retains the original treatment. Mark the natural outer root and explicitly owned colour roles; token CSS changes paint only, never shared palette variables, imagery, layout or island internals. Home hero, impact maps and sections containing platform islands are not supported in this slice."
    },
    "headingScale": {
      "label": "Heading size",
      "kind": "choice",
      "scope": "section",
      "address": ["presentation", "headingScale"],
      "options": ["compact", "standard", "large"],
      "labels": {"compact": "Compact", "standard": "Standard", "large": "Large"},
      "minimumOptions": 2,
      "reset": "remove",
      "target": "section-heading",
      "responsive": "author-defined",
      "attribute": "data-p60-heading-scale",
      "description": "Changes only the actual section heading's responsive font size, never its heading level, eyebrow, body, cards, buttons or islands. Templates provide each size in their own CSS. The declared default describes inherited styling; it is not written into tenant content."
    },
    "sectionSpacing": {
      "label": "Section spacing",
      "kind": "choice",
      "scope": "section",
      "address": ["presentation", "sectionSpacing"],
      "options": ["compact", "standard", "spacious"],
      "labels": {"compact": "Compact", "standard": "Standard", "spacious": "Spacious"},
      "minimumOptions": 2,
      "reset": "remove",
      "target": "section-root",
      "responsive": "author-defined",
      "attribute": "data-p60-section-spacing",
      "description": "Changes only the natural outer section root's block-axis padding, never horizontal gutters, card gaps, heights or island internals. Templates provide each spacing in their own CSS. The declared default describes inherited styling; it is not written into tenant content. Keep the permanent hook even when the heading is hidden."
    },
    "imageOverlay": {
      "label": "Photo overlay",
      "kind": "choice",
      "scope": "section",
      "sectionTypes": ["homeHero"],
      "requiresSupport": "heroImagery",
      "address": ["presentation", "imageOverlay"],
      "options": ["subtle", "standard", "strong"],
      "labels": {"subtle": "Subtle", "standard": "Standard", "strong": "Strong"},
      "minimumOptions": 2,
      "reset": "remove",
      "target": "section-image-treatment",
      "responsive": "author-defined",
      "attribute": "data-p60-image-overlay",
      "description": "Changes only authored palette-derived decorative photo treatments in Home hero, never image opacity, source media, geometry, copy, widgets or a required readability scrim. Each exact artifact declares its safe choices and inherited default. Mark the existing photo wrapper with data-p60-image-overlay-media and empty decorative layers with data-p60-image-overlay-layer; token CSS may target those layers, marked wrapper pseudo-elements or the documented hero-slide-scrim. Missing and reset values preserve the authored treatment."
    },
    "headingAlignment": {
      "label": "Desktop heading alignment",
      "kind": "choice",
      "scope": "section",
      "address": ["headingAlignment"],
      "options": ["start", "center", "end"],
      "minimumOptions": 1,
      "reset": "remove",
      "target": "section-heading-and-eyebrow",
      "responsive": "desktop-1024",
      "attribute": "data-p60-heading-align",
      "declaration": "sectionHeadingAlignment"
    },
    "showCollectionLink": {
      "label": "Show collection link",
      "kind": "toggle",
      "scope": "section",
      "address": ["showCollectionLink"],
      "reset": "remove",
      "target": "collection-link",
      "responsive": "all",
      "attribute": "data-p60-collection-link",
      "declaration": "sectionCollectionLinkVisibility"
    }
  }
}
