renovero.ch styleguide
Snapshot: 2026-07-21 19:39
Element-based styleguide reverse-engineered from the live site (www.renovero.ch/de) on 2026-07-21. The baseline is stock Tailwind — preflight plus the default theme. This guide documents only what changes on top of that baseline: the font, the brand colors, and a handful of component patterns. Wherever Tailwind's font-size/line-height pair is close to the measured value, the Tailwind utility is used as-is — the samples below render at the Tailwind values, not the measured ones, with deltas called out per style. Utility names are Tailwind v4.
1 · Foundations
Everything not listed here is stock Tailwind. The full delta from a default install: one font, eight brand colors, navy as the text color, and a 2px button radius.
| Baseline | Tailwind preflight + default theme. No global CSS beyond the @theme block in section 2. |
|---|---|
| Font family | --font-sans: "Encode Sans", sans-serif — the only font; weights in use: font-normal/medium/semibold/bold/extrabold (400–800) |
| Body | text-navy on white — navy is the default text color for everything; every text-* utility carries its own leading |
| Shape | Buttons: rounded-xs (2px) — the only non-default shape decision. Overlays, dialogs, tooltips: whatever Tailwind/component defaults provide. |
| Iconography | Font Awesome 7 (Free/Pro/Duotone/Sharp variables present on the live site) |
| Live-site provenance | The current site is Angular + Angular Material; its Material specs (4px overlay radius, 36px buttons, gray snackbars, 48px touch targets) are framework defaults, not design decisions — a rebuild replaces them with Tailwind defaults. The AI chat wizard is a self-contained Flutter web embed that ignores page CSS; pages only provide its slot. |
2 · Colors
Measured usage: navy is the text color for ~85% of elements; white and light gray-blue carry the surfaces; yellow is reserved for CTAs and social icons. None of these map to Tailwind default colors — define them as theme tokens.
Tailwind v4 theme block — together with text-navy as the base text color, this is the entire configuration delta from a stock install:
@theme {
--font-sans: "Encode Sans", sans-serif;
--color-navy: #203768;
--color-navy-hover: #162850;
--color-yellow: #F9B415;
--color-yellow-hover: #FFC84A;
--color-gray-blue: #DBDFE7; /* 50% via bg-gray-blue/50 */
--color-slate: #637395;
--color-muted: #818BA1;
--color-dark-slate: #27455C;
}
3 · Type scale (Tailwind)
The live site's two overlapping typography generations (text-1…5/h1…h5 and text-base…/v2-heading-*) collapse onto nine Tailwind steps. All type is navy with no letter-spacing except the uppercase labels; headings are font-semibold. Heading specs include their mobile step (measured at 390px, using Tailwind's built-in md: breakpoint); body text needs no responsive variants. Samples render at the desktop Tailwind values.
text-4xl md:text-6xl font-semibold → 36/40 · 60px/leading-none (measured 36/42 mobile, 64/68 desktop)
text-3xl md:text-5xl font-semibold → 30/36 · 48px/leading-none (measured 28/36 mobile, 48/56 desktop)
text-2xl md:text-3xl font-semibold → 24/32 · 30/36 (mobile 24/32 exact) · desktop measured 32/40 · exact for heading-big (30/36)
text-xl md:text-2xl font-semibold → 20/28 · 24/32 (desktop exact) · mobile measured 22/28 · also the FAQ question size
text-xl font-semibold → 20px / 28px (exact for h5) · absorbs heading-emphasis (21/28)
text-lg leading-6 font-semibold → 18px / 24px (exact)
Text large (text-lg) — Erhalten Sie kostenlos mehrere Offerten von Handwerkern aus Ihrer Region und wählen Sie das beste Angebot.
text-lg → 18px / 28px (measured 18/30)
Text base (text-base) — Erhalten Sie kostenlos mehrere Offerten von Handwerkern aus Ihrer Region und wählen Sie das beste Angebot. Main article copy.
text-base → 16px / 24px (exact for text-base 16/24) · absorbs text-1 (16/26 — use leading-relaxed for exact 26px) and text-2 (15px — retired)
Text small (text-sm) — Erhalten Sie kostenlos mehrere Offerten von Handwerkern aus Ihrer Region. Button labels, nav and footer links.
text-sm → 14px / 20px (measured 14/21–22 across text-3, text-5, text-small)
Text tiny (text-xs) — Erhalten Sie kostenlos mehrere Offerten von Handwerkern. Captions and meta text.
text-xs → 12px / 16px (exact for text-4) · absorbs text-tiny (12/18)
Uppercase label small — zwölf pixel
text-xs leading-5 font-semibold uppercase tracking-wider → 12px / 20px / .05em (measured 12/20/600/+0.5px — tracking .042em ≈ wider)
Uppercase label base — fünfzehn pixel
text-base font-bold uppercase tracking-wide → 16px / 24px / .025em (measured 15/24/700/+0.5px)
--medium → font-medium, --semibold/-important → font-semibold, --bold (700) → font-bold, --extrabold (800) → font-extrabold. Muted text: text-muted (#818BA1); disabled/placeholder-on-dark: text-gray-blue.4 · Mapping: renovero classes → Tailwind
Full translation table for the live site's typography-* utilities. Heading rows show mobile → desktop (measured at 390px and 1440px); "exact" means Tailwind's pair equals the measured pair.
| renovero class(es) | Measured | Tailwind | Fit |
|---|---|---|---|
typography-h1, typography-heading-extra-large | 36/42 → 64/68 · 600 | text-4xl md:text-6xl font-semibold | 36/40 → 60/60 |
typography-h2, typography-v2-heading-large | 28/36 → 48/56 · 600 | text-3xl md:text-5xl font-semibold | 30/36 → 48/48 |
typography-h3, typography-v2-heading-h3, typography-v2-heading-medium | 24/32 → 32/40 · 600 | text-2xl md:text-3xl font-semibold | 24/32 exact → 30/36 |
typography-heading-big(-important, -no-scale) | 30/36–40 | text-3xl (+ weight) | exact |
typography-h4, typography-v2-heading-h4 | 22/28 → 24/32 · 600 | text-xl md:text-2xl font-semibold | 20/28 → 24/32 exact |
typography-h5 | 20/28 | text-xl (+ weight) | exact |
typography-heading-emphasis-important, *-to-heading-emphasis* | 21/28 · 600 | text-xl font-semibold | 20/28 — 21px folded into 20px |
typography-heading-small-important, text-base-to-heading-small-important | 18/24 · 600 | text-lg leading-6 font-semibold | exact |
typography-text-large(-important), typography-encode-sans-text, text-mobile-large | 18/30 | text-lg | 18/28 |
typography-text-1(--medium, --semibold) | 16/26 | text-base (+ weight) | 16/24 — or leading-relaxed for exact 26 |
typography-text-base(-important), text-small-base(-important), encode-sans-text-no-scale | 16/24 | text-base (+ weight) | exact |
typography-text-2 | 15/– | text-base | 15px retired → 16px |
typography-text-2--bold-uppercase | 15/24 · 700 · +0.5px | text-base font-bold uppercase tracking-wide | 16/24 |
typography-text-3(--medium, --semibold), typography-text-5(--medium, --bold) | 14/22 | text-sm (+ weight) | 14/20 — button label style |
typography-text-small(-important, -bold, -to-*) | 14/21 | text-sm (+ weight) | 14/20 |
typography-checkbox-label | 14/24 · 500 | text-sm leading-6 font-medium | exact |
typography-text-4(--medium) | 12/16 | text-xs (+ weight) | exact |
typography-text-tiny(-important), mob-tiniest-tab-text-tiny-important | 12/18 · 400/600 | text-xs (+ weight) | 12/16 |
typography-text-4--semibold-uppercase | 12/20 · 600 · +0.5px | text-xs leading-5 font-semibold uppercase tracking-wider | exact |
typography-text-4--extrabold-uppercase | 12/20 · 800 · +0.5px | text-xs leading-5 font-extrabold uppercase tracking-wider | exact |
typography-link | navy · no underline | content: text-navy underline · chrome: text-navy hover:underline | deliberate change — underline restored as affordance |
5 · Links
Links in content are underlined — the underline is the affordance. Chrome links (header, footer) are plain navy/white but always underline on hover. Yellow is used for links on dark surfaces.
.logo-link, some footer anchors) fall back to the browser default rgb(0,0,238) underlined — there is no global a reset. Tailwind preflight fixes this for free (anchors inherit color, no underline).6 · Buttons
One button component with color variants. Label is always text-sm font-semibold; flat, 2px radius, color-only hover. Hover any button below to see the hover colors.
default: bg-navy text-white hover:bg-navy-hover · .yellow: bg-yellow text-navy hover:bg-yellow-hover · .gray: bg-gray-blue/50 text-navy
search: py-4 px-10 (home hero) or py-4 px-6 (directory) · compact: py-1 px-2.5 min-h-9
| Property | Tailwind | Notes |
|---|---|---|
| Label | text-sm font-semibold | measured 14/22 · 600 → 14/20 |
| Padding | py-2 px-4 · search py-4 px-10/px-6 · compact py-1 px-2.5 | all exact |
| Min-height | min-h-12 (compact: min-h-9) | measured 46px, rounded to the scale (48px) |
| Radius | rounded-xs | 2px exact |
| Shadow / transform | none | flat buttons, color-only hover |
| Width modifiers | w-full, max-md:w-full | replaces .full-width, .full-width-mobile |
7 · Forms
The signature pattern is a borderless, square input inside a translucent gray holder, usually paired with a yellow search button. No visible borders or radii on text inputs. The key dimensions land exactly on the Tailwind spacing scale.
holder: flex items-center h-14 bg-gray-blue/50 rounded-none — input: h-12 px-5 text-sm font-medium text-navy bg-transparent border-none (56px, 48px, 20px all exact on the spacing scale)
| Element | Tailwind / values |
|---|---|
| Label | text-base text-navy (checkbox labels: text-sm leading-6 font-medium) |
| Placeholder | placeholder:text-muted |
| Selection controls, pickers, overlays | Tailwind/component defaults, with navy (accent-navy / bg-navy text-white) as the selected/active color and slate for secondary states. The live site's Material specs here were framework defaults — not worth reproducing. |
8 · Surfaces & sections
Pages alternate white with light gray-blue bands; navy and dark slate are used for high-contrast promo sections. Content sits flat on these bands — no borders or shadows on standard sections.
bg-gray-blue (.background-holder, .container-hero, directory band)bg-navy text-white (.section-background-blue), yellow CTAsbg-dark-slate text-white image-overlay sections (homepage testimonials/steps)9 · Header, breadcrumbs & footer
The header is transparent/white with text-sm navy links and no border or shadow: 104px tall on desktop (h-26), 48px on mobile (h-12), where the nav collapses to "Anmelden" + a burger menu. The footer is two-tone (navy top block, gray-blue legal bar) and structurally identical at both viewports. Measured at 390px and 1440px.
breadcrumbs: text-base text-navy · separators text-muted · desktop-only (hidden md:flex — the live site hides them on mobile)
FAQ question: text-2xl font-semibold (exact) · group titles: text-3xl font-semibold
footer top: bg-navy · text-sm text-white hover:underline links · yellow circular social buttons (size-10 rounded-full bg-yellow text-navy) — footer bottom: bg-gray-blue text-navy text-sm, links hover:underline
10 · Notes for anyone building against this
| Scale consolidation | The live site's two typography generations collapse onto nine Tailwind steps (xs–6xl minus 4xl). 15px and 21px sizes are retired into text-base and text-xl; odd line heights (21, 22, 26, 30) snap to Tailwind defaults. |
|---|---|
| Biggest visible deltas | h1 64→60px and h2 leading 56→48px — expected, not a bug. |
| Semantics vs. classes | Visual style comes from utilities, not tag defaults — pair the semantic tag with the intended utility (an h4 can carry text-3xl). |
| Responsive scaling | Mobile-first with Tailwind's built-in breakpoints; the heading specs in sections 3–4 carry their md: step. Body text and buttons are identical at both ends (measured at 390px and 1440px) — no responsive variants needed below headings. |