
Steak & gnocchi
Store-bought gnocchi in heavy cream with parmesan, feta, garlic seasoning, wilted spinach, and the browned steak juices from the pan.
Recipe notes:root { --ink: #171717; --muted: #68645d; --cream: #f7f1e7; --white: #fffdf9; --red: #c94535; --red-dark: #9f2e25; --gold: #d6a54e; --line: rgba(23,23,23,.16); --display: "Barlow Condensed", Impact, sans-serif; --body: "DM Sans", Arial, sans-serif; } * { box-sizing: border-box; } html { scroll-behavior: smooth; } body { margin: 0; color: var(--ink); background: var(--cream); font-family: var(--body); font-size: 16px; line-height: 1.5; } a { color: inherit; text-decoration: none; } button { font: inherit; } img { display: block; max-width: 100%; } .container { width: min(1240px, calc(100% - 56px)); margin: 0 auto; } .site-header { position: relative; z-index: 20; background: var(--white); border-bottom: 1px solid var(--line); } .nav { display: flex; align-items: center; justify-content: space-between; min-height: 82px; gap: 28px; } .brand { display: inline-flex; align-items: center; gap: 12px; font-family: var(--display); font-size: 25px; font-weight: 700; letter-spacing: .01em; text-transform: uppercase; white-space: nowrap; } .brand-mark { display: grid; place-items: center; width: 39px; height: 39px; color: var(--white); background: var(--red); border-radius: 50%; font-family: var(--display); font-size: 18px; letter-spacing: -.05em; } .nav-links { display: flex; align-items: center; gap: 34px; } .nav-links a { position: relative; padding: 29px 0 25px; font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; } .nav-links a::after { position: absolute; right: 0; bottom: 17px; left: 0; height: 3px; background: var(--red); content: ""; transform: scaleX(0); transform-origin: right; transition: transform .25s ease; } .nav-links a:hover::after, .nav-links a:focus-visible::after, .nav-links a[aria-current="page"]::after { transform: scaleX(1); transform-origin: left; } .nav-button { display: inline-flex; align-items: center; gap: 8px; padding: 12px 17px; color: var(--white); background: var(--red); border-radius: 999px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; transition: background .2s ease, transform .2s ease; } .nav-button:hover, .nav-button:focus-visible { background: var(--red-dark); transform: translateY(-2px); } .menu-button { display: none; border: 0; background: transparent; cursor: pointer; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; } .category-hero { position: relative; overflow: hidden; color: var(--white); background: var(--ink); } .category-hero::before { position: absolute; inset: 0; background: linear-gradient(90deg, rgba(23,23,23,.95) 0%, rgba(23,23,23,.8) 44%, rgba(23,23,23,.2) 100%); content: ""; z-index: 1; } .category-hero-bg { position: absolute; inset: 0; background-position: center; background-size: cover; opacity: .92; transform: scale(1.03); } .category-hero-inner { position: relative; z-index: 2; display: grid; grid-template-columns: 1fr .72fr; align-items: end; min-height: 590px; gap: 60px; padding: 92px 0 78px; } .eyebrow { display: inline-flex; align-items: center; gap: 12px; margin: 0 0 22px; color: #f1c775; font-size: 12px; font-weight: 700; letter-spacing: .17em; text-transform: uppercase; } .eyebrow::before { width: 30px; height: 3px; background: var(--red); content: ""; } h1, h2, h3 { font-family: var(--display); font-weight: 700; letter-spacing: -.045em; line-height: .86; } h1 { max-width: 780px; margin: 0 0 26px; font-size: clamp(5.7rem, 12vw, 11.5rem); text-transform: uppercase; } h1 span { display: block; color: #f1c775; } .hero-intro { max-width: 500px; margin: 0; color: rgba(255,253,249,.78); font-size: 17px; } .hero-stamp { align-self: end; max-width: 285px; padding: 25px; border: 1px solid rgba(255,253,249,.35); background: rgba(255,253,249,.1); backdrop-filter: blur(7px); } .hero-stamp strong { display: block; margin-bottom: 9px; color: var(--white); font-family: var(--display); font-size: 47px; line-height: .84; text-transform: uppercase; } .hero-stamp p { margin: 0; color: rgba(255,253,249,.72); font-size: 13px; } .category-nav { border-bottom: 1px solid var(--line); background: var(--white); } .category-nav-inner { display: flex; align-items: center; justify-content: space-between; gap: 20px; min-height: 72px; } .category-nav-label { color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase; } .category-nav-links { display: flex; flex-wrap: wrap; justify-content: end; gap: 22px; } .category-nav-links a { color: var(--muted); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; transition: color .2s ease; } .category-nav-links a:hover, .category-nav-links a:focus-visible, .category-nav-links a[aria-current="page"] { color: var(--red); } .recipe-section { padding: 108px 0 118px; } .section-heading { display: flex; align-items: end; justify-content: space-between; gap: 40px; margin-bottom: 44px; } .section-heading h2 { max-width: 680px; margin: 0; font-size: clamp(4.5rem, 8.5vw, 8.7rem); text-transform: uppercase; } .section-heading h2 span { color: var(--red); } .section-heading p { max-width: 330px; margin: 0 0 5px; color: var(--muted); } .recipe-grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 13px; } .recipe-card { display: flex; min-height: 415px; flex-direction: column; border: 1px solid var(--line); background: var(--white); transition: transform .3s ease, box-shadow .3s ease, border-color .3s ease; } .recipe-card:hover, .recipe-card:focus-within { border-color: var(--red); box-shadow: 0 16px 32px rgba(23,23,23,.14); transform: translateY(-6px); } .recipe-visual { position: relative; height: 190px; overflow: hidden; background: linear-gradient(145deg, #291f1b, #8e3b2e 52%, #d69f4f); } .recipe-visual::after { position: absolute; inset: 0; background: linear-gradient(180deg, transparent 45%, rgba(23,23,23,.35)); content: ""; pointer-events: none; } .recipe-visual img { position: relative; z-index: 1; width: 100%; height: 100%; object-fit: cover; } .recipe-body { display: flex; flex: 1; flex-direction: column; padding: 19px 18px 20px; } .recipe-meta { display: flex; justify-content: space-between; gap: 10px; margin-bottom: 19px; color: var(--muted); font-size: 10px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; } .recipe-body h3 { margin: 0 0 9px; font-size: clamp(2.35rem, 3vw, 3.4rem); text-transform: uppercase; } .recipe-body p { margin: 0; color: var(--muted); font-size: 13px; line-height: 1.45; } .recipe-link { display: inline-flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 20px; color: var(--red); font-size: 11px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; } .recipe-link span { transition: transform .2s ease; } .recipe-card:hover .recipe-link span { transform: translateX(5px); } .marquee { overflow: hidden; color: var(--white); background: var(--ink); } .marquee-track { display: flex; width: max-content; gap: 28px; padding: 23px 0; animation: move 25s linear infinite; } .marquee-item { display: inline-flex; align-items: center; gap: 28px; font-family: var(--display); font-size: 31px; letter-spacing: .02em; text-transform: uppercase; white-space: nowrap; } .marquee-item::after { width: 9px; height: 9px; border-radius: 50%; background: var(--red); content: ""; } @keyframes move { to { transform: translateX(-50%); } } .table-cta { padding: 106px 0 116px; color: var(--white); background: var(--red); } .table-cta-inner { display: flex; align-items: end; justify-content: space-between; gap: 30px; } .table-cta h2 { max-width: 770px; margin: 0; font-size: clamp(4.5rem, 10vw, 10rem); text-transform: uppercase; } .table-cta h2 span { display: block; color: var(--ink); } .table-cta .button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-width: 245px; min-height: 84px; padding: 0 32px; color: var(--ink); background: var(--white); border: 2px solid var(--white); box-shadow: 0 12px 0 rgba(23,23,23,.16); font-size: 16px; font-weight: 700; letter-spacing: .13em; text-transform: uppercase; white-space: nowrap; transition: transform .25s ease, color .25s ease, background .25s ease, border-color .25s ease, box-shadow .25s ease; } .table-cta .button:hover, .table-cta .button:focus-visible { color: var(--white); background: var(--ink); border-color: var(--ink); box-shadow: 0 12px 0 rgba(23,23,23,.2), 0 0 0 9px rgba(255,253,249,.18), 0 0 34px rgba(255,253,249,.42); transform: translateY(-5px) scale(1.04); } footer { padding: 34px 0; color: rgba(255,255,255,.7); background: var(--ink); } .footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 25px; } footer .brand { color: var(--white); font-size: 22px; } .footer-links { display: flex; gap: 24px; font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; } .footer-links a:hover { color: var(--red); } .copyright { font-size: 12px; } @media (max-width: 1100px) { .recipe-grid { grid-template-columns: repeat(3, 1fr); } } @media (max-width: 900px) { .nav { min-height: 72px; } .nav-links { display: none; } .menu-button { display: block; } .nav.menu-open .nav-links { position: absolute; top: 72px; right: 28px; left: 28px; display: grid; gap: 0; padding: 12px 20px; border: 1px solid var(--line); background: var(--white); box-shadow: 0 15px 35px rgba(23,23,23,.14); } .nav.menu-open .nav-links a { padding: 15px 0; border-bottom: 1px solid var(--line); } .nav.menu-open .nav-links a:last-child { border-bottom: 0; } .nav-button { display: none; } .category-hero-inner { grid-template-columns: 1fr; min-height: 610px; align-items: start; } .hero-stamp { align-self: start; } .category-nav-inner { align-items: start; flex-direction: column; justify-content: center; padding: 18px 0; } .category-nav-links { justify-content: start; } .section-heading { display: block; } .section-heading h2 { margin-bottom: 20px; } .section-heading p { max-width: 480px; } .table-cta-inner { display: block; } .table-cta .button { margin-top: 30px; } } @media (max-width: 600px) { .container { width: min(100% - 30px, 1240px); } .brand { font-size: 21px; } .brand-mark { width: 34px; height: 34px; font-size: 16px; } h1 { font-size: clamp(5rem, 23vw, 7.2rem); } .category-hero-inner { padding-top: 74px; } .recipe-section { padding: 80px 0; } .section-heading h2 { font-size: clamp(4.4rem, 20vw, 7rem); } .recipe-grid { grid-template-columns: 1fr; } .recipe-card { min-height: 385px; } .table-cta h2 { font-size: clamp(4.7rem, 20vw, 7.2rem); } .footer-inner { align-items: start; flex-direction: column; } .footer-links { flex-wrap: wrap; } } @media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } *, *::before, *::after { animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; } }
03 / A little challenge
Big presentation, smart technique, and food that makes a regular night feel like you went somewhere.
Restaurant energy without needing a reservation, a culinary degree, or a pantry full of mystery ingredients.

Store-bought gnocchi in heavy cream with parmesan, feta, garlic seasoning, wilted spinach, and the browned steak juices from the pan.
Recipe notes
A showpiece cut with a hard sear, a rested center, and a finish worth talking about.
Recipe notes
Fast-cooking shrimp, aromatic butter, and enough sauce to make bread mandatory.
Recipe notes
Juicy beef, a toasted bun, and the little details that make a burger feel intentional.
Recipe notes
Use half milk and half heavy cream to soften the pesto, then finish with goat cheese for a sharp, bright edge.
Recipe notes