.chef-page { background: var(--color-cream-050); }
.chef-page .section { position: relative; }
.chef-page .button { min-height: 2.75rem; }
.chef-page .chef-hero { position: relative; min-height: 45rem; display: grid; isolation: isolate; overflow: hidden; }
.chef-hero__image, .chef-hero__container { grid-area: 1 / 1; }
.chef-hero__image { z-index: -2; width: 100%; min-width: 0; }
.chef-hero__image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(23 23 24 / 92%) 0%, rgb(23 23 24 / 78%) 33%, rgb(23 23 24 / 28%) 58%, rgb(23 23 24 / 10%) 100%); }
.chef-hero__image img { width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.chef-hero__container { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr); align-items: center; width: min(100% - (var(--gutter) * 2), var(--container-max)); }
.chef-hero__panel { grid-column: 1 / 2; width: 100%; max-width: 35rem; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); padding-block: var(--space-8); }
.chef-hero__panel > * { min-width: 0; margin: 0; }
.chef-hero__panel h1 { font-size: 4.5rem; line-height: 1; }
.chef-hero__lead { max-width: 35rem; font-size: var(--text-lead); line-height: var(--line-lead); }
.chef-hero__continuation { max-width: 33rem; border-inline-start: 1px solid var(--color-detail); padding-inline-start: var(--space-4); }
.chef-hero__continuation p { margin: 0; color: var(--color-cream-200); }
.chef-hero__actions { width: 100%; justify-content: flex-start; }
.chef-page .chef-philosophy__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); column-gap: var(--space-5); row-gap: var(--space-7); }
.chef-philosophy__intro { grid-column: 1 / span 7; width: 100%; max-width: 40rem; min-width: 0; }
.chef-philosophy__principles { grid-column: 2 / span 11; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-5); width: 100%; min-width: 0; }
.chef-principle { display: grid; grid-template-columns: minmax(0, 1fr); gap: var(--space-4); min-width: 0; padding-top: var(--space-5); border-top: 1px solid var(--color-border); }
.chef-principle__number { color: var(--color-detail); font-family: var(--font-heading); font-size: 2.5rem; line-height: 1; }
.chef-principle__content { width: 100%; max-width: 29.375rem; min-width: 0; }
.chef-principle__content h3 { margin-bottom: var(--space-3); }
.chef-principle__accent { color: var(--color-accent); font-weight: 700; }
.chef-page .chef-craft__grid { display: grid; grid-template-columns: minmax(0, 7fr) minmax(0, 1fr) minmax(0, 4fr); align-items: start; }
.chef-craft__media { grid-column: 1 / 2; width: 100%; min-width: 0; margin: 0; aspect-ratio: 4 / 5; }
.chef-craft__media img { width: 100%; height: 100%; object-fit: cover; object-position: center center; }
.chef-craft__copy { grid-column: 3 / 4; width: 100%; max-width: 30.625rem; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); padding-top: var(--space-4); }
.chef-craft__copy > * { margin: 0; min-width: 0; }
.chef-craft__statement { font-family: var(--font-heading); font-size: var(--text-section); font-weight: 600; line-height: var(--line-section); }
.chef-craft__details { width: 100%; display: flex; flex-direction: column; gap: var(--space-5); margin-top: var(--space-2); }
.chef-detail { width: 100%; min-width: 0; border-top: 1px solid var(--color-border); padding-top: var(--space-4); }
.chef-detail > :last-child { margin-bottom: 0; }
.chef-detail h3 { margin-bottom: var(--space-3); font-size: var(--text-section); }
.chef-detail__callout { color: var(--color-accent); font-weight: 700; }
.chef-page .chef-pace__grid { display: grid; grid-template-columns: minmax(0, 5fr) minmax(0, 1fr) minmax(0, 6fr); align-items: start; }
.chef-pace__intro { grid-column: 1 / 2; width: 100%; max-width: 26.875rem; min-width: 0; }
.chef-text-link { display: inline-flex; min-height: 2.75rem; align-items: center; gap: var(--space-2); color: var(--color-accent); font-size: var(--text-small); font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.chef-pace__sequence { grid-column: 3 / 4; width: 100%; max-width: 32.5rem; min-width: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--color-border); }
.chef-pace__item { display: grid; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-4); min-width: 0; padding: var(--space-5) 0; border-bottom: 1px solid var(--color-border); }
.chef-pace__number { color: var(--color-detail); font-family: var(--font-heading); font-size: 2rem; line-height: 1; }
.chef-pace__item h3 { margin-bottom: var(--space-3); font-size: var(--text-section); }
.chef-pace__item p:last-child { margin-bottom: 0; }
.chef-qualities__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); row-gap: var(--space-7); }
.chef-qualities__intro { grid-column: 1 / span 6; width: 100%; max-width: 38.75rem; min-width: 0; }
.chef-qualities__list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); width: 100%; min-width: 0; border-top: 1px solid var(--color-border-dark); border-bottom: 1px solid var(--color-border-dark); }
.chef-quality { min-width: 0; padding: var(--space-5); border-inline-start: 1px solid var(--color-border-dark); }
.chef-quality:first-child { border-inline-start: 0; padding-inline-start: 0; }
.chef-quality span { display: block; width: .45rem; height: .45rem; margin-bottom: var(--space-4); border-radius: 50%; background: var(--color-detail); }
.chef-quality h3 { margin-bottom: var(--space-3); }
.chef-quality p { margin-bottom: 0; color: var(--color-cream-200); }
.chef-quality em { display: block; margin-top: var(--space-3); color: var(--color-cream-050); }
.chef-service__grid { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); row-gap: var(--space-7); }
.chef-service__intro { grid-column: 1 / span 7; width: 100%; max-width: 40.625rem; min-width: 0; }
.chef-service__list { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); width: 100%; min-width: 0; border-top: 1px solid var(--color-border); }
.chef-service__item { min-width: 0; padding: var(--space-5); border-inline-start: 1px solid var(--color-border); }
.chef-service__item:first-child { border-inline-start: 0; padding-inline-start: 0; }
.chef-service__item h3 { margin-bottom: var(--space-3); }
.chef-service__item h3 span { font-size: 1.2em; }
.chef-service__item p { margin-bottom: var(--space-4); }
.chef-service__item p:last-of-type { margin-bottom: var(--space-3); }
.chef-evening { position: relative; min-height: 35.625rem; display: grid; isolation: isolate; overflow: hidden; }
.chef-evening__image, .chef-evening__container { grid-area: 1 / 1; }
.chef-evening__image { z-index: -2; width: 100%; min-width: 0; }
.chef-evening__image::after { content: ""; position: absolute; inset: 0; background: linear-gradient(0deg, rgb(23 23 24 / 92%) 0%, rgb(23 23 24 / 56%) 43%, rgb(23 23 24 / 10%) 80%); }
.chef-evening__image img { width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.chef-evening__container { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); align-items: end; padding-bottom: var(--space-7); }
.chef-evening__panel { grid-column: 1 / span 5; width: 100%; max-width: 32.5rem; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-4); }
.chef-evening__panel > * { margin: 0; min-width: 0; }
.chef-evening__panel p { color: var(--color-cream-200); }
.chef-faq__container { width: min(100% - (var(--gutter) * 2), var(--container-max)); }
.chef-faq__intro { width: 77.777%; max-width: 38.75rem; min-width: 0; }
.chef-faq__items { width: 77.777%; min-width: 0; margin-top: var(--space-6); border-top: 1px solid var(--color-border); }
.chef-faq__item { width: 100%; min-width: 0; border-bottom: 1px solid var(--color-border); }
.chef-faq__item h3 { margin: 0; font-size: var(--text-section); }
.chef-faq__item button { display: grid; grid-template-columns: minmax(0, 1fr) 2.75rem; width: 100%; min-width: 0; min-height: 3.5rem; align-items: center; border: 0; background: transparent; padding: var(--space-3) 0; color: inherit; text-align: left; }
.chef-faq__item button span { display: grid; width: 2.75rem; min-width: 0; height: 2.75rem; place-items: center; color: var(--color-accent); font-family: var(--font-body); font-size: 1.5rem; font-weight: 400; transition: transform var(--transition-base); }
.chef-faq__item button[aria-expanded="true"] span { transform: rotate(45deg); }
.chef-faq__answer { width: 100%; max-width: 42.5rem; min-width: 0; overflow: hidden; }
.chef-faq__answer[hidden] { display: none; }
.chef-faq__answer p { margin-bottom: var(--space-5); }
.chef-offline-note { border-block: 1px solid var(--color-border-dark); padding-block: var(--space-6); }
.chef-offline-note__container { width: min(100% - (var(--gutter) * 2), 61.25rem); min-width: 0; }
.chef-offline-note__container > *:last-child { max-width: 48.75rem; margin-bottom: 0; color: var(--color-cream-200); }
.chef-closing__container { display: grid; grid-template-columns: repeat(12, minmax(0, 1fr)); }
.chef-closing__copy { grid-column: 2 / span 6; width: 100%; max-width: 36.875rem; min-width: 0; display: flex; flex-direction: column; align-items: flex-start; gap: var(--space-5); border-top: 1px solid var(--color-detail); padding-top: var(--space-5); }
.chef-closing__copy > * { margin: 0; min-width: 0; }
.chef-closing__copy p { color: var(--color-cream-200); }
.chef-closing__actions { width: 100%; justify-content: flex-start; }
@media (max-width: 1023px) { .chef-qualities__list { grid-template-columns: repeat(2, minmax(0, 1fr)); } .chef-quality:nth-child(odd) { border-inline-start: 0; padding-inline-start: 0; } .chef-quality:nth-child(n+3) { border-top: 1px solid var(--color-border-dark); } }
@media (max-width: 959px) { .chef-philosophy__principles { grid-column: 1 / -1; grid-template-columns: repeat(2, minmax(0, 1fr)); } .chef-principle:nth-child(3) { grid-column: 1 / -1; } .chef-service__list { grid-template-columns: minmax(0, 1fr); } .chef-service__item, .chef-service__item:first-child { padding: var(--space-5) 0; border-inline-start: 0; border-bottom: 1px solid var(--color-border); } .chef-service__item:last-child { border-bottom: 0; } }
@media (max-width: 899px) { .chef-page .chef-hero { display: flex; min-height: 0; flex-direction: column; } .chef-hero__image { position: relative; height: clamp(20rem, 55vw, 25rem); } .chef-hero__image::after { background: linear-gradient(0deg, rgb(23 23 24 / 38%), rgb(23 23 24 / 0%) 60%); } .chef-hero__container { display: block; width: 100%; } .chef-hero__panel { max-width: none; padding: var(--space-7) var(--gutter); } .chef-hero__panel h1 { font-size: 2.5rem; line-height: 1.05; } .chef-page .chef-craft__grid, .chef-page .chef-pace__grid { grid-template-columns: minmax(0, 1fr); gap: var(--space-6); } .chef-craft__media, .chef-craft__copy, .chef-pace__intro, .chef-pace__sequence { grid-column: 1; max-width: none; } .chef-craft__media { aspect-ratio: 4 / 3; } .chef-pace__sequence { max-width: 32.5rem; } }
@media (max-width: 819px) { .chef-evening { display: flex; min-height: 0; flex-direction: column; } .chef-evening__image { position: relative; height: auto; aspect-ratio: 4 / 5; } .chef-evening__image::after { display: none; } .chef-evening__container { display: block; width: 100%; padding: 0; } .chef-evening__panel { max-width: none; gap: var(--space-4); padding: var(--space-6) var(--gutter); background: var(--color-charcoal-950); } }
@media (max-width: 759px) { .chef-faq__intro, .chef-faq__items { width: 100%; max-width: none; } .chef-closing__copy { grid-column: 1 / -1; } }
@media (max-width: 679px) { .chef-philosophy__intro, .chef-qualities__intro, .chef-service__intro { grid-column: 1 / -1; } .chef-philosophy__principles { grid-template-columns: minmax(0, 1fr); } .chef-principle, .chef-principle:nth-child(3) { grid-column: 1; grid-template-columns: 3rem minmax(0, 1fr); gap: var(--space-3); } }
@media (max-width: 639px) { .chef-hero__actions, .chef-closing__actions { flex-direction: column; align-items: stretch; } .chef-hero__actions > *, .chef-closing__actions > * { width: 100%; } .chef-quality, .chef-quality:first-child, .chef-quality:nth-child(odd) { padding: var(--space-5) 0; border-inline-start: 0; border-top: 1px solid var(--color-border-dark); } .chef-qualities__list { grid-template-columns: minmax(0, 1fr); } .chef-qualities__list .chef-quality:first-child { border-top: 0; } .chef-pace__item { grid-template-columns: 2.5rem minmax(0, 1fr); gap: var(--space-3); } }
@media (max-width: 519px) { .chef-closing__actions { flex-direction: column; align-items: stretch; } }
@media (max-width: 419px) { .chef-principle, .chef-principle:nth-child(3), .chef-pace__item { grid-template-columns: minmax(0, 1fr); } .chef-principle__number, .chef-pace__number { margin-bottom: var(--space-1); } }
