/* IONTMAX Theme managed source: 2026-08-01 */
/*
 * IONTMAX Desktop Header
 *
 * Desktopová konstrukce hlavičky, logo, hlavní navigace,
 * submenu a ikony účtu a košíku.
 * Vyhledávání, jazyk a měna, mobilní navigace a dialogy
 * spravují samostatné moduly.
 */

@media (min-width: 768px) {
 html {
 scrollbar-gutter: stable;
 }
}

#header,
#header * {
 box-sizing: border-box;
}

/* Skryj nativní Classic chrome */
@media (min-width: 768px) {
 .top-navigation-bar {
 display: none !important;
 }

 /* Bez probliknutí původního headeru než doběhne JS */
 #header:not(:has(.im-header)) {
 min-height: 76px;
 visibility: hidden !important;
 overflow: hidden !important;
 }

 #header:not(:has(.im-header)) > * {
 display: none !important;
 }

 #header:has(.im-header) {
 visibility: visible !important;
 overflow: visible !important;
 min-height: 0;
 }
}

body.im-active .top-navigation-bar {
 display: none !important;
}

body.im-active #header:has(.im-header) > :not(.im-header) {
 display: none !important;
}

body.im-active #header .user-action {
 display: none;
}

#header::before,
#header::after {
 display: none !important;
 content: none !important;
}

/* ═══ SHELL ═══ */

.im-header {
 display: block;
 width: 100%;
 background: #fff;
 border-bottom: 0;
}

body.im-active #header,
body.im-active .im-header {
 border-bottom: 0 !important;
 box-shadow: none !important;
}

body.im-active #header {
 position: sticky !important;
 top: 0;
 z-index: 200;
 background: #fff;
 overflow: visible !important;
}

body.im-active .im-header {
 background: #fff;
}

body.im-header-fixed-fallback.im-active #header {
 position: fixed !important;
 top: 0 !important;
 left: 0 !important;
 right: 0 !important;
 width: 100% !important;
}

body.im-header-fixed-fallback.im-active .overall-wrapper {
 padding-top: var(--im-header-offset, 120px) !important;
}

.im-header__top {
 display: grid;
 grid-template-columns: var(--im-header-cols);
 align-items: center;
 gap: var(--im-header-gap);
 width: min(calc(100% - var(--im-pad) * 2), var(--im-max));
 margin: 0 auto;
 padding: 14px 0 12px;
}

.im-header__logo,
.im-header__logo .site-name,
.im-header__logo h1.site-name {
 margin: 0;
 padding: 0;
}

.im-header__logo a {
 display: flex;
 align-items: center;
 height: 40px;
}

.im-header__logo img {
 display: block;
 max-width: 132px;
 max-height: 34px;
 width: auto;
 height: auto;
 object-fit: contain;
  transform: translateY(var(--im-logo-shift-y, 4px));
}

body.im-active .im-header,
body.im-active .im-header__top {
 overflow: visible !important;
}

/* Actions – ikony */
.im-header__actions {
 display: flex;
 align-items: center;
 gap: 4px;
 flex-shrink: 0;
}

.im-header__actions > a,
.im-header__actions > button,
.im-header__actions .top-nav-button-login {
 position: relative !important;
 top: auto !important;
 right: auto !important;
 left: auto !important;
 bottom: auto !important;
 float: none !important;
 transform: none !important;
 display: inline-flex !important;
 align-items: center !important;
 justify-content: center !important;
 width: 44px !important;
 height: 44px !important;
 min-width: 44px !important;
 margin: 0 !important;
 padding: 0 !important;
 border: 0 !important;
 border-radius: 999px !important;
 background: transparent !important;
 box-shadow: none !important;
 color: var(--im-text) !important;
 font-size: 0 !important;
 line-height: 1 !important;
 text-decoration: none !important;
 cursor: pointer;
 transition: background 0.15s;
}

.im-header__actions > a:hover,
.im-header__actions > button:hover,
.im-header__actions .im-trigger-active {
 background: var(--im-soft) !important;
}

.im-header__ico {
 display: block;
 width: 22px;
 height: 22px;
 background: currentColor;
 pointer-events: none;
}

.im-header__ico--cart {
 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 5h1.2l1.4 8.2h11.1l1.5-6.2H7.8' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='10' cy='18.5' r='1.25' fill='black'/%3E%3Ccircle cx='16.5' cy='18.5' r='1.25' fill='black'/%3E%3C/svg%3E")
 center / 22px 22px no-repeat;
 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpath d='M4 5h1.2l1.4 8.2h11.1l1.5-6.2H7.8' stroke='black' stroke-width='1.75' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='10' cy='18.5' r='1.25' fill='black'/%3E%3Ccircle cx='16.5' cy='18.5' r='1.25' fill='black'/%3E%3C/svg%3E")
 center / 22px 22px no-repeat;
}

.im-header__ico--user {
 -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='8' r='4' stroke='black' stroke-width='1.75'/%3E%3Cpath d='M5 20c0-3.314 3.134-6 7-6s7 2.686 7 6' stroke='black' stroke-width='1.75' stroke-linecap='round'/%3E%3C/svg%3E")
 center / contain no-repeat;
 mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Ccircle cx='12' cy='8' r='4' stroke='black' stroke-width='1.75'/%3E%3Cpath d='M5 20c0-3.314 3.134-6 7-6s7 2.686 7 6' stroke='black' stroke-width='1.75' stroke-linecap='round'/%3E%3C/svg%3E")
 center / contain no-repeat;
}

.im-header__ico--menu {
 -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' d='M4 7h16M4 12h16M4 17h16'/%3E%3C/svg%3E")
 center / contain no-repeat;
 mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill='none' stroke='black' stroke-width='2.2' stroke-linecap='round' d='M4 7h16M4 12h16M4 17h16'/%3E%3C/svg%3E")
 center / contain no-repeat;
}

/* Skryj starý Shoptet footer tools blok */
.im-legacy-tools {
 display: none !important;
}

.im-header__actions .cart-price,
.im-header__actions [data-testid="headerCartPrice"],
.im-header__actions .visible-lg-inline-block,
.im-header__actions .visible-lg,
.im-header__actions .sr-only,
.im-header__actions span:not(.im-header__ico):not(.im-sr) {
 display: none !important;
 visibility: hidden !important;
 width: 0 !important;
 height: 0 !important;
 overflow: hidden !important;
 position: absolute !important;
 clip: rect(0, 0, 0, 0) !important;
 white-space: nowrap !important;
}

body.im-active .im-header__actions a[data-target="cart"] .cart-price,
body.im-active .im-header__actions [data-testid="headerCart"] .cart-price,
body.im-active .im-header__actions [data-testid="headerCartPrice"] {
 display: none !important;
}

.im-header__actions .im-header__cart,
.im-header__actions [data-testid="headerCart"],
.im-header__actions .im-header__login {
 display: inline-flex !important;
 align-items: center !important;
 justify-content: center !important;
}

/* Shoptet Classic .btn.btn-icon – vlastní rozměry a ::before ikona */
body.im-active #header .im-header__actions > a.cart-count,
body.im-active #header .im-header__actions > a.btn.btn-icon,
body.im-active #header .im-header__actions > [data-testid="headerCart"],
body.im-active #header .im-header__actions > .im-header__cart {
 display: inline-flex !important;
 align-items: center !important;
 justify-content: center !important;
 width: 44px !important;
 height: 44px !important;
 min-width: 44px !important;
 min-height: 44px !important;
 max-width: 44px !important;
 padding: 0 !important;
 margin: 0 !important;
 line-height: 1 !important;
 vertical-align: middle !important;
 text-align: center !important;
 overflow: visible !important;
}

body.im-active #header .im-header__actions > a.cart-count::before,
body.im-active #header .im-header__actions > a.btn.btn-icon::before,
body.im-active #header .im-header__actions > [data-testid="headerCart"]::before {
 display: none !important;
 content: none !important;
 width: 0 !important;
 height: 0 !important;
 margin: 0 !important;
 padding: 0 !important;
}

body.im-active #header .im-header__actions .im-header__cart .im-header__ico,
body.im-active #header .im-header__actions [data-testid="headerCart"] .im-header__ico {
 display: block !important;
 flex: 0 0 22px !important;
 width: 22px !important;
 height: 22px !important;
 margin: 0 !important;
 position: relative !important;
 top: auto !important;
 left: auto !important;
 right: auto !important;
 transform: none !important;
}

.im-header__actions .im-header__ico {
 flex: 0 0 auto;
 margin: 0 !important;
 position: static !important;
 transform: none !important;
}

.im-header__actions a.cart-count > span:not(.im-header__ico):not(.im-sr),
.im-header__actions [data-testid="headerCart"] > span:not(.im-header__ico):not(.im-sr) {
 position: absolute;
 top: 4px;
 right: 4px;
 display: inline-flex !important;
 align-items: center;
 justify-content: center;
 min-width: 16px;
 height: 16px;
 padding: 0 4px;
 color: #fff !important;
 background: var(--im-black);
 border: 2px solid #fff;
 border-radius: 999px;
 font-size: 9px !important;
 font-weight: 700;
 line-height: 1 !important;
}


/* ═══ NAV – gray regular text, hover → black ═══ */

.im-header__nav {
 display: grid;
 grid-template-columns: var(--im-header-cols);
 align-items: center;
 column-gap: var(--im-header-gap);
 width: min(calc(100% - var(--im-pad) * 2), var(--im-max));
 margin: 0 auto;
 padding: 4px 0 20px;
 --im-nav-btn-opacity: 0.58;
 --im-nav-btn-hover-opacity: 1;
 --im-nav-btn-radius: 10px;
}

/* Nav sedí ve stejném sloupci jako logo */
.im-header__nav > #navigation,
.im-header__nav > .navigation-in {
 grid-column: 1;
 grid-row: 1;
 justify-self: start;
 align-self: center;
 width: auto !important;
 max-width: none !important;
}

body.im-active #header .im-header__nav #navigation,
body.im-active #header .im-header__nav .navigation-in {
 margin: 0 !important;
 padding: 0 !important;
 left: auto !important;
 right: auto !important;
 transform: none !important;
}

.im-header__nav #navigation,
.im-header__nav .navigation-in,
.im-header__nav .navigation-in.menu {
 position: static !important;
 display: block !important;
 width: auto !important;
 max-width: none !important;
 height: auto !important;
 margin: 0 !important;
 padding: 0 !important;
 background: transparent !important;
 border: 0 !important;
 box-shadow: none !important;
 transform: none !important;
 visibility: visible !important;
 opacity: 1 !important;
}

.im-header__nav ul.menu-level-1,
.im-header__nav .navigation-in > ul {
 display: flex;
 align-items: center;
 flex-wrap: nowrap;
 gap: clamp(22px, 2.6vw, 38px);
 margin: 0;
 margin-left: 0 !important;
 padding: 0;
 padding-left: 0 !important;
 list-style: none;
 overflow-x: auto;
 scrollbar-width: none;
}

.im-header__nav ul.menu-level-1 > li:first-child,
.im-header__nav .navigation-in > ul > li:first-child {
 margin-left: 0 !important;
 padding-left: 0 !important;
}

.im-header__nav ul.menu-level-1 > li:first-child > a,
.im-header__nav .navigation-in > ul > li:first-child > a {
 padding-left: 0 !important;
 margin-left: 0 !important;
}

body.im-active #header .im-header__nav ul.menu-level-1 > li > a,
body.im-active #header .im-header__nav .navigation-in > ul > li > a {
 padding-top: 0 !important;
 padding-bottom: 0 !important;
}

body.im-active #header .im-header__nav ul.menu-level-1 > li:first-child > a,
body.im-active #header .im-header__nav .navigation-in > ul > li:first-child > a {
 padding-left: 0 !important;
}

.im-header__nav ul.menu-level-1::-webkit-scrollbar {
 display: none;
}

.im-header__nav ul.menu-level-1 > li,
.im-header__nav .navigation-in > ul > li {
 position: relative;
 flex: 0 0 auto;
 margin: 0 !important;
 padding: 0 !important;
 border: 0 !important;
 background: transparent !important;
 visibility: visible !important;
 display: block !important;
}

.im-header__nav ul.menu-level-1 > li::before,
.im-header__nav ul.menu-level-1 > li::after,
.im-header__nav .submenu-arrow {
 display: none !important;
 content: none !important;
}

.im-header__nav ul.menu-level-1 > li > a,
.im-header__nav .navigation-in > ul > li > a {
 position: relative;
 display: inline-flex;
 align-items: center;
 justify-content: center;
 box-sizing: border-box;
 min-height: 36px;
 padding: 0 16px !important;
 margin: 0 !important;
 color: #000000 !important;
 opacity: var(--im-nav-btn-opacity);
 background: transparent !important;
 background-image: none !important;
 border: 0 !important;
 border-radius: var(--im-nav-btn-radius);
 box-shadow: none !important;
 outline: none !important;
 font-family: inherit;
 font-size: 15px;
 font-weight: 600 !important;
 font-synthesis: none;
 line-height: 1;
 letter-spacing: 0 !important;
 text-decoration: none !important;
 text-transform: none;
 white-space: nowrap;
 transform: none !important;
 transition: opacity 0.15s ease;
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 text-rendering: geometricPrecision;
}

.im-header__nav ul.menu-level-1 > li > a::before,
.im-header__nav .navigation-in > ul > li > a::before {
 display: none !important;
 content: none !important;
}

.im-header__nav ul.menu-level-1 > li > a:hover,
.im-header__nav ul.menu-level-1 > li.exp > a,
.im-header__nav ul.menu-level-1 > li.open > a {
 color: #000000 !important;
 opacity: var(--im-nav-btn-hover-opacity);
 background: transparent !important;
 font-weight: 600 !important;
 letter-spacing: 0 !important;
 border: 0 !important;
 box-shadow: none !important;
 outline: none !important;
 transform: none !important;
 padding: 0 16px !important;
}

/* Shoptet Classic často mění váhu / padding při hoveru */
body.im-active .im-header__nav .menu-level-1 > li > a,
body.im-active .im-header__nav .navigation-in > ul > li > a,
body.im-active .im-header__nav .menu-level-1 > li > a:hover,
body.im-active .im-header__nav .menu-level-1 > li.exp > a,
body.im-active .im-header__nav .menu-level-1 > li.open > a {
 font-weight: 600 !important;
 padding: 0 16px !important;
 border-width: 0 !important;
}

.im-header__nav ul.menu-level-1 > li > a b,
.im-header__nav ul.menu-level-1 > li > a strong {
 font-weight: 600;
}

/* Přihlášení už je v ikonách vpravo – ne třetí řádek v menu */
.im-header__nav .menu-level-1 > li:has([data-target="login"]),
.im-header__nav .menu-level-1 > li:has(.top-nav-button-login),
.im-header__nav .menu-level-1 > li.im-nav-login {
 display: none !important;
}

.im-header__nav .navigation-in > ul + ul,
.im-header__nav .menu-level-1 + .menu-level-1 {
 display: none !important;
}

/* Submenu dropdown */
.im-header__nav ul.menu-level-2 {
 position: absolute;
 top: calc(100% + 6px);
 left: 0;
 z-index: 1100;
 display: none;
 min-width: 220px;
 margin: 0;
 padding: 8px;
 list-style: none;
 background: #fff;
 border: 1px solid var(--im-line);
 border-radius: 12px;
 box-shadow: 0 16px 40px rgba(0, 0, 0, 0.12);
}

.im-header__nav li.exp > ul.menu-level-2,
.im-header__nav li.open > ul.menu-level-2 {
 display: block;
}

.im-header__nav ul.menu-level-2 a {
 display: block;
 padding: 8px 10px;
 border-radius: 8px;
 color: var(--im-text) !important;
 font-size: 14px;
 font-weight: 600;
 text-decoration: none;
}

.im-header__nav ul.menu-level-2 a:hover {
 background: var(--im-soft);
}

@media (min-width: 768px) {
  body.im-active #header {
    top: 0 !important;
    left: auto !important;
    width: 100% !important;
    transform: none !important;
  }

  body.im-active .im-header__nav {
    display: none !important;
  }

  body.im-active .im-header__top {
    padding: 16px 0;
  }

  .im-header__actions .im-mobile-nav-trigger,
  .im-header__actions .im-mobile-nav-trigger[hidden] {
    display: none !important;
    width: 0 !important;
    height: 0 !important;
    min-width: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
    visibility: hidden !important;
  }
}
