/* Original Webflow header layout and dropdown styles are preserved. */
.gw-main-nav a:focus-visible{outline:2px solid #bd9556;outline-offset:3px}

/* Shared header brand: original monogram, proportional at every breakpoint. */
.rt-navabar-v2-brand .rt-navabr-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  min-height: 48px;
  max-width: 100%;
}
.rt-navabar-v2-brand .gregsomm-header-logo {
  display: block;
  flex: 0 0 auto;
  width: auto;
  height: 48px;
  max-width: none;
  object-fit: contain;
}
@media (max-width: 991px) {
  .rt-navabar-v2-brand .rt-navabr-brand { gap: 10px; min-height: 44px; }
  .rt-navabar-v2-brand .gregsomm-header-logo { height: 42px; }
}
@media (max-width: 479px) {
  .rt-navabar-v2-brand .rt-navabr-brand { gap: 8px; }
  .rt-navabar-v2-brand .gregsomm-header-logo { height: 36px; }
  .rt-navabar-v2-brand .gregsomm-wordmark-main { font-size: 18px; }
  .rt-navabar-v2-brand .gregsomm-wordmark { gap: 6px; }
}
@media (max-width: 359px) {
  .rt-navabar-v2-brand .gregsomm-header-logo { height: 32px; }
  .rt-navabar-v2-brand .rt-navabr-brand { gap: 6px; }
  .rt-navabar-v2-brand .gregsomm-wordmark-main { font-size: 16px; }
  .rt-navabar-v2-brand .gregsomm-wordmark-sub { font-size: 7px; }
}

/* Footer counterpart of the shared header brand. */
.rt-footer-v2-main > .rt-footer-v2-box:first-child { min-width: 0; }
a.gregsomm-footer-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  width: max-content;
  height: auto;
  max-width: none;
  min-height: 48px;
}
.gregsomm-footer-brand .gregsomm-footer-logo {
  display: block;
  flex: 0 0 auto;
  width: auto;
  height: 48px;
  max-width: none;
  object-fit: contain;
}
.gregsomm-footer-brand .gregsomm-wordmark-footer { flex: 0 0 auto; }
@media (max-width: 991px) {
  a.gregsomm-footer-brand { gap: 10px; min-height: 44px; }
  .gregsomm-footer-brand .gregsomm-footer-logo { height: 42px; }
}
@media (max-width: 479px) {
  a.gregsomm-footer-brand { gap: 8px; }
  .gregsomm-footer-brand .gregsomm-footer-logo { height: 36px; }
  .gregsomm-footer-brand .gregsomm-wordmark-footer-main { font-size: 18px; }
  .gregsomm-footer-brand .gregsomm-wordmark-footer { gap: 6px; }
}
@media (max-width: 359px) {
  .gregsomm-footer-brand .gregsomm-footer-logo { height: 32px; }
  .gregsomm-footer-brand .gregsomm-wordmark-footer-main { font-size: 16px; }
  .gregsomm-footer-brand .gregsomm-wordmark-footer-sub { font-size: 7px; }
}

/* Mobile account entry */
.rt-navbar-contact.gw-header-account {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  white-space: nowrap;
}
.gw-header-account img { flex: 0 0 20px; width: 20px; height: 20px; }
.gw-header-account:focus-visible { outline: 2px solid #bd9556; outline-offset: 2px; }
@media (max-width: 991px) {
  .rt-navbar-v1-contact-wrap.gw-header-account-wrap { display: flex; flex: 0 0 auto; }
  .gw-header-account .gw-header-account-label { display: none; }
  .rt-navbar-contact.gw-header-account { width: 44px; height: 44px; gap: 0; }
  .rt-navbar-v2-link-wrap { gap: 0; padding-top: 0; align-items: center; }
  .rt-navbar-v2-link-wrap .rt-cart-button { display: flex; align-items: center; justify-content: center; width: 44px; height: 44px; }
  .rt-navbar-v2-link-wrap .rt-navbar-v2-icon-wrap { width: 35px; height: 35px; }
  .rt-navbar-v2-link-wrap .rt-menu-button-main {
    box-sizing: border-box; width: 44px; height: 44px; padding: 13px 11px 7px;
  }
  .rt-navbar-v2-main { min-height: 69px; column-gap: 8px; }
}
@media (max-width: 359px) {
  .rt-navbar-contact.gw-header-account,
  .rt-navbar-v2-link-wrap .rt-cart-button,
  .rt-navbar-v2-link-wrap .rt-menu-button-main { width: 32px; }
  .rt-navbar-v2-link-wrap .rt-navbar-v2-icon-wrap { width: 32px; height: 32px; }
  .rt-navbar-v2-link-wrap .rt-menu-button-main { padding-right: 5px; padding-left: 5px; }
}

@media (min-width: 360px) and (max-width: 389px) {
  .rt-navbar-contact.gw-header-account,
  .rt-navbar-v2-link-wrap .rt-cart-button,
  .rt-navbar-v2-link-wrap .rt-menu-button-main { width: 36px; }
  .rt-navbar-v2-link-wrap .rt-menu-button-main { padding-right: 7px; padding-left: 7px; }
}
