The modern end table.Honest to the core. Most modern end tables are MDF wrapped in veneer. The Shape Table is premium-grade Baltic birch plywood — genuine layered birch all the way through, its edges left exposed and unfinished, so you see exactly what it's made of. The base is two panels that slot together with no tools and no hardware, assembled in under a minute. At 15" wide and 18" tall it sits at natural sofa or bedside height. Pick the top that fits your room — square, round, polygon, or wavy — then leave it raw, oil it, or paint it any color you like. Square Round Polygon Wavy Premium Plywood Premium-grade Baltic birch plywood — the same material used in high-end cabinetry, exposed so you can see every ply. No MDF, no particle board, no veneer pretending to be solid wood. Slots Together Two panels and a top, zero tools. The cross joint locks the base; the top sits flush. Flat-packed and together in under a minute — no hardware, no Allen key, nothing to lose. Sofa-Side Height 15" wide and 18" tall — sized for the spot beside a sofa or bed. The right height for a drink, a stack of books, or a low lamp. Your Canvas Leave it raw, sand and oil it, or paint it any color you want. The unfinished surface is a starting point, not a compromise — sand it back whenever you want a new look. .knt-details { --c-bg: #ffffff; --c-ink: #1a1a1a; --c-muted: #7a7570; --c-rule: #e0ddd8; --f-serif: 'Instrument Serif', Georgia, serif; --f-sans: 'Instrument Sans', -apple-system, sans-serif; font-family: var(--f-sans); background: var(--c-bg); color: var(--c-ink); padding: 2.75rem 1.25rem 3.5rem; box-sizing: border-box; } .knt-details *, .knt-details *::before, .knt-details *::after { box-sizing: inherit; margin: 0; padding: 0; } .knt-details__container { max-width: 1080px; margin: 0 auto; } /* ── Header ── */ .knt-details__header { text-align: center; max-width: 600px; margin: 0 auto 2rem; } .knt-details__title { font-family: var(--f-serif); font-size: 2rem; font-weight: 400; line-height: 1.15; letter-spacing: -0.01em; color: var(--c-ink); margin-bottom: 1rem; } .knt-details__title em { font-style: italic; } .knt-details__intro { font-size: 1rem; line-height: 1.7; color: var(--c-muted); max-width: 52ch; margin: 0 auto; } /* ── Photos: 2x2 on mobile, 4-across on desktop ── */ .knt-details__photos { display: grid; grid-template-columns: 1fr 1fr; gap: 1rem 0.5rem; margin-bottom: 2rem; } .knt-details__photo { margin: 0; } .knt-details__img { width: 100%; display: block; object-fit: cover; aspect-ratio: 1 / 1; border-radius: 4px; } .knt-photo__label { font-family: var(--f-serif); font-size: 1rem; line-height: 1; text-align: center; color: var(--c-ink); margin-top: 0.55rem; } /* ── Features ── */ .knt-details__features { display: flex; flex-direction: column; border-top: 1px solid var(--c-rule); border-bottom: 1px solid var(--c-rule); padding: 1.5rem 0; } .knt-details__feature { display: flex; flex-direction: column; gap: 0.3rem; padding: 0.9rem 0; border-bottom: 1px solid var(--c-rule); } .knt-details__feature:last-child { border-bottom: none; } .knt-feature__label { font-family: var(--f-serif); font-size: 1.1rem; font-weight: 400; color: var(--c-ink); } .knt-feature__text { font-size: 0.9rem; line-height: 1.6; color: var(--c-muted); } /* ── Desktop ── */ @media (min-width: 700px) { .knt-details { padding: 5rem 3rem 6rem; } .knt-details__header { margin: 0 auto 3.5rem; } .knt-details__title { font-size: clamp(2.4rem, 4vw, 3.8rem); letter-spacing: -0.02em; margin-bottom: 1.25rem; } .knt-details__intro { font-size: 1.1rem; } .knt-details__photos { grid-template-columns: repeat(4, 1fr); gap: 0.75rem; margin-bottom: 3rem; } .knt-photo__label { font-size: 1.1rem; margin-top: 0.65rem; } .knt-details__features { flex-direction: row; padding: 2.5rem 0; } .knt-details__feature { flex: 1; padding: 0 2rem; border-bottom: none; border-right: 1px solid var(--c-rule); gap: 0.4rem; } .knt-details__feature:first-child { padding-left: 0; } .knt-details__feature:last-child { padding-right: 0; border-right: none; } .knt-feature__label { font-size: 1.15rem; } .knt-feature__text { font-size: 0.95rem; } }