refactor: stacked wordmark — EARTH WALKER over DESIGN, no frame
Drops the rectangular border treatment and the mobile/desktop split. Wordmark is now a single stacked column at every breakpoint: EARTH WALKER set in serif semibold on top, DESIGN tucked underneath in serif light with wider tracking and reduced size, centered. Two sizes: 'sm' (header, footer, mobile drawer) scales text-sm → text-base at md; 'lg' (home hero overlay) scales text-2xl → text-3xl → text-4xl across md / lg breakpoints. Whitespace-nowrap holds the shape together regardless of container width. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
94c8bfaa0a
commit
d84a0a3bed
3 changed files with 19 additions and 37 deletions
|
|
@ -33,15 +33,10 @@ const mobileOpen = ref(false)
|
|||
>
|
||||
<RouterLink
|
||||
to="/"
|
||||
class="text-foreground"
|
||||
class="text-foreground inline-flex items-center"
|
||||
:aria-label="t('brand')"
|
||||
>
|
||||
<span
|
||||
class="font-serif text-sm font-semibold uppercase tracking-[0.22em] md:hidden"
|
||||
>
|
||||
Earth Walker
|
||||
</span>
|
||||
<Wordmark size="sm" class="hidden md:inline-flex" />
|
||||
<Wordmark size="sm" />
|
||||
</RouterLink>
|
||||
|
||||
<nav class="hidden items-center gap-8 md:flex">
|
||||
|
|
|
|||
|
|
@ -1,55 +1,42 @@
|
|||
<script setup lang="ts">
|
||||
type Size = 'sm' | 'md' | 'lg'
|
||||
type Size = 'sm' | 'lg'
|
||||
|
||||
const props = withDefaults(
|
||||
defineProps<{
|
||||
/** Visual size — controls type scale + frame padding. */
|
||||
/** Visual size — controls type scale. 'sm' for header/footer, 'lg' for hero. */
|
||||
size?: Size
|
||||
}>(),
|
||||
{ size: 'md' },
|
||||
{ size: 'sm' },
|
||||
)
|
||||
|
||||
const frameClasses: Record<Size, string> = {
|
||||
sm: 'px-2.5 py-1.5 gap-2',
|
||||
md: 'px-4 py-2.5 gap-3',
|
||||
lg: 'px-6 py-3.5 gap-4',
|
||||
}
|
||||
|
||||
const earthClasses: Record<Size, string> = {
|
||||
sm: 'text-[0.7rem] tracking-[0.28em]',
|
||||
md: 'text-sm tracking-[0.32em] md:text-base',
|
||||
lg: 'text-base tracking-[0.34em] md:text-xl',
|
||||
sm: 'text-sm tracking-[0.22em] md:text-base md:tracking-[0.24em]',
|
||||
lg: 'text-2xl tracking-[0.24em] md:text-3xl lg:text-4xl md:tracking-[0.26em]',
|
||||
}
|
||||
|
||||
const designClasses: Record<Size, string> = {
|
||||
sm: 'text-[0.55rem] tracking-[0.28em]',
|
||||
md: 'text-[0.7rem] tracking-[0.32em] md:text-xs',
|
||||
lg: 'text-xs tracking-[0.34em] md:text-sm',
|
||||
sm: 'text-[0.55rem] tracking-[0.42em] md:text-[0.65rem] md:tracking-[0.46em]',
|
||||
lg: 'text-xs tracking-[0.46em] md:text-sm md:tracking-[0.5em] lg:text-base',
|
||||
}
|
||||
|
||||
const gapClasses: Record<Size, string> = {
|
||||
sm: 'gap-[0.2em]',
|
||||
lg: 'gap-[0.25em]',
|
||||
}
|
||||
</script>
|
||||
|
||||
<template>
|
||||
<span
|
||||
:class="[
|
||||
'inline-flex flex-nowrap items-baseline whitespace-nowrap border border-current uppercase',
|
||||
frameClasses[props.size],
|
||||
'inline-flex flex-col items-center whitespace-nowrap uppercase leading-none',
|
||||
gapClasses[props.size],
|
||||
]"
|
||||
aria-label="Earth Walker Design"
|
||||
>
|
||||
<span
|
||||
:class="[
|
||||
'whitespace-nowrap font-serif font-semibold',
|
||||
earthClasses[props.size],
|
||||
]"
|
||||
>
|
||||
<span :class="['font-serif font-semibold', earthClasses[props.size]]">
|
||||
Earth Walker
|
||||
</span>
|
||||
<span
|
||||
:class="[
|
||||
'whitespace-nowrap font-serif font-light opacity-90',
|
||||
designClasses[props.size],
|
||||
]"
|
||||
>
|
||||
<span :class="['font-serif font-light opacity-90', designClasses[props.size]]">
|
||||
Design
|
||||
</span>
|
||||
</span>
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ const projectCards = computed(() =>
|
|||
<div
|
||||
class="absolute right-0 bottom-14 left-0 mx-auto max-w-[1400px] px-6 text-white md:bottom-20 md:px-10"
|
||||
>
|
||||
<Wordmark size="md" class="text-white/95" />
|
||||
<Wordmark size="lg" class="text-white/95" />
|
||||
<h1
|
||||
class="mt-6 max-w-3xl font-serif text-4xl font-light leading-[1.05] tracking-tight md:text-6xl lg:text-7xl"
|
||||
>
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue