.restaurant-page { --festival-hero-background: radial-gradient(circle at 86% 14%,rgba(255,255,255,.98),transparent 27%),radial-gradient(circle at 7% 95%,rgba(255,188,128,.42),transparent 29%),linear-gradient(125deg,#fff3e4 0%,#ffe2c5 53%,#fff5e9 100%); }
:where(.restaurant-page) .festival-hero { border-color: #f0d7bc; }
.restaurant-page .festival-hero-copy>span,.restaurant-page .festival-explorer-heading>div>span{color:#a45732}
.restaurant-page .festival-hero-copy h1 em{color:#a65d38}
.restaurant-page .lodging-type-filter button.is-active{background:#9d5938;border-color:#9d5938;color:#fff}
.restaurant-card .festival-kind{background:#fff5e6;color:#8a5331}
.restaurant-card .festival-card-copy>small{color:#a45732}
.restaurant-page .lodging-hero-visual>div{background:#f6e4d0}
.restaurant-detail-dialog .festival-detail-media img{max-height:560px}
.restaurant-detail-dialog .festival-detail-facts dd{white-space:pre-line;overflow-wrap:anywhere}
.restaurant-page .lodging-filter-panel{grid-template-columns:160px 190px minmax(0,1fr) auto}
.restaurant-page .lodging-type-filter{grid-column:1/-1}
.restaurant-page .lodging-type-filter>div{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));padding:4px;overflow:visible}
.restaurant-page .lodging-type-filter button{min-width:0;min-height:48px;display:flex;align-items:center;justify-content:center;gap:7px;padding:10px 8px;white-space:nowrap}
.restaurant-page .lodging-type-filter button>span{font-size:inherit}
.restaurant-page .lodging-type-filter button>.restaurant-category-icon{font-size:20px;line-height:1;flex-shrink:0}
.restaurant-page .festival-search-filter>div{grid-template-columns:20px minmax(0,1fr);padding:0 14px;gap:10px}
.restaurant-page .festival-search-filter input{padding:12px 0;font-size:16px;line-height:1.5}
.restaurant-page .festival-filter-reset{grid-column:4}
.restaurant-page .festival-region-filter select:disabled{color:#81868b;cursor:not-allowed;background:#f1efeb}
.mobile-bottom-nav .mobile-restaurant-icon{width:23px;height:23px;flex-shrink:0}
@media(max-width:900px){.restaurant-page .lodging-filter-panel{grid-template-columns:repeat(2,minmax(0,1fr))}.restaurant-page .lodging-type-filter>div{grid-template-columns:repeat(4,minmax(0,1fr))}.restaurant-page .festival-search-filter{grid-column:1/-1}.restaurant-page .festival-filter-reset{grid-column:2;justify-self:end}}
@media(max-width:600px){.restaurant-page .lodging-filter-panel{grid-template-columns:minmax(0,1fr) auto}.restaurant-page .lodging-type-filter>div{grid-template-columns:repeat(3,minmax(0,1fr))}.restaurant-page .lodging-type-filter button{gap:5px;font-size:13px}.restaurant-page .festival-region-filter{grid-column:1/-1}.restaurant-page .festival-search-filter{grid-column:1/-1}.restaurant-page .festival-filter-reset{grid-column:2;justify-self:end}}
@media(max-width:700px){.restaurant-detail-dialog .lodging-primary-actions{display:flex;flex-direction:column;align-items:stretch}.restaurant-detail-dialog .lodging-nearby-list a{min-width:0}.restaurant-detail-dialog .festival-detail-media img{max-height:320px}.restaurant-page .festival-counts dt{font-size:28px}}

.restaurant-bottom-ads { margin: 40px 0 0; display: grid; gap: 24px; }
.restaurant-bottom-ads .ad-shell, .restaurant-bottom-ads .kakao-ad-shell { width: 100%; margin: 0; }
