.topbar { position: sticky; }
.header-actions { display: contents; }
.language-switch { position: absolute; z-index: 70; top: 8px; right: 16px; color: #23262b; font-size: 11px; }
.language-switch summary { min-height: 30px; padding: 4px 9px; display: flex; align-items: center; gap: 6px; list-style: none; cursor: pointer; color: #252932; background: #fff; border: 1px solid #e8e8eb; border-radius: 999px; box-shadow: 0 2px 8px #00000012; }
.language-switch summary::-webkit-details-marker { display: none; }
.language-flag { font-size: 15px; line-height: 1; }
.language-current { font-weight: 750; }
.language-chevron { color: #737984; }
.language-menu { position: absolute; top: calc(100% + 7px); right: 0; width: 176px; padding: 5px; display: grid; gap: 2px; color: #252932; background: #fff; border: 1px solid #e7e8eb; border-radius: 12px; box-shadow: 0 12px 34px #10182026; }
.language-menu button { width: 100%; min-height: 35px; padding: 6px 9px; display: flex; align-items: center; gap: 9px; color: inherit; text-align: left; background: transparent; border: 0; border-radius: 8px; font-size: 12px; }
.language-menu button:hover, .language-menu button:focus-visible, .language-menu button[aria-current="true"] { color: #b44d0a; background: #fff1e6; outline: none; }
.language-menu button span { width: 20px; font-size: 16px; }
@media (min-width: 1201px) {
  .jpgk-store .topbar { grid-template-columns: minmax(130px, 155px) max-content minmax(160px, 24vw) max-content max-content; justify-content: space-between; gap: clamp(7px, .8vw, 12px); padding-inline: clamp(10px, 1.5vw, 22px); }
  .jpgk-store .brand img { width: 150px; height: 62px; }
  .jpgk-store .header-catalog-links { gap: clamp(9px, .9vw, 14px); font-size: 12px; }
  .jpgk-store .topnav { width: max-content; max-width: none; flex-wrap: nowrap; gap: 3px; white-space: nowrap; }
  .jpgk-store .topnav a { padding: 7px 6px; font-size: 11px; }
  .jpgk-store .global-search { min-width: 160px; width: 100%; }
}
@media (max-width: 1200px) {
  .header-actions { grid-column: 4; grid-row: 1; display: flex; align-items: center; justify-content: flex-end; gap: 8px; }
  .language-switch { position: relative; top: auto; right: auto; }
}
@media (min-width: 1051px) and (max-width: 1200px) {
  .jpgk-store .topbar { grid-template-columns: 145px minmax(170px, 27vw) minmax(0, 1fr) auto; gap: 9px; padding-inline: 14px; }
  .jpgk-store .brand img { width: 140px; height: 58px; }
  .jpgk-store .topnav { min-width: 0; max-width: 100%; flex-wrap: nowrap; gap: 2px; overflow-x: auto; white-space: nowrap; scrollbar-width: none; }
  .jpgk-store .topnav::-webkit-scrollbar { display: none; }
  .jpgk-store .topnav a { flex: 0 0 auto; padding: 6px 5px; font-size: 11px; }
  .jpgk-store .global-search { width: 100%; min-width: 170px; }
}
@media (max-width: 1050px) {
  .jpgk-store .topbar { min-height: 0; padding: 10px 14px; grid-template-columns: minmax(0, 1fr) auto; grid-template-rows: 48px 44px auto; gap: 7px 10px; }
  .jpgk-store .brand { grid-column: 1; grid-row: 1; min-width: 0; }
  .jpgk-store .brand img { width: 136px; height: 46px; }
  .jpgk-store .global-search { grid-column: 1 / -1; grid-row: 2; width: 100%; min-width: 0; height: 42px; }
  .jpgk-store .topnav { grid-column: 1 / -1; grid-row: 3; width: 100%; max-width: none; min-width: 0; min-height: 34px; display: flex; align-items: center; justify-content: flex-start; flex-wrap: nowrap; gap: 7px; overflow-x: auto; overflow-y: hidden; padding: 1px 0 3px; white-space: nowrap; scrollbar-width: none; }
  .jpgk-store .topnav::-webkit-scrollbar { display: none; }
  .jpgk-store .topnav a { flex: 0 0 auto; padding: 6px 9px; border-radius: 7px; }
  .header-actions { grid-column: 2; grid-row: 1; gap: 7px; align-self: center; }
  .jpgk-store .mobile-cart { min-height: 34px; padding: 7px 10px; display: inline-flex; align-items: center; justify-content: center; gap: 4px; white-space: nowrap; border-radius: 9px; }
}
@media (max-width: 720px) {
  .jpgk-store .topbar { padding: 8px 12px; grid-template-rows: 44px 42px auto; gap: 6px 8px; }
  .jpgk-store .brand img { width: 122px; height: 42px; }
  .header-actions { gap: 6px; }
  .language-switch { position: relative; top: auto; right: auto; }
  .language-switch summary { min-height: 31px; padding-inline: 8px; }
  .language-current { max-width: 62px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
}
