Layouts

Layouts provide the outer HTML frame used by templates.

theme/layout/
├── shared/
│   ├── theme.liquid
│   └── bare.liquid
└── retail/

theme.liquid is the normal storefront frame. It should contain the shared document structure and the approved slots for header, page content and footer. bare.liquid is for routes such as maintenance or other intentionally reduced experiences.

Layouts may include shared global stylesheet and browser-script assets. They should not contain product, collection, cart or checkout-specific markup; those belong to route sections.

Use a retail-specific layout only when the complete outer frame is truly different. Do not duplicate a shared layout just to change one class.

Layouts cannot fetch platform data or own authentication. All available route and store data arrives through the documented theme context.