feat(website): responsive / mobile layouts

Make the marketing site mobile-friendly across every page and section.
Desktop appearance is unchanged; all breakpoint logic targets <=768px.

- Fluid section padding via clamp(); equal grids use auto-fit/minmax,
  asymmetric grids stack to one column via scoped-CSS media queries
- Nav: real hamburger menu on mobile (links, lang toggle, login, CTA)
- ProductMockup: scales the whole dashboard to fit (zoom) instead of
  reflowing its internals into a tall stack
- Lower oversized heading clamp() minimums so titles no longer overflow
  at ~390px (hero, page headers, final CTA, brand cover/chapter)
- HowItWorks: row-gap when steps stack so node markers clear the text
- Compare + partners tables: stacked rows now label each value with its
  column (Dezky vs hyperscaler / CSP) instead of an ambiguous header
- Footer columns, tiers, calculator and tables stack cleanly on mobile
This commit is contained in:
Ronni Baslund
2026-06-06 15:55:35 +02:00
parent bc0697c3e8
commit d668b1b6a6
28 changed files with 721 additions and 142 deletions
@@ -18,7 +18,7 @@ const initial = computed(() => (props.name[0] ?? '').toUpperCase())
<template>
<div :style="{
background: bg, border: `1px solid ${border}`, borderRadius: '4px',
padding: '20px 22px', display: 'flex', alignItems: 'center', gap: '16px',
padding: '20px 22px', display: 'flex', alignItems: 'center', gap: '16px', flexWrap: 'wrap',
opacity: placeholder ? 0.55 : 1,
borderStyle: placeholder ? 'dashed' : 'solid',
}">
@@ -28,7 +28,7 @@ const initial = computed(() => (props.name[0] ?? '').toUpperCase())
fontFamily: '\'Inter Tight\', sans-serif', fontWeight: 700,
fontSize: '22px', color: '#FFF', letterSpacing: '-0.02em', flexShrink: 0,
}">{{ initial }}</div>
<div :style="{ flex: 1 }">
<div :style="{ flex: 1, minWidth: 0 }">
<div :style="{ fontFamily: '\'Inter Tight\', sans-serif', fontWeight: 600, fontSize: '17px', color: fg, letterSpacing: '-0.02em' }">{{ name }}</div>
<div :style="{ fontFamily: '\'JetBrains Mono\', monospace', fontSize: '11px', color: 'rgba(0,0,0,0.5)', marginTop: '2px' }">{{ subtitle }}</div>
</div>