Contact · Tabs with photo
One tab per office: a row of tabs on a band, a contact form in a card for the open office (white in light mode, the site's dark surface in dark mode), and its photo covering the right of the section, crossfading when you switch.
![]()
See it live: Contact · Tabs with photo on fancybricks.co — the live preview, and the button that copies it.
Or open the preview on its own — narrow the window to see it on a phone — and in dark mode.
Preview on the front end. Scripts don't run inside the builder, so here you only see the layout: the line under the open tab does not slide here (that needs the script); the open tab shows its own line instead. Save and open the page to see the full result.
Structure
This is what the Bricks Structure panel shows after you paste the template. Component instances say which component they are.
Contact · Tabs
Container
Tabs
Intro column
Intro (FBK Intro)
Tab menu
Tab · Bogotá
Tab · City
Tab · Medellín
Tab · City
Tab · Cartagena
Tab · City
Tab content
Pane · Bogotá
Pane · Inner
Card
Card · Address
Form · Bogotá
Photo · Bogotá (decorative)
Pane · Medellín
Pane · Inner
Card
Card · Address
Form · Medellín
Photo · Medellín (decorative)
Pane · Cartagena
Pane · Inner
Card
Card · Address
Form · Cartagena
Photo · Cartagena (decorative)
Tabs · sliding line (JS, optional)
The template also pastes a dashed note above the section, with the short version of this page. It only shows inside the builder, never on the published page — see Builder notes.
How to adjust
Every step is the same move: pick the element in the Structure panel, change its Properties.
How to adjust a template shows every one of them in a screenshot of the real builder: the Structure and Properties panels, the classes on an element, a component's style families and the field where a CSS variable goes.

The classes this element carries, in the Bricks panel.

This template's own component, with its Style group open.
- Paste the template in Bricks first — see Copy and paste.
- Select Intro (FBK Intro) › Properties: Eyebrow, Hide eyebrow, Title, Title level, Lead, Hide lead · Style group: Eyebrow style, Highlight, Title size, Accent line · Layout group: Alignment, Layout, Background, Spacing · Motion group: Reveal in slider.
- Select Tabs › one tab = a title and its pane, in the same order: duplicate both to add one.
- Select Form · Bogotá, Form · Medellín, Form · Cartagena › Content › Fields (add, remove, required), Submit button and Actions (Email: recipient and subject; success message).
- Spacing, sizes, color and timing with no property of their own: the CSS variables below.
CSS variables
These are the only values in the template meant to be changed by hand. Copy the block, paste it, edit the numbers.

The Custom CSS field of this template's own element, with one of its variables as a real example.
/* «Tabs» · class .fbk-tabcontact */
.fbk-tabcontact {
/* Photo: where it starts (share of the container), its height on phones, and
the length of the crossfade */
--fbk-t-photo-start: 40%;
--fbk-t-photo-h: 16em;
--fbk-t-fade: 0.8s;
/* Widths of the intro (left of the photo) and of the tabs and the card (over
the photo's edge) */
--fbk-t-text-w: 36%;
--fbk-t-card-w: 50%;
}
Paste the block in the element's Style → CSS field (the selector is already in it), or set the same variables on the class itself to change every copy at once. The values are your framework's variables, so they follow your site: Choosing a framework.
Requirements
- Code execution. Needs "Execute code" enabled for the role in Bricks → Settings → Custom code, or the JS block shows as plain text instead of running.
What each requirement is, and how to set it up once for the whole site: Requirements.
Finish by hand
- Each office is a Tab title in the Tab menu and a Pane in the Tab content, in the same order. To add one, duplicate both. A pane holds the Card (address and form) and the Photo: replace the test photo with one of the city.
- Each form sends its own email (Form > Actions > Email): set the recipient of each office there.
- The form is the Bricks Form element in the Fancy Bricks house style (class
fbk-form: boxed fields with the label above, primary submit with the Sweep hover): set its fields, actions and messages in the Form element. While a field has focus the Card card rises a little and casts a shadow (classfbk-focus-lifton it); remove the class for a still form. Other looks: addfbk-form--line(underline) orfbk-form--float(floating label). - On desktop the photo starts at
--fbk-t-photo-startof the container and runs to the right edge of the screen; the intro is--fbk-t-text-wwide (left of the photo) and the tabs and card--fbk-t-card-w(over its edge). On phones the photo is a band--fbk-t-photo-htall above the card. The crossfade lasts--fbk-t-fade. All are on.fbk-tabcontact. - The tab row is the house one (
fbk-tabs: weight, colors, the line under the row and the 2 px line that slides under the open tab, made by the code block Tabs · sliding line; delete it and the open tab draws its own line). The band:.fbk-tabcontact__menu. - The crossfade is in the Custom CSS of
.fbk-tabcontact__photo(.brx-open %root%) and.fbk-tabcontact__card(the card of the closing office fades out first).
On phones
The template is designed desktop first, the Bricks default, and only changes at the two widths the library uses:
- 991px and below —
.fbk-intro. - 767px and below —
.fbk-tabcontact,.fbk-tabcontact__card,.fbk-tabcontact__inner(+1 more),.fbk-section.
Those changes live in Bricks' own breakpoint fields, so you edit them where you always do: pick the breakpoint in the toolbar and the same fields follow.
Careful with the classes shared by the whole library (fbk-section, fbk-intro, the
component classes): a change there shows up in every template that uses them.
If your site's breakpoints are set up mobile first, copy the mobile-first variant of the template instead — see Copy and paste.
Accessibility
In this template, keyboard focus is visible on every interactive piece; movement is cut back
when the visitor's system asks for less motion; the state screen readers need is already set
(aria-label).
What is checked on every template, and what depends on your own palette: Accessibility.
Dark mode
With your site in dark mode this section turns dark too — the class fbk-section--auto-dark
on the section does it. Remove the class to keep it light.
Its background is a modifier on the section, so you can swap it for any of the ones the
template is checked with: fbk-section--soft, fbk-section--light, fbk-section--dark.
How the library follows your site's color scheme: Dark mode and preview.
Replaces
- Tabs section background from Fancy Bricks 2.0
What happened to the old libraries, and what to do with pages already built with them: Migrating from 1.0/2.0.