From 86b2778a479f1f88f6aca2d89308b71b5acdf543 Mon Sep 17 00:00:00 2001 From: Mischa Date: Fri, 19 Jun 2026 15:36:38 +0200 Subject: [PATCH] feat: CSS for home layout, story cards, trip sidebar, escape link --- themes/intotheeast/css/style.css | 199 +++++++++++++++++++++++++++++++ 1 file changed, 199 insertions(+) diff --git a/themes/intotheeast/css/style.css b/themes/intotheeast/css/style.css index 66337ed..0e663d4 100644 --- a/themes/intotheeast/css/style.css +++ b/themes/intotheeast/css/style.css @@ -648,3 +648,202 @@ body::after { outline: 2px solid var(--color-accent); outline-offset: 2px; } + +/* ── Home page layout ────────────────────────────────────────────────────────── */ + +.home-page .site-main { max-width: none; padding: 0; } + +.home-layout { + display: grid; + grid-template-columns: 45% 55%; +} + +.home-map-col { + position: sticky; + top: var(--site-header-height); + height: calc(100vh - var(--site-header-height)); + align-self: start; +} + +.home-map { + width: 100%; + height: 100%; +} + +.home-feed-col { + padding: var(--space-8) var(--space-8); +} + +.home-trip-header { + margin-bottom: var(--space-8); + padding-bottom: var(--space-6); + border-bottom: 1px solid var(--color-border); +} + +.home-trip-name { + font-family: var(--font-display); + font-size: var(--text-2xl); + font-weight: 400; + color: var(--color-ink); + margin-bottom: var(--space-2); +} + +.home-trip-counts { + font-size: var(--text-sm); + color: var(--color-ink-muted); +} + +@media (max-width: 768px) { + .home-layout { display: flex; flex-direction: column; } + .home-map-col { position: static; height: 40vh; } + .home-feed-col { padding: var(--space-6) var(--space-5); } +} + +/* ── Past trips archive ──────────────────────────────────────────────────────── */ + +.trips-heading { + font-family: var(--font-display); + font-size: var(--text-2xl); + font-weight: 400; + color: var(--color-ink); + margin-bottom: var(--space-8); +} + +.trips-list { + display: flex; + flex-direction: column; + gap: var(--space-4); +} + +.trip-card { + display: block; + background: var(--color-canvas); + border: 1px solid var(--color-border); + border-radius: var(--radius-md); + padding: var(--space-6); + text-decoration: none; + color: inherit; + transition: border-color 0.15s, background 0.15s; +} + +.trip-card:hover { + border-color: var(--color-accent); + background: var(--color-surface-raised); +} + +.trip-card-title { + font-family: var(--font-display); + font-size: var(--text-xl); + font-weight: 400; + color: var(--color-ink); + margin-bottom: var(--space-2); +} + +.trip-card-meta { + display: flex; + gap: var(--space-4); + flex-wrap: wrap; + align-items: center; +} + +.trip-card-dates { font-size: var(--text-sm); color: var(--color-ink-2); } +.trip-card-counts { font-size: var(--text-sm); color: var(--color-ink-muted); } + +/* ── Trip page sidebar ───────────────────────────────────────────────────────── */ + +.trip-counts { + font-size: var(--text-sm); + color: var(--color-ink-muted); + margin-top: var(--space-2); +} + +.trip-layout { + display: grid; + grid-template-columns: 1fr 220px; + gap: var(--space-10); + align-items: start; +} + +.trip-sidebar { + position: sticky; + top: calc(var(--site-header-height) + var(--space-6)); + display: flex; + flex-direction: column; + gap: var(--space-6); +} + +.trip-sidebar-heading { + font-size: var(--text-xs); + font-weight: 600; + text-transform: uppercase; + letter-spacing: 0.08em; + color: var(--color-ink-muted); + margin-bottom: var(--space-3); +} + +.trip-sidebar-list { + list-style: none; + display: flex; + flex-direction: column; + gap: var(--space-1); +} + +.trip-sidebar-link { + display: block; + font-size: var(--text-sm); + color: var(--color-ink-2); + text-decoration: none; + padding: var(--space-1) 0; + transition: color 0.15s; +} + +.trip-sidebar-link:hover { color: var(--color-accent); } + +.trip-sidebar-date { + font-size: var(--text-xs); + color: var(--color-ink-muted); + margin-right: var(--space-2); +} + +@media (max-width: 900px) { + .trip-layout { grid-template-columns: 1fr; } + .trip-sidebar { position: static; display: none; } +} + +/* ── Story cards in feed ─────────────────────────────────────────────────────── */ + +.entry-card--story { + border-left: 3px solid var(--color-accent); + padding-left: var(--space-5); +} + +.entry-card-photo--story { aspect-ratio: 16 / 7; } + +.story-badge { + display: inline-block; + font-size: var(--text-xs); + font-weight: 600; + font-variant: small-caps; + letter-spacing: 0.08em; + color: var(--color-accent); + margin-bottom: var(--space-2); +} + +/* ── Story page escape link ──────────────────────────────────────────────────── */ + +.story-escape { + position: fixed; + top: var(--space-5); + left: var(--space-5); + z-index: 200; + font-size: var(--text-sm); + font-weight: 500; + color: var(--color-ink); + text-decoration: none; + background: rgba(0,0,0,0.6); + padding: var(--space-2) var(--space-4); + border-radius: var(--radius-full); + backdrop-filter: blur(4px); +} + +.story-escape:hover { color: var(--color-accent); }