Tortusfor Designers
Snippet Library/Content

Team profile

What you control on a single agent's page — the /team/:slug profile inherits your team appearance slice.

The single agent page (/team/:slug) is a Dynamic Page — Tortus renders the agent's real directory record inside our chrome. There's no separate profile setting: the page reads the same team/agent appearance slice as the roster index ({{tortus:team}}), stored once at design_tokens.agent. Because the agent page is not MLS-locked, this slice controls real layout — which sections show and the hero treatment — not just chrome.

Listing data on the page still obeys the per-agent show_listings switch and renders the MLS disclaimer when listings are present; these controls never change how listing data is presented.

What you control on the profile

FieldValuesEffect
enabledtrue (default) / falsewhole team surface on/off (off → the route 404s and the nav link is suppressed)
heroStylesplit (default) / centered / bannerthe profile hero treatment
accentColorprimary (default) / secondary / accentcontact rail, CTAs, and stat strip tint
showStatstrue (default) / falsethe stat strip (active listings / specialties / languages)
showExpertisetrue (default) / falsethe expertise / languages block
showReviewstrue (default) / falsethe reviews section
showListingstrue (default) / falsethe agent's listings grid (still gated per-agent)
sectionStyleflat / border / shadow (default)card / section container treatment
buttonStylesolid (default) / ghost / pillcontact / email / call CTA treatment
cardRadius040 px (default 16)portrait + listing-card corner radius
listingSortdate (default) / pricedefault sort of the listings grid
activesFirsttrue / false (default)group active / in-contract listings before sold
protectContacttrue / false (default)hide phone/email behind a rate-limited "Reveal" click

An org that hasn't customized renders byte-identically to today's bespoke profile layout — customize, and the page adopts your hero, sections, and accent.

Referencing the accent from custom content

The resolved accent is a live CSS var (var(--color-primary) by default, following your accentColor role), and the button treatment maps to the same brand tokens. A Custom Code block placed on a profile can read them, so any extra callout stays on-brand and re-skins with the palette.

An on-brand contact CTA

Custom HTML + CSS escape hatch

Like every page-builder block, a block you add to a profile supports Convert to custom — the scoped Custom HTML and CSS fields are the escape hatch when a token knob doesn't reach far enough. Scoped CSS references the same --color-* / --font-* design tokens, so it stays on-brand.

The team appearance slice is edited from the site's Team appearance panel; the roster token that lists agents is documented on Team.

Full param table: Designer Handbook.