Documentation Index
Fetch the complete documentation index at: https://mintlify.com/Shopify/horizon/llms.txt
Use this file to discover all available pages before exploring further.
Overview
Horizon provides flexible layout options that control page width, spacing, borders, and structural elements throughout your theme. These settings create a consistent visual structure across all pages.Page Width
Control the maximum width of your site’s content:Maximum page content width
narrow- Narrow width (~1200px) - Ideal for focused, readable contentnormal- Standard width (~1400px) - Balanced for most storeswide- Wide width (~1600px) - Expansive for catalog-heavy sites
Page Width Variables
When to Use Each Width
Narrow
Best for:
- Content-focused sites
- Blogs and articles
- Minimal product catalogs
- Better readability
Normal
Best for:
- Standard e-commerce
- Balanced layouts
- Mixed content types
- Most use cases
Wide
Best for:
- Large product catalogs
- Image-heavy content
- Multiple columns
- Showcasing collections
Button Styles
Configure the appearance of buttons throughout your theme.Primary Buttons
Border width in pixels
- Range: 0-4px
- Default: 0px (no border)
Corner roundness
- Range: 0-100px
- Default: 100px (pill-shaped)
Font family for primary buttons
body- Body fontaccent- Accent font
Text transformation
default- No transformationuppercase- ALL CAPS
Secondary Buttons
Border width in pixels
- Range: 0-4px
- Default: 1px
Corner roundness
- Range: 0-100px
- Default: 100px (pill-shaped)
Font family for secondary buttons
body- Body fontaccent- Accent font
Text transformation
default- No transformationuppercase- ALL CAPS
Pills
Pills are small, rounded elements used for tags, filters, and navigation:Corner roundness for pill elements
- Range: 0-40px
- Default: 40px (fully rounded)
Border Styles
Control borders across various components.Cart Thumbnails
Border style for product images in cart
none- No bordersolid- Solid border
Border thickness (0-10px)
Border transparency (0-100%)
Corner roundness (0-100px)
Drawers
Border style for slide-out drawers
none- No bordersolid- Solid border
Border thickness (0-10px)
Border transparency (0-100%)
Popovers
Border style for popovers and modals
none- No bordersolid- Solid border
Border thickness (0-10px)
Border transparency (0-100%)
Corner roundness (0-16px)
Corner Radius
Horizon uses consistent border radius values across components:Buttons
Buttons
Inputs & Forms
Inputs & Forms
- Input fields: 0-32px (default: 8px)
- Variant buttons: 0-100px (default: 8px)
Media
Media
- Product images: 0-32px (default: 0px)
- Card corners: 0-16px (default: 0px)
- Cart thumbnails: 0-100px (default: 0px)
Containers
Containers
- Popovers: 0-16px (default: 8px)
- Badges: 0-100px (default: 40px)
Spacing System
Horizon uses a consistent spacing scale:Spacing Variables
Applying Spacing
Use the spacing snippet for consistent margins and padding:Spacing Snippet
Layout Utilities
Grid System
Horizon includes a flexible grid system:Grid Layout
.grid--1-colthrough.grid--6-col- Desktop columns.grid--tablet-{n}-col- Tablet breakpoint.grid--mobile-1-col- Mobile breakpoint.grid--gap-{size}- Column gap size
Container Widths
Container Types
Responsive Utilities
Responsive Classes
Section Layouts
Customize individual section layouts:Section Layout Schema
Variant Picker Layout
Style variant selection buttons:Border width for variant buttons (0-4px)
Corner roundness (0-100px)
Button width behavior
default-width-buttons- Fit to contentequal-width-buttons- Equal width for all buttons
Shadow Effects
Add drop shadow to drawer elements
Add drop shadow to popovers and modals
Shadow Variables
Layout Examples
Full-Width Hero Section
Full-Width Layout
Contained Content Section
Contained Layout
Two-Column Layout
Two-Column Layout
Best Practices
Consistent Spacing
Consistent Spacing
Use the theme’s spacing scale consistently:
- Stick to predefined spacing values
- Maintain vertical rhythm
- Use the spacing snippet for sections
Responsive Design
Responsive Design
Always test layouts on multiple devices:
- Use responsive grid classes
- Adjust padding for mobile
- Hide/show elements appropriately
Visual Hierarchy
Visual Hierarchy
Create clear visual structure:
- Use whitespace effectively
- Group related content
- Separate sections with padding/borders
Button Consistency
Button Consistency
Layout Snippet Reference
Section Wrapper
snippets/section.liquid
Spacing Helper
snippets/spacing-style.liquid
Related Pages
Theme Settings
Configure page width and global layout options
Color Schemes
Apply colors to layout elements
Typography
Control text sizing within layouts