Claude Artisan · Movimentos históricos1897–1905

Vienna Secession

Referência movimentos históricos para Vienna Secession. Vienna (Gustav Klimt, Koloman Moser, Josef Hoffmann).

Vienna SecessionSecessionistWiener WerkstätteGeometric grids of squares married to ornamentGold leaf, decorative symbolismCustom geometric letteringBridge between Art Nouveau and Decohistorical

Uso: grade modular responsiva; Geometric grids of squares married to ornament; Gold leaf, decorative symbolism

Vienna Secession

Contexto Histórico

Vienna (Gustav Klimt, Koloman Moser, Josef Hoffmann). Exemplo: Klimt Beethoven Frieze; Ver Sacrum journal..

Fonte e proveniência

Importado de ara-mkr/claude-artisan · MIT · commit ae6d3ad · 2026-08-30

DESIGN.md

---
version: "alpha"
name: "Vienna Secession"
description: "Sistema visual Vienna Secession, traduzido do catálogo Claude Artisan para uso em produtos digitais. Geometric grids of squares married to ornament; Gold leaf, decorative symbolism"
colors:
  primary: "#b8942f"
  background: "#f2ede1"
  surface: "#ffffff"
  text: "#1a1a1a"
  accent: "#6b1f2a"
  on-primary: "#000000"
  on-surface: "#000000"
  on-accent: "#FFFFFF"
typography:
  h1:
    fontFamily: "'Cinzel', 'Josefin Sans', serif"
    fontSize: "4rem"
    fontWeight: "700"
    lineHeight: "1.05"
  body-md:
    fontFamily: "'Josefin Sans', 'Century Gothic', sans-serif"
    fontSize: "1rem"
    fontWeight: "400"
    lineHeight: "1.6"
  label-caps:
    fontFamily: "'Josefin Sans', 'Century Gothic', sans-serif"
    fontSize: "0.75rem"
    fontWeight: "600"
    letterSpacing: "0.06em"
rounded:
  sm: "0px"
  md: "0px"
  lg: "0px"
spacing:
  sm: "8px"
  md: "16px"
  lg: "32px"
components:
  button-primary:
    backgroundColor: "{colors.primary}"
    textColor: "{colors.on-primary}"
    rounded: "{rounded.md}"
    padding: "16px"
  button-secondary:
    backgroundColor: "{colors.accent}"
    textColor: "{colors.on-accent}"
    rounded: "{rounded.md}"
    padding: "16px"
  card:
    backgroundColor: "{colors.surface}"
    textColor: "{colors.on-surface}"
    rounded: "{rounded.lg}"
    padding: "24px"
  page:
    backgroundColor: "{colors.background}"
    textColor: "{colors.text}"
    padding: "16px"
---
## Overview

Sistema visual Vienna Secession, traduzido do catálogo Claude Artisan para uso em produtos digitais. Geometric grids of squares married to ornament; Gold leaf, decorative symbolism

- **Categoria:** Movimentos históricos
- **Era:** 1897–1905
- **Origem:** Vienna (Gustav Klimt, Koloman Moser, Josef Hoffmann).
- **Exemplo:** Klimt Beethoven Frieze; Ver Sacrum journal.
- **Base estrutural:** grade modular responsiva

**Traços definidores:**
- Geometric grids of squares married to ornament
- Gold leaf, decorative symbolism
- Custom geometric lettering
- Bridge between Art Nouveau and Deco

## Colors

- **bg** — #f2ede1
- **surface** — #ffffff
- **surface-strong** — #e9e1cd
- **border** — #1a1a1a
- **text** — #1a1a1a
- **text-muted** — #5c5647
- **primary** — #b8942f
- **accent** — #6b1f2a
- **violet** — #4b3a63

## Typography

- Display: 'Cinzel', 'Josefin Sans', serif
- Corpo: 'Josefin Sans', 'Century Gothic', sans-serif
- Mono: ui-monospace, monospace

## Layout

- grade modular responsiva
- Use uma grade responsiva e preserve a hierarquia de conteúdo.
- Colapse colunas abaixo de 768px sem overflow horizontal.

## Elevation & Depth

- Geometric grids of squares married to ornament; Gold leaf, decorative symbolism; Custom geometric lettering; Bridge between Art Nouveau and Deco; sombras e elevação

## Shapes

- Raios: 0px, 0px, 0px.

## Components

- Botões mantêm foco visível e estados hover/pressed previsíveis.
- Cartões usam a superfície e a escala de raios definidas nos tokens.
- Formulários exibem labels persistentes, erro textual e foco por teclado.

## Do's and Don'ts

- Faça: respeite os tokens e a composição estrutural indicada.
- Faça: mantenha contraste WCAG AA e `prefers-reduced-motion`.
- Evite: usar o estilo como decoração sem hierarquia funcional.
Baixar DESIGN.md

Especificações Técnicas

CSS

/* Vienna Secession — design tokens */
/* 1897–1905 | Vienna (Gustav Klimt, Koloman Moser, Josef Hoffmann), condensed */
:root {
  /* color */
  --color-bg: #f2ede1;
  --color-surface: #ffffff;
  --color-surface-strong: #e9e1cd;
  --color-border: #1a1a1a;
  --color-text: #1a1a1a;
  --color-text-muted: #5c5647;
  --color-primary: #b8942f;
  --color-accent: #6b1f2a;
  --color-violet: #4b3a63;
  /* radius */
  --radius-sm: 0px;
  --radius-md: 0px;
  --radius-lg: 0px;
  --radius-pill: 999px;
  /* shadow */
  --shadow-sm: 0 1px 0 rgba(26,26,26,0.2);
  --shadow-md: 0 2px 0 rgba(26,26,26,0.25);
  --shadow-lg: 0 4px 0 rgba(26,26,26,0.3);
  /* font */
  --font-sans: 'Josefin Sans', 'Century Gothic', sans-serif;
  --font-display: 'Cinzel', 'Josefin Sans', serif;
  --font-mono: ui-monospace, monospace;
  /* text */
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.375rem;
  --text-2xl: 1.75rem;
  --text-3xl: 2.25rem;
  --text-4xl: 3rem;
  --text-5xl: 4rem;
  /* space */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;
  /* ease */
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  /* extra (signature gradients, composite borders, filters) */
  --grid-squares: repeating-linear-gradient(90deg, var(--color-primary) 0 6px, transparent 6px 18px);
  --gold-border: 4px solid var(--color-primary);
  --square-corner: 10px;
}

/* ============================================================
   Base component classes — Vienna Secession
   Signature move: a row of small gold squares (--grid-squares)
   as a border-top/bottom band, echoing Klimt/Hoffmann's geometric grids.
   Repeats on nav, card, and btn--primary.
   ============================================================ */
body { margin: 0; color: var(--color-text); font-family: var(--font-sans); background: var(--color-bg); }
.nav { display: flex; gap: var(--space-4); align-items: center; padding: var(--space-3) var(--space-6);
  background: var(--color-surface); border-bottom: var(--gold-border);
  background-image: var(--grid-squares); background-repeat: no-repeat; background-size: 100% 6px; background-position: bottom; }
.btn { font: 600 var(--text-base)/1 var(--font-sans); color: var(--color-text); letter-spacing: .04em;
  padding: var(--space-3) var(--space-6); border-radius: var(--radius-sm);
  background: var(--color-surface); border: 2px solid var(--color-text);
  box-shadow: var(--shadow-sm); cursor: pointer;
  transition: transform .15s var(--ease-standard), box-shadow .15s var(--ease-standard); }
.btn:hover { transform: translate(-1px,-1px); box-shadow: var(--shadow-md); }
.btn:active { transform: translate(0,0); box-shadow: none; }
.btn:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
.btn[disabled] { opacity: .5; cursor: not-allowed; }
.btn--primary { background: var(--color-primary); color: #1a1a1a; border-color: var(--color-text);
  background-image: var(--grid-squares); background-repeat: no-repeat; background-size: 100% 4px; background-position: bottom; }
.card { background: var(--color-surface); color: var(--color-text); padding: var(--space-6);
  border: 2px solid var(--color-text); border-radius: var(--radius-md);
  background-image: var(--grid-squares); background-repeat: no-repeat; background-size: 100% 6px; background-position: top; }
.input { width: 100%; box-sizing: border-box; color: var(--color-text); font: var(--text-base) var(--font-sans);
  padding: var(--space-3) var(--space-4); border-radius: var(--radius-sm);
  background: var(--color-surface); border: 2px solid var(--color-text); }
.input::placeholder { color: var(--color-text-muted); }
.input:focus { outline: none; border-color: var(--color-primary); box-shadow: 0 0 0 2px var(--color-primary); }
.badge { display: inline-flex; align-items: center; gap: .4em; font-size: var(--text-xs); font-weight: 600;
  padding: .3em .8em; border-radius: var(--radius-pill); background: var(--color-violet); color: #fff; }
@media (prefers-reduced-motion: reduce) { .btn { transition: none; } .btn:hover { transform: none; } }


/* Especificação de referência: references/00-flagship-implementation-specs/vienna-secession.md */

Variáveis

--bg: #f2ede1, --fg: #1a1a1a, --accent: #b8942f, --surface: #ffffff, --radius: 0px, --spacing: 16px, --font-display: 'Cinzel', 'Josefin Sans', serif, --font-body: 'Josefin Sans', 'Century Gothic', sans-serif

Checklist

Contraste WCAG AA; foco visível; navegação por teclado; estados hover/pressed; responsividade; prefers-reduced-motion; Tailwind v4 via @theme.

Cores

Primárias

#f2ede1
#ffffff
#e9e1cd
#1a1a1a

Secundárias

#1a1a1a
#5c5647
#b8942f
#6b1f2a
#4b3a63

Efeitos

Geometric grids of squares married to ornament, Gold leaf, decorative symbolism, Custom geometric lettering, Bridge between Art Nouveau and Deco, shadow

Light/Dark

Fonte não declara modos; validar em light e dark antes de publicar

Prompt para AI

Atue como um Engenheiro Frontend Sênior e UI Designer Especialista.
Sua tarefa é codificar uma Landing Page completa na primeira tentativa.
- Tema da Landing Page: <INSIRA O TEMA>
- Seções a adicionar: <INSIRA AS SEÇÕES>

Gere o código final imediatamente seguindo estas definições:

## Estilo

- **Nome:** Vienna Secession
- **Tipo:** claude-artisan/historical
- **Keywords:** Vienna Secession, Secessionist, Wiener Werkstätte, Geometric grids of squares married to ornament, Gold leaf, decorative symbolism, Custom geometric lettering, Bridge between Art Nouveau and Deco, historical
- **Era:** 1897–1905
- **Light/Dark:** Fonte não declara modos; validar em light e dark antes de publicar

## Paleta de Cores

- **Primárias:** bg: #f2ede1, surface: #ffffff, surface-strong: #e9e1cd, border: #1a1a1a
- **Secundárias:** text: #1a1a1a, text-muted: #5c5647, primary: #b8942f, accent: #6b1f2a, violet: #4b3a63

## Efeitos Visuais

Geometric grids of squares married to ornament, Gold leaf, decorative symbolism, Custom geometric lettering, Bridge between Art Nouveau and Deco, shadow

## Direção Visual para IA

Vienna Secession, Geometric grids of squares married to ornament, Gold leaf, decorative symbolism, Custom geometric lettering, Bridge between Art Nouveau and Deco, Klimt Beethoven Frieze; Ver Sacrum journal.

## CSS Technical

```css
/* Vienna Secession — design tokens */
/* 1897–1905 | Vienna (Gustav Klimt, Koloman Moser, Josef Hoffmann), condensed */
:root {
  /* color */
  --color-bg: #f2ede1;
  --color-surface: #ffffff;
  --color-surface-strong: #e9e1cd;
  --color-border: #1a1a1a;
  --color-text: #1a1a1a;
  --color-text-muted: #5c5647;
  --color-primary: #b8942f;
  --color-accent: #6b1f2a;
  --color-violet: #4b3a63;
  /* radius */
  --radius-sm: 0px;
  --radius-md: 0px;
  --radius-lg: 0px;
  --radius-pill: 999px;
  /* shadow */
  --shadow-sm: 0 1px 0 rgba(26,26,26,0.2);
  --shadow-md: 0 2px 0 rgba(26,26,26,0.25);
  --shadow-lg: 0 4px 0 rgba(26,26,26,0.3);
  /* font */
  --font-sans: 'Josefin Sans', 'Century Gothic', sans-serif;
  --font-display: 'Cinzel', 'Josefin Sans', serif;
  --font-mono: ui-monospace, monospace;
  /* text */
  --text-xs: 0.75rem;
  --text-sm: 0.875rem;
  --text-base: 1rem;
  --text-lg: 1.125rem;
  --text-xl: 1.375rem;
  --text-2xl: 1.75rem;
  --text-3xl: 2.25rem;
  --text-4xl: 3rem;
  --text-5xl: 4rem;
  /* space */
  --space-1: 4px;
  --space-2: 8px;
  --space-3: 12px;
  --space-4: 16px;
  --space-6: 24px;
  --space-8: 32px;
  --space-12: 48px;
  --space-16: 64px;
  --space-24: 96px;
  /* ease */
  --ease-standard: cubic-bezier(0.4, 0, 0.2, 1);
  /* extra (signature gradients, composite borders, filters) */
  --grid-squares: repeating-linear-gradient(90deg, var(--color-primary) 0 6px, transparent 6px 18px);
  --gold-border: 4px solid var(--color-primary);
  --square-corner: 10px;
}

/* ============================================================
   Base component classes — Vienna Secession
   Signature move: a row of small gold squares (--grid-squares)
   as a border-top/bottom band, echoing Klimt/Hoffmann's geometric grids.
   Repeats on nav, card, and btn--primary.
   ============================================================ */
body { margin: 0; color: var(--color-text); font-family: var(--font-sans); background: var(--color-bg); }
.nav { display: flex; gap: var(--space-4); align-items: center; padding: var(--space-3) var(--space-6);
  background: var(--color-surface); border-bottom: var(--gold-border);
  background-image: var(--grid-squares); background-repeat: no-repeat; background-size: 100% 6px; background-position: bottom; }
.btn { font: 600 var(--text-base)/1 var(--font-sans); color: var(--color-text); letter-spacing: .04em;
  padding: var(--space-3) var(--space-6); border-radius: var(--radius-sm);
  background: var(--color-surface); border: 2px solid var(--color-text);
  box-shadow: var(--shadow-sm); cursor: pointer;
  transition: transform .15s var(--ease-standard), box-shadow .15s var(--ease-standard); }
.btn:hover { transform: translate(-1px,-1px); box-shadow: var(--shadow-md); }
.btn:active { transform: translate(0,0); box-shadow: none; }
.btn:focus-visible { outline: 2px solid var(--color-accent); outline-offset: 2px; }
.btn[disabled] { opacity: .5; cursor: not-allowed; }
.btn--primary { background: var(--color-primary); color: #1a1a1a; border-color: var(--color-text);
  background-image: var(--grid-squares); background-repeat: no-repeat; background-size: 100% 4px; background-position: bottom; }
.card { background: var(--color-surface); color: var(--color-text); padding: var(--space-6);
  border: 2px solid var(--color-text); border-radius: var(--radius-md);
  background-image: var(--grid-squares); background-repeat: no-repeat; background-size: 100% 6px; background-position: top; }
.input { width: 100%; box-sizing: border-box; color: var(--color-text); font: var(--text-base) var(--font-sans);
  padding: var(--space-3) var(--space-4); border-radius: var(--radius-sm);
  background: var(--color-surface); border: 2px solid var(--color-text); }
.input::placeholder { color: var(--color-text-muted); }
.input:focus { outline: none; border-color: var(--color-primary); box-shadow: 0 0 0 2px var(--color-primary); }
.badge { display: inline-flex; align-items: center; gap: .4em; font-size: var(--text-xs); font-weight: 600;
  padding: .3em .8em; border-radius: var(--radius-pill); background: var(--color-violet); color: #fff; }
@media (prefers-reduced-motion: reduce) { .btn { transition: none; } .btn:hover { transform: none; } }


/* Especificação de referência: references/00-flagship-implementation-specs/vienna-secession.md */
```

## Design System Variables

```css
--bg: #f2ede1, --fg: #1a1a1a, --accent: #b8942f, --surface: #ffffff, --radius: 0px, --spacing: 16px, --font-display: 'Cinzel', 'Josefin Sans', serif, --font-body: 'Josefin Sans', 'Century Gothic', sans-serif
```

## Checklist de Implementação

- Contraste WCAG AA; foco visível; navegação por teclado; estados hover/pressed; responsividade; prefers-reduced-motion; Tailwind v4 via @theme.

## Regras de Execução

1. Siga fielmente o estilo visual determinado.
2. Use ícones SVG inline de alta qualidade (estilo Heroicons ou Lucide) — PROIBIDO usar emojis como ícones.
3. Adicione `cursor-pointer` e estados de `hover` suaves (transition-all) em todos os elementos interativos.
4. Estrutura Obrigatória da Página:
   - Navbar (Logo + Links + CTA)
   - Hero Section (Headline impactante + Subtitle + 2 botões + Elemento visual 3D/Abstrato via CSS)
   - Features (3 cards com ícones)
   - Testimonials (3 cards)
   - Pricing (3 tiers, destaque no central)
   - CTA Final
   - Footer completo com redes sociais, política de privacidade, termos de uso, contato e links SEO.
5. Todo o conteúdo textual deve ser em Português Brasileiro (PT-BR).
6. O visual deve ser CLARAMENTE distinto — não crie um design "padrão Bootstrap". Force o uso das variáveis de design system fornecidas.
7. Use tags `<style>` no head para classes personalizadas (especialmente para os efeitos complexos de backdrop-filter e animações) que o Tailwind via CDN não cobrir.
8. Responsividade Total: O layout deve se adaptar perfeitamente a Mobile, Tablet e Desktop (Stack vertical no mobile).
9. Inclua meta tags básicas de SEO, Viewport e Open Graph no `<head>`.
10. Footer deve conter: Copyright 2026, Links de navegação secundária e Ícones de redes sociais.
11. Assuma as decisões criativas necessárias para entregar o resultado completo e funcional agora.

Relacionados

Última sincronização: 30/08/2026