/* Add after the owner's existing styles. All changes activate only with the module. */
html[data-gm-wayfinding] { scroll-padding-top: var(--gm-header-offset, 10rem); }
html[data-gm-wayfinding] body { font-size: 1rem; }
[data-gm-wayfinding] main h1 { overflow-wrap: normal; }
[data-gm-wayfinding] :is(a,button,summary,input,select):focus-visible { outline: 3px solid #916a2b; outline-offset: 4px; }
[data-gm-wayfinding] .gm-icon { width: 24px; height: 24px; flex: 0 0 24px; display: block; }
[data-gm-wayfinding] .gm-header { position: sticky; top: 0; z-index: 100; display: flex; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 16px; padding: 13px 4%; background: #f7f4ee; color: #183b2c; border-bottom: 1px solid #bfc6bc; box-shadow: 0 3px 12px #183b2c0a; }
[data-gm-wayfinding] .gm-header .site-logo { flex: 0 0 156px; }
[data-gm-wayfinding] .gm-header .site-logo img { width: 156px; max-height: 68px; }
[data-gm-wayfinding] .gm-header .gm-nav { margin-left: auto; display: flex; gap: 3px; flex-wrap: nowrap; align-items: center; width: auto; }
[data-gm-wayfinding] .gm-header .gm-nav > a,
[data-gm-wayfinding] .gm-explore > summary { font: 600 1rem/1.3 Georgia, serif; padding: 13px 10px; min-height: 48px; display: flex; align-items: center; gap: 7px; border: 0; border-radius: 5px; color: #183b2c; text-transform: none; letter-spacing: 0; white-space: nowrap; text-decoration: none; }
[data-gm-wayfinding] .gm-header .gm-nav > a > svg { display: none; }
[data-gm-wayfinding] .gm-header .gm-nav > a[aria-current] { color: #183b2c; background: #e6eadf; box-shadow: inset 0 -3px #183b2c; }
[data-gm-wayfinding] .gm-explore { position: relative; }
[data-gm-wayfinding] .gm-explore > summary .gm-icon { width: 16px; height: 16px; flex-basis: 16px; transition: transform 160ms ease; }
[data-gm-wayfinding] .gm-explore[open] > summary .gm-icon { transform: rotate(180deg); }
[data-gm-wayfinding] .gm-explore-panel { position: absolute; right: 0; top: calc(100% + 12px); width: min(620px, 88vw); padding: 22px; display: grid; grid-template-columns: 1fr 1fr; gap: 20px; border: 1px solid #c2c8bd; border-radius: 8px; background: #f7f4ee; box-shadow: 0 16px 30px #183b2c24; animation: gm-enter 160ms ease; }
[data-gm-wayfinding] .gm-nav-group > p { font: 700 .875rem/1.4 Arial,sans-serif; margin: 0 0 8px; padding: 6px 10px; color: #526456; }
[data-gm-wayfinding] .gm-header .gm-nav-group a { display: flex; align-items: flex-start; gap: 12px; min-height: 64px; padding: 12px 10px; border-radius: 4px; font: 600 1rem/1.3 Georgia,serif; color: #183b2c; letter-spacing: 0; text-transform: none; }
[data-gm-wayfinding] .gm-link-copy small { display: block; font: 400 .875rem/1.45 Arial,sans-serif; margin-top: 4px; color: #496050; white-space: normal; }
[data-gm-wayfinding] .gm-header .gm-order { display: flex; align-items: center; justify-content: center; gap: 9px; padding: 13px 16px; min-height: 48px; border-radius: 5px; background: #183b2c; color: #fffdf6; font: 700 .9375rem/1.3 Arial,sans-serif; text-decoration: none; }
[data-gm-wayfinding] .gm-nav-toggle { display: none; }
[data-gm-wayfinding] .gm-nav a:hover,
[data-gm-wayfinding] .gm-explore > summary:hover { background: #e6eadf; box-shadow: none; text-decoration: none; }
[data-gm-wayfinding] .gm-breadcrumb { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; padding: 20px 0; font: 400 .875rem/1.5 Arial,sans-serif; color: #456052; letter-spacing: 0; }
[data-gm-wayfinding] main > .gm-breadcrumb { padding-left: 6%; padding-right: 6%; }
[data-gm-wayfinding] main.menu-app > .gm-breadcrumb,
[data-gm-wayfinding] main.social-main > .gm-breadcrumb { padding-left: 0; padding-right: 0; }
[data-gm-wayfinding] .gm-breadcrumb > * + *::before { content: '/'; margin-right: 8px; color: #8a998b; }
[data-gm-wayfinding] .gm-breadcrumb a { text-decoration: underline; text-underline-offset: 3px; }
[data-gm-wayfinding] .gm-breadcrumb [aria-current] { color: #183b2c; font-weight: 700; }
[data-gm-wayfinding] .gm-page-intro { font: 400 1.125rem/1.6 Georgia,serif; max-width: 44rem; margin: 18px 0 24px; color: #3c5947; text-transform: none; letter-spacing: 0; }
[data-gm-wayfinding] .gm-on-page { display: flex; align-items: center; flex-wrap: wrap; gap: 8px 18px; margin: 22px 0; padding: 16px 0; border-top: 1px solid #c6cdbe; border-bottom: 1px solid #c6cdbe; font: 400 .9375rem/1.5 Arial,sans-serif; }
[data-gm-wayfinding] .gm-on-page > span { font-weight: 700; width: 100%; }
[data-gm-wayfinding] .gm-on-page a { text-decoration: underline; text-underline-offset: 4px; padding: 7px 0; }
[data-gm-wayfinding] main :is(h2,[id]) { scroll-margin-top: 16px; }
[data-gm-wayfinding] .gm-quick-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-block: 1px solid #bec8b9; margin: 0 6%; }
[data-gm-wayfinding] .gm-quick-links > a { display: flex; align-items: center; gap: 18px; padding: 25px 18px; color: #183b2c; font: 700 1.25rem/1.25 Georgia,serif; text-decoration: none; transition: background 160ms ease; }
[data-gm-wayfinding] .gm-quick-links > a + a { border-left: 1px solid #bec8b9; }
[data-gm-wayfinding] .gm-quick-links .gm-icon { width: 36px; height: 36px; flex-basis: 36px; }
[data-gm-wayfinding] .gm-quick-links > a:hover { background: #e6eadf; }
[data-gm-wayfinding] .gm-discover { padding: 50px 6%; display: grid; grid-template-columns: .65fr 1.35fr; gap: 32px; align-items: center; border-top: 1px solid #bec8b9; }
[data-gm-wayfinding] .gm-discover h2 { font-size: clamp(2rem,3vw,3rem); margin-top: 10px; }
[data-gm-wayfinding] .gm-discover-links { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
[data-gm-wayfinding] .gm-discover-links a { display: flex; flex-direction: column; gap: 16px; padding: 20px 16px; border: 1px solid #bec8b9; border-radius: 6px; font: 700 1.125rem/1.3 Georgia,serif; text-decoration: none; transition: transform 160ms ease, background 160ms ease; }
[data-gm-wayfinding] .gm-discover-links a:hover { transform: translateY(-3px); background: #e6eadf; }
[data-gm-wayfinding] .gm-discover .gm-icon { width: 32px; height: 32px; }
[data-gm-wayfinding] .customer-footer > nav { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; }
[data-gm-wayfinding] .gm-footer-group { display: flex; flex-direction: column; align-items: flex-start; gap: 9px; }
[data-gm-wayfinding] .gm-footer-group > p { font: 700 .875rem/1.4 Arial,sans-serif; color: #d2c18f; margin-bottom: 3px; }
[data-gm-wayfinding] .gm-footer-group > a { font-size: 1rem; line-height: 1.4; padding: 3px 0; }
[data-gm-wayfinding] .home-page .hero { min-height: 0; }
[data-gm-wayfinding] .home-page .hero-copy { padding-block: 38px; }
[data-gm-wayfinding] .home-page .hero h1 { font-size: clamp(3rem,5vw,4.75rem); }
[data-gm-wayfinding] .home-page .heritage-strip { padding-block: 12px; }
[data-gm-wayfinding] .menu-page .menu-title { font-size: clamp(2.5rem,4vw,3.75rem); margin: 12px 0; }
[data-gm-wayfinding] .menu-page .menu-title br { display: none; }
[data-gm-wayfinding] .menu-page #menu-neighborhood::after { content: ' '; }
[data-gm-wayfinding] .menu-page .menu-app { padding-top: 0; }
[data-gm-wayfinding] .menu-page .menu-controls { padding: 20px; background: #e6eadf; border: 1px solid #b8c5b5; border-radius: 6px; }
[data-gm-wayfinding] .menu-page .menu-controls :is(input,select) { background: #fffdf8; min-height: 48px; font-size: 1rem; }
[data-gm-wayfinding] .menu-page .menu-controls label { display: block; font-size: 1rem; font-weight: 700; margin-bottom: 8px; }
[data-gm-wayfinding] .category-filters button { min-height: 44px; font-size: .9375rem; }
@keyframes gm-enter { from { opacity: .25; transform: translateY(-5px); } to { opacity: 1; transform: translateY(0); } }
@media (max-width: 1259px) {
  [data-gm-wayfinding] .gm-header { gap: 8px 12px; padding: 12px 5%; }
  [data-gm-wayfinding] .gm-header .site-logo { flex: 1 1 140px; }
  [data-gm-wayfinding] .gm-header .site-logo img { width: 145px; max-height: 62px; }
  [data-gm-wayfinding] .gm-nav-toggle { display: flex; align-items: center; justify-content: center; gap: 8px; width: 100%; padding: 10px 14px; min-height: 44px; border: 1px solid #9daf9c; border-radius: 5px; background: transparent; color: #183b2c; font: 700 .9375rem/1.4 Arial,sans-serif; }
  [data-gm-wayfinding] .gm-header .gm-order { padding: 12px; }
[data-gm-wayfinding] .gm-header .gm-nav { display: none; order: 5; width: 100%; max-height: calc(100dvh - 165px); overflow-y: auto; padding: 8px 0 16px; align-items: stretch; }
  [data-gm-wayfinding] .gm-header.gm-menu-open .gm-nav { display: flex; flex-direction: column; animation: gm-enter 160ms ease; }
  [data-gm-wayfinding] .gm-header .gm-nav > a { gap: 14px; padding: 14px 12px; border-bottom: 1px solid #d0d8ca; font-size: 1.125rem; white-space: normal; }
  [data-gm-wayfinding] .gm-header .gm-nav > a > svg { display: block; }
  [data-gm-wayfinding] .gm-explore > summary { padding: 14px 12px; font-size: 1.125rem; }
  [data-gm-wayfinding] .gm-explore-panel { position: static; width: 100%; padding: 6px 0 12px; box-shadow: none; border: 0; grid-template-columns: 1fr; gap: 16px; }
  [data-gm-wayfinding] .gm-quick-links { margin-inline: 5%; }
  [data-gm-wayfinding] .gm-quick-links > a { padding: 20px 12px; gap: 12px; font-size: 1.125rem; }
  [data-gm-wayfinding] .gm-discover { grid-template-columns: 1fr; }
}
html[data-gm-wayfinding]:not(.gm-interactive) .gm-nav-toggle { display: none; }
html[data-gm-wayfinding]:not(.gm-interactive) .gm-header .gm-nav { display: flex; flex-wrap: wrap; }
[data-gm-wayfinding] .gm-header .gm-nav > a.gm-merch-link { white-space: nowrap; }
[data-gm-wayfinding] .gm-header .gm-nav > a small { font: 400 .75rem/1.3 Arial,sans-serif; margin-top: 2px; }
[data-gm-wayfinding] .gm-page-intro { margin-inline: 0; }
[data-gm-wayfinding] .next-intro .gm-page-intro,
[data-gm-wayfinding] .community-intro .gm-page-intro { margin-inline: auto; }
[data-gm-wayfinding] main.collection-main > .gm-breadcrumb,
[data-gm-wayfinding] main.editorial-main > .gm-breadcrumb,
[data-gm-wayfinding] main.arcade-main > .gm-breadcrumb { padding-inline: 0; }
[data-gm-wayfinding] .home-page .hero-oven { height: auto; min-height: 0; }
[data-gm-wayfinding] .collection-heading h1 { font-size: clamp(2.6rem,5vw,4.5rem); }
[data-gm-wayfinding] .gm-on-page { text-align: left; }
[data-gm-wayfinding] .gm-on-page a { min-height: 44px; display: inline-flex; align-items: center; }
[data-gm-wayfinding] .gm-explore-panel .gm-link-copy { min-width: 0; }
[data-gm-wayfinding] .gm-explore-panel a[aria-current=page] { background: #e6eadf; box-shadow: inset 3px 0 #183b2c; }
@media (max-width: 640px) {
  [data-gm-wayfinding] .gm-quick-links { grid-template-columns: 1fr; }
  [data-gm-wayfinding] .gm-quick-links > a + a { border-left: 0; border-top: 1px solid #bec8b9; }
  [data-gm-wayfinding] .gm-quick-links > a { padding: 18px 8px; }
  [data-gm-wayfinding] .gm-quick-links .gm-icon { width: 28px; height: 28px; flex-basis: 28px; }
  [data-gm-wayfinding] .gm-discover-links { grid-template-columns: 1fr; }
  [data-gm-wayfinding] .gm-discover-links a { flex-direction: row; align-items: center; gap: 18px; padding: 18px; }
  [data-gm-wayfinding] .gm-page-intro { font-size: 1.0625rem; }
  [data-gm-wayfinding] .home-page .hero h1 { font-size: clamp(2.9rem,11vw,3.8rem); }
  [data-gm-wayfinding] .home-page .hero-copy { padding-top: 24px; padding-bottom: 24px; }
  [data-gm-wayfinding] .home-page .hero-photo { min-height: 0; height: 230px; }
}
@media (prefers-reduced-motion: reduce) {
  [data-gm-wayfinding] *, [data-gm-wayfinding] *::before, [data-gm-wayfinding] *::after { animation: none !important; transition: none !important; scroll-behavior: auto !important; }
}
.motion-paused[data-gm-wayfinding] * { animation: none !important; transition: none !important; }

/* Generated raster artwork replaces the earlier decorative outline drawings. */
[data-gm-wayfinding] .gm-nav-art { display: block; width: 64px; height: 64px; flex: 0 0 64px; object-fit: contain; background: transparent; border: 0; }
[data-gm-wayfinding] .gm-header .gm-nav > a > .gm-nav-art { display: none; }
[data-gm-wayfinding] .gm-header .gm-order > .gm-nav-art { width: 36px; height: 36px; flex-basis: 36px; }
[data-gm-wayfinding] .gm-header .gm-order { padding-block: 9px; }
[data-gm-wayfinding] .gm-header .gm-nav-group a { align-items: center; gap: 12px; }
[data-gm-wayfinding] .gm-nav-group .gm-nav-art { width: 60px; height: 60px; flex-basis: 60px; }
[data-gm-wayfinding] .gm-menu-caret { font: 700 21px/1 Arial,sans-serif; display: inline-block; transition: transform 160ms ease; }
[data-gm-wayfinding] .gm-explore[open] > summary .gm-menu-caret { transform: rotate(180deg); }
[data-gm-wayfinding] .gm-quick-links > a { flex-direction: column; align-items: flex-start; gap: 12px; padding: 22px 26px 28px; }
[data-gm-wayfinding] .gm-quick-links .gm-nav-art { width: 116px; height: 116px; flex-basis: 116px; margin: 0 0 2px; }
[data-gm-wayfinding] .gm-discover-links .gm-nav-art { width: 100px; height: 100px; flex-basis: 100px; align-self: center; }
[data-gm-wayfinding] .gm-discover-links a { min-width: 0; }
[data-gm-wayfinding] .gm-quick-links .gm-link-copy,
[data-gm-wayfinding] .gm-discover-links .gm-link-copy { min-width: 0; }
@media (max-width: 1259px) {
  [data-gm-wayfinding] .gm-header .gm-nav > a > .gm-nav-art { display: block; width: 52px; height: 52px; flex-basis: 52px; }
  [data-gm-wayfinding] .gm-header .gm-nav > a { padding-block: 9px; }
}
@media (max-width: 640px) {
  [data-gm-wayfinding] .gm-quick-links > a { flex-direction: row; align-items: center; gap: 18px; padding: 15px 4px; }
  [data-gm-wayfinding] .gm-quick-links .gm-nav-art { width: 90px; height: 90px; flex-basis: 90px; margin: 0; }
  [data-gm-wayfinding] .gm-discover-links .gm-nav-art { width: 88px; height: 88px; flex-basis: 88px; }
  [data-gm-wayfinding] .gm-discover-links a { padding: 15px 12px; gap: 14px; }
  [data-gm-wayfinding] .gm-header .gm-order > .gm-nav-art { display: none; }
}
@media (max-width: 380px) {
  [data-gm-wayfinding] .community-page .community-intro h1 {
    font-size: clamp(1.75rem, 9.5vw, 2.25rem);
    line-height: 1.12;
    max-width: 100%;
    overflow-wrap: anywhere;
    word-break: normal;
  }
}
