/* The public product shell and editorial pages share the homepage language. */
.restaurant-landing { background: var(--pf-surface); }
.restaurant-landing h1, .restaurant-landing h2, .restaurant-landing h3 { text-wrap: balance; }
.restaurant-landing .lp-header-inner, .restaurant-landing .lp-header[data-compact] .lp-header-inner { min-height: 76px; }
.restaurant-landing .lp-brand { min-height: 44px; white-space: nowrap; }
.restaurant-landing .lp-brand strong { overflow-wrap: normal; }
.restaurant-landing .lp-navigation { flex-wrap: nowrap; }
.restaurant-landing .lp-navigation a { min-width:44px; min-height: 44px; white-space: nowrap; }
.restaurant-landing .lp-menu-toggle { width:44px; min-width:44px; height:44px; }
.restaurant-landing .lp-login { display: inline-flex; align-items: center; justify-content: center; min-width: 44px; min-height: 44px; font-size: 13px; }
.header-cta-short { display: none; }
.restaurant-landing .lp-footer { background: #fff; color: #57534e; border-top: 1px solid var(--pf-line); }
.restaurant-landing .lp-footer .lp-brand, .restaurant-landing .lp-footer nav > strong { color: var(--pf-ink); }
.restaurant-landing .lp-footer nav a, .restaurant-landing .lp-footer-brand p, .restaurant-landing .lp-footer-bottom, .restaurant-landing .lp-socials a { color: #78716c; }
.restaurant-landing .lp-footer nav a { display: flex; align-items: center; min-height: 44px; padding-block: 6px; }
.restaurant-landing .lp-footer nav a:hover { color: var(--pf-brand-hover); }
.restaurant-landing .lp-footer-bottom { border-top-color: var(--pf-line); }
.restaurant-landing .mag-page, .restaurant-landing .article-page, .restaurant-landing .demo-page { background: #fafaf9; }
.restaurant-landing .mag-head { border-color: #e7e5e4; }
.restaurant-landing .mag-head h1, .restaurant-landing .article-page h1, .restaurant-landing .demo-copy h1 { font-weight: 700; font-size: clamp(32px, 4vw, 50px); line-height: 1.65; letter-spacing: 0; color: #1c1917; }
.restaurant-landing .mag-head p, .restaurant-landing .article-lead, .restaurant-landing .demo-copy p { color: #57534e; }
.restaurant-landing .mag-search input, .restaurant-landing .demo-field input, .restaurant-landing .demo-field select, .restaurant-landing .demo-field textarea { border-color: #d6d3d1; border-radius: 6px; }
.restaurant-landing .mag-search input:focus, .restaurant-landing .demo-field input:focus, .restaurant-landing .demo-field select:focus, .restaurant-landing .demo-field textarea:focus { border-color: #c2410c; outline: 3px solid #fed7aa; }
.restaurant-landing .mag-filters { gap: 24px; border-bottom: 1px solid #e7e5e4; }
.restaurant-landing .mag-filter, .restaurant-landing .mag-filter:hover, .restaurant-landing .mag-filter.is-active { border: 0; border-bottom: 2px solid transparent; border-radius: 0; background: transparent; padding: 10px 2px; min-height: 44px; color: #78716c; font-size: 13px; font-weight: 400; }
.restaurant-landing .mag-filter.is-active, .restaurant-landing .mag-filter:hover { color: #c2410c; border-bottom-color: #ea580c; background: transparent; }
.restaurant-landing .mag-card { border-color: #e7e5e4; border-radius: 9px; box-shadow: none; }
.restaurant-landing .mag-card:hover { transform: none; border-color: #d6d3d1; }
.restaurant-landing .mag-card h2 { font-weight: 700; font-size: 20px; color: #1c1917; }
.restaurant-landing .mag-card h2 a { display: block; min-height: 44px; }
.restaurant-landing .mag-card p, .restaurant-landing .mag-meta { color: #78716c; }
.restaurant-landing .mag-more { display: flex; align-items: center; min-height: 44px; font-weight: 700; color: #c2410c; }
.restaurant-landing .mag-empty { border-color: #d6d3d1; border-radius: 8px; color: #57534e; }
.restaurant-landing .mag-empty a { display: inline-flex; align-items: center; min-height: 44px; color: #c2410c; }
.restaurant-landing .article-shell { width: min(860px, 100%); }
.restaurant-landing .article-back { min-height: 44px; display: inline-flex; align-items: center; font-weight: 700; color: #c2410c; }
.restaurant-landing .article-cover { border-radius: 9px; background: #e7e5e4; }
.restaurant-landing .article-kicker { color: #78716c; font-size: 12px; }
.restaurant-landing .article-body { color: #44403c; font-size: 17px; line-height: 2.1; overflow-wrap: anywhere; }
.restaurant-landing .article-body h2, .restaurant-landing .article-body h3 { color: #1c1917; font-weight: 700; }
.restaurant-landing .article-body blockquote { border-right: 0; border-inline-start: 3px solid #ea580c; border-radius: 0; color: #57534e; background: #fff7ed; }
.restaurant-landing .article-body code { font-family: Consolas, monospace; }
.restaurant-landing .article-body table { display: block; overflow-x: auto; max-width: 100%; font-variant-numeric: tabular-nums; }
.restaurant-landing .article-tags { border-color: #e7e5e4; gap: 15px; }
.restaurant-landing .article-tags span { border-radius: 0; background: transparent; color: #78716c; padding: 0; font-weight: 400; }
.restaurant-landing .article-tags span + span::before { content: '·'; padding-inline-end: 15px; }
.restaurant-landing .related { border-color: #e7e5e4; }
.restaurant-landing .related h2, .restaurant-landing .related-card h3 { color: #1c1917; font-weight: 700; }
.restaurant-landing .related-card { border-color: #e7e5e4; border-radius: 8px; padding: 22px; min-height: 44px; }
.restaurant-landing .related-card p { color: #78716c; }
.restaurant-landing .lp-guide-card { border-top: 1px solid #d6d3d1; }
.restaurant-landing .lp-guide-card > span, .restaurant-landing .lp-guide-card a { color: #c2410c; }
.restaurant-landing .lp-guide-card h3 { font-size: 20px; }
.restaurant-landing .lp-guide-card h3 a { display: block; min-height: 44px; }
.restaurant-landing .lp-detail-hero { background: #fafaf9; border-bottom: 1px solid #e7e5e4; }
.restaurant-landing .lp-detail-hero h1 { font-size: clamp(32px, 4vw, 50px); }
.restaurant-landing .lp-final-cta { background: #1c1917; }
.restaurant-landing .lp-final-cta .lp-eyebrow, .restaurant-landing .lp-final-cta p { color: #d6d3d1; }
@media (max-width: 1023px) {
    .restaurant-landing .lp-header-inner, .restaurant-landing .lp-header[data-compact] .lp-header-inner { min-height: 64px; }
    .restaurant-landing .lp-navigation { flex-wrap: nowrap; gap: 0; background: #fff; }
    .restaurant-landing .lp-navigation a { min-height: 44px; }
    .restaurant-landing .lp-header-actions { gap: 8px; }
}
@media (max-width: 767px) {
    .header-cta-full { display: none; }
    .header-cta-short { display: inline; }
    .restaurant-landing .lp-login { display: inline-flex; font-size: 12px; padding-inline: 2px; }
    .restaurant-landing .lp-brand strong { font-size: 17px; }
    .restaurant-landing .mag-page, .restaurant-landing .article-page { padding-inline: 18px; }
    .restaurant-landing .mag-head h1, .restaurant-landing .article-page h1 { font-size: 32px; line-height: 1.65; }
    .restaurant-landing .mag-filters { gap: 20px; }
    .restaurant-landing .mag-filter { font-size: 12px; }
    .restaurant-landing .article-body { font-size: 16px; line-height: 2.1; }
    .restaurant-landing .article-lead { font-size: 16px; }
    .restaurant-landing .lp-footer-bottom { font-size: 10px; }
}
@media (max-width: 359px) {
    .restaurant-landing .lp-header-actions { gap: 4px; }
    .restaurant-landing .lp-brand strong { font-size: 15px; }
    .restaurant-landing .lp-brand img { width: 26px; height: 26px; }
    .restaurant-landing .lp-header-cta { font-size: 10px; padding-inline: 8px; }
}
@media (max-height: 425px) and (max-width: 1023px) { .restaurant-landing .lp-header { position: relative; } }
@media (prefers-reduced-motion: reduce) { .restaurant-landing .mag-card { transition: none; } }
