@media (max-width: 1100px) {
  .h-desktop-nav { gap: 18px; }
  .h-menu { gap: 22px; }
  .h-hero-hours { display: none; }
}

@media (max-width: 880px) {
  :root { --h-gutter: 22px; --h-section-pad: clamp(82px, 11vh, 120px); }
  body { padding-bottom: 64px; }
  .h-desktop-nav { display: none; }
  .h-mobile-toggle { display: flex; }
  .h-split, .h-card-grid, .h-wines, .h-footer__grid { grid-template-columns: 1fr; }
  .h-section-intro { margin-bottom: 48px; }
  .h-hero__content { padding-bottom: 86px; }
  .h-hero__title { font-size: clamp(44px, 11vw, 72px); }
  .h-hero__scroll { display: none; }
  .h-intro__quote { left: 16px; }
  .h-gallery__grid { grid-template-columns: repeat(2, 1fr); }
  .h-gallery__item--1 { grid-column: span 2; grid-row: span 2; }
  .h-gallery__item--4 { grid-column: span 2; }
  .h-footer__grid { gap: 44px; }
  .h-mobile-bar { position: fixed; inset: auto 0 0; z-index: 80; display: flex; align-items: stretch; border-top: 1px solid rgba(var(--h-ink), .1); background: rgba(15,11,9,.95); backdrop-filter: blur(14px); }
  .h-mobile-bar a { flex: 1; display: flex; align-items: center; justify-content: center; padding: 10px; color: rgba(var(--h-ink), .75); text-decoration: none; font-size: 11px; letter-spacing: .04em; }
  .h-mobile-bar .h-mobile-bar__primary { flex: 1.4; margin: 8px; border-radius: 30px; background: var(--h-primary); color: var(--h-dark-ink); font-size: 12px; font-weight: 600; letter-spacing: .06em; text-transform: uppercase; }
}

@media (max-width: 620px) {
  .h-button-row { align-items: stretch; }
  .h-button-row .h-button { width: 100%; }
  .h-form__grid { grid-template-columns: 1fr; gap: 0; }
  .h-gallery__grid { grid-auto-rows: 170px; }
  .h-gallery__item--1 { grid-row: span 2; }
  .h-timeline::before { left: 72px; }
  .h-timeline__item { grid-template-columns: 60px 1fr; gap: 26px; }
  .h-timeline__year { font-size: 22px; }
  .h-timeline__year span { right: -19px; top: 8px; }
  .h-stats { gap: 28px; }
  .h-stat strong { font-size: 40px; }
  .h-footer__bottom { align-items: flex-start; flex-direction: column; }
}
