/* Panda footer only. Restaurant details remain in the active CMS footer. */
footer.panda-site-footer.wp-block-template-part {
	--pf-ink: #17120e;
	--pf-paper: #f7f1e4;
	--pf-gold: #e2c275;
	--pf-crimson: #b23a2e;
	--pf-muted: #c3b8a6;
	margin-block-start: 0;
	padding: 0;
	border-top: 3px solid var(--pf-crimson);
	background: var(--pf-ink) !important;
	color: var(--pf-paper);
	font-family: Inter, Arial, sans-serif;
}
footer.panda-site-footer.wp-block-template-part *, footer.panda-site-footer.wp-block-template-part *::before, footer.panda-site-footer.wp-block-template-part *::after { box-sizing: border-box; }
footer.panda-site-footer.wp-block-template-part a { color: inherit; text-decoration: none; }
footer.panda-site-footer.wp-block-template-part a:hover { color: var(--pf-gold); }
footer.panda-site-footer.wp-block-template-part :focus-visible { outline: 2px solid var(--pf-gold); outline-offset: 6px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-intro,
footer.panda-site-footer.wp-block-template-part .panda-footer-native { width: min(1160px, calc(100% - 96px)); max-width: none; margin-inline: auto; }
footer.panda-site-footer.wp-block-template-part .panda-footer-intro {
	display: grid;
	grid-template-columns: 150px minmax(0, 1fr) auto;
	align-items: center;
	gap: 48px;
	padding-block: 62px 52px;
	border-bottom: 1px solid rgba(226,194,117,.24);
}
footer.panda-site-footer.wp-block-template-part .panda-footer-brand {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 150px;
	min-height: 145px;
	padding: 15px 12px;
	border: 1px solid rgba(226,194,117,.28);
	border-radius: 3px;
	background: #fff;
}
footer.panda-site-footer.wp-block-template-part .panda-footer-logo { display: block; width: 124px; height: auto; margin: 0; }
footer.panda-site-footer.wp-block-template-part p.panda-footer-eyebrow { margin: 0 0 17px; color: var(--pf-gold); font: 400 10px/1.6 Inter, Arial, sans-serif; letter-spacing: .17em; text-transform: uppercase; }
footer.panda-site-footer.wp-block-template-part .panda-footer-eyebrow [lang] { font-family: 'Noto Serif SC', serif; }
footer.panda-site-footer.wp-block-template-part .panda-footer-invitation h2 { margin: 0; color: var(--pf-paper); font: 400 clamp(35px, 3.4vw, 51px)/1.12 Georgia, 'Noto Serif SC', serif; letter-spacing: -.035em; }
footer.panda-site-footer.wp-block-template-part .panda-footer-invitation h2 em { color: #d9be88; font-weight: 400; }
footer.panda-site-footer.wp-block-template-part .panda-footer-actions { display: flex; flex-direction: column; align-items: stretch; gap: 16px; min-width: 190px; padding-top: 8px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-menu-link { display: flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 52px; padding: 13px 21px; border: 1px solid var(--pf-crimson); border-radius: 3px; color: #fff8ed; background: var(--pf-crimson); font-size: 13px; font-weight: 500; }
footer.panda-site-footer.wp-block-template-part .panda-footer-menu-link:hover { border-color: #c54c40; color: #fff8ed; background: #c54c40; }
footer.panda-site-footer.wp-block-template-part .panda-footer-book-link { display: flex; align-items: center; justify-content: space-between; gap: 30px; min-height: 36px; padding: 0 2px 7px; border-bottom: 1px solid rgba(226,194,117,.5); color: var(--pf-paper); font-size: 12px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-actions a > span { line-height: 1; }
footer.panda-site-footer.wp-block-template-part .panda-footer-arrow { position: relative; display: block; flex: 0 0 14px; width: 14px; height: 14px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-arrow::before { content: ''; position: absolute; top: 7px; left: 0; width: 14px; height: 1px; background: currentColor; transform: rotate(-45deg); }
footer.panda-site-footer.wp-block-template-part .panda-footer-arrow::after { content: ''; position: absolute; top: 1px; right: 1px; width: 9px; height: 9px; border-top: 1px solid currentColor; border-right: 1px solid currentColor; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native > .wp-block-group,
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-group {
	max-width: none;
	margin: 0;
	padding: 0 !important;
	background: transparent !important;
}
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-columns {
	display: grid;
	grid-template-columns: minmax(0, 1.2fr) minmax(0, 1fr);
	gap: 110px;
	align-items: start;
	max-width: none;
	margin: 0;
	padding: 43px 0 44px;
}
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column { min-width: 0; margin: 0; text-align: left; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column .wp-block-group { display: block; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native p { margin: 0 0 17px; color: var(--pf-muted); font-size: 14px; line-height: 1.9; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native p > strong { color: var(--pf-gold); font-size: 11px; font-weight: 500; letter-spacing: .14em; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column:last-child p:first-child { margin-top: 4px; margin-bottom: 25px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column:last-child p:not(:first-child) { margin-bottom: 17px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column a { display: inline; padding-block: 4px; overflow-wrap: anywhere; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column a:hover { text-decoration: underline; text-underline-offset: 5px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-open-status {
	display: flex;
	align-items: center;
	gap: 8px;
	width: fit-content;
	max-width: 100%;
	margin: 0 0 25px;
	padding: 8px 11px;
	border: 1px solid rgba(226,194,117,.23);
	border-radius: 3px;
	background: rgba(226,194,117,.055);
	color: #e2cda5;
	font-size: 11px;
	line-height: 1.6;
	letter-spacing: .01em;
}
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-open-status .panda-open-dot { flex: 0 0 6px; width: 6px; height: 6px; margin: 0; background: #c87967; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-open-status.is-open .panda-open-dot { background: #9bae7c; }
footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list { max-width: 470px; margin: 0; }
footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list > div { display: flex; align-items: baseline; justify-content: space-between; gap: 24px; padding: 6px 0; border-bottom: 1px solid rgba(247,241,228,.075); color: var(--pf-muted); font-size: 13px; line-height: 1.7; }
footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list dt { min-width: 0; font-weight: 400; }
footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list dt::first-letter { text-transform: uppercase; }
footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list dd { flex: 0 0 auto; margin: 0; color: var(--pf-paper); font-size: 13px; font-weight: 400; font-variant-numeric: tabular-nums; white-space: nowrap; }
footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list .panda-footer-hours-closed { color: #d9a599; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-image { margin: 25px 0 0; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-image img { display: block; width: 99px; height: 32px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .pixcode--separator { display: none; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native p.panda-footer-credit {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 25px;
	margin: 0;
	padding: 19px 0 24px;
	border-top: 1px solid rgba(226,194,117,.24);
	color: #a69b8b;
	font-size: 10px;
	line-height: 1.6;
	text-align: left;
	width: 100%;
	max-width: none;
	margin-inline: 0 !important;
}
footer.panda-site-footer.wp-block-template-part .panda-footer-credit-link { display: inline-flex; flex-wrap: wrap; align-items: center; gap: 8px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-credit-link a { display: inline-flex; align-items: center; gap: 8px; min-height: 30px; color: #d8ccba; white-space: nowrap; }
footer.panda-site-footer.wp-block-template-part .panda-footer-b2b-mark { display: inline-flex; align-items: center; justify-content: center; width: 30px; height: 22px; border: 1px solid rgba(226,194,117,.45); border-radius: 2px; color: var(--pf-gold); font: 600 8px/1 Inter, Arial, sans-serif; letter-spacing: -.035em; }
footer.panda-site-footer.wp-block-template-part .panda-footer-credit-arrow { transform: scale(.75); }
@media (max-width: 1050px) {
	footer.panda-site-footer.wp-block-template-part .panda-footer-intro { grid-template-columns: 125px minmax(0, 1fr) auto; gap: 30px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-brand { width: 125px; min-height: 122px; padding: 11px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-logo { width: 103px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-invitation h2 { font-size: 39px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-actions { min-width: 170px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-columns { gap: 70px; }
}
@media (max-width: 760px) {
	footer.panda-site-footer.wp-block-template-part .panda-footer-intro, footer.panda-site-footer.wp-block-template-part .panda-footer-native { width: calc(100% - 44px); }
	footer.panda-site-footer.wp-block-template-part .panda-footer-intro { grid-template-columns: minmax(0, 1fr); gap: 25px; padding: 38px 0 34px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-brand { width: 110px; min-height: 105px; padding: 10px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-logo { width: 88px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-invitation h2 { font-size: 40px; }
	footer.panda-site-footer.wp-block-template-part p.panda-footer-eyebrow { margin-bottom: 15px; font-size: 9px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-actions { display: grid; grid-template-columns: 1fr 1fr; align-items: center; gap: 22px; width: 100%; min-width: 0; max-width: 450px; padding-top: 0; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-menu-link { min-width: 0; min-height: 48px; padding: 11px 15px; gap: 15px; font-size: 12px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-book-link { gap: 15px; font-size: 12px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-columns { grid-template-columns: minmax(0, 1fr); gap: 35px; padding: 32px 0 28px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-column:last-child p:first-child { margin: 0 0 20px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-open-status { margin-bottom: 22px; font-size: 10px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list { max-width: none; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list > div, footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list dd { font-size: 12px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native .wp-block-image { margin-top: 22px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native p.panda-footer-credit { align-items: flex-start; flex-direction: column; gap: 8px; padding: 17px 0 22px; }
}
@media (max-width: 360px) {
	footer.panda-site-footer.wp-block-template-part .panda-footer-intro, footer.panda-site-footer.wp-block-template-part .panda-footer-native { width: calc(100% - 36px); }
	footer.panda-site-footer.wp-block-template-part .panda-footer-invitation h2 { font-size: 35px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-actions { gap: 18px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-menu-link { padding-inline: 12px; gap: 10px; font-size: 11px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-book-link { gap: 10px; font-size: 11px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-hours-list > div { gap: 12px; }
	footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-open-status { padding-inline: 9px; font-size: 9px; }
}
@media (prefers-reduced-motion: reduce) {
	footer.panda-site-footer.wp-block-template-part *, footer.panda-site-footer.wp-block-template-part *::before, footer.panda-site-footer.wp-block-template-part *::after { scroll-behavior: auto; transition: none; }
}

/* Editable block equivalents retain the same footer geometry. */
footer.panda-site-footer.wp-block-template-part .panda-footer-intro > .panda-footer-brand,
footer.panda-site-footer.wp-block-template-part .panda-footer-actions > p { margin: 0; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-list { max-width: 470px; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-list > .panda-footer-hours-row {
    display: flex; align-items: baseline; justify-content: space-between; gap: 24px;
    padding: 6px 0 !important; border-bottom: 1px solid rgba(247,241,228,.075);
}
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-row > p {
    min-width: 0; margin: 0 !important; color: var(--pf-muted); font-size: 13px; line-height: 1.7;
}
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-row > p:first-child::first-letter { text-transform: uppercase; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-row > p:last-child { flex: 0 0 auto; color: var(--pf-paper); font-variant-numeric: tabular-nums; white-space: nowrap; }
footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-row > p.panda-footer-hours-closed { color: #d9a599; }
@media(max-width:760px) {
    footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-list { max-width: none; }
    footer.panda-site-footer.wp-block-template-part .panda-footer-native .panda-footer-hours-row > p { font-size: 12px; }
}

footer.panda-site-footer.wp-block-template-part .panda-footer-brand a { display: block; color: #17120e; }
footer.panda-site-footer.wp-block-template-part .panda-footer-brand img { display: block; width: 124px; max-width: 100%; height: auto; margin: 0; }
@media(max-width:1050px) { footer.panda-site-footer.wp-block-template-part .panda-footer-brand img { width: 103px; } }
@media(max-width:760px) { footer.panda-site-footer.wp-block-template-part .panda-footer-brand img { width: 88px; } }
