← Kairos MBA MasterclassAll programsHomeSearch
Kairos MBA Masterclass·1:17:10

Building the Homepage, Part 1: Box Model, Element Families, the Header in Rows, and the Hero Search Bar

Mayank Build trainer - co-founder of Epic, a Delhi no-code/low-code product studio (80+ products); builds the real-estate marketplace in Bubble on camera

The short version

  1. Every site is nested rectangles (inspect with CSS Peeper or dev tools); building in no-code is arranging boxes. Bubble elements: visual, components, containers (group, repeating group, popup, floating group), inputs, reusables - each with Appearance, Layout and Conditions tabs; children inherit the parent's layout; name every group (0:00-0:10).
  2. Row = left-to-right, Column = top-to-bottom (Flexbox). Header: group header as Row, not fixed width, min height 92 (80 mobile), padding 10/20; inner group with logo (128 x 33) and a right group holding search icon+text and a Login button (white, 1 px primary border, roundness 5-10); padding is inside, margin outside; gap spacing replaces per-child margins (0:19-0:40).
  3. Responsive header: a group menu (hamburger) shown only under 400 px, search and Login hidden under 400 - tick Collapse when hidden. Hero: Column with SVG background (uncheck scale-to-fit), min height 900, one H1 per page, a white Row search bar at 50-60% width with roundness 20 holding city, type and budget dropdowns and a green search button; dropdown choices static for now (0:40-1:16).

At a glance, three clicks deep

Skim here first: the closed row is the glance, open is the study card with the key points and timestamps, and the ↓ link drops to that concept's full write-up below.

01Box-model thinking and Bubble's element familiesNested boxes;›

Nested boxes; three tabs per element; name your groups.

Box model (0:00-0:05)

Families and tabs (0:05-0:10)

↓ Full write-up of this concept

02Row vs Column, padding vs margin, and the header buildRow header with named groups;›

Row header with named groups; padding in, margin out.

Row vs Column (0:19)

Header steps (0:18-0:40)

Padding vs margin (0:21)

↓ Full write-up of this concept

03Responsive header with conditions and Collapse when hiddenWidth<400 conditions + collapse when hidden.›

Width<400 conditions + collapse when hidden.

Conditions (0:40-0:48)

↓ Full write-up of this concept

The concepts in full

01

Box-model thinking and Bubble's element families

Open any website in CSS Peeper and it is rectangles inside rectangles. So is Bubble.

Every page is nested boxes; arranging them is the whole skill. Element families: visual (text, button, icon, video, HTML, map), pre-built Components, Containers (group, repeating group, popup, floating group), Input forms, Reusable elements. Each element has Appearance (style, colours, border, shadow), Layout (alignment, width, height, margin, padding) and Conditions (if X then Y, e.g. by screen width). Children inherit the parent's layout; the page is the root. Name every group - 'group header', 'group hero section' - or the element tree is unreadable.

Why it matters

Makes layout mechanical instead of trial and error.

02

Row vs Column, padding vs margin, and the header build

Row runs left to right, Column top to bottom. The header is a Row inside a Column page.

PROCEDURE: 1) Group -> 'group header' -> Layout Row, untick fixed width, remove min width, min height 92 (80 on mobile), fit height to content; 2) padding 10 top/bottom, 20 left/right; 3) 'group internal' (min height 50) holding the logo image (min width 128, height 33-36) and 'group right'; 4) 'group search' = 24 px icon + 'Search' text with 12-20 px margin; 5) Login button: remove style, white background, 1 px primary border, roundness 5-10; 6) right-align and vertically centre 'group right'; 7) 20 px right margin on the search group. Padding is space inside the box, margin outside; gap spacing on the parent can replace per-child margins. Tip: temporary 20%-opacity background colours make boxes visible while you work.

Why it matters

The first real layout, and the vocabulary for every later one.

03

Responsive header with conditions and Collapse when hidden

Hide the search and the Login under 400 px, show a hamburger - and tick 'collapse when hidden' or the gap stays.

Create 'group menu' (hamburger icon + 'Menu' text). Conditions: on group search and the Login button, 'when current page width < 400 -> visible' unchecked; on group menu, not visible by default and hidden above 400. Tick Collapse when hidden so hidden elements free their space. Test with Chrome's device toolbar or Bubble's Responsive tab.

Why it matters

The one pattern that makes every later section mobile-safe.

Tools referenced

ToolCoverageMomentContext
Bubbledemonstrated
CSS Peeperdemonstrated
Chrome DevToolsdemonstratedDevice toolbar for responsive preview

Action items

    Resources mentioned

    Resources
    • docLesson page on the platform

    Extraction notes

    This page was built from an auto-generated transcript, which garbles product and people's names. Those were corrected silently in everything above and logged here for transparency. The warnings flag claims that were true on the recording day but change fast.

    Transcript corrections applied

    The transcript saysThe trainer actually means
    CSS paperCSS Peeper
    add cap spacinggap spacing
    in the 400less than 400
    real start date / real aesthetics / real staticreal estate
    Type / Cypress / Skype / SykesStripe
    Mando / Mandrope / MangroveManrope (font)
    repeating loop / repeating rowrepeating group
    paid listings nameCurrent page Listing's name

    True on recording day — verify before relying