/* widget: mr-menu-hero (+ sticky .mr-menu-tabs) */
.mr-menu-hero { padding-top: calc(var(--mr-nav-h) + 9px); background: var(--mr-white); }
.mr-menu-hero__head { gap: 22px; max-width: 768px; }
.mr-menu-hero__head .mr-lead { max-width: 768px; }
.mr-menu-hero__head .mr-btn { margin-top: 1px; }

.mr-menu-hero__bento { display: grid; grid-template-columns: 662fr 466fr; gap: 24px; margin-top: 64px; }
.mr-menu-hero__main { position: relative; overflow: hidden; border-radius: var(--mr-radius-lg); min-height: 600px; background: var(--mr-sand-2); }
.mr-menu-hero__main img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform 1.4s var(--mr-ease); }
.mr-menu-hero__main:hover img { transform: scale(1.03); }
.mr-menu-hero__tag {
  position: absolute; left: 24px; bottom: 24px; display: flex; flex-direction: column; gap: 3px;
  padding: 16px; border-radius: var(--mr-radius); border: 1px solid rgba(139, 114, 103, .1);
  background: rgba(235, 225, 211, .9); -webkit-backdrop-filter: blur(8px); backdrop-filter: blur(8px);
}
.mr-menu-hero__tag-name { font-family: var(--mr-font-display); font-weight: 600; font-size: 1.125rem; line-height: 1.6; color: var(--mr-ink); }
.mr-menu-hero__side { display: grid; grid-template-rows: 1fr 1fr; gap: 24px; }
.mr-menu-hero__small { overflow: hidden; border-radius: var(--mr-radius-lg); background: var(--mr-sand-2); min-height: 288px; }
.mr-menu-hero__small img { width: 100%; height: 100%; object-fit: cover; }
.mr-menu-hero__card {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 8px; text-align: center;
  padding: 32px; border-radius: var(--mr-radius-lg); background: var(--mr-card); border: 1px solid rgba(139, 114, 103, .2);
}
.mr-menu-hero__card svg { width: 36px; height: 36px; color: var(--mr-primary); }
.mr-menu-hero__card .mr-h3 { padding-top: 8px; }
.mr-menu-hero__card p { max-width: 351px; }
.mr-menu-hero__wave { margin-block: 32px 32px; }

/* sticky section tabs */
.mr-menu-tabs {
  position: sticky; top: var(--mr-nav-h); z-index: 20;
  background: rgba(255, 248, 241, .95); border-bottom: 1px solid var(--mr-sand);
  -webkit-backdrop-filter: blur(24px); backdrop-filter: blur(24px);
}
.mr-menu-tabs__inner { display: flex; gap: 32px; padding-block: 16px; overflow-x: auto; scrollbar-width: none; }
.mr-menu-tabs__inner::-webkit-scrollbar { display: none; }
.mr-menu-tabs a {
  flex: none; padding-bottom: 4px; border-bottom: 2px solid transparent;
  color: var(--mr-text); text-decoration: none;
  font-family: var(--mr-font-label); font-size: var(--mr-label); font-weight: 700; line-height: 15px; letter-spacing: .1em; text-transform: uppercase;
  transition: color .2s, border-color .2s;
}
.mr-menu-tabs a:hover { color: var(--mr-primary); }
.mr-menu-tabs a[aria-current="true"] { color: var(--mr-primary); border-color: var(--mr-primary); }

/* anchors land below nav + sticky tabs */
html:has(.mr-menu-tabs) { scroll-padding-top: calc(var(--mr-nav-h) + 80px); }

@media (max-width: 900px) {
  .mr-menu-hero__bento { grid-template-columns: 1fr; }
  .mr-menu-hero__main { min-height: 0; aspect-ratio: 4 / 3.4; }
  .mr-menu-hero__side { grid-template-rows: auto; grid-template-columns: 1fr 1fr; }
  .mr-menu-hero__small { min-height: 220px; }
}
@media (max-width: 600px) {
  .mr-menu-hero__side { grid-template-columns: 1fr; }
  .mr-menu-hero__tag { left: 16px; bottom: 16px; }
  .mr-menu-tabs__inner { gap: 24px; }
}
