{
  "storeType": "fashion",
  "storeName": "Maison Vélour",
  "frameworkHint": "next",
  "manifestVersion": "1.0.0",
  "colorMode": "auto",
  "locales": [
    {
      "code": "en",
      "label": "English",
      "default": true
    },
    {
      "code": "fr",
      "label": "Français",
      "suffix": "_fr"
    }
  ],
  "description": "Luxury-editorial fashion storefront. Needs backend before going live: stock notify-me (PDP), product resource picker for lookbook hotspots, structured filters for occasion/aesthetic, page type \"not_found\".",
  "supportedPages": [
    {
      "type": "global",
      "label": "Global Layout",
      "seo": false
    },
    {
      "type": "cart",
      "label": "Cart",
      "seo": false
    },
    {
      "type": "home",
      "label": "Homepage",
      "seo": true
    },
    {
      "type": "products",
      "label": "Products",
      "seo": true
    },
    {
      "type": "product_detail",
      "label": "Product Detail",
      "seo": true
    },
    {
      "type": "collection_index",
      "label": "Collections (Index)",
      "seo": true
    },
    {
      "type": "collection_detail",
      "label": "Collection (Detail)",
      "seo": true
    },
    {
      "type": "lookbook",
      "label": "Lookbook",
      "seo": true
    },
    {
      "type": "about",
      "label": "About Us",
      "seo": true
    },
    {
      "type": "blog",
      "label": "Journal",
      "seo": true
    },
    {
      "type": "blog_post",
      "label": "Journal Post",
      "seo": true
    },
    {
      "type": "contact",
      "label": "Contact",
      "seo": true
    },
    {
      "type": "faq",
      "label": "FAQ",
      "seo": true
    },
    {
      "type": "search",
      "label": "Search",
      "seo": false
    },
    {
      "type": "checkout",
      "label": "Checkout",
      "seo": false
    },
    {
      "type": "order_success",
      "label": "Order Success",
      "seo": false
    },
    {
      "type": "account",
      "label": "Account",
      "seo": false
    },
    {
      "type": "auth",
      "label": "Auth",
      "seo": false
    },
    {
      "type": "track",
      "label": "Order Tracking",
      "seo": false
    },
    {
      "type": "wishlist",
      "label": "Wishlist",
      "seo": false
    },
    {
      "type": "legal",
      "label": "Terms of Service",
      "seo": false
    },
    {
      "type": "return_policy",
      "label": "Return Policy",
      "seo": false
    },
    {
      "type": "privacy_policy",
      "label": "Privacy Policy",
      "seo": false
    },
    {
      "type": "shipping_policy",
      "label": "Shipping Policy",
      "seo": false
    },
    {
      "type": "cookie_settings",
      "label": "Cookie Settings",
      "seo": false
    },
    {
      "type": "not_found",
      "label": "404 (proposed page type)",
      "seo": false
    }
  ],
  "components": [
    {
      "type": "AnnouncementBar",
      "label": "Announcement Bar",
      "icon": "Campaign",
      "deletable": false,
      "variants": [
        {
          "id": "scrolling",
          "label": "Scrolling ticker"
        },
        {
          "id": "simple",
          "label": "Simple (one message)"
        }
      ],
      "propsSchema": [
        {
          "id": "messages",
          "type": "blocks",
          "label": "Messages",
          "blockLabel": "Message",
          "maxBlocks": 6,
          "blockFields": [
            {
              "id": "tag",
              "type": "text",
              "label": "Tag (English)"
            },
            {
              "id": "tag_fr",
              "type": "text",
              "label": "Tag (French)"
            },
            {
              "id": "text",
              "type": "text",
              "label": "Message (English)"
            },
            {
              "id": "text_fr",
              "type": "text",
              "label": "Message (French)"
            }
          ]
        }
      ],
      "defaultProps": {
        "messages": [
          {
            "tag": "Delivery",
            "tag_fr": "Livraison",
            "text": "Complimentary shipping on orders over $250",
            "text_fr": "Livraison offerte dès 250 $ d’achat"
          },
          {
            "tag": "Returns",
            "tag_fr": "Retours",
            "text": "Free 30-day returns, no questions asked",
            "text_fr": "Retours gratuits sous 30 jours, sans justification"
          },
          {
            "tag": "New",
            "tag_fr": "Nouveau",
            "text": "The Nocturne Collection is here — discover the edit",
            "text_fr": "La collection Nocturne est arrivée — découvrez la sélection"
          }
        ]
      }
    },
    {
      "type": "Navbar",
      "label": "Main Navbar + Mega Menu",
      "icon": "Menu",
      "deletable": false,
      "variants": [
        {
          "id": "centered",
          "label": "Centered masthead (logo centred, menu below)"
        },
        {
          "id": "standard",
          "label": "Standard (logo left, menu centred)"
        }
      ],
      "propsSchema": [
        {
          "id": "logoUrl",
          "type": "image",
          "label": "Logo image (overrides Settings logo)"
        },
        {
          "id": "logoText",
          "type": "text",
          "label": "Logo text (English)"
        },
        {
          "id": "logoText_fr",
          "type": "text",
          "label": "Logo text (French)"
        },
        {
          "id": "menuItems",
          "type": "blocks",
          "label": "Menu items",
          "blockLabel": "Menu item",
          "maxBlocks": 8,
          "blockFields": [
            {
              "id": "label",
              "type": "text",
              "label": "Label (English)"
            },
            {
              "id": "label_fr",
              "type": "text",
              "label": "Label (French)"
            },
            {
              "id": "href",
              "type": "link",
              "label": "Link"
            }
          ]
        },
        {
          "id": "searchPlaceholder",
          "type": "text",
          "label": "Search pill text (English)"
        },
        {
          "id": "searchPlaceholder_fr",
          "type": "text",
          "label": "Search pill text (French)"
        },
        {
          "id": "megaWomenTitle",
          "type": "text",
          "label": "Mega menu — women column (English)"
        },
        {
          "id": "megaWomenTitle_fr",
          "type": "text",
          "label": "Mega menu — women column (French)"
        },
        {
          "id": "megaMenTitle",
          "type": "text",
          "label": "Mega menu — men column (English)"
        },
        {
          "id": "megaMenTitle_fr",
          "type": "text",
          "label": "Mega menu — men column (French)"
        },
        {
          "id": "megaAccessoriesTitle",
          "type": "text",
          "label": "Mega menu — accessories column (English)"
        },
        {
          "id": "megaAccessoriesTitle_fr",
          "type": "text",
          "label": "Mega menu — accessories column (French)"
        },
        {
          "id": "megaOccasionTitle",
          "type": "text",
          "label": "Mega menu — occasion column (English)"
        },
        {
          "id": "megaOccasionTitle_fr",
          "type": "text",
          "label": "Mega menu — occasion column (French)"
        },
        {
          "id": "megaStyleTitle",
          "type": "text",
          "label": "Mega menu — aesthetic column (English)"
        },
        {
          "id": "megaStyleTitle_fr",
          "type": "text",
          "label": "Mega menu — aesthetic column (French)"
        },
        {
          "id": "megaFeatureImage",
          "type": "image",
          "label": "Mega menu feature image"
        },
        {
          "id": "megaFeatureEyebrow",
          "type": "text",
          "label": "Mega menu feature eyebrow (English)"
        },
        {
          "id": "megaFeatureEyebrow_fr",
          "type": "text",
          "label": "Mega menu feature eyebrow (French)"
        },
        {
          "id": "megaFeatureTitle",
          "type": "text",
          "label": "Mega menu feature title (English)"
        },
        {
          "id": "megaFeatureTitle_fr",
          "type": "text",
          "label": "Mega menu feature title (French)"
        },
        {
          "id": "megaFeatureCta",
          "type": "text",
          "label": "Mega menu feature link label (English)"
        },
        {
          "id": "megaFeatureCta_fr",
          "type": "text",
          "label": "Mega menu feature link label (French)"
        },
        {
          "id": "megaFeatureUrl",
          "type": "link",
          "label": "Mega menu feature link"
        }
      ],
      "defaultProps": {
        "logoText": "Maison Vélour",
        "logoText_fr": "Maison Vélour",
        "menuItems": [
          {
            "label": "New Arrivals",
            "label_fr": "Nouveautés",
            "href": "/collections/new-arrivals"
          },
          {
            "label": "Shop",
            "label_fr": "Boutique",
            "href": "/shop"
          },
          {
            "label": "Lookbooks",
            "label_fr": "Lookbooks",
            "href": "/lookbook"
          },
          {
            "label": "Sale",
            "label_fr": "Soldes",
            "href": "/collections/sale"
          },
          {
            "label": "Journal",
            "label_fr": "Journal",
            "href": "/blog"
          },
          {
            "label": "About",
            "label_fr": "La Maison",
            "href": "/about"
          }
        ],
        "searchPlaceholder": "Search the boutique",
        "searchPlaceholder_fr": "Rechercher dans la boutique",
        "megaWomenTitle": "Women",
        "megaWomenTitle_fr": "Femme",
        "megaMenTitle": "Men",
        "megaMenTitle_fr": "Homme",
        "megaAccessoriesTitle": "Accessories",
        "megaAccessoriesTitle_fr": "Accessoires",
        "megaOccasionTitle": "By occasion",
        "megaOccasionTitle_fr": "Par occasion",
        "megaStyleTitle": "By aesthetic",
        "megaStyleTitle_fr": "Par esthétique",
        "megaFeatureImage": "https://images.unsplash.com/photo-1509631179647-0177331693ae?w=1600&q=80&auto=format&fit=crop",
        "megaFeatureEyebrow": "The Edit",
        "megaFeatureEyebrow_fr": "La Sélection",
        "megaFeatureTitle": "Nocturne: dressing after dark",
        "megaFeatureTitle_fr": "Nocturne : s’habiller la nuit",
        "megaFeatureCta": "Shop the story",
        "megaFeatureCta_fr": "Découvrir",
        "megaFeatureUrl": "/lookbook"
      },
      "description": "Mega menu columns list live categories (data-live=\"categories\")."
    },
    {
      "type": "SearchModalSection",
      "label": "Search Overlay",
      "icon": "Search",
      "deletable": false,
      "variants": [
        {
          "id": "fullscreen-search",
          "label": "Fullscreen search"
        }
      ],
      "propsSchema": [
        {
          "id": "title",
          "type": "text",
          "label": "Title (English)"
        },
        {
          "id": "title_fr",
          "type": "text",
          "label": "Title (French)"
        },
        {
          "id": "placeholder",
          "type": "text",
          "label": "Input placeholder (English)"
        },
        {
          "id": "placeholder_fr",
          "type": "text",
          "label": "Input placeholder (French)"
        },
        {
          "id": "trendingTitle",
          "type": "text",
          "label": "Trending label (English)"
        },
        {
          "id": "trendingTitle_fr",
          "type": "text",
          "label": "Trending label (French)"
        },
        {
          "id": "suggestionsTitle",
          "type": "text",
          "label": "Suggestions label (English)"
        },
        {
          "id": "suggestionsTitle_fr",
          "type": "text",
          "label": "Suggestions label (French)"
        },
        {
          "id": "productsTitle",
          "type": "text",
          "label": "Products label (English)"
        },
        {
          "id": "productsTitle_fr",
          "type": "text",
          "label": "Products label (French)"
        },
        {
          "id": "loadingText",
          "type": "text",
          "label": "Loading text (English)"
        },
        {
          "id": "loadingText_fr",
          "type": "text",
          "label": "Loading text (French)"
        },
        {
          "id": "emptyStateTitle",
          "type": "text",
          "label": "No-results title (English)"
        },
        {
          "id": "emptyStateTitle_fr",
          "type": "text",
          "label": "No-results title (French)"
        },
        {
          "id": "emptyStateText",
          "type": "text",
          "label": "No-results text — {query} (English)"
        },
        {
          "id": "emptyStateText_fr",
          "type": "text",
          "label": "No-results text — {query} (French)"
        },
        {
          "id": "viewAllResultsLabel",
          "type": "text",
          "label": "View all label — {query} (English)"
        },
        {
          "id": "viewAllResultsLabel_fr",
          "type": "text",
          "label": "View all label — {query} (French)"
        },
        {
          "id": "closeLabel",
          "type": "text",
          "label": "Close aria-label (English)"
        },
        {
          "id": "closeLabel_fr",
          "type": "text",
          "label": "Close aria-label (French)"
        },
        {
          "id": "trending",
          "type": "blocks",
          "label": "Trending searches",
          "blockLabel": "Search",
          "maxBlocks": 8,
          "blockFields": [
            {
              "id": "label",
              "type": "text",
              "label": "Term (English)"
            },
            {
              "id": "label_fr",
              "type": "text",
              "label": "Term (French)"
            }
          ]
        }
      ],
      "defaultProps": {
        "title": "Search",
        "title_fr": "Recherche",
        "placeholder": "Search dresses, coats, the Petit Sac…",
        "placeholder_fr": "Robes, manteaux, le Petit Sac…",
        "trendingTitle": "Trending now",
        "trendingTitle_fr": "Tendances",
        "suggestionsTitle": "Suggestions",
        "suggestionsTitle_fr": "Suggestions",
        "productsTitle": "Products",
        "productsTitle_fr": "Produits",
        "loadingText": "Searching the boutique…",
        "loadingText_fr": "Recherche en cours…",
        "emptyStateTitle": "No results found",
        "emptyStateTitle_fr": "Aucun résultat",
        "emptyStateText": "We couldn’t find anything for \"{query}\". Try another word, or browse New Arrivals.",
        "emptyStateText_fr": "Rien trouvé pour « {query} ». Essayez un autre mot ou parcourez les nouveautés.",
        "viewAllResultsLabel": "View all results for \"{query}\"",
        "viewAllResultsLabel_fr": "Voir tous les résultats pour « {query} »",
        "closeLabel": "Close search",
        "closeLabel_fr": "Fermer la recherche",
        "trending": [
          {
            "label": "Silk slip",
            "label_fr": "Nuisette en soie"
          },
          {
            "label": "Wool coat",
            "label_fr": "Manteau en laine"
          },
          {
            "label": "Cashmere",
            "label_fr": "Cachemire"
          },
          {
            "label": "Petit Sac",
            "label_fr": "Petit Sac"
          },
          {
            "label": "Wide-leg denim",
            "label_fr": "Jean large"
          },
          {
            "label": "Gold hoops",
            "label_fr": "Créoles dorées"
          }
        ]
      }
    },
    {
      "type": "QuickViewModal",
      "label": "Quick View Modal",
      "icon": "Visibility",
      "deletable": true,
      "variants": [
        {
          "id": "modal",
          "label": "Modal"
        }
      ],
      "propsSchema": [
        {
          "id": "colorLabel",
          "type": "text",
          "label": "Colour label (English)"
        },
        {
          "id": "colorLabel_fr",
          "type": "text",
          "label": "Colour label (French)"
        },
        {
          "id": "sizeLabel",
          "type": "text",
          "label": "Size label (English)"
        },
        {
          "id": "sizeLabel_fr",
          "type": "text",
          "label": "Size label (French)"
        },
        {
          "id": "selectSizeHint",
          "type": "text",
          "label": "Select-size hint (English)"
        },
        {
          "id": "selectSizeHint_fr",
          "type": "text",
          "label": "Select-size hint (French)"
        },
        {
          "id": "addLabel",
          "type": "text",
          "label": "Add button (English)"
        },
        {
          "id": "addLabel_fr",
          "type": "text",
          "label": "Add button (French)"
        },
        {
          "id": "viewDetailsLabel",
          "type": "text",
          "label": "Details link (English)"
        },
        {
          "id": "viewDetailsLabel_fr",
          "type": "text",
          "label": "Details link (French)"
        },
        {
          "id": "closeLabel",
          "type": "text",
          "label": "Close aria-label (English)"
        },
        {
          "id": "closeLabel_fr",
          "type": "text",
          "label": "Close aria-label (French)"
        }
      ],
      "defaultProps": {
        "colorLabel": "Colour",
        "colorLabel_fr": "Couleur",
        "sizeLabel": "Size",
        "sizeLabel_fr": "Taille",
        "selectSizeHint": "Select a size to continue",
        "selectSizeHint_fr": "Choisissez une taille pour continuer",
        "addLabel": "Add to bag",
        "addLabel_fr": "Ajouter au panier",
        "viewDetailsLabel": "View full details",
        "viewDetailsLabel_fr": "Voir tous les détails",
        "closeLabel": "Close",
        "closeLabel_fr": "Fermer"
      },
      "description": "Global overlay opened from any product card. Swatches switch the image."
    },
    {
      "type": "MobileBottomNav",
      "label": "Mobile Tab Bar",
      "icon": "TabUnselected",
      "deletable": false,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "tabs",
          "type": "blocks",
          "label": "Tabs",
          "blockLabel": "Tab",
          "maxBlocks": 5,
          "blockFields": [
            {
              "id": "label",
              "type": "text",
              "label": "Label (English)"
            },
            {
              "id": "label_fr",
              "type": "text",
              "label": "Label (French)"
            },
            {
              "id": "icon",
              "type": "icon",
              "label": "Icon"
            },
            {
              "id": "href",
              "type": "link",
              "label": "Link"
            }
          ]
        }
      ],
      "defaultProps": {
        "tabs": [
          {
            "label": "Home",
            "label_fr": "Accueil",
            "icon": "ri-home-5-line",
            "href": "/"
          },
          {
            "label": "Shop",
            "label_fr": "Boutique",
            "icon": "ri-layout-grid-line",
            "href": "/shop"
          },
          {
            "label": "Search",
            "label_fr": "Recherche",
            "icon": "ri-search-line",
            "href": "/search"
          },
          {
            "label": "Wishlist",
            "label_fr": "Favoris",
            "icon": "ri-heart-line",
            "href": "/wishlist"
          },
          {
            "label": "Account",
            "label_fr": "Compte",
            "icon": "ri-user-line",
            "href": "/account"
          }
        ]
      }
    },
    {
      "type": "ToastHost",
      "label": "Toast Messages",
      "icon": "Notifications",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Bottom-centre stack"
        }
      ],
      "propsSchema": [
        {
          "id": "addedText",
          "type": "text",
          "label": "Added to bag (English)"
        },
        {
          "id": "addedText_fr",
          "type": "text",
          "label": "Added to bag (French)"
        },
        {
          "id": "wishAddedText",
          "type": "text",
          "label": "Wishlist added (English)"
        },
        {
          "id": "wishAddedText_fr",
          "type": "text",
          "label": "Wishlist added (French)"
        },
        {
          "id": "wishRemovedText",
          "type": "text",
          "label": "Wishlist removed (English)"
        },
        {
          "id": "wishRemovedText_fr",
          "type": "text",
          "label": "Wishlist removed (French)"
        },
        {
          "id": "viewBagLabel",
          "type": "text",
          "label": "View bag action (English)"
        },
        {
          "id": "viewBagLabel_fr",
          "type": "text",
          "label": "View bag action (French)"
        },
        {
          "id": "soldOutText",
          "type": "text",
          "label": "Sold out error (English)"
        },
        {
          "id": "soldOutText_fr",
          "type": "text",
          "label": "Sold out error (French)"
        }
      ],
      "defaultProps": {
        "addedText": "Added to your bag",
        "addedText_fr": "Ajouté à votre panier",
        "wishAddedText": "Saved to your wishlist",
        "wishAddedText_fr": "Ajouté à vos favoris",
        "wishRemovedText": "Removed from your wishlist",
        "wishRemovedText_fr": "Retiré de vos favoris",
        "viewBagLabel": "View bag",
        "viewBagLabel_fr": "Voir le panier",
        "soldOutText": "This piece is sold out",
        "soldOutText_fr": "Cette pièce est épuisée"
      }
    },
    {
      "type": "Footer",
      "label": "Footer",
      "icon": "HorizontalRule",
      "deletable": false,
      "variants": [
        {
          "id": "full",
          "label": "Full (brand + columns)"
        },
        {
          "id": "minimal",
          "label": "Minimal (centred)"
        }
      ],
      "propsSchema": [
        {
          "id": "tagline",
          "type": "text",
          "label": "Tagline (English)"
        },
        {
          "id": "tagline_fr",
          "type": "text",
          "label": "Tagline (French)"
        },
        {
          "id": "description",
          "type": "textarea",
          "label": "Brand description (English)"
        },
        {
          "id": "description_fr",
          "type": "textarea",
          "label": "Brand description (French)"
        },
        {
          "id": "footerColumns",
          "type": "blocks",
          "label": "Link columns",
          "blockLabel": "Column",
          "maxBlocks": 4,
          "blockFields": [
            {
              "id": "title",
              "type": "text",
              "label": "Heading (English)"
            },
            {
              "id": "title_fr",
              "type": "text",
              "label": "Heading (French)"
            },
            {
              "id": "links",
              "type": "blocks",
              "label": "Links",
              "blockLabel": "Link",
              "maxBlocks": 8,
              "blockFields": [
                {
                  "id": "label",
                  "type": "text",
                  "label": "Label (English)"
                },
                {
                  "id": "label_fr",
                  "type": "text",
                  "label": "Label (French)"
                },
                {
                  "id": "href",
                  "type": "link",
                  "label": "Link"
                }
              ]
            }
          ]
        },
        {
          "id": "copyrightText",
          "type": "text",
          "label": "Copyright (English)"
        },
        {
          "id": "copyrightText_fr",
          "type": "text",
          "label": "Copyright (French)"
        },
        {
          "id": "payLabel",
          "type": "text",
          "label": "We accept label (English)"
        },
        {
          "id": "payLabel_fr",
          "type": "text",
          "label": "We accept label (French)"
        }
      ],
      "defaultProps": {
        "tagline": "Dressed in the first edition.",
        "tagline_fr": "Habillés en première édition.",
        "description": "Maison Vélour is an online fashion house for the style-conscious — clothing, accessories and seasonal collections, edited with a magazine’s eye.",
        "description_fr": "Maison Vélour est une maison de mode en ligne pour les esprits stylés — vêtements, accessoires et collections de saison, édités avec l’œil d’un magazine.",
        "footerColumns": [
          {
            "title": "Shop",
            "title_fr": "Boutique",
            "links": [
              {
                "label": "New Arrivals",
                "label_fr": "Nouveautés",
                "href": "/collections/new-arrivals"
              },
              {
                "label": "Dresses",
                "label_fr": "Robes",
                "href": "/category/dresses"
              },
              {
                "label": "Outerwear",
                "label_fr": "Manteaux",
                "href": "/category/outerwear"
              },
              {
                "label": "Bags",
                "label_fr": "Sacs",
                "href": "/category/bags"
              },
              {
                "label": "Sale",
                "label_fr": "Soldes",
                "href": "/collections/sale"
              }
            ]
          },
          {
            "title": "Client Care",
            "title_fr": "Service client",
            "links": [
              {
                "label": "Contact us",
                "label_fr": "Nous contacter",
                "href": "/contact"
              },
              {
                "label": "FAQ",
                "label_fr": "FAQ",
                "href": "/faq"
              },
              {
                "label": "Track an order",
                "label_fr": "Suivre une commande",
                "href": "/track"
              },
              {
                "label": "Shipping",
                "label_fr": "Livraison",
                "href": "/legal/shipping-policy"
              },
              {
                "label": "Returns",
                "label_fr": "Retours",
                "href": "/legal/refund-policy"
              }
            ]
          },
          {
            "title": "The Maison",
            "title_fr": "La Maison",
            "links": [
              {
                "label": "About",
                "label_fr": "À propos",
                "href": "/about"
              },
              {
                "label": "Lookbooks",
                "label_fr": "Lookbooks",
                "href": "/lookbook"
              },
              {
                "label": "Journal",
                "label_fr": "Journal",
                "href": "/blog"
              },
              {
                "label": "My account",
                "label_fr": "Mon compte",
                "href": "/account"
              },
              {
                "label": "Privacy",
                "label_fr": "Confidentialité",
                "href": "/legal/privacy-policy"
              }
            ]
          }
        ],
        "copyrightText": "© 2026 Maison Vélour. All rights reserved.",
        "copyrightText_fr": "© 2026 Maison Vélour. Tous droits réservés.",
        "payLabel": "We accept",
        "payLabel_fr": "Nous acceptons"
      },
      "description": "Social links + contact come from Settings (data-live=\"settings.*\")."
    },
    {
      "type": "CartDrawerSection",
      "label": "Cart Drawer",
      "icon": "ShoppingCart",
      "deletable": false,
      "variants": [
        {
          "id": "side-panel",
          "label": "Side panel"
        }
      ],
      "propsSchema": [
        {
          "id": "title",
          "type": "text",
          "label": "Title (English)"
        },
        {
          "id": "title_fr",
          "type": "text",
          "label": "Title (French)"
        },
        {
          "id": "freeShipText",
          "type": "text",
          "label": "Progress text — {amount} (English)"
        },
        {
          "id": "freeShipText_fr",
          "type": "text",
          "label": "Progress text — {amount} (French)"
        },
        {
          "id": "freeShipDoneText",
          "type": "text",
          "label": "Progress reached (English)"
        },
        {
          "id": "freeShipDoneText_fr",
          "type": "text",
          "label": "Progress reached (French)"
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptySub",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptySub_fr",
          "type": "text",
          "label": "Empty text (French)"
        },
        {
          "id": "startShoppingLabel",
          "type": "text",
          "label": "Empty CTA (English)"
        },
        {
          "id": "startShoppingLabel_fr",
          "type": "text",
          "label": "Empty CTA (French)"
        },
        {
          "id": "upsellTitle",
          "type": "text",
          "label": "Upsell title (English)"
        },
        {
          "id": "upsellTitle_fr",
          "type": "text",
          "label": "Upsell title (French)"
        },
        {
          "id": "subtotalLabel",
          "type": "text",
          "label": "Subtotal (English)"
        },
        {
          "id": "subtotalLabel_fr",
          "type": "text",
          "label": "Subtotal (French)"
        },
        {
          "id": "shippingNote",
          "type": "text",
          "label": "Shipping note (English)"
        },
        {
          "id": "shippingNote_fr",
          "type": "text",
          "label": "Shipping note (French)"
        },
        {
          "id": "checkoutLabel",
          "type": "text",
          "label": "Checkout button (English)"
        },
        {
          "id": "checkoutLabel_fr",
          "type": "text",
          "label": "Checkout button (French)"
        },
        {
          "id": "continueShoppingLabel",
          "type": "text",
          "label": "Continue shopping (English)"
        },
        {
          "id": "continueShoppingLabel_fr",
          "type": "text",
          "label": "Continue shopping (French)"
        },
        {
          "id": "removeLabel",
          "type": "text",
          "label": "Remove label (English)"
        },
        {
          "id": "removeLabel_fr",
          "type": "text",
          "label": "Remove label (French)"
        },
        {
          "id": "freeShippingThreshold",
          "type": "number",
          "label": "Free shipping threshold"
        }
      ],
      "defaultProps": {
        "title": "Your Bag",
        "title_fr": "Votre panier",
        "freeShipText": "You’re {amount} away from complimentary shipping",
        "freeShipText_fr": "Plus que {amount} pour la livraison offerte",
        "freeShipDoneText": "You’ve unlocked complimentary shipping",
        "freeShipDoneText_fr": "Livraison offerte débloquée",
        "emptyTitle": "Your bag is waiting",
        "emptyTitle_fr": "Votre panier vous attend",
        "emptySub": "Fill it with something you’ll wear for years.",
        "emptySub_fr": "Remplissez-le de pièces que vous porterez des années.",
        "startShoppingLabel": "Shop New Arrivals",
        "startShoppingLabel_fr": "Voir les nouveautés",
        "upsellTitle": "Finish the look",
        "upsellTitle_fr": "Complétez le look",
        "subtotalLabel": "Subtotal",
        "subtotalLabel_fr": "Sous-total",
        "shippingNote": "Shipping and taxes calculated at checkout",
        "shippingNote_fr": "Livraison et taxes calculées au paiement",
        "checkoutLabel": "Checkout",
        "checkoutLabel_fr": "Passer commande",
        "continueShoppingLabel": "Continue shopping",
        "continueShoppingLabel_fr": "Continuer mes achats",
        "removeLabel": "Remove",
        "removeLabel_fr": "Retirer",
        "freeShippingThreshold": 250
      }
    },
    {
      "type": "Hero",
      "label": "Hero",
      "icon": "Image",
      "deletable": true,
      "variants": [
        {
          "id": "fullbleed",
          "label": "Full-bleed photograph"
        },
        {
          "id": "split",
          "label": "Split (text + portrait image)"
        },
        {
          "id": "centered",
          "label": "Centred statement + pills"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "textarea",
          "label": "Subheading (English)"
        },
        {
          "id": "subheading_fr",
          "type": "textarea",
          "label": "Subheading (French)"
        },
        {
          "id": "ctaLabel",
          "type": "text",
          "label": "Primary CTA (English)"
        },
        {
          "id": "ctaLabel_fr",
          "type": "text",
          "label": "Primary CTA (French)"
        },
        {
          "id": "ctaUrl",
          "type": "link",
          "label": "Primary CTA link"
        },
        {
          "id": "ctaSecondaryLabel",
          "type": "text",
          "label": "Secondary CTA (English)"
        },
        {
          "id": "ctaSecondaryLabel_fr",
          "type": "text",
          "label": "Secondary CTA (French)"
        },
        {
          "id": "ctaSecondaryUrl",
          "type": "link",
          "label": "Secondary CTA link"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Hero image (16:9 desktop / 4:5 mobile)"
        },
        {
          "id": "imageCaption",
          "type": "text",
          "label": "Image caption (English)"
        },
        {
          "id": "imageCaption_fr",
          "type": "text",
          "label": "Image caption (French)"
        },
        {
          "id": "pills",
          "type": "blocks",
          "label": "Category pills (centred variant)",
          "blockLabel": "Pill",
          "maxBlocks": 6,
          "blockFields": [
            {
              "id": "label",
              "type": "text",
              "label": "Label (English)"
            },
            {
              "id": "label_fr",
              "type": "text",
              "label": "Label (French)"
            },
            {
              "id": "href",
              "type": "link",
              "label": "Link"
            }
          ]
        }
      ],
      "defaultProps": {
        "eyebrow": "Autumn / Winter 2026 — The Nocturne Collection",
        "eyebrow_fr": "Automne / Hiver 2026 — La collection Nocturne",
        "heading": "Dressed in the first edition.",
        "heading_fr": "Habillés en première édition.",
        "subheading": "Silk for the hours after dark, tailoring cut for the long way home. A season of pieces edited like a magazine — and made to be lived in.",
        "subheading_fr": "De la soie pour les heures de la nuit, un tailleur coupé pour le long chemin du retour. Une saison éditée comme un magazine — et faite pour être vécue.",
        "ctaLabel": "Shop the collection",
        "ctaLabel_fr": "Découvrir la collection",
        "ctaUrl": "/collections/new-arrivals",
        "ctaSecondaryLabel": "View the lookbook",
        "ctaSecondaryLabel_fr": "Voir le lookbook",
        "ctaSecondaryUrl": "/lookbook",
        "imageUrl": "https://images.unsplash.com/photo-1469334031218-e382a71b716b?w=1600&q=80&auto=format&fit=crop",
        "imageCaption": "Look 07 — Odile slip dress in Champagne",
        "imageCaption_fr": "Look 07 — Robe nuisette Odile, Champagne",
        "pills": [
          {
            "label": "Dresses",
            "label_fr": "Robes",
            "href": "/category/dresses"
          },
          {
            "label": "Outerwear",
            "label_fr": "Manteaux",
            "href": "/category/outerwear"
          },
          {
            "label": "Tailoring",
            "label_fr": "Tailleur",
            "href": "/category/tailoring"
          },
          {
            "label": "Bags",
            "label_fr": "Sacs",
            "href": "/category/bags"
          }
        ]
      }
    },
    {
      "type": "CategoryGrid",
      "label": "Category Grid",
      "icon": "GridView",
      "deletable": true,
      "variants": [
        {
          "id": "editorial",
          "label": "Editorial mosaic"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "viewAllLabel",
          "type": "text",
          "label": "View all (English)"
        },
        {
          "id": "viewAllLabel_fr",
          "type": "text",
          "label": "View all (French)"
        },
        {
          "id": "countLabel",
          "type": "text",
          "label": "Count label — {count} (English)"
        },
        {
          "id": "countLabel_fr",
          "type": "text",
          "label": "Count label — {count} (French)"
        },
        {
          "id": "categories",
          "type": "resource-multiselect",
          "label": "Categories",
          "resource": "categories",
          "helpText": "Pick 5. First tile is the large one."
        }
      ],
      "defaultProps": {
        "eyebrow": "Shop by category",
        "eyebrow_fr": "Par catégorie",
        "heading": "The wardrobe, in chapters",
        "heading_fr": "La garde-robe, en chapitres",
        "viewAllLabel": "Shop all",
        "viewAllLabel_fr": "Tout voir",
        "countLabel": "{count} pieces",
        "countLabel_fr": "{count} pièces"
      }
    },
    {
      "type": "FeaturedProducts",
      "label": "Featured Products",
      "icon": "Star",
      "deletable": true,
      "variants": [
        {
          "id": "grid",
          "label": "Grid (4-up)"
        },
        {
          "id": "carousel",
          "label": "Carousel (horizontal scroll)"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "viewAllLabel",
          "type": "text",
          "label": "View all (English)"
        },
        {
          "id": "viewAllLabel_fr",
          "type": "text",
          "label": "View all (French)"
        },
        {
          "id": "viewAllUrl",
          "type": "link",
          "label": "View all link"
        },
        {
          "id": "source",
          "type": "select",
          "label": "Products from",
          "options": [
            {
              "label": "Featured (automatic)",
              "value": ""
            },
            {
              "label": "Recently added",
              "value": "recent"
            },
            {
              "label": "Top selling",
              "value": "top_selling"
            },
            {
              "label": "Trending",
              "value": "trending"
            },
            {
              "label": "Top rated",
              "value": "top_rated"
            },
            {
              "label": "On sale",
              "value": "on_sale"
            },
            {
              "label": "A collection",
              "value": "collection"
            }
          ]
        },
        {
          "id": "collection",
          "type": "resource-select",
          "label": "Collection",
          "resource": "collections",
          "helpText": "Used when Products from = A collection"
        },
        {
          "id": "limit",
          "type": "number",
          "label": "Products shown",
          "min": 4,
          "max": 12
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptyText",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptyText_fr",
          "type": "text",
          "label": "Empty text (French)"
        },
        {
          "id": "errorTitle",
          "type": "text",
          "label": "Error title (English)"
        },
        {
          "id": "errorTitle_fr",
          "type": "text",
          "label": "Error title (French)"
        },
        {
          "id": "retryLabel",
          "type": "text",
          "label": "Retry button (English)"
        },
        {
          "id": "retryLabel_fr",
          "type": "text",
          "label": "Retry button (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "Just landed",
        "eyebrow_fr": "Tout juste arrivé",
        "heading": "New Arrivals",
        "heading_fr": "Nouveautés",
        "viewAllLabel": "View all new arrivals",
        "viewAllLabel_fr": "Voir toutes les nouveautés",
        "viewAllUrl": "/collections/new-arrivals",
        "source": "recent",
        "limit": 8,
        "emptyTitle": "Nothing here — yet.",
        "emptyTitle_fr": "Rien ici — pour l’instant.",
        "emptyText": "New pieces land every Thursday. Check back soon.",
        "emptyText_fr": "De nouvelles pièces arrivent chaque jeudi. Revenez bientôt.",
        "errorTitle": "We couldn’t load this edit",
        "errorTitle_fr": "Impossible de charger cette sélection",
        "retryLabel": "Try again",
        "retryLabel_fr": "Réessayer"
      }
    },
    {
      "type": "LookbookSection",
      "label": "Shoppable Lookbook",
      "icon": "PhotoLibrary",
      "deletable": true,
      "variants": [
        {
          "id": "hotspot-split",
          "label": "Image + shop-the-look panel"
        },
        {
          "id": "full-bleed",
          "label": "Full-bleed image, overlaid copy"
        }
      ],
      "propsSchema": [
        {
          "id": "kicker",
          "type": "text",
          "label": "Kicker (English)"
        },
        {
          "id": "kicker_fr",
          "type": "text",
          "label": "Kicker (French)"
        },
        {
          "id": "title",
          "type": "text",
          "label": "Title (English)"
        },
        {
          "id": "title_fr",
          "type": "text",
          "label": "Title (French)"
        },
        {
          "id": "text",
          "type": "textarea",
          "label": "Text (English)"
        },
        {
          "id": "text_fr",
          "type": "textarea",
          "label": "Text (French)"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Look image (4:5)"
        },
        {
          "id": "hotspots",
          "type": "blocks",
          "label": "Hotspots",
          "blockLabel": "Hotspot",
          "maxBlocks": 6,
          "blockFields": [
            {
              "id": "product",
              "type": "text",
              "label": "Product slug",
              "helpText": "Product id/slug shown at this point"
            },
            {
              "id": "x",
              "type": "number",
              "label": "X position (%)",
              "min": 0,
              "max": 100
            },
            {
              "id": "y",
              "type": "number",
              "label": "Y position (%)",
              "min": 0,
              "max": 100
            }
          ]
        },
        {
          "id": "shopTheLookLabel",
          "type": "text",
          "label": "Shop the look (English)"
        },
        {
          "id": "shopTheLookLabel_fr",
          "type": "text",
          "label": "Shop the look (French)"
        },
        {
          "id": "hintText",
          "type": "text",
          "label": "Hint (English)"
        },
        {
          "id": "hintText_fr",
          "type": "text",
          "label": "Hint (French)"
        },
        {
          "id": "addLabel",
          "type": "text",
          "label": "Add label (English)"
        },
        {
          "id": "addLabel_fr",
          "type": "text",
          "label": "Add label (French)"
        },
        {
          "id": "viewLabel",
          "type": "text",
          "label": "View label (English)"
        },
        {
          "id": "viewLabel_fr",
          "type": "text",
          "label": "View label (French)"
        },
        {
          "id": "addAllLabel",
          "type": "text",
          "label": "Add all (English)"
        },
        {
          "id": "addAllLabel_fr",
          "type": "text",
          "label": "Add all (French)"
        }
      ],
      "defaultProps": {
        "kicker": "Chapter One — After Dark",
        "kicker_fr": "Chapitre un — À la nuit tombée",
        "title": "Nocturne",
        "title_fr": "Nocturne",
        "text": "Silk that catches the streetlight, tailoring that holds its line past midnight. Dressing for the hours when the city is at its most honest.",
        "text_fr": "Une soie qui capte la lumière des réverbères, un tailleur qui tient sa ligne après minuit. S’habiller pour les heures où la ville est la plus sincère.",
        "imageUrl": "https://images.unsplash.com/photo-1509631179647-0177331693ae?w=1600&q=80&auto=format&fit=crop",
        "hotspots": [
          {
            "product": "odile",
            "x": 46,
            "y": 40
          },
          {
            "product": "petitsac",
            "x": 30,
            "y": 62
          },
          {
            "product": "solene",
            "x": 52,
            "y": 88
          },
          {
            "product": "lune",
            "x": 56,
            "y": 18
          }
        ],
        "shopTheLookLabel": "Shop the look",
        "shopTheLookLabel_fr": "Acheter le look",
        "hintText": "Tap the markers to shop each piece",
        "hintText_fr": "Touchez les repères pour découvrir chaque pièce",
        "addLabel": "Add to bag",
        "addLabel_fr": "Ajouter",
        "viewLabel": "View piece",
        "viewLabel_fr": "Voir la pièce",
        "addAllLabel": "Add the full look",
        "addAllLabel_fr": "Ajouter tout le look"
      },
      "description": "Hotspot product refs use a text slug until a product resource picker exists.",
      "needsBackend": [
        "resource-select for products"
      ]
    },
    {
      "type": "StyleEdit",
      "label": "Shop by Aesthetic / Occasion",
      "icon": "Style",
      "deletable": true,
      "variants": [
        {
          "id": "tabs",
          "label": "Tabbed tiles"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "tabAesthetic",
          "type": "text",
          "label": "Tab 1 (English)"
        },
        {
          "id": "tabAesthetic_fr",
          "type": "text",
          "label": "Tab 1 (French)"
        },
        {
          "id": "tabOccasion",
          "type": "text",
          "label": "Tab 2 (English)"
        },
        {
          "id": "tabOccasion_fr",
          "type": "text",
          "label": "Tab 2 (French)"
        },
        {
          "id": "aesthetics",
          "type": "blocks",
          "label": "Aesthetic tiles",
          "blockLabel": "Tile",
          "maxBlocks": 6,
          "blockFields": [
            {
              "id": "label",
              "type": "text",
              "label": "Label (English)"
            },
            {
              "id": "label_fr",
              "type": "text",
              "label": "Label (French)"
            },
            {
              "id": "caption",
              "type": "text",
              "label": "Caption (English)"
            },
            {
              "id": "caption_fr",
              "type": "text",
              "label": "Caption (French)"
            },
            {
              "id": "imageUrl",
              "type": "image",
              "label": "Image (3:4)"
            }
          ]
        },
        {
          "id": "occasions",
          "type": "blocks",
          "label": "Occasion tiles",
          "blockLabel": "Tile",
          "maxBlocks": 6,
          "blockFields": [
            {
              "id": "label",
              "type": "text",
              "label": "Label (English)"
            },
            {
              "id": "label_fr",
              "type": "text",
              "label": "Label (French)"
            },
            {
              "id": "caption",
              "type": "text",
              "label": "Caption (English)"
            },
            {
              "id": "caption_fr",
              "type": "text",
              "label": "Caption (French)"
            },
            {
              "id": "imageUrl",
              "type": "image",
              "label": "Image (3:4)"
            }
          ]
        }
      ],
      "defaultProps": {
        "eyebrow": "Shop by mood",
        "eyebrow_fr": "Par humeur",
        "heading": "Find your edit",
        "heading_fr": "Trouvez votre style",
        "tabAesthetic": "By aesthetic",
        "tabAesthetic_fr": "Par esthétique",
        "tabOccasion": "By occasion",
        "tabOccasion_fr": "Par occasion",
        "aesthetics": [
          {
            "label": "Quiet Luxury",
            "label_fr": "Luxe discret",
            "caption": "Cashmere, camel and nothing to prove",
            "caption_fr": "Cachemire, camel et rien à prouver"
          },
          {
            "label": "Parisian",
            "label_fr": "Parisienne",
            "caption": "Effortless, slightly undone, always right",
            "caption_fr": "Naturelle, un peu défaite, toujours juste"
          },
          {
            "label": "Minimal",
            "label_fr": "Minimaliste",
            "caption": "Clean lines, considered proportions",
            "caption_fr": "Lignes nettes, proportions pensées"
          },
          {
            "label": "Street Editorial",
            "label_fr": "Street éditorial",
            "caption": "Leather, denim and a little attitude",
            "caption_fr": "Cuir, denim et un peu d’attitude"
          },
          {
            "label": "Romantic",
            "label_fr": "Romantique",
            "caption": "Satin, softness and a hint of gold",
            "caption_fr": "Satin, douceur et une touche d’or"
          }
        ],
        "occasions": [
          {
            "label": "Evening",
            "label_fr": "Soirée",
            "caption": "Dinners that run late",
            "caption_fr": "Des dîners qui s’éternisent"
          },
          {
            "label": "Work",
            "label_fr": "Bureau",
            "caption": "Boardroom to bar",
            "caption_fr": "Du bureau au bar"
          },
          {
            "label": "Weekend",
            "label_fr": "Week-end",
            "caption": "Markets, galleries, long lunches",
            "caption_fr": "Marchés, galeries, longs déjeuners"
          },
          {
            "label": "Travel",
            "label_fr": "Voyage",
            "caption": "Pack light, arrive polished",
            "caption_fr": "Voyager léger, arriver impeccable"
          }
        ]
      }
    },
    {
      "type": "EditorialTeaser",
      "label": "Journal Teaser",
      "icon": "Article",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Three-up"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "viewAllLabel",
          "type": "text",
          "label": "View all (English)"
        },
        {
          "id": "viewAllLabel_fr",
          "type": "text",
          "label": "View all (French)"
        },
        {
          "id": "readLabel",
          "type": "text",
          "label": "Read label (English)"
        },
        {
          "id": "readLabel_fr",
          "type": "text",
          "label": "Read label (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "The Journal",
        "eyebrow_fr": "Le Journal",
        "heading": "Stories from the edit",
        "heading_fr": "Histoires de la sélection",
        "viewAllLabel": "Read the Journal",
        "viewAllLabel_fr": "Lire le Journal",
        "readLabel": "Read the story",
        "readLabel_fr": "Lire l’article"
      }
    },
    {
      "type": "NewsletterSection",
      "label": "Newsletter + Welcome Code",
      "icon": "Mail",
      "deletable": true,
      "variants": [
        {
          "id": "banner",
          "label": "Dark banner"
        },
        {
          "id": "split",
          "label": "Split with image"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "textarea",
          "label": "Subheading (English)"
        },
        {
          "id": "subheading_fr",
          "type": "textarea",
          "label": "Subheading (French)"
        },
        {
          "id": "placeholder",
          "type": "text",
          "label": "Input placeholder (English)"
        },
        {
          "id": "placeholder_fr",
          "type": "text",
          "label": "Input placeholder (French)"
        },
        {
          "id": "ctaLabel",
          "type": "text",
          "label": "Button (English)"
        },
        {
          "id": "ctaLabel_fr",
          "type": "text",
          "label": "Button (French)"
        },
        {
          "id": "submittingLabel",
          "type": "text",
          "label": "Submitting (English)"
        },
        {
          "id": "submittingLabel_fr",
          "type": "text",
          "label": "Submitting (French)"
        },
        {
          "id": "successTitle",
          "type": "text",
          "label": "Success title (English)"
        },
        {
          "id": "successTitle_fr",
          "type": "text",
          "label": "Success title (French)"
        },
        {
          "id": "successText",
          "type": "text",
          "label": "Success text (English)"
        },
        {
          "id": "successText_fr",
          "type": "text",
          "label": "Success text (French)"
        },
        {
          "id": "code",
          "type": "text",
          "label": "Welcome code"
        },
        {
          "id": "copyLabel",
          "type": "text",
          "label": "Copy button (English)"
        },
        {
          "id": "copyLabel_fr",
          "type": "text",
          "label": "Copy button (French)"
        },
        {
          "id": "errorText",
          "type": "text",
          "label": "Error text (English)"
        },
        {
          "id": "errorText_fr",
          "type": "text",
          "label": "Error text (French)"
        },
        {
          "id": "legalText",
          "type": "text",
          "label": "Legal note (English)"
        },
        {
          "id": "legalText_fr",
          "type": "text",
          "label": "Legal note (French)"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Image (split variant)"
        }
      ],
      "defaultProps": {
        "eyebrow": "The Vélour Letter",
        "eyebrow_fr": "La Lettre Vélour",
        "heading": "First to know. First to wear.",
        "heading_fr": "Les premiers informés. Les premiers habillés.",
        "subheading": "Join the list for early access to new collections, private sales and 15% off your first order.",
        "subheading_fr": "Inscrivez-vous pour un accès anticipé aux collections, aux ventes privées et -15 % sur votre première commande.",
        "placeholder": "Your email address",
        "placeholder_fr": "Votre adresse e-mail",
        "ctaLabel": "Unlock 15% off",
        "ctaLabel_fr": "Débloquer -15 %",
        "submittingLabel": "Unlocking…",
        "submittingLabel_fr": "Un instant…",
        "successTitle": "Welcome to the Maison.",
        "successTitle_fr": "Bienvenue à la Maison.",
        "successText": "Your welcome code is ready — use it at checkout within 14 days.",
        "successText_fr": "Votre code de bienvenue est prêt — à utiliser sous 14 jours.",
        "code": "VELOUR15",
        "copyLabel": "Copy code",
        "copyLabel_fr": "Copier le code",
        "errorText": "Please enter a valid email address.",
        "errorText_fr": "Veuillez saisir une adresse e-mail valide.",
        "legalText": "By subscribing you agree to our Privacy Policy. Unsubscribe anytime.",
        "legalText_fr": "En vous inscrivant, vous acceptez notre politique de confidentialité.",
        "imageUrl": "https://images.unsplash.com/photo-1483985988355-763728e1935b?w=1600&q=80&auto=format&fit=crop"
      }
    },
    {
      "type": "PageHeader",
      "label": "Page Header",
      "icon": "Title",
      "deletable": true,
      "variants": [
        {
          "id": "image",
          "label": "With background image"
        },
        {
          "id": "default",
          "label": "Text only"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "textarea",
          "label": "Subheading (English)"
        },
        {
          "id": "subheading_fr",
          "type": "textarea",
          "label": "Subheading (French)"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Background image (21:9)"
        }
      ],
      "defaultProps": {
        "eyebrow": "Lookbooks — AW26",
        "eyebrow_fr": "Lookbooks — AH26",
        "heading": "The season, in three chapters",
        "heading_fr": "La saison, en trois chapitres",
        "subheading": "Shot across Paris and the Normandy coast. Tap any marker to shop the piece straight from the frame.",
        "subheading_fr": "Photographiée entre Paris et la côte normande. Touchez un repère pour acheter la pièce.",
        "imageUrl": "https://images.unsplash.com/photo-1529139574466-a303027c1d8b?w=1600&q=80&auto=format&fit=crop"
      }
    },
    {
      "type": "ListingHero",
      "label": "Listing Header",
      "icon": "ViewHeadline",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "countLabel",
          "type": "text",
          "label": "Count label — {count} (English)"
        },
        {
          "id": "countLabel_fr",
          "type": "text",
          "label": "Count label — {count} (French)"
        },
        {
          "id": "homeLabel",
          "type": "text",
          "label": "Breadcrumb home (English)"
        },
        {
          "id": "homeLabel_fr",
          "type": "text",
          "label": "Breadcrumb home (French)"
        }
      ],
      "defaultProps": {
        "countLabel": "{count} pieces",
        "countLabel_fr": "{count} pièces",
        "homeLabel": "Home",
        "homeLabel_fr": "Accueil"
      },
      "description": "Title, description and image come from the category / collection (data-live=\"collection\")."
    },
    {
      "type": "ProductListSection",
      "label": "Product Listing + Filters",
      "icon": "FilterList",
      "deletable": false,
      "variants": [
        {
          "id": "sidebar",
          "label": "Sidebar filters (drawer on mobile)"
        }
      ],
      "propsSchema": [
        {
          "id": "filtersTitle",
          "type": "text",
          "label": "Filters title (English)"
        },
        {
          "id": "filtersTitle_fr",
          "type": "text",
          "label": "Filters title (French)"
        },
        {
          "id": "categoryLabel",
          "type": "text",
          "label": "Category (English)"
        },
        {
          "id": "categoryLabel_fr",
          "type": "text",
          "label": "Category (French)"
        },
        {
          "id": "genderLabel",
          "type": "text",
          "label": "Gender (English)"
        },
        {
          "id": "genderLabel_fr",
          "type": "text",
          "label": "Gender (French)"
        },
        {
          "id": "sizeLabel",
          "type": "text",
          "label": "Size (English)"
        },
        {
          "id": "sizeLabel_fr",
          "type": "text",
          "label": "Size (French)"
        },
        {
          "id": "colourLabel",
          "type": "text",
          "label": "Colour (English)"
        },
        {
          "id": "colourLabel_fr",
          "type": "text",
          "label": "Colour (French)"
        },
        {
          "id": "priceLabel",
          "type": "text",
          "label": "Price (English)"
        },
        {
          "id": "priceLabel_fr",
          "type": "text",
          "label": "Price (French)"
        },
        {
          "id": "occasionLabel",
          "type": "text",
          "label": "Occasion (English)"
        },
        {
          "id": "occasionLabel_fr",
          "type": "text",
          "label": "Occasion (French)"
        },
        {
          "id": "aestheticLabel",
          "type": "text",
          "label": "Aesthetic (English)"
        },
        {
          "id": "aestheticLabel_fr",
          "type": "text",
          "label": "Aesthetic (French)"
        },
        {
          "id": "sortLabel",
          "type": "text",
          "label": "Sort (English)"
        },
        {
          "id": "sortLabel_fr",
          "type": "text",
          "label": "Sort (French)"
        },
        {
          "id": "clearAllLabel",
          "type": "text",
          "label": "Clear all (English)"
        },
        {
          "id": "clearAllLabel_fr",
          "type": "text",
          "label": "Clear all (French)"
        },
        {
          "id": "applyLabel",
          "type": "text",
          "label": "Mobile apply — {count} (English)"
        },
        {
          "id": "applyLabel_fr",
          "type": "text",
          "label": "Mobile apply — {count} (French)"
        },
        {
          "id": "noResultsTitle",
          "type": "text",
          "label": "No results title (English)"
        },
        {
          "id": "noResultsTitle_fr",
          "type": "text",
          "label": "No results title (French)"
        },
        {
          "id": "noResultsText",
          "type": "text",
          "label": "No results text (English)"
        },
        {
          "id": "noResultsText_fr",
          "type": "text",
          "label": "No results text (French)"
        },
        {
          "id": "pageSize",
          "type": "number",
          "label": "Products per page"
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptyText",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptyText_fr",
          "type": "text",
          "label": "Empty text (French)"
        },
        {
          "id": "errorTitle",
          "type": "text",
          "label": "Error title (English)"
        },
        {
          "id": "errorTitle_fr",
          "type": "text",
          "label": "Error title (French)"
        },
        {
          "id": "retryLabel",
          "type": "text",
          "label": "Retry button (English)"
        },
        {
          "id": "retryLabel_fr",
          "type": "text",
          "label": "Retry button (French)"
        }
      ],
      "defaultProps": {
        "filtersTitle": "Filter",
        "filtersTitle_fr": "Filtrer",
        "categoryLabel": "Category",
        "categoryLabel_fr": "Catégorie",
        "genderLabel": "Gender",
        "genderLabel_fr": "Genre",
        "sizeLabel": "Size",
        "sizeLabel_fr": "Taille",
        "colourLabel": "Colour",
        "colourLabel_fr": "Couleur",
        "priceLabel": "Price",
        "priceLabel_fr": "Prix",
        "occasionLabel": "Occasion",
        "occasionLabel_fr": "Occasion",
        "aestheticLabel": "Aesthetic",
        "aestheticLabel_fr": "Esthétique",
        "sortLabel": "Sort by",
        "sortLabel_fr": "Trier par",
        "clearAllLabel": "Clear all",
        "clearAllLabel_fr": "Tout effacer",
        "applyLabel": "Show {count} pieces",
        "applyLabel_fr": "Voir {count} pièces",
        "noResultsTitle": "No pieces match those filters",
        "noResultsTitle_fr": "Aucune pièce ne correspond",
        "noResultsText": "Try removing a filter or widening your price range.",
        "noResultsText_fr": "Retirez un filtre ou élargissez votre budget.",
        "pageSize": 12,
        "emptyTitle": "Nothing here — yet.",
        "emptyTitle_fr": "Rien ici — pour l’instant.",
        "emptyText": "New pieces land every Thursday. Check back soon.",
        "emptyText_fr": "De nouvelles pièces arrivent chaque jeudi. Revenez bientôt.",
        "errorTitle": "We couldn’t load this edit",
        "errorTitle_fr": "Impossible de charger cette sélection",
        "retryLabel": "Try again",
        "retryLabel_fr": "Réessayer"
      }
    },
    {
      "type": "CollectionGrid",
      "label": "Collection Grid",
      "icon": "Collections",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "viewLabel",
          "type": "text",
          "label": "Tile link (English)"
        },
        {
          "id": "viewLabel_fr",
          "type": "text",
          "label": "Tile link (French)"
        }
      ],
      "defaultProps": {
        "viewLabel": "Explore",
        "viewLabel_fr": "Explorer"
      }
    },
    {
      "type": "ProductDetailSection",
      "label": "Product Detail",
      "icon": "Inventory",
      "deletable": false,
      "variants": [
        {
          "id": "gallery-grid",
          "label": "Thumbnail rail + zoom gallery"
        }
      ],
      "propsSchema": [
        {
          "id": "colorLabel",
          "type": "text",
          "label": "Colour (English)"
        },
        {
          "id": "colorLabel_fr",
          "type": "text",
          "label": "Colour (French)"
        },
        {
          "id": "sizeLabel",
          "type": "text",
          "label": "Size (English)"
        },
        {
          "id": "sizeLabel_fr",
          "type": "text",
          "label": "Size (French)"
        },
        {
          "id": "sizeGuideLabel",
          "type": "text",
          "label": "Size guide (English)"
        },
        {
          "id": "sizeGuideLabel_fr",
          "type": "text",
          "label": "Size guide (French)"
        },
        {
          "id": "selectSizeHint",
          "type": "text",
          "label": "Select-size hint (English)"
        },
        {
          "id": "selectSizeHint_fr",
          "type": "text",
          "label": "Select-size hint (French)"
        },
        {
          "id": "quantityLabel",
          "type": "text",
          "label": "Quantity (English)"
        },
        {
          "id": "quantityLabel_fr",
          "type": "text",
          "label": "Quantity (French)"
        },
        {
          "id": "addLabel",
          "type": "text",
          "label": "Add to bag (English)"
        },
        {
          "id": "addLabel_fr",
          "type": "text",
          "label": "Add to bag (French)"
        },
        {
          "id": "addingLabel",
          "type": "text",
          "label": "Adding (English)"
        },
        {
          "id": "addingLabel_fr",
          "type": "text",
          "label": "Adding (French)"
        },
        {
          "id": "buyNowLabel",
          "type": "text",
          "label": "Buy now (English)"
        },
        {
          "id": "buyNowLabel_fr",
          "type": "text",
          "label": "Buy now (French)"
        },
        {
          "id": "soldOutLabel",
          "type": "text",
          "label": "Sold out (English)"
        },
        {
          "id": "soldOutLabel_fr",
          "type": "text",
          "label": "Sold out (French)"
        },
        {
          "id": "notifyLabel",
          "type": "text",
          "label": "Notify me (English)"
        },
        {
          "id": "notifyLabel_fr",
          "type": "text",
          "label": "Notify me (French)"
        },
        {
          "id": "lowStockText",
          "type": "text",
          "label": "Low stock (English)"
        },
        {
          "id": "lowStockText_fr",
          "type": "text",
          "label": "Low stock (French)"
        },
        {
          "id": "modelInfo",
          "type": "text",
          "label": "Model info (English)"
        },
        {
          "id": "modelInfo_fr",
          "type": "text",
          "label": "Model info (French)"
        },
        {
          "id": "pointsText",
          "type": "text",
          "label": "Points — {points} (English)"
        },
        {
          "id": "pointsText_fr",
          "type": "text",
          "label": "Points — {points} (French)"
        },
        {
          "id": "detailsTab",
          "type": "text",
          "label": "Tab 1 (English)"
        },
        {
          "id": "detailsTab_fr",
          "type": "text",
          "label": "Tab 1 (French)"
        },
        {
          "id": "fabricTab",
          "type": "text",
          "label": "Tab 2 (English)"
        },
        {
          "id": "fabricTab_fr",
          "type": "text",
          "label": "Tab 2 (French)"
        },
        {
          "id": "deliveryTab",
          "type": "text",
          "label": "Tab 3 (English)"
        },
        {
          "id": "deliveryTab_fr",
          "type": "text",
          "label": "Tab 3 (French)"
        },
        {
          "id": "deliveryText",
          "type": "textarea",
          "label": "Delivery text (English)"
        },
        {
          "id": "deliveryText_fr",
          "type": "textarea",
          "label": "Delivery text (French)"
        }
      ],
      "defaultProps": {
        "colorLabel": "Colour",
        "colorLabel_fr": "Couleur",
        "sizeLabel": "Size",
        "sizeLabel_fr": "Taille",
        "sizeGuideLabel": "Size guide",
        "sizeGuideLabel_fr": "Guide des tailles",
        "selectSizeHint": "Select a size to add this piece to your bag",
        "selectSizeHint_fr": "Choisissez une taille pour ajouter cette pièce",
        "quantityLabel": "Quantity",
        "quantityLabel_fr": "Quantité",
        "addLabel": "Add to bag",
        "addLabel_fr": "Ajouter au panier",
        "addingLabel": "Adding…",
        "addingLabel_fr": "Ajout…",
        "buyNowLabel": "Buy now",
        "buyNowLabel_fr": "Acheter maintenant",
        "soldOutLabel": "Sold out",
        "soldOutLabel_fr": "Épuisé",
        "notifyLabel": "Notify me when it’s back",
        "notifyLabel_fr": "Me prévenir du retour",
        "lowStockText": "Only 2 left in this size",
        "lowStockText_fr": "Plus que 2 dans cette taille",
        "modelInfo": "Model is 178 cm and wears a size S",
        "modelInfo_fr": "Le mannequin mesure 178 cm et porte une taille S",
        "pointsText": "Earn {points} Maison Circle points",
        "pointsText_fr": "Gagnez {points} points Maison Circle",
        "detailsTab": "The details",
        "detailsTab_fr": "Les détails",
        "fabricTab": "Fabric & fit",
        "fabricTab_fr": "Matière & coupe",
        "deliveryTab": "Delivery & returns",
        "deliveryTab_fr": "Livraison & retours",
        "deliveryText": "Complimentary standard shipping over $250. Express delivery in 1–2 business days. Free returns within 30 days.",
        "deliveryText_fr": "Livraison standard offerte dès 250 $. Express en 1 à 2 jours ouvrés. Retours gratuits sous 30 jours."
      },
      "needsBackend": [
        "Stock notify-me subscription"
      ]
    },
    {
      "type": "SizeGuideSection",
      "label": "Size Guide Modal",
      "icon": "Straighten",
      "deletable": true,
      "variants": [
        {
          "id": "modal",
          "label": "Modal table"
        }
      ],
      "propsSchema": [
        {
          "id": "title",
          "type": "text",
          "label": "Title (English)"
        },
        {
          "id": "title_fr",
          "type": "text",
          "label": "Title (French)"
        },
        {
          "id": "note",
          "type": "textarea",
          "label": "Note (English)"
        },
        {
          "id": "note_fr",
          "type": "textarea",
          "label": "Note (French)"
        }
      ],
      "defaultProps": {
        "title": "Size guide",
        "title_fr": "Guide des tailles",
        "note": "Measurements are body measurements in centimetres. Between sizes? Size up for outerwear, down for knitwear.",
        "note_fr": "Mesures du corps en centimètres. Entre deux tailles ? Prenez au-dessus pour les manteaux, en dessous pour la maille."
      }
    },
    {
      "type": "CompleteTheLook",
      "label": "Complete the Look",
      "icon": "Checkroom",
      "deletable": true,
      "variants": [
        {
          "id": "carousel",
          "label": "Carousel"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "addAllLabel",
          "type": "text",
          "label": "Add all (English)"
        },
        {
          "id": "addAllLabel_fr",
          "type": "text",
          "label": "Add all (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "Styled by the Maison",
        "eyebrow_fr": "Stylisé par la Maison",
        "heading": "Complete the look",
        "heading_fr": "Complétez le look",
        "addAllLabel": "Add the full look",
        "addAllLabel_fr": "Ajouter tout le look"
      }
    },
    {
      "type": "ProductReviews",
      "label": "Reviews",
      "icon": "RateReview",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Summary + list"
        }
      ],
      "propsSchema": [
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "basedOnLabel",
          "type": "text",
          "label": "Based on — {count} (English)"
        },
        {
          "id": "basedOnLabel_fr",
          "type": "text",
          "label": "Based on — {count} (French)"
        },
        {
          "id": "fitLabel",
          "type": "text",
          "label": "Fit label (English)"
        },
        {
          "id": "fitLabel_fr",
          "type": "text",
          "label": "Fit label (French)"
        },
        {
          "id": "fitValue",
          "type": "text",
          "label": "Fit value (English)"
        },
        {
          "id": "fitValue_fr",
          "type": "text",
          "label": "Fit value (French)"
        },
        {
          "id": "writeLabel",
          "type": "text",
          "label": "Write review (English)"
        },
        {
          "id": "writeLabel_fr",
          "type": "text",
          "label": "Write review (French)"
        },
        {
          "id": "submitLabel",
          "type": "text",
          "label": "Submit (English)"
        },
        {
          "id": "submitLabel_fr",
          "type": "text",
          "label": "Submit (French)"
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptyText",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptyText_fr",
          "type": "text",
          "label": "Empty text (French)"
        }
      ],
      "defaultProps": {
        "heading": "What our clients say",
        "heading_fr": "L’avis de nos clients",
        "basedOnLabel": "Based on {count} reviews",
        "basedOnLabel_fr": "Sur la base de {count} avis",
        "fitLabel": "Fit",
        "fitLabel_fr": "Coupe",
        "fitValue": "True to size",
        "fitValue_fr": "Taille normalement",
        "writeLabel": "Write a review",
        "writeLabel_fr": "Écrire un avis",
        "submitLabel": "Post review",
        "submitLabel_fr": "Publier l’avis",
        "emptyTitle": "No reviews yet",
        "emptyTitle_fr": "Pas encore d’avis",
        "emptyText": "Be the first to tell us how it wears.",
        "emptyText_fr": "Soyez le premier à nous dire comment elle se porte."
      }
    },
    {
      "type": "RelatedProducts",
      "label": "Related Products",
      "icon": "ViewModule",
      "deletable": true,
      "variants": [
        {
          "id": "grid",
          "label": "Grid"
        }
      ],
      "propsSchema": [
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        }
      ],
      "defaultProps": {
        "heading": "You may also love",
        "heading_fr": "Vous aimerez aussi"
      }
    },
    {
      "type": "BrandStory",
      "label": "Brand Story",
      "icon": "AutoStories",
      "deletable": true,
      "variants": [
        {
          "id": "split",
          "label": "Split"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "body",
          "type": "richtext",
          "label": "Body (English)"
        },
        {
          "id": "body_fr",
          "type": "richtext",
          "label": "Body (French)"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Image (4:5)"
        },
        {
          "id": "signature",
          "type": "text",
          "label": "Signature (English)"
        },
        {
          "id": "signature_fr",
          "type": "text",
          "label": "Signature (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "Our story",
        "eyebrow_fr": "Notre histoire",
        "heading": "A fashion house with an editor’s eye",
        "heading_fr": "Une maison de mode avec l’œil d’un éditeur",
        "body": "We started Maison Vélour with a simple frustration: too many clothes, too few worth keeping. So we began editing — visiting ateliers, testing fabrics, wearing every sample for a month before it earned a place.\n\nToday we release four collections a year and a small run of seasonal pieces in between. Each one is shot, styled and written about the way a magazine would treat a cover story.",
        "body_fr": "Nous avons fondé Maison Vélour par lassitude : trop de vêtements, trop peu à garder. Alors nous avons commencé à éditer — visiter les ateliers, tester les matières, porter chaque prototype un mois avant de l’adopter.\n\nAujourd’hui, nous lançons quatre collections par an, et quelques pièces de saison entre deux.",
        "imageUrl": "https://images.unsplash.com/photo-1441984904996-e0b6ba687e04?w=1600&q=80&auto=format&fit=crop",
        "signature": "Inès Moreau, Founder & Creative Director",
        "signature_fr": "Inès Moreau, fondatrice et directrice de la création"
      }
    },
    {
      "type": "ValuesGrid",
      "label": "Values Grid",
      "icon": "Verified",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Three columns"
        }
      ],
      "propsSchema": [
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "values",
          "type": "blocks",
          "label": "Values",
          "blockLabel": "Value",
          "maxBlocks": 4,
          "blockFields": [
            {
              "id": "icon",
              "type": "icon",
              "label": "Icon"
            },
            {
              "id": "title",
              "type": "text",
              "label": "Title (English)"
            },
            {
              "id": "title_fr",
              "type": "text",
              "label": "Title (French)"
            },
            {
              "id": "text",
              "type": "text",
              "label": "Text (English)"
            },
            {
              "id": "text_fr",
              "type": "text",
              "label": "Text (French)"
            }
          ]
        }
      ],
      "defaultProps": {
        "heading": "What we stand for",
        "heading_fr": "Nos engagements",
        "values": [
          {
            "icon": "ri-scissors-cut-line",
            "title": "Considered craft",
            "title_fr": "Un savoir-faire réfléchi",
            "text": "Every piece is made with partner ateliers we visit in person, in Portugal, Italy and France.",
            "text_fr": "Chaque pièce est fabriquée par des ateliers partenaires que nous visitons, au Portugal, en Italie et en France."
          },
          {
            "icon": "ri-leaf-line",
            "title": "Fewer, better",
            "title_fr": "Moins, mais mieux",
            "text": "Small runs, natural fibres and no endless drops — we make what we would keep.",
            "text_fr": "Petites séries, fibres naturelles, pas de sorties sans fin — nous faisons ce que nous garderions."
          },
          {
            "icon": "ri-loop-left-line",
            "title": "Made to last",
            "title_fr": "Fait pour durer",
            "text": "Free repairs on outerwear and leather for the first two years.",
            "text_fr": "Réparations offertes sur les manteaux et le cuir pendant deux ans."
          }
        ]
      }
    },
    {
      "type": "BlogListSection",
      "label": "Journal Listing",
      "icon": "Article",
      "deletable": true,
      "variants": [
        {
          "id": "featured",
          "label": "Featured story + grid"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "allLabel",
          "type": "text",
          "label": "All filter (English)"
        },
        {
          "id": "allLabel_fr",
          "type": "text",
          "label": "All filter (French)"
        },
        {
          "id": "readLabel",
          "type": "text",
          "label": "Read label (English)"
        },
        {
          "id": "readLabel_fr",
          "type": "text",
          "label": "Read label (French)"
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptyText",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptyText_fr",
          "type": "text",
          "label": "Empty text (French)"
        },
        {
          "id": "errorTitle",
          "type": "text",
          "label": "Error title (English)"
        },
        {
          "id": "errorTitle_fr",
          "type": "text",
          "label": "Error title (French)"
        },
        {
          "id": "retryLabel",
          "type": "text",
          "label": "Retry button (English)"
        },
        {
          "id": "retryLabel_fr",
          "type": "text",
          "label": "Retry button (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "The Journal",
        "eyebrow_fr": "Le Journal",
        "heading": "Notes on style, craft and the season",
        "heading_fr": "Notes sur le style, le savoir-faire et la saison",
        "allLabel": "All",
        "allLabel_fr": "Tout",
        "readLabel": "Read the story",
        "readLabel_fr": "Lire l’article",
        "emptyTitle": "Nothing here — yet.",
        "emptyTitle_fr": "Rien ici — pour l’instant.",
        "emptyText": "New pieces land every Thursday. Check back soon.",
        "emptyText_fr": "De nouvelles pièces arrivent chaque jeudi. Revenez bientôt.",
        "errorTitle": "We couldn’t load this edit",
        "errorTitle_fr": "Impossible de charger cette sélection",
        "retryLabel": "Try again",
        "retryLabel_fr": "Réessayer"
      }
    },
    {
      "type": "BlogPostSection",
      "label": "Journal Article",
      "icon": "Description",
      "deletable": false,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "backLabel",
          "type": "text",
          "label": "Back link (English)"
        },
        {
          "id": "backLabel_fr",
          "type": "text",
          "label": "Back link (French)"
        },
        {
          "id": "shopTitle",
          "type": "text",
          "label": "Shop the story (English)"
        },
        {
          "id": "shopTitle_fr",
          "type": "text",
          "label": "Shop the story (French)"
        },
        {
          "id": "relatedTitle",
          "type": "text",
          "label": "Related (English)"
        },
        {
          "id": "relatedTitle_fr",
          "type": "text",
          "label": "Related (French)"
        }
      ],
      "defaultProps": {
        "backLabel": "Back to the Journal",
        "backLabel_fr": "Retour au Journal",
        "shopTitle": "Shop the story",
        "shopTitle_fr": "Les pièces de l’article",
        "relatedTitle": "Keep reading",
        "relatedTitle_fr": "À lire aussi"
      }
    },
    {
      "type": "ContactSection",
      "label": "Contact",
      "icon": "ContactMail",
      "deletable": true,
      "variants": [
        {
          "id": "split",
          "label": "Info + form"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "textarea",
          "label": "Subheading (English)"
        },
        {
          "id": "subheading_fr",
          "type": "textarea",
          "label": "Subheading (French)"
        },
        {
          "id": "nameLabel",
          "type": "text",
          "label": "Name (English)"
        },
        {
          "id": "nameLabel_fr",
          "type": "text",
          "label": "Name (French)"
        },
        {
          "id": "emailLabel",
          "type": "text",
          "label": "Email (English)"
        },
        {
          "id": "emailLabel_fr",
          "type": "text",
          "label": "Email (French)"
        },
        {
          "id": "topicLabel",
          "type": "text",
          "label": "Topic (English)"
        },
        {
          "id": "topicLabel_fr",
          "type": "text",
          "label": "Topic (French)"
        },
        {
          "id": "orderLabel",
          "type": "text",
          "label": "Order no. (English)"
        },
        {
          "id": "orderLabel_fr",
          "type": "text",
          "label": "Order no. (French)"
        },
        {
          "id": "messageLabel",
          "type": "text",
          "label": "Message (English)"
        },
        {
          "id": "messageLabel_fr",
          "type": "text",
          "label": "Message (French)"
        },
        {
          "id": "submitLabel",
          "type": "text",
          "label": "Submit (English)"
        },
        {
          "id": "submitLabel_fr",
          "type": "text",
          "label": "Submit (French)"
        },
        {
          "id": "submittingLabel",
          "type": "text",
          "label": "Submitting (English)"
        },
        {
          "id": "submittingLabel_fr",
          "type": "text",
          "label": "Submitting (French)"
        },
        {
          "id": "successTitle",
          "type": "text",
          "label": "Success title (English)"
        },
        {
          "id": "successTitle_fr",
          "type": "text",
          "label": "Success title (French)"
        },
        {
          "id": "successText",
          "type": "text",
          "label": "Success text (English)"
        },
        {
          "id": "successText_fr",
          "type": "text",
          "label": "Success text (French)"
        },
        {
          "id": "errorText",
          "type": "text",
          "label": "Error text (English)"
        },
        {
          "id": "errorText_fr",
          "type": "text",
          "label": "Error text (French)"
        },
        {
          "id": "visitTitle",
          "type": "text",
          "label": "Visit title (English)"
        },
        {
          "id": "visitTitle_fr",
          "type": "text",
          "label": "Visit title (French)"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Showroom image"
        }
      ],
      "defaultProps": {
        "eyebrow": "Client care",
        "eyebrow_fr": "Service client",
        "heading": "Let’s talk",
        "heading_fr": "Parlons-en",
        "subheading": "Styling advice, sizing questions or an order that needs attention — our client advisors reply within one business day.",
        "subheading_fr": "Conseils de style, questions de taille ou commande à suivre — nos conseillers répondent sous un jour ouvré.",
        "nameLabel": "Full name",
        "nameLabel_fr": "Nom complet",
        "emailLabel": "Email",
        "emailLabel_fr": "E-mail",
        "topicLabel": "Topic",
        "topicLabel_fr": "Sujet",
        "orderLabel": "Order number (optional)",
        "orderLabel_fr": "Numéro de commande (facultatif)",
        "messageLabel": "Message",
        "messageLabel_fr": "Message",
        "submitLabel": "Send message",
        "submitLabel_fr": "Envoyer",
        "submittingLabel": "Sending…",
        "submittingLabel_fr": "Envoi…",
        "successTitle": "Message received.",
        "successTitle_fr": "Message reçu.",
        "successText": "A client advisor will be in touch within one business day.",
        "successText_fr": "Un conseiller vous répondra sous un jour ouvré.",
        "errorText": "Something went wrong. Please try again.",
        "errorText_fr": "Une erreur est survenue. Veuillez réessayer.",
        "visitTitle": "Visit the Maison",
        "visitTitle_fr": "Visitez la Maison",
        "imageUrl": "https://images.unsplash.com/photo-1441984904996-e0b6ba687e04?w=1600&q=80&auto=format&fit=crop"
      }
    },
    {
      "type": "FaqSection",
      "label": "FAQ",
      "icon": "Quiz",
      "deletable": true,
      "variants": [
        {
          "id": "accordion",
          "label": "Accordion"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "faqs",
          "type": "blocks",
          "label": "Questions",
          "blockLabel": "Question",
          "maxBlocks": 20,
          "blockFields": [
            {
              "id": "q",
              "type": "text",
              "label": "Question (English)"
            },
            {
              "id": "q_fr",
              "type": "text",
              "label": "Question (French)"
            },
            {
              "id": "a",
              "type": "textarea",
              "label": "Answer (English)"
            },
            {
              "id": "a_fr",
              "type": "textarea",
              "label": "Answer (French)"
            }
          ]
        }
      ],
      "defaultProps": {
        "eyebrow": "Help",
        "eyebrow_fr": "Aide",
        "heading": "Frequently asked",
        "heading_fr": "Questions fréquentes",
        "faqs": [
          {
            "q": "How long does delivery take?",
            "q_fr": "Quels sont les délais de livraison ?",
            "a": "Standard delivery takes 3–5 business days and is complimentary over $250. Express arrives in 1–2 business days.",
            "a_fr": "La livraison standard prend 3 à 5 jours ouvrés et est offerte dès 250 $. L’express arrive en 1 à 2 jours."
          },
          {
            "q": "What is your returns policy?",
            "q_fr": "Quelle est votre politique de retour ?",
            "a": "Return any unworn piece within 30 days for a full refund. Returns are free — print a label from your account.",
            "a_fr": "Retournez toute pièce non portée sous 30 jours. Les retours sont gratuits depuis votre compte."
          },
          {
            "q": "How do I find my size?",
            "q_fr": "Comment trouver ma taille ?",
            "a": "Every product page has a size guide and fit notes from our team. Between sizes, size up for outerwear and down for knitwear.",
            "a_fr": "Chaque fiche produit propose un guide des tailles et des conseils de coupe."
          },
          {
            "q": "Do you ship internationally?",
            "q_fr": "Livrez-vous à l’international ?",
            "a": "Yes — to 38 countries, with duties calculated at checkout so there are no surprises on delivery.",
            "a_fr": "Oui, dans 38 pays, droits calculés au paiement."
          },
          {
            "q": "Can I change or cancel my order?",
            "q_fr": "Puis-je modifier ou annuler ma commande ?",
            "a": "You can cancel within one hour of ordering from your account, or contact client care and we’ll do our best.",
            "a_fr": "Vous pouvez annuler dans l’heure depuis votre compte, ou contacter le service client."
          },
          {
            "q": "What is the Maison Circle?",
            "q_fr": "Qu’est-ce que le Maison Circle ?",
            "a": "Our loyalty programme: earn one point per dollar, unlock early access and free repairs, and redeem points at checkout.",
            "a_fr": "Notre programme de fidélité : un point par dollar, accès anticipé et réparations offertes."
          }
        ]
      }
    },
    {
      "type": "SearchResultsSection",
      "label": "Search Results",
      "icon": "ManageSearch",
      "deletable": true,
      "variants": [
        {
          "id": "grid",
          "label": "Grid"
        }
      ],
      "propsSchema": [
        {
          "id": "heading",
          "type": "text",
          "label": "Heading — {query} (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading — {query} (French)"
        },
        {
          "id": "countLabel",
          "type": "text",
          "label": "Count — {count} (English)"
        },
        {
          "id": "countLabel_fr",
          "type": "text",
          "label": "Count — {count} (French)"
        },
        {
          "id": "noResultsTitle",
          "type": "text",
          "label": "No results — {query} (English)"
        },
        {
          "id": "noResultsTitle_fr",
          "type": "text",
          "label": "No results — {query} (French)"
        },
        {
          "id": "noResultsText",
          "type": "text",
          "label": "No results text (English)"
        },
        {
          "id": "noResultsText_fr",
          "type": "text",
          "label": "No results text (French)"
        },
        {
          "id": "suggestionsTitle",
          "type": "text",
          "label": "Suggestions title (English)"
        },
        {
          "id": "suggestionsTitle_fr",
          "type": "text",
          "label": "Suggestions title (French)"
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptyText",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptyText_fr",
          "type": "text",
          "label": "Empty text (French)"
        },
        {
          "id": "errorTitle",
          "type": "text",
          "label": "Error title (English)"
        },
        {
          "id": "errorTitle_fr",
          "type": "text",
          "label": "Error title (French)"
        },
        {
          "id": "retryLabel",
          "type": "text",
          "label": "Retry button (English)"
        },
        {
          "id": "retryLabel_fr",
          "type": "text",
          "label": "Retry button (French)"
        }
      ],
      "defaultProps": {
        "heading": "Results for \"{query}\"",
        "heading_fr": "Résultats pour « {query} »",
        "countLabel": "{count} pieces",
        "countLabel_fr": "{count} pièces",
        "noResultsTitle": "Nothing matches \"{query}\"",
        "noResultsTitle_fr": "Rien ne correspond à « {query} »",
        "noResultsText": "Check the spelling or try one of these instead.",
        "noResultsText_fr": "Vérifiez l’orthographe ou essayez plutôt ceci.",
        "suggestionsTitle": "Popular right now",
        "suggestionsTitle_fr": "Populaire en ce moment",
        "emptyTitle": "Nothing here — yet.",
        "emptyTitle_fr": "Rien ici — pour l’instant.",
        "emptyText": "New pieces land every Thursday. Check back soon.",
        "emptyText_fr": "De nouvelles pièces arrivent chaque jeudi. Revenez bientôt.",
        "errorTitle": "We couldn’t load this edit",
        "errorTitle_fr": "Impossible de charger cette sélection",
        "retryLabel": "Try again",
        "retryLabel_fr": "Réessayer"
      }
    },
    {
      "type": "CheckoutFormSection",
      "label": "Checkout",
      "icon": "ShoppingCartCheckout",
      "deletable": false,
      "variants": [
        {
          "id": "steps",
          "label": "Four-step checkout + summary"
        }
      ],
      "propsSchema": [
        {
          "id": "stepInformation",
          "type": "text",
          "label": "Step 1 (English)"
        },
        {
          "id": "stepInformation_fr",
          "type": "text",
          "label": "Step 1 (French)"
        },
        {
          "id": "stepDelivery",
          "type": "text",
          "label": "Step 2 (English)"
        },
        {
          "id": "stepDelivery_fr",
          "type": "text",
          "label": "Step 2 (French)"
        },
        {
          "id": "stepPayment",
          "type": "text",
          "label": "Step 3 (English)"
        },
        {
          "id": "stepPayment_fr",
          "type": "text",
          "label": "Step 3 (French)"
        },
        {
          "id": "stepReview",
          "type": "text",
          "label": "Step 4 (English)"
        },
        {
          "id": "stepReview_fr",
          "type": "text",
          "label": "Step 4 (French)"
        },
        {
          "id": "contactTitle",
          "type": "text",
          "label": "Contact title (English)"
        },
        {
          "id": "contactTitle_fr",
          "type": "text",
          "label": "Contact title (French)"
        },
        {
          "id": "addressTitle",
          "type": "text",
          "label": "Address title (English)"
        },
        {
          "id": "addressTitle_fr",
          "type": "text",
          "label": "Address title (French)"
        },
        {
          "id": "continueLabel",
          "type": "text",
          "label": "Continue (English)"
        },
        {
          "id": "continueLabel_fr",
          "type": "text",
          "label": "Continue (French)"
        },
        {
          "id": "backLabel",
          "type": "text",
          "label": "Back (English)"
        },
        {
          "id": "backLabel_fr",
          "type": "text",
          "label": "Back (French)"
        },
        {
          "id": "placeOrderLabel",
          "type": "text",
          "label": "Place order (English)"
        },
        {
          "id": "placeOrderLabel_fr",
          "type": "text",
          "label": "Place order (French)"
        },
        {
          "id": "processingLabel",
          "type": "text",
          "label": "Processing (English)"
        },
        {
          "id": "processingLabel_fr",
          "type": "text",
          "label": "Processing (French)"
        },
        {
          "id": "summaryTitle",
          "type": "text",
          "label": "Summary title (English)"
        },
        {
          "id": "summaryTitle_fr",
          "type": "text",
          "label": "Summary title (French)"
        },
        {
          "id": "couponPlaceholder",
          "type": "text",
          "label": "Coupon placeholder (English)"
        },
        {
          "id": "couponPlaceholder_fr",
          "type": "text",
          "label": "Coupon placeholder (French)"
        },
        {
          "id": "applyLabel",
          "type": "text",
          "label": "Apply (English)"
        },
        {
          "id": "applyLabel_fr",
          "type": "text",
          "label": "Apply (French)"
        },
        {
          "id": "couponOk",
          "type": "text",
          "label": "Coupon applied (English)"
        },
        {
          "id": "couponOk_fr",
          "type": "text",
          "label": "Coupon applied (French)"
        },
        {
          "id": "couponBad",
          "type": "text",
          "label": "Coupon invalid (English)"
        },
        {
          "id": "couponBad_fr",
          "type": "text",
          "label": "Coupon invalid (French)"
        },
        {
          "id": "guestNote",
          "type": "text",
          "label": "Guest note (English)"
        },
        {
          "id": "guestNote_fr",
          "type": "text",
          "label": "Guest note (French)"
        },
        {
          "id": "signInLabel",
          "type": "text",
          "label": "Sign in (English)"
        },
        {
          "id": "signInLabel_fr",
          "type": "text",
          "label": "Sign in (French)"
        },
        {
          "id": "secureNote",
          "type": "text",
          "label": "Secure note (English)"
        },
        {
          "id": "secureNote_fr",
          "type": "text",
          "label": "Secure note (French)"
        },
        {
          "id": "requiredError",
          "type": "text",
          "label": "Required error (English)"
        },
        {
          "id": "requiredError_fr",
          "type": "text",
          "label": "Required error (French)"
        },
        {
          "id": "checkoutFields",
          "type": "checkout-fields",
          "label": "Checkout fields"
        }
      ],
      "defaultProps": {
        "stepInformation": "Information",
        "stepInformation_fr": "Informations",
        "stepDelivery": "Delivery",
        "stepDelivery_fr": "Livraison",
        "stepPayment": "Payment",
        "stepPayment_fr": "Paiement",
        "stepReview": "Review",
        "stepReview_fr": "Vérification",
        "contactTitle": "Contact",
        "contactTitle_fr": "Contact",
        "addressTitle": "Shipping address",
        "addressTitle_fr": "Adresse de livraison",
        "continueLabel": "Continue",
        "continueLabel_fr": "Continuer",
        "backLabel": "Back",
        "backLabel_fr": "Retour",
        "placeOrderLabel": "Place order",
        "placeOrderLabel_fr": "Valider la commande",
        "processingLabel": "Processing your order…",
        "processingLabel_fr": "Traitement de votre commande…",
        "summaryTitle": "Order summary",
        "summaryTitle_fr": "Récapitulatif",
        "couponPlaceholder": "Promo code",
        "couponPlaceholder_fr": "Code promo",
        "applyLabel": "Apply",
        "applyLabel_fr": "Appliquer",
        "couponOk": "VELOUR15 applied — 15% off",
        "couponOk_fr": "VELOUR15 appliqué — -15 %",
        "couponBad": "This code isn’t valid",
        "couponBad_fr": "Ce code n’est pas valide",
        "guestNote": "Checking out as a guest. Have an account?",
        "guestNote_fr": "Commande en tant qu’invité. Vous avez un compte ?",
        "signInLabel": "Sign in",
        "signInLabel_fr": "Se connecter",
        "secureNote": "Secure checkout — your details are encrypted",
        "secureNote_fr": "Paiement sécurisé — vos données sont chiffrées",
        "requiredError": "This field is required",
        "requiredError_fr": "Ce champ est obligatoire",
        "checkoutFields": {
          "layout": "two-column",
          "fields": {
            "email": {
              "mode": "show",
              "required": true,
              "width": "full"
            },
            "firstName": {
              "mode": "show",
              "required": true,
              "width": "half"
            },
            "lastName": {
              "mode": "show",
              "required": true,
              "width": "half"
            },
            "address": {
              "mode": "show",
              "required": true,
              "width": "full"
            },
            "city": {
              "mode": "show",
              "required": true,
              "width": "half"
            },
            "zip": {
              "mode": "show",
              "required": true,
              "width": "half"
            },
            "phone": {
              "mode": "show",
              "required": true,
              "width": "full"
            },
            "state": {
              "mode": "hide"
            }
          },
          "custom": [
            {
              "id": "apt",
              "type": "text",
              "label": "Apartment, suite (optional)",
              "width": "full",
              "required": false
            }
          ]
        }
      },
      "description": "Shipping zones and payment methods are live (data-live=\"shippingZones\" / \"paymentMethods\")."
    },
    {
      "type": "OrderSuccessSection",
      "label": "Order Success",
      "icon": "TaskAlt",
      "deletable": false,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "textarea",
          "label": "Subheading — {email} (English)"
        },
        {
          "id": "subheading_fr",
          "type": "textarea",
          "label": "Subheading — {email} (French)"
        },
        {
          "id": "trackLabel",
          "type": "text",
          "label": "Track (English)"
        },
        {
          "id": "trackLabel_fr",
          "type": "text",
          "label": "Track (French)"
        },
        {
          "id": "continueLabel",
          "type": "text",
          "label": "Continue (English)"
        },
        {
          "id": "continueLabel_fr",
          "type": "text",
          "label": "Continue (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "Order confirmed",
        "eyebrow_fr": "Commande confirmée",
        "heading": "Merci — your order is confirmed.",
        "heading_fr": "Merci — votre commande est confirmée.",
        "subheading": "A confirmation is on its way to {email}. We’ll send tracking as soon as your pieces leave the atelier.",
        "subheading_fr": "Une confirmation arrive à {email}. Le suivi suivra dès le départ de l’atelier.",
        "trackLabel": "Track your order",
        "trackLabel_fr": "Suivre ma commande",
        "continueLabel": "Continue shopping",
        "continueLabel_fr": "Continuer mes achats"
      }
    },
    {
      "type": "AccountDashboard",
      "label": "Account Dashboard",
      "icon": "AccountCircle",
      "deletable": false,
      "variants": [
        {
          "id": "sidebar",
          "label": "Sidebar tabs"
        }
      ],
      "propsSchema": [
        {
          "id": "greeting",
          "type": "text",
          "label": "Greeting — {name} (English)"
        },
        {
          "id": "greeting_fr",
          "type": "text",
          "label": "Greeting — {name} (French)"
        },
        {
          "id": "ordersTab",
          "type": "text",
          "label": "Orders tab (English)"
        },
        {
          "id": "ordersTab_fr",
          "type": "text",
          "label": "Orders tab (French)"
        },
        {
          "id": "addressesTab",
          "type": "text",
          "label": "Addresses tab (English)"
        },
        {
          "id": "addressesTab_fr",
          "type": "text",
          "label": "Addresses tab (French)"
        },
        {
          "id": "profileTab",
          "type": "text",
          "label": "Profile tab (English)"
        },
        {
          "id": "profileTab_fr",
          "type": "text",
          "label": "Profile tab (French)"
        },
        {
          "id": "rewardsTab",
          "type": "text",
          "label": "Rewards tab (English)"
        },
        {
          "id": "rewardsTab_fr",
          "type": "text",
          "label": "Rewards tab (French)"
        },
        {
          "id": "signOutLabel",
          "type": "text",
          "label": "Sign out (English)"
        },
        {
          "id": "signOutLabel_fr",
          "type": "text",
          "label": "Sign out (French)"
        },
        {
          "id": "noOrdersTitle",
          "type": "text",
          "label": "No orders title (English)"
        },
        {
          "id": "noOrdersTitle_fr",
          "type": "text",
          "label": "No orders title (French)"
        },
        {
          "id": "noOrdersText",
          "type": "text",
          "label": "No orders text (English)"
        },
        {
          "id": "noOrdersText_fr",
          "type": "text",
          "label": "No orders text (French)"
        },
        {
          "id": "returnLabel",
          "type": "text",
          "label": "Return (English)"
        },
        {
          "id": "returnLabel_fr",
          "type": "text",
          "label": "Return (French)"
        },
        {
          "id": "invoiceLabel",
          "type": "text",
          "label": "Invoice (English)"
        },
        {
          "id": "invoiceLabel_fr",
          "type": "text",
          "label": "Invoice (French)"
        }
      ],
      "defaultProps": {
        "greeting": "Bonjour, {name}",
        "greeting_fr": "Bonjour, {name}",
        "ordersTab": "Orders",
        "ordersTab_fr": "Commandes",
        "addressesTab": "Addresses",
        "addressesTab_fr": "Adresses",
        "profileTab": "Profile",
        "profileTab_fr": "Profil",
        "rewardsTab": "Maison Circle",
        "rewardsTab_fr": "Maison Circle",
        "signOutLabel": "Sign out",
        "signOutLabel_fr": "Se déconnecter",
        "noOrdersTitle": "No orders yet",
        "noOrdersTitle_fr": "Aucune commande",
        "noOrdersText": "When you place an order, it will appear here.",
        "noOrdersText_fr": "Vos commandes apparaîtront ici.",
        "returnLabel": "Request a return",
        "returnLabel_fr": "Demander un retour",
        "invoiceLabel": "Download invoice",
        "invoiceLabel_fr": "Télécharger la facture"
      }
    },
    {
      "type": "AuthSection",
      "label": "Sign in / Sign up",
      "icon": "Login",
      "deletable": false,
      "variants": [
        {
          "id": "split",
          "label": "Split with image"
        }
      ],
      "propsSchema": [
        {
          "id": "signInTitle",
          "type": "text",
          "label": "Sign-in title (English)"
        },
        {
          "id": "signInTitle_fr",
          "type": "text",
          "label": "Sign-in title (French)"
        },
        {
          "id": "signUpTitle",
          "type": "text",
          "label": "Sign-up title (English)"
        },
        {
          "id": "signUpTitle_fr",
          "type": "text",
          "label": "Sign-up title (French)"
        },
        {
          "id": "emailLabel",
          "type": "text",
          "label": "Email (English)"
        },
        {
          "id": "emailLabel_fr",
          "type": "text",
          "label": "Email (French)"
        },
        {
          "id": "passwordLabel",
          "type": "text",
          "label": "Password (English)"
        },
        {
          "id": "passwordLabel_fr",
          "type": "text",
          "label": "Password (French)"
        },
        {
          "id": "nameLabel",
          "type": "text",
          "label": "Name (English)"
        },
        {
          "id": "nameLabel_fr",
          "type": "text",
          "label": "Name (French)"
        },
        {
          "id": "signInLabel",
          "type": "text",
          "label": "Sign in button (English)"
        },
        {
          "id": "signInLabel_fr",
          "type": "text",
          "label": "Sign in button (French)"
        },
        {
          "id": "signUpLabel",
          "type": "text",
          "label": "Sign up button (English)"
        },
        {
          "id": "signUpLabel_fr",
          "type": "text",
          "label": "Sign up button (French)"
        },
        {
          "id": "forgotLabel",
          "type": "text",
          "label": "Forgot link (English)"
        },
        {
          "id": "forgotLabel_fr",
          "type": "text",
          "label": "Forgot link (French)"
        },
        {
          "id": "otpTitle",
          "type": "text",
          "label": "OTP title (English)"
        },
        {
          "id": "otpTitle_fr",
          "type": "text",
          "label": "OTP title (French)"
        },
        {
          "id": "otpText",
          "type": "text",
          "label": "OTP text — {email} (English)"
        },
        {
          "id": "otpText_fr",
          "type": "text",
          "label": "OTP text — {email} (French)"
        },
        {
          "id": "resendLabel",
          "type": "text",
          "label": "Resend (English)"
        },
        {
          "id": "resendLabel_fr",
          "type": "text",
          "label": "Resend (French)"
        },
        {
          "id": "googleLabel",
          "type": "text",
          "label": "Google (English)"
        },
        {
          "id": "googleLabel_fr",
          "type": "text",
          "label": "Google (French)"
        },
        {
          "id": "facebookLabel",
          "type": "text",
          "label": "Facebook (English)"
        },
        {
          "id": "facebookLabel_fr",
          "type": "text",
          "label": "Facebook (French)"
        },
        {
          "id": "imageUrl",
          "type": "image",
          "label": "Side image (4:5)"
        }
      ],
      "defaultProps": {
        "signInTitle": "Welcome back",
        "signInTitle_fr": "Bon retour",
        "signUpTitle": "Join the Maison",
        "signUpTitle_fr": "Rejoindre la Maison",
        "emailLabel": "Email",
        "emailLabel_fr": "E-mail",
        "passwordLabel": "Password",
        "passwordLabel_fr": "Mot de passe",
        "nameLabel": "Full name",
        "nameLabel_fr": "Nom complet",
        "signInLabel": "Sign in",
        "signInLabel_fr": "Se connecter",
        "signUpLabel": "Create account",
        "signUpLabel_fr": "Créer un compte",
        "forgotLabel": "Forgot password?",
        "forgotLabel_fr": "Mot de passe oublié ?",
        "otpTitle": "Check your inbox",
        "otpTitle_fr": "Vérifiez votre boîte mail",
        "otpText": "Enter the 6-digit code we sent to {email}.",
        "otpText_fr": "Saisissez le code à 6 chiffres envoyé à {email}.",
        "resendLabel": "Resend code",
        "resendLabel_fr": "Renvoyer le code",
        "googleLabel": "Continue with Google",
        "googleLabel_fr": "Continuer avec Google",
        "facebookLabel": "Continue with Facebook",
        "facebookLabel_fr": "Continuer avec Facebook",
        "imageUrl": "https://images.unsplash.com/photo-1487222477894-8943e31ef7b2?w=1600&q=80&auto=format&fit=crop"
      }
    },
    {
      "type": "TrackOrderSection",
      "label": "Order Tracking",
      "icon": "LocalShipping",
      "deletable": false,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "text",
          "label": "Subheading (English)"
        },
        {
          "id": "subheading_fr",
          "type": "text",
          "label": "Subheading (French)"
        },
        {
          "id": "orderLabel",
          "type": "text",
          "label": "Order no. (English)"
        },
        {
          "id": "orderLabel_fr",
          "type": "text",
          "label": "Order no. (French)"
        },
        {
          "id": "emailLabel",
          "type": "text",
          "label": "Email or phone (English)"
        },
        {
          "id": "emailLabel_fr",
          "type": "text",
          "label": "Email or phone (French)"
        },
        {
          "id": "submitLabel",
          "type": "text",
          "label": "Submit (English)"
        },
        {
          "id": "submitLabel_fr",
          "type": "text",
          "label": "Submit (French)"
        },
        {
          "id": "notFoundTitle",
          "type": "text",
          "label": "Not found title (English)"
        },
        {
          "id": "notFoundTitle_fr",
          "type": "text",
          "label": "Not found title (French)"
        },
        {
          "id": "notFoundText",
          "type": "text",
          "label": "Not found text (English)"
        },
        {
          "id": "notFoundText_fr",
          "type": "text",
          "label": "Not found text (French)"
        }
      ],
      "defaultProps": {
        "heading": "Track your order",
        "heading_fr": "Suivre votre commande",
        "subheading": "Enter your order number and the email you used at checkout.",
        "subheading_fr": "Saisissez votre numéro de commande et votre e-mail.",
        "orderLabel": "Order number",
        "orderLabel_fr": "Numéro de commande",
        "emailLabel": "Email or phone",
        "emailLabel_fr": "E-mail ou téléphone",
        "submitLabel": "Track order",
        "submitLabel_fr": "Suivre",
        "notFoundTitle": "We couldn’t find that order",
        "notFoundTitle_fr": "Commande introuvable",
        "notFoundText": "Check the number on your confirmation email — it starts with MV.",
        "notFoundText_fr": "Vérifiez le numéro sur votre e-mail de confirmation — il commence par MV."
      }
    },
    {
      "type": "WishlistSection",
      "label": "Wishlist",
      "icon": "Favorite",
      "deletable": false,
      "variants": [
        {
          "id": "grid",
          "label": "Grid"
        }
      ],
      "propsSchema": [
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "emptyTitle",
          "type": "text",
          "label": "Empty title (English)"
        },
        {
          "id": "emptyTitle_fr",
          "type": "text",
          "label": "Empty title (French)"
        },
        {
          "id": "emptyText",
          "type": "text",
          "label": "Empty text (English)"
        },
        {
          "id": "emptyText_fr",
          "type": "text",
          "label": "Empty text (French)"
        },
        {
          "id": "ctaLabel",
          "type": "text",
          "label": "Empty CTA (English)"
        },
        {
          "id": "ctaLabel_fr",
          "type": "text",
          "label": "Empty CTA (French)"
        },
        {
          "id": "moveAllLabel",
          "type": "text",
          "label": "Add all (English)"
        },
        {
          "id": "moveAllLabel_fr",
          "type": "text",
          "label": "Add all (French)"
        }
      ],
      "defaultProps": {
        "heading": "Your wishlist",
        "heading_fr": "Vos favoris",
        "emptyTitle": "Nothing saved yet",
        "emptyTitle_fr": "Rien d’enregistré",
        "emptyText": "Tap the heart on any piece to keep it here for later.",
        "emptyText_fr": "Touchez le cœur d’une pièce pour la retrouver ici.",
        "ctaLabel": "Discover New Arrivals",
        "ctaLabel_fr": "Découvrir les nouveautés",
        "moveAllLabel": "Add all to bag",
        "moveAllLabel_fr": "Tout ajouter au panier"
      }
    },
    {
      "type": "LegalContentSection",
      "label": "Legal Content",
      "icon": "Gavel",
      "deletable": false,
      "variants": [
        {
          "id": "toc",
          "label": "With table of contents"
        }
      ],
      "propsSchema": [
        {
          "id": "lastUpdatedLabel",
          "type": "text",
          "label": "Last updated (English)"
        },
        {
          "id": "lastUpdatedLabel_fr",
          "type": "text",
          "label": "Last updated (French)"
        },
        {
          "id": "tocTitle",
          "type": "text",
          "label": "TOC title (English)"
        },
        {
          "id": "tocTitle_fr",
          "type": "text",
          "label": "TOC title (French)"
        }
      ],
      "defaultProps": {
        "lastUpdatedLabel": "Last updated",
        "lastUpdatedLabel_fr": "Dernière mise à jour",
        "tocTitle": "On this page",
        "tocTitle_fr": "Sur cette page"
      },
      "description": "Body comes from Admin → Legal Pages (data-live=\"legal.content\")."
    },
    {
      "type": "NotFoundSection",
      "label": "404",
      "icon": "ErrorOutline",
      "deletable": true,
      "variants": [
        {
          "id": "default",
          "label": "Default"
        }
      ],
      "propsSchema": [
        {
          "id": "eyebrow",
          "type": "text",
          "label": "Eyebrow (English)"
        },
        {
          "id": "eyebrow_fr",
          "type": "text",
          "label": "Eyebrow (French)"
        },
        {
          "id": "heading",
          "type": "text",
          "label": "Heading (English)"
        },
        {
          "id": "heading_fr",
          "type": "text",
          "label": "Heading (French)"
        },
        {
          "id": "subheading",
          "type": "textarea",
          "label": "Subheading (English)"
        },
        {
          "id": "subheading_fr",
          "type": "textarea",
          "label": "Subheading (French)"
        },
        {
          "id": "ctaLabel",
          "type": "text",
          "label": "Primary CTA (English)"
        },
        {
          "id": "ctaLabel_fr",
          "type": "text",
          "label": "Primary CTA (French)"
        },
        {
          "id": "ctaSecondaryLabel",
          "type": "text",
          "label": "Secondary CTA (English)"
        },
        {
          "id": "ctaSecondaryLabel_fr",
          "type": "text",
          "label": "Secondary CTA (French)"
        },
        {
          "id": "suggestionsTitle",
          "type": "text",
          "label": "Suggestions title (English)"
        },
        {
          "id": "suggestionsTitle_fr",
          "type": "text",
          "label": "Suggestions title (French)"
        }
      ],
      "defaultProps": {
        "eyebrow": "Error 404",
        "eyebrow_fr": "Erreur 404",
        "heading": "This page has left the runway.",
        "heading_fr": "Cette page a quitté le défilé.",
        "subheading": "The link may be broken, or the piece may have sold out for good. Let’s get you back to something beautiful.",
        "subheading_fr": "Le lien est peut-être rompu, ou la pièce épuisée pour de bon. Revenons à quelque chose de beau.",
        "ctaLabel": "Back to the homepage",
        "ctaLabel_fr": "Retour à l’accueil",
        "ctaSecondaryLabel": "Shop New Arrivals",
        "ctaSecondaryLabel_fr": "Voir les nouveautés",
        "suggestionsTitle": "You might like",
        "suggestionsTitle_fr": "Vous aimerez peut-être"
      }
    }
  ]
}