Design Builder
The Design Builder is the visual theming tool in epilot for customizing the look and feel of your customer-facing journeys. It lets you configure brand colors, typography, logos, and other design tokens β all without writing code. For more advanced styling, you can also write Custom CSS directly within the Design Builder.
Overviewβ
Every journey in epilot uses a theme that controls its visual appearance. The Design Builder provides a sidebar interface where you can adjust theme settings and immediately preview the result on a live journey. Themes are stored independently from journeys, so a single theme can be applied across multiple journeys to keep your brand consistent.
The Design Builder works with epilot's Concorde design system β a lightweight, performance-optimized component library that replaces the legacy Material UIβbased styling. Journeys using the new Concorde design benefit from faster load times and full support for design tokens and Custom CSS.
tip
If your journey still uses the legacy design, you can switch to the new Concorde design by enabling the New Design toggle in the Design Builder. We recommend migrating all journeys to the new design for the best theming experience.
Design Tokensβ
Design tokens are the foundational variables that control the visual properties of every component in a journey. When you change a token in the Design Builder, the change propagates to all components that reference it.
Colorsβ
| Token | Description |
|---|---|
| Primary color | Main brand color used for buttons, links, active states, and interactive elements |
| Secondary color | Accent color for secondary actions and highlights |
| Background color | Page and section background |
| Paper background | Card and surface background |
| Error color | Validation errors and error states |
| Primary text color | Main body text |
| Secondary text color | Muted or supporting text |
Typographyβ
| Setting | Description |
|---|---|
| Font family | Select from standard fonts or upload a custom font file (TTF/OTF) |
| Font sizes | Control heading and body text sizes through the text scale tokens (--concorde-text-xs through --concorde-text-3xl) |
| Font colors | Primary and secondary text colors |
Custom fonts uploaded through the Design Builder are hosted by epilot and made available to all journeys using that theme.
Shape and Spacingβ
| Setting | Description |
|---|---|
| Border radius | Controls the roundness of buttons, cards, inputs, and other elements |
| Spacing | Base spacing unit that affects padding and margins throughout the journey |
Navigation Barβ
| Setting | Description |
|---|---|
| Logo | Upload your brand logo to display in the journey header |
| Background color | Navigation bar background |
| Logo alignment | Position the logo left, center, or right via the --concorde-topbar-logo-alignment token |
Creating and Managing Themesβ
- Navigate to Journey > Design Builder in the epilot 360 sidebar.
- Select an existing theme to edit, or create a new one.
- Use the sidebar panels to adjust colors, typography, shape, and upload assets.
- Preview your changes in real time on the journey canvas.
- Save the theme when you are satisfied with the result.
Applying a Theme to a Journeyβ
Themes are linked to journeys through the Journey Builder. When editing a journey, select the desired theme from the theme picker. Every journey references exactly one theme β changing the theme updates the journey's appearance everywhere it is deployed.
Reusing Themes Across Journeysβ
Because themes are stored as independent resources, you can apply the same theme to multiple journeys. This is useful for maintaining consistent branding across product-specific, campaign, or partner journeys. Any updates to the shared theme will be reflected in all linked journeys.
Concorde Design Tokens (CSS Variables)β
Under the hood, every Design Builder setting maps to a CSS custom property (CSS variable) prefixed with --concorde-. These tokens are defined on the :root element and consumed by all Concorde components.
Examples of commonly used tokens:
:root {
--concorde-primary-color: #005eb4;
--concorde-secondary-color: #913997;
--concorde-error-color: #cc0005;
--concorde-border-radius: 4px;
--concorde-input-background-color: #ffffff;
--concorde-card-background-color: #ffffff;
--concorde-button-background-color: #005eb4;
--concorde-button-label-color: #ffffff;
}
For a comprehensive list of available tokens, see the Concorde Design Tokens reference.
Custom CSSβ
For styling that goes beyond what the Design Builder UI exposes, you can write Custom CSS directly. The Design Builder includes an advanced CSS editor with live preview, syntax validation, and error highlighting.
Custom CSS lets you:
- Override any design token with your own values
- Target specific components, blocks, or steps using maintained Concorde class names (e.g.,
.Concorde-Button,.Concorde-Card) - Add custom font faces, gradients, animations, and other advanced styles
For a full guide with examples, see Custom CSS.
info
Custom CSS is available on the Professional pricing plan and above.
Dark Modeβ
The Design Builder supports dark mode for journeys. When dark mode is enabled, you can configure a separate set of color tokens that activate automatically. Dark modeβspecific tokens use the -dark suffix (e.g., --concorde-primary-color-dark), and the .Concorde-Dark class is applied to the document for scoped styling.
Preview your journey in both light and dark mode within the Design Builder to ensure your theme works well in both contexts.
Responsive Designβ
Journeys built with the Concorde design system are responsive by default. The layout adapts to different screen sizes β from desktop to mobile β without requiring additional configuration. Design tokens like spacing, font sizes, and layout widths scale appropriately across breakpoints.
You can further control layout behavior with tokens like:
--concorde-custom-layout-max-widthβ set the maximum content width--concorde-two-columns-content-width/--concorde-two-columns-sidebar-widthβ adjust the ratio in two-column layouts
Embedding Themed Journeysβ
Themed journeys can be embedded into your website or application. The theme settings, including Custom CSS, are applied regardless of how the journey is served. For embedding options and configuration, see Embedding.
Best Practicesβ
- Start with Design Builder settings before resorting to Custom CSS β the built-in controls handle most branding needs and are maintained across updates.
- Use design tokens (
--concorde-*variables) in your Custom CSS rather than hardcoding values, so your styles stay consistent with theme changes. - Avoid overriding core layout properties like
displayorpositionin Custom CSS, as these can break journey functionality. - Test across devices β preview your themed journey on desktop and mobile to catch responsive issues early.
- Migrate to the new design β the Concorde design system is actively maintained and provides the best theming experience. Legacy Material UI themes will be phased out.
Further Readingβ
- Journey Builder β build and configure journey steps and blocks
- Custom CSS β advanced styling guide with CSS examples
- Concorde Design Tokens β full list of CSS variables
- Concorde HTML Structure β supported class names and IDs
- Embedding β deploy journeys on your website