Skip to content
Documentation

Redline Motors Docs

Everything you need to set up, edit, and launch the Redline Motors theme: theme settings, page templates, every module, the gradient-overlay system, and the design guidelines.

Getting Started

Introduction

What Redline Motors is

Redline Motors is a HubSpot CMS theme for car dealerships: new and used lots, certified pre-owned programs, and multi-brand groups. The look is dark-first — near-black surfaces with a single cognac accent used for buttons, links, badges, and current-page states. Headings use Archivo, body copy uses Manrope, and a JetBrains Mono face is reserved for figures such as prices, spec values, stock numbers, and mileage.

The whole demo site is assembled from drag-and-drop modules. Nothing is hardcoded in the templates: copy, photos, the vehicle inventory, business hours, and booking settings are all edited in the HubSpot page editor and theme settings.

Who it is for

  • A single dealership that needs a Home, Inventory, About, and Test Drive flow.
  • A store that also takes finance, trade-in, and service enquiries through forms.
  • Dealers who want a structured, searchable online inventory with search-engine-readable Vehicle markup, not a PDF.
  • Anyone running a blog or news section alongside the main site.

What is in the theme

  • 34 modules: heroes, navigation, footer, the inventory grid, a single-vehicle detail block, featured-vehicle and body-style sections, brand marquee/showcase, advisor spotlight, story rows, stats, icon points, statements, gallery, reviews, review platforms, showroom hours, location map, inquiry form, a test-drive booking widget, FAQ, team grid, plus the blog and search modules.
  • 11 website-page templates: Home, Inventory, Vehicle, About, Contact, Finance, Service, Test Drive, Trade-In, Reviews, and this Documentation page.
  • Two blog templates (listing + post) and one landing-page template (Sales Event).
  • Five system templates: 404, 500, password prompt, search results, and subscription preferences.
  • Two layouts: base.html (global header + footer) and base_lp.html (landing pages, no chrome).
  • One theme-settings panel: colours, typography, spacing, radius/elevation, buttons, borders, global brand fields, and business hours.

Design principles

Three ideas run through the theme: a dark showroom canvas, a grotesk display face that reads clean and precise for headings and vehicle names, and restraint with the accent so cognac always means something (an action, a link, or the current item). Motion is limited to gentle scroll reveals that fire once.

Upload & Install

Upload with the HubSpot CLI

From the project root, upload the theme folder to your portal:

hs upload studionope-for-automotive studionope-for-automotive --portal=<your-portal>

Once the upload finishes, the theme appears under Settings > Content > Themes as ‘Redline’.

Live editing while you work

To sync changes automatically as you edit files locally:

hs watch studionope-for-automotive studionope-for-automotive --portal=<your-portal>

First-run checklist

  1. Open Edit theme settings and confirm the colours, fonts, and logo (see Theme Settings).
  2. Upload your logo and favicon under the Global group, and set your business hours.
  3. Set a default social-share (OG) image.
  4. Create your first page from one of the templates (see Create Your First Page).

A note on images

The demo ships with placeholder photography. Replace it with your own vehicles, showroom, and team before launch (see Best Practices > Replacing Placeholder Images).

Create Your First Page

  1. Go to Marketing > Website > Website Pages and click Create.
  2. Pick a Redline template (start with Home).
  3. Give the page an internal name and a URL slug, e.g. /inventory, /about, /test-drive.
  4. Click each section to edit it. The module fields open in the right-hand sidebar: content in the Content tab, appearance in the Style tab.
  5. Set the page title and meta description under Settings for SEO and social sharing.
  6. Publish.

Header & footer

The header and footer are global partials: edit them once and the change applies to every page. The header renders the Navigation module; the footer renders the Footer module. Your logo, favicon, and default OG image are set once in Theme settings > Global and reused across both.

Theme Settings

Theme settings live in one panel with eight groups: Colors, Typography, Spacing & Layout, Radius & Elevation, Buttons, Borders, Global, and Business hours. Each value maps to a --h-* CSS variable the whole theme reads.

Colors

The palette is dark by default. Hex values are converted to rgba where opacity matters (borders, the hero overlay), so set both the colour and its opacity on those fields.

SettingDefaultControls
Page background (grey)#ecececThe light grey the dark shell floats on.
Dark surface canvas#0e0f11The main dark shell and the footer/dark bands.
Card / panel surface#16171aCards, form panels, the booking panel.
Soft section background#141517The ‘soft’ surface used to separate bands.
Input fill / hover row#1d1f23Input fills and hover-row backgrounds.
Primary / Secondary / Muted text#f4f5f6 / #9a9ea4 / #6b6f75The three-step text hierarchy.
Hairline / Stronger / Input borderwhite @ 10% / 16% / 14%The three border weights (colour + opacity).
Accent#c2874a (cognac)The single accent: buttons, links, active nav, badges.
Accent hover / Accent soft tint#b0763b / cognac @ 12%Darker hover cognac and the faint accent tint for chips and active backgrounds.
Text / accent on dark surface#f4f5f6 / #c2874aColours used inside dark bands (footer, dark CTA).
Hero image overlay#0a0b0d @ 60%The scrim ink used by heroes and gradient overlays.
Form success / error#7ee081 / #ff6b6bValidation states.

Sections marked dark (the footer, dark CTA bands) remap the tokens automatically via [data-surface='dark'], so text and accent stay legible without setting separate values.

Typography

Three font fields drive the theme, all loaded from Google Fonts by the base layout:

  • Heading font — Archivo by default (display type, headings, vehicle names).
  • Body font — Manrope by default (everything else).
  • Mono font — JetBrains Mono by default, reserved for prices, spec values, stock numbers, and mileage.
SettingRange / defaultEffect
Base body font size (px)14–20, default 16Root body size.
Base body line height1.3–1.9, default 1.6Body line height.
Uppercase label tracking (em)0–0.3, default 0.12Letter-spacing for eyebrows and small uppercase labels.
Link underline styleNone / UnderlineBody links: hover-accent or underlined.

Headings use a fluid clamp() scale (display, h1–h4, a lead size, body, small, eyebrow), so you never set heading sizes per page.

Spacing & Layout

SettingDefaultEffect
Base spacing unit (px)4The smallest step the scale is built on.
Grid gutter / card padding (px)24Space between grid items and inside cards.
Section vertical padding — max (px)120Upper bound of the fluid section padding.
Container max width (px)1200Standard content column width.
Wide container width (px)1320Roomier width for wide sections.
Container side padding — max (px)32Upper bound of the fluid side gutter.
Header height (px)72Fixed header height, used to offset content under the sticky bar.

Section padding and side gutters use clamp(), so your ‘max’ values apply on large screens and scale down on phones. There is no separate mobile setting.

Radius & Elevation

SettingDefaultEffect
Base radius (px)18Cards, panels, images, inputs, and the hero card.
Small radius (px)12Tags, chips, badges.
Pill radius (px)999Fully rounded elements (status pills).
Shadow — small / medium / largeSubtlePreset choices (Subtle / Soft / None) for cards at rest, hover/raised, and the drawer/lightbox/sticky header.

Buttons

SettingDefaultEffect
Primary button styleSolidSolid cognac fill, Outline, or Ghost.
Button radius (px)999Corner radius for all buttons (0 = square, high = pill).
Button fontFamily and weight for button labels.
Uppercase button textoffForce uppercase labels with wider tracking.

Modules use .h-btn--primary (accent fill), .h-btn--secondary (outline), and .h-btn--ghost. On dark surfaces the secondary and ghost variants invert automatically.

Borders & Global

Borders: hairline border width (1–3px, default 1) and divider style (solid / dashed / dotted).

Global: logo + logo height, favicon, default social-share (OG) image, and a price-range value ($ to $$$$) used in the dealership JSON-LD.

Business Hours & Open Status

One schedule, everywhere

The weekly schedule lives in one place: Theme settings → Business hours. Each day has a Closed toggle plus Opens / Closes times. That single schedule feeds three things at once: the live open/closed pill (header, mobile drawer, hero), the weekly hours list in the footer, and the Showroom Hours module — so they never drift.

The live open/closed pill

A small pill shows whether you are open right now (e.g. ‘Open until 7 PM’) or when you next open. It recomputes in the visitor’s browser from the schedule, including hours that run past midnight. Use the master switch Show open/closed status to turn the pill on or off everywhere; the weekly hours list is not affected.

Time format & language

The Time format setting is Auto (from the page language), 12-hour, or 24-hour. Day names and the clock are produced at render time from the page’s <html lang> using the browser’s Intl formatter, so a non-English site localizes automatically with nothing to translate by hand.

Translating the connector words

The wording around the times (‘Open until’, ‘Closed’, ‘Opens’, the word for ‘tomorrow’, and the ‘Today’ badge) is editable because theme settings cannot hold free text. These live on the global Footer module, under the open/closed status labels; {time} and {day} are replaced with the localized closing time and day name. Edit them once on the footer and the pill, footer, and Showroom Hours module all use them.

Modules Reference

The theme ships 34 modules. Every module is available to drop onto any page from the left-hand panel in the editor. They are grouped below by role.

Heroes

Showroom Hero

The main page header used at the top of most templates. It renders a large rounded card with an image or video background, a gradient overlay (see The Gradient-Overlay System), a top meta row (location label, index, and up to three trust facts), a big headline that can wrap an inline image, a lead line, and two buttons on a bottom bar.

Hero

A full-viewport hero with a single-colour overlay (colour + opacity slider) instead of the gradient system. Fields: eyebrow, H1, subhead, two buttons, a meta line, and an optional live open/closed status pill, over an image or background video with a poster. Style: overlay colour/opacity, height (full / tall / regular), alignment, and an optional contained card with radius/border/shadow.

Page Hero

A lighter header for inner pages and this docs page. Eyebrow, H1, an optional lead and meta line, and an optional single button, over either the soft surface (no image) or an image with an overlay. Style: alignment and, when an image is used, overlay colour and opacity.

Navigation & Footer

Navigation

The header bar (global). Fields: logo (image or text fallback) and link, up to 8 nav links, a Book a Test Drive button, an optional phone link, and an optional open/closed status pill. Style: transparent-over-hero, sticky-on-scroll, and accent colour. The link for the current page is highlighted automatically in the accent colour — matched from the page URL (ignoring domain, trailing slash, and language/tracking parameters) — so there is no ‘active’ checkbox to set. The same highlight applies in the mobile drawer.

Footer

The site footer and single source of truth for dealership information (global).

  • Brand & NAP: logo, name, one-line blurb, full address, phone (display + tel:), email, and a directions link.
  • Hours: the weekly list is read from the single Theme settings → Business hours schedule (you never re-enter hours here), with an option to highlight today. It also holds the translatable open/closed status labels.
  • Quick links and Social & newsletter: link columns, social icons (Font Awesome brand marks), and an optional HubSpot newsletter form.
  • Bottom bar: copyright (year added automatically) and up to 4 legal links.
  • SEO / Schema: emit AutoDealer / LocalBusiness JSON-LD with brands carried and price range.

Inventory & Vehicles

Vehicle Inventory Pro

The flagship inventory module and the heart of the Inventory page. It renders your stock as a filterable, searchable grid with a category navigation, and can open a full spec view for each vehicle.

  • Dealer info: name, URL, phone, full address, currency code/symbol, mileage unit, and page language — used for the structured data.
  • Categories (up to 10): each has a name, description, and icon, and holds up to 50 vehicles.
  • Vehicle fields: title, make/model/year/trim, price + suffix, mileage, condition (new / used / certified), body type, fuel type, transmission, drivetrain, colours, engine, horsepower, VIN, stock number, photo, a short description and a long description, a gallery (up to 12) and a video for the detail view, a features list, a spec-chip list, and a badge (Hot deal / Just arrived / Low miles / Price drop / Manager special / One owner / Certified).
  • Settings: layout (grid / list / classic / magazine), toolbar position, columns (1–4), toggles for the category nav, search, body/fuel/condition filters, and for each card field (photos, specs, price, mileage, badges, stock, VIN, description). Detail mode can be off, inline expand, or a slide-in drawer, with an optional inquiry form (HubSpot form) in the detail view.
  • SEO: Emit structured data outputs Vehicle / Offer JSON-LD (see SEO & Schema).
  • Style: a full set of colour controls for the grid, cards, filters, badges, and spec text.

Vehicle Detail

A single-vehicle page block: a gallery (up to 8 photos), title, condition, price, stock number, mileage, a rich-text description, a specifications list, and two buttons (e.g. Book a test drive / Get financing). Used on the Vehicle template.

Featured Lot

A home-page showcase of 3 to 9 vehicles with the first item enlarged. Each card shows a title, a mono spec line, price, mileage, a condition badge, an optional custom badge, and a photo, plus a link to the full inventory. It is a teaser, not the full inventory.

Body Style Grid

A grid of 3 to 8 body-style tiles (SUV, Sedan, Coupe, Electric, Truck, etc.), each with a background photo, a label, an inventory count, and a link to filtered inventory, plus an optional ‘View all’ link.

Brands & Showcases

Brand Marquee

An infinitely scrolling, looping marquee of car-brand logos (pulled from Simple Icons by slug). Fields: eyebrow, a repeater of brands (name + slug), scroll speed, logo height, and surface.

Brand Showcase & Showcase Panel

Feature panels for a single hero car or brand: an eyebrow, headline, a large backdrop wordmark, a CTA link, a car image, spec stats (value + label), and a row of related brand chips. Use them to spotlight one model or franchise.

Story & About

Advisor Spotlight

A portrait beside a story, for introducing a sales specialist, finance manager, or general manager. Fields: eyebrow, heading, a rich-text story, an optional signature line, an optional accolades list, and an optional button. Style: portrait side and aspect ratio, accent colour, and padding.

Story Row

A general image-and-text row for telling the dealership’s story (financing, trade-in, service, history). Fields: eyebrow, heading, rich-text body, an optional meta line, and an optional button, beside an image. Style: image side, surface (white / soft), and image aspect ratio. Alternate the image side between stacked rows for rhythm.

Statement

A large centred statement: an eyebrow, a bright lead line, a muted continuation line, and an optional link. Good for a positioning or mission line.

Value, Stats & Icons

Icon Points

Short value propositions, each with an icon, title, and one line of text (e.g. ‘Certified pre-owned’, ‘Transparent pricing’, ‘On-site service’). Layout: row (2–4 columns) or list. Each icon is chosen from a dropdown of common Lucide names.

Stats Bar

Inline counter statistics (e.g. ‘1200+ vehicles delivered’, ‘4.7 average rating’) that count up on scroll. Each stat has a value, prefix, suffix, decimal places, and a label. Surface: page background, soft, or a dark band.

Rich Text

A prose block for anything the structured modules do not cover: policies, disclaimers, a longer note. Optional eyebrow and heading (h2/h3/h4), a rich-text body, surface (white / soft), alignment (left / center), and compact or regular spacing.

Media & Proof

Photo Gallery

An image grid for the showroom, the vehicles, and the team — up to 24 images, each with an optional caption. Layout: even grid (2–4 columns with a chosen aspect ratio) or bento (first image featured). Options: captions and a click-to-open lightbox.

Reviews

Customer quotes in a masonry or carousel layout. Each review has a quote, author, optional source/role, and an optional star rating. Turn on Emit AggregateRating structured data (with your business name) to mark up the ratings. Style: columns, surface, alignment, star/accent colour, and quote font.

Reviews Grid

A grid of reviews with fixed star ratings, a ‘leave a review’ card, and a row of review-platform links (Lucide icon + label + URL).

Review Platforms

A trust bar of platform ratings (Google, DealerRater, Cars.com, Facebook, Edmunds, or a custom platform), each with a rating, review count, star or bubble glyphs, an optional logo, and a link.

Team Grid

The people behind the dealership: up to 16 members (sales, finance, service, management), each with a photo, name, role, and short optional bio. Style: columns (2–4), photo shape (round / square), alignment, role accent colour, and name font.

Contact, Hours & Booking

Showroom Hours

Renders the weekly hours from the single Theme settings → Business hours schedule (the same source the footer and the header pill use) with an option to highlight today. It can show a companion column (eyebrow, heading, text, a link, and a phone number) for a holiday note or the service department. Style: surface, today highlight, accent colour, and padding.

Location Map

Your address and a map side by side. Contact details (address, phone display + tel:, email) sit beside an embedded Google Maps iframe (paste the embed URL). Optional transit and parking notes, a directions link, map side (left / right), surface, and a minimum map height.

Inquiry Form

A two-column enquiry section for sales, finance, trade-in, service, and general contact. The left column holds an eyebrow, heading, intro, and optional detail points (Lucide icon + title + text); the right column holds a HubSpot form with its own title and subtitle. Style: surface, form position, an optional card around the form, accent colour, and a point-title font.

Test Drive Booking

A dedicated booking widget with three modes: Embed (paste a scheduling tool such as HubSpot Meetings, Calendly, or Acuity, with a fallback message), Form (pick a HubSpot form), or Link (a button to an external booking page, with label, URL, and a note). Also has an eyebrow, heading, intro, and an optional reassurance line. Use it as an alternative to the Inquiry Form on the Test Drive page.

Test Drive CTA

A rounded closing band that nudges buyers to book. Headline, subline, a button (or an inline newsletter form when Show form is on), and an optional phone link, over an image or video background with the same gradient-overlay system as Showroom Hero. Surface can be accent (cognac) or dark. Drop it near the bottom of most pages.

FAQ

An accordion of questions and rich-text answers (up to 30), with a split or centred layout and an option to open the first item. Turn on Emit FAQPage structured data to mark up the questions.

Blog & Search

Blog Listing Hero

The header for the blog listing page: eyebrow, H1, and a rich-text intro, with an option to only show on the main listing (so topic/author pages keep their dynamic headers).

Blog Post Header

The top of an individual post: toggles for topic tag, author, publish date, read time (with a words-per-minute setting), and the featured image, plus alignment. It reads the post’s data from HubSpot directly.

Related Articles & Search Field

Related Articles is a grid of 2–4 related posts at the foot of an article, with optional excerpt and meta. Search Field is a native HubSpot search box (it posts to the standard search-results page) with an optional heading, placeholder, surface, and alignment.

System Message

The flexible block used on the system pages (404, 500, password, search, subscription): an eyebrow, a large code (e.g. ‘404’), a heading, a rich-text message, and two optional buttons.

How icons work (Lucide)

Most module icons come from Lucide, loaded from the official Lucide CDN, so they are crisp at any size and inherit your colours. Where a field asks for an icon, give it the icon’s name (kebab-case, e.g. car, gauge, map-pin, wrench, banknote). Some modules offer a dropdown of common names instead of free text. Lucide has no brand marks, so social links in the footer use HubSpot’s Font Awesome brand icons instead.

The Gradient-Overlay System

The Showroom Hero and Test Drive CTA modules share the same background-overlay system: a repeater of overlay colours plus an angle. It replaces a single fixed scrim with a flexible one you build stop by stop, so you can wash a photo, darken one edge, or fade a bright colour across a dark video.

How the colour count decides the overlay

Overlay coloursResult
0 coloursNo overlay — the raw image or video shows through.
1 colourA flat, even wash: a single rgba() tint across the whole background, using that stop’s colour and opacity.
2 or more coloursA linear-gradient() at the chosen angle, with every colour added as a stop in order.

What each stop carries

Every row in the repeater has its own colour, its own opacity, and an optional stop position (a percentage). Because opacity is per stop, a stop can be fully transparent at one end and solid at the other. If you leave a stop position blank, the stops space evenly.

The angle

The overlay angle is a normal CSS gradient angle in degrees: 0deg runs bottom-to-top, 90deg left-to-right, 180deg top-to-bottom, 270deg right-to-left. It only applies when you have two or more colours.

Example: a white gradient over a dark video

To fade white in from one side across a dark background video (so a headline stays readable on the light side):

  1. Set the background to Video and add your video URL (and a poster).
  2. Add stop 1: white, opacity ~70%, position 0%.
  3. Add stop 2: white, opacity 0% (fully transparent), position 100%.
  4. Set the angle to 90deg for a left-to-right fade.

With two stops the module builds linear-gradient(90deg, rgba(255,255,255,0.7) 0%, rgba(255,255,255,0) 100%): solid-ish white on the left fading to clear on the right, over the moving video.

Example: darkening the bottom for text

Two stops of the dark overlay ink — transparent at the top, ~65% at the bottom, angle 0deg — gives a classic bottom scrim so a bottom-aligned headline reads cleanly. A single dark stop at ~50% gives an even dim across the whole photo instead.

Page Templates

When you create a page you pick one of the Redline templates. Each is a starting arrangement of modules with sample copy you can keep, edit, or remove. The module order below is the actual demo build for each page.

TemplateModules, in order
HomeShowroom Hero → Featured Lot → Body Style Grid → Story Row → Statement → Reviews → Location Map
InventoryShowroom Hero → Vehicle Inventory Pro → Test Drive CTA
VehicleVehicle Detail → Test Drive CTA
AboutShowroom Hero → Story Row → Story Row → Advisor Spotlight → Icon Points → Team Grid → Test Drive CTA
ContactShowroom Hero → Inquiry Form → Location Map → Test Drive CTA
FinanceShowroom Hero → Story Row → Icon Points → FAQ → Test Drive CTA
ServiceShowroom Hero → Story Row → Icon Points → FAQ → Test Drive CTA
Test DriveShowroom Hero → Inquiry Form → Location Map
Trade-InShowroom Hero → Stats Bar → Icon Points → Story Row → Inquiry Form → Test Drive CTA
ReviewsShowroom Hero → Reviews Grid → Test Drive CTA
DocumentationPage Hero + a series of Rich Text sections (this page).

Working with the templates

  • On Inventory, enter your categories and vehicles in Vehicle Inventory Pro, then turn on its structured-data toggle before launch.
  • On the Vehicle page, fill the Vehicle Detail gallery, specs, and the two buttons.
  • On Test Drive, the demo uses the Inquiry Form for booking. If you use a scheduling tool (HubSpot Meetings, Calendly, Acuity), swap in the Test Drive Booking module in Embed, Form, or Link mode instead.
  • Alternate the image side between stacked Story Rows for rhythm, and keep one Test Drive CTA as the closing band.

Blog, landing, and system pages

The Blog uses HubSpot’s blog system with theme modules: the Blog Listing Hero on the listing, and the Blog Post Header and Related Articles on each post (posts emit BlogPosting markup). The Sales Event landing page extends the chrome-free layout for a single-goal campaign. The five system pages (404, 500, password, search, subscription) are built from the System Message module so every string is editable.

Layouts

Website, blog, and system pages extend base.html (global header + footer). Landing pages extend base_lp.html, which drops the header and footer for a focused page.

Design & Animation

The look

Redline is dark-first: near-black surfaces (#0e0f11 shell, #16171a cards) with a single cognac accent (#c2874a, hover #b0763b). Keep the accent for actions, links, badges, and the current item — if everything is cognac, nothing reads as the action. Text runs on a three-step hierarchy (primary / secondary / muted) so pages stay calm.

Type roles

  • Archivo — headings, eyebrows, and vehicle names. Tight, precise, grotesk.
  • Manrope — body copy and UI text.
  • JetBrains Mono — figures only: prices, spec values, stock numbers, and mileage. Using it consistently for numbers is part of the showroom feel, so keep prices and specs in the mono face.

Motion & scroll reveals

Animation is deliberately restrained. Elements marked with the data-reveal attribute fade and rise into view once as you scroll, driven by an IntersectionObserver in js/main.js (it adds an is-revealed class). Sibling data-reveal elements are staggered automatically. The Stats Bar counts its numbers up on scroll via data-counter.

Everything degrades safely: if JavaScript does not run, content is visible by default; and all motion is disabled when the visitor has prefers-reduced-motion: reduce set. You do not need to add reveal attributes yourself — the modules already carry them.

SEO & Schema

Structured data (JSON-LD)

The theme can emit several structured-data blocks, each behind its own toggle so you turn it on intentionally on the one page that owns it.

TypeWhereToggle
AutoDealer / LocalBusinessFooter moduleEmit AutoDealer / LocalBusiness JSON-LD (with brands carried + price range).
Vehicle / OfferVehicle Inventory ProEmit structured data (uses the dealer name, currency, and mileage unit you set).
FAQPageFAQ moduleEmit FAQPage structured data.
AggregateRatingReviews moduleEmit AggregateRating structured data (with business name).
BlogPostingBlog post templateEmitted for blog posts.

Avoid double emission

The AutoDealer/LocalBusiness block belongs in the footer only, so it appears once per page — do not enable a competing business block elsewhere. Emit the Vehicle JSON-LD on the Inventory page only, not on Home where Featured Lot is just a teaser. Validate with a structured-data testing tool after publishing.

Meta, titles & Open Graph

The base layout outputs each page’s title, meta description, and a canonical URL from its Settings tab, plus Open Graph and Twitter Card tags. The share image is the page’s featured image if set, otherwise the Default social share (OG) image from Theme settings > Global — set a strong default so any page shared without its own image still looks intentional. The favicon is also set under Global and linked in the document head.

Best Practices & FAQ

Replacing placeholder images

The starter content ships with placeholder photography. Before launch, replace every image with your own — the showroom, the vehicles, the team, the hero.

  1. Click the section, open its image field, and choose Replace.
  2. Upload to the HubSpot File Manager or pick an existing file.
  3. Always set descriptive alt text (it helps SEO and accessibility).

Image sizes

  • Hero / full-bleed backgrounds: ~2400px wide, web-optimised JPG.
  • Vehicle thumbnails and cards: ~800–1200px, square or 4:3.
  • Background video (Showroom Hero / Test Drive CTA): a web-optimised ~1080p MP4 with a poster image always set.
  • Brand logos: use Simple Icons slugs in Brand Marquee; upload transparent PNGs where a module takes a logo image.

Responsive & accessibility

  • Grids collapse from 4/3 columns to 2 on tablets and 1 on phones. The mobile breakpoint is 991px.
  • Vehicle Inventory Pro’s filters and category nav stack on small screens; tables and code blocks scroll horizontally rather than overflow.
  • Type, section padding, and gutters scale fluidly with the viewport — there is no separate mobile size to maintain.
  • Write alt text for images and accessible labels for icon-only buttons and social links; give the Location Map iframe a meaningful title.
  • Cognac on the dark surface meets contrast on text and buttons; if you change the accent, recheck contrast against your background.

FAQ

Can I change the fonts?

Yes: set the Heading, Body, and Mono fonts in Theme settings > Typography. The defaults are Archivo, Manrope, and JetBrains Mono.

Where do business hours live?

In one place: Theme settings → Business hours. The footer, the header status pill, and the Showroom Hours module all read from that single schedule.

How do I take test-drive bookings?

The Test Drive page uses the Inquiry Form by default. To use a scheduling tool, swap in the Test Drive Booking module in Embed, Form, or Link mode.

How do I fade a colour across a hero photo or video?

Use the gradient-overlay repeater on Showroom Hero or Test Drive CTA: add two or more colour stops (each with its own opacity) and set the angle. See The Gradient-Overlay System.

Why is my inventory not showing rich results?

Turn on Emit structured data in Vehicle Inventory Pro, set the dealer name and currency, and make sure the Inventory page is the only place that emits it. Validate after publishing.

The accent colour is everywhere — is that intended?

The theme uses one accent on purpose. If it feels heavy, most modules let you set a per-section accent colour, or you can soften the global accent in Theme settings > Colors.

Questions?

Need a hand setting up?

Reach out and we will help you get the theme live.