/* ══════════════════════════════════════════════════════ THEME: Monograph — Typographic / Book ══════════════════════════════════════════════════════ */ /* Header: thin hairline border, centered */ [data-preset='monograph'] .header { background: transparent; backdrop-filter: none; -webkit-backdrop-filter: none; border-bottom: 1px solid var(--border-subtle); } [data-preset='monograph'] .header__nav { justify-content: center; } [data-preset='monograph'] .header__nav-link { font-size: 0.6rem; font-weight: 400; letter-spacing: 0.2em; color: var(--text-muted); } [data-preset='monograph'] .header__nav-link:hover, [data-preset='monograph'] .header__nav-link.active { color: var(--text-primary); border-bottom-color: var(--text-primary); } /* Photo grid: numbered indices with CSS counter */ [data-preset='monograph'] .photo-grid { counter-reset: photo-index; /* Preset default only — an explicit grid.gap lands inline and wins (#513). */ --grid-gap: 40px; } [data-preset='monograph'] .photo-grid__item { counter-increment: photo-index; margin-bottom: 48px; } [data-preset='monograph'] .photo-grid__item::before { content: counter(photo-index, decimal-leading-zero); position: absolute; top: -28px; left: 0; font-family: var(--font-caption); font-size: 0.65rem; font-weight: 400; letter-spacing: 0.1em; color: var(--text-muted); z-index: 2; pointer-events: none; } [data-preset='monograph'] .photo-grid__item:hover img { filter: none; transform: none; } [data-preset='monograph'] .photo-grid__item:active img { filter: brightness(0.85); transform: none; } /* Caption slide-up on hover */ [data-preset='monograph'] .photo-grid__item-exif { position: absolute; bottom: 0; left: 0; right: 0; background: var(--bg-card); color: var(--text-secondary); font-family: var(--font-caption); font-size: 0.65rem; letter-spacing: 0.05em; padding: 10px 12px; opacity: 0; transform: translateY(100%); transition: opacity 0.4s ease, transform 0.4s ease; } [data-preset='monograph'] .photo-grid__item:hover .photo-grid__item-exif { opacity: 1; transform: translateY(0); } /* Album cards: minimal text below */ [data-preset='monograph'] .album-card { border: 1px solid var(--border-subtle); border-radius: 0; } [data-preset='monograph'] .album-card:hover { border-color: var(--text-primary); transform: none; } [data-preset='monograph'] .album-card:hover .album-card__image { transform: none; filter: none; } [data-preset='monograph'] .album-card__overlay { background: linear-gradient(to top, rgba(0, 0, 0, 0.4) 0%, transparent 30%); opacity: 1; } [data-preset='monograph'] .album-card__title { font-family: var(--font-sans); font-size: 0.75rem; font-weight: 400; letter-spacing: 0.12em; text-transform: uppercase; } [data-preset='monograph'] .album-card__count { font-family: var(--font-caption); font-size: 0.6rem; letter-spacing: 0.08em; } /* Section labels: thin hairline rule */ [data-preset='monograph'] .section-label { font-family: var(--font-sans); font-size: 0.6rem; letter-spacing: 0.2em; color: var(--text-muted); padding-bottom: 12px; border-bottom: 1px solid var(--border-subtle); } /* Album & Subpage header: large serif with wide spacing */ [data-preset='monograph'] .album-header { margin-bottom: 72px; } [data-preset='monograph'] .album-header__title, [data-preset='monograph'] .subpage-title { font-family: var(--font-serif); font-size: 3rem; font-weight: 400; letter-spacing: 0.02em; text-transform: none; } [data-preset='monograph'] .album-header__meta, [data-preset='monograph'] .subpage-subtitle { font-family: var(--font-caption); font-size: 0.75rem; letter-spacing: 0.05em; margin-top: 12px; } /* Footer */ [data-preset='monograph'] .footer { border-top: 1px solid var(--border-subtle); } [data-preset='monograph'] .footer__name { font-size: 0.6rem; letter-spacing: 0.15em; } /* Main: extra generous margins */ [data-preset='monograph'] ~ body .main { padding: 80px 60px 120px; } /* Subpage grid */ [data-preset='monograph'] .subpage-grid { --subpage-gap: 1px; } [data-preset='monograph'] .subpage-grid__item { border: 1px solid var(--border-subtle); } [data-preset='monograph'] .subpage-grid__item-title { font-family: var(--font-sans); font-size: 0.7rem; letter-spacing: 0.15em; text-transform: uppercase; } /* Subpage TOC: book-indexed, hairline */ [data-preset='monograph'] .subpage-toc { margin-bottom: 64px; flex-direction: column; gap: 0; border-top: 1px solid var(--border-subtle); border-bottom: 1px solid var(--border-subtle); padding: 16px 0; } [data-preset='monograph'] .subpage-toc__entry { padding: 6px 0; border-bottom: 1px solid var(--border-subtle); } [data-preset='monograph'] .subpage-toc__entry:last-child { border-bottom: none; } [data-preset='monograph'] .subpage-toc__entry + .subpage-toc__entry::before { display: none; } [data-preset='monograph'] .subpage-toc__link { display: flex; gap: 20px; align-items: baseline; color: var(--text-secondary); } [data-preset='monograph'] .subpage-toc__link:hover { color: var(--text-primary); } [data-preset='monograph'] .subpage-toc__num { font-family: var(--font-caption); font-size: 0.65rem; color: var(--text-muted); min-width: 24px; } [data-preset='monograph'] .subpage-toc__label { font-family: var(--font-serif); font-size: 1rem; font-weight: 400; letter-spacing: 0.02em; } /* Section: hairline rule, generous serif title */ [data-preset='monograph'] .subpage-section__title { font-family: var(--font-serif); font-size: 2rem; font-weight: 400; letter-spacing: 0.02em; text-transform: none; } [data-preset='monograph'] .subpage-section__desc { font-family: var(--font-caption); font-size: 0.75rem; letter-spacing: 0.04em; } [data-preset='monograph'] .subpage-section__rule { background: var(--border-subtle); height: 1px; } @media (max-width: 1024px) { .photo-grid { --grid-columns: 2; } .album-grid { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); } } @media (max-width: 640px) { .hero { grid-template-columns: 1fr; } .hero__right { order: -1; height: 50vh; height: 50svh; min-height: 200px; } .hero__left { padding: 40px 24px; } .hero__title { font-size: 2rem; } .photo-grid { --grid-columns: 1; } .album-grid { grid-template-columns: 1fr; } .subpage-grid { grid-template-columns: 1fr; } .main { padding: 32px 20px 80px; } .header__nav-link { padding: 14px 10px; font-size: 0.6rem; } .album-header__title { font-size: 1.8rem; } .album-card__overlay { opacity: 1; } .subpage-grid__item-overlay { opacity: 1; } [data-photo-frame='passepartout'] .photo-grid__item { padding: 6px 6px 18px; } /* Minimal: adjust fullbleed hero for mobile */ [data-preset='minimal'] .hero__left { padding: 20px 24px; } [data-preset='minimal'] .hero__right { height: 70vh; height: 70svh; } /* Editorial: scale down oversized title */ [data-preset='editorial'] .hero__title { font-size: 2.5rem; } [data-preset='editorial'] .album-header__title { font-size: 2rem; } /* Classic: scale title */ [data-preset='classic'] .hero__title { font-size: 2rem; } /* Stacked: compact overlay */ .hero__stacked-overlay { padding: 24px 20px; } .hero--stacked .hero__title { font-size: 2rem; } .hero__thumbnail-item { padding: 12px 20px; } /* Typographic: scale down massive title */ .hero--typographic { padding: 40px 24px; } .hero--typographic .hero__title { font-size: 3.5rem; } /* Mosaic: simplify to 2-column */ .hero__mosaic-grid { grid-template-columns: 1fr 1fr; grid-template-rows: auto; } .hero__mosaic-cell--1 { grid-row: auto; } .hero__mosaic-cell--2 { grid-column: auto; } .hero__mosaic-cell:nth-child(n + 5) { display: none; } .hero__mosaic-overlay { padding: 24px 28px; } .hero--mosaic .hero__title { font-size: 2rem; } /* Monograph: scale album header */ [data-preset='monograph'] .album-header__title { font-size: 2rem; } }