76 lines
1.7 KiB
TypeScript
76 lines
1.7 KiB
TypeScript
import { createTheme, type MantineColorsTuple } from '@pikku/mantine/core'
|
|
|
|
// Seminarhof Drawehn brand palette — extracted from the public marketing site
|
|
// (seminarhof-drawehn.de Elementor "kit"): primary plum #88557F, accent gold
|
|
// #FFCE00, dark text #181818, page bg #F5F5F5. Fonts: Open Sans throughout.
|
|
//
|
|
// Mantine wants a 10-shade tuple per colour. We seed each tuple from the
|
|
// brand hex and extend lighter/darker around it; the brand value sits at
|
|
// index 6 (the default `filled` shade).
|
|
|
|
const plum: MantineColorsTuple = [
|
|
'#f7eef5',
|
|
'#e9d4e2',
|
|
'#d3a7c4',
|
|
'#bc7aa6',
|
|
'#a05c8e',
|
|
'#94487f',
|
|
'#88557F', // brand secondary
|
|
'#6f4467',
|
|
'#583651',
|
|
'#4E3149', // brand dark plum
|
|
]
|
|
|
|
const gold: MantineColorsTuple = [
|
|
'#fff8e0',
|
|
'#ffeeba',
|
|
'#ffe48f',
|
|
'#ffd95f',
|
|
'#ffd13b',
|
|
'#FFCE00', // brand accent
|
|
'#e6b900',
|
|
'#b38f00',
|
|
'#806600',
|
|
'#4d3d00',
|
|
]
|
|
|
|
const peach: MantineColorsTuple = [
|
|
'#fff4ea',
|
|
'#ffe4cc',
|
|
'#ffd2ad',
|
|
'#ffbc7d', // brand peach
|
|
'#ffa856',
|
|
'#ff9433',
|
|
'#f37e15',
|
|
'#cc6810',
|
|
'#a3520a',
|
|
'#7a3d05',
|
|
]
|
|
|
|
export const theme = createTheme({
|
|
primaryColor: 'plum',
|
|
primaryShade: { light: 6, dark: 5 },
|
|
colors: { plum, gold, peach },
|
|
fontFamily: '"Open Sans", system-ui, sans-serif',
|
|
fontFamilyMonospace: 'ui-monospace, Menlo, monospace',
|
|
headings: {
|
|
fontFamily: '"Open Sans", system-ui, sans-serif',
|
|
fontWeight: '700',
|
|
},
|
|
defaultRadius: 'md',
|
|
black: '#181818',
|
|
white: '#ffffff',
|
|
})
|
|
|
|
export const brand = {
|
|
primary: '#88557F',
|
|
primaryDark: '#4E3149',
|
|
accent: '#FFCE00',
|
|
accentSoft: '#FEE162',
|
|
pink: '#E9C8E3',
|
|
peach: '#FFBC7D',
|
|
text: '#181818',
|
|
pageBg: '#F5F5F5',
|
|
tagline: 'Arrive, Unwind, Recharge.',
|
|
} as const
|