/* ==========================================================================
   IDEPAR — vlastní header, v3
   Párový soubor: idepar-header-8.js  (nasazovat VŽDY oba naráz)
   Header šablony Carbon zůstává v DOM, jen se schová, aby jeho skripty
   nespadly na chybějící uzly.
   ========================================================================== */

:root{
  --ip-o:#FFAA00; --ip-o-d:#E89A00; --ip-ink:#141414;
  --ip-muted:#7A746B; --ip-line:#EAE5DC; --ip-soft:#FAF8F4; --ip-w:1265px;
}

/* původní header pryč z očí, ne z DOM */
#header.ip-hidden-original{
  display:none !important; visibility:hidden !important;
  height:0 !important; overflow:hidden !important;
}

.ip{ position:sticky; top:0; z-index:1000; background:#fff;
     font-family:"Source Sans 3",system-ui,-apple-system,sans-serif; color:var(--ip-ink); }

/* ---------------------------------------------------------------- USP */
.ip-usp{ background:var(--ip-ink); color:#F2EFE9; font-size:13px; line-height:1.3; }
.ip-usp__in{ max-width:var(--ip-w); margin:0 auto; padding:0 15px;
             display:flex; align-items:center; gap:30px; min-height:40px; }
.ip-u{ display:flex; align-items:center; gap:8px; white-space:nowrap; }
.ip-u svg{ width:16px; height:16px; flex:none; color:var(--ip-o); }
.ip-u b{ font-weight:600; }
.ip-u--tel{ margin-left:auto; color:inherit; text-decoration:none; }
.ip-u--tel:hover{ color:var(--ip-o); }

/* ------------------------------------------------------------- HEADER */
.ip-head{ position:relative; background:#fff; border-bottom:1px solid var(--ip-line);
          transition:box-shadow .2s ease; }
body.ip-stuck .ip-head{ box-shadow:0 8px 26px rgba(20,20,20,.10); }
.ip-head__in{ max-width:var(--ip-w); margin:0 auto; padding:20px 15px 18px;
              display:grid; grid-template-columns:auto minmax(240px,1fr) auto;
              align-items:center; gap:30px; }
.ip-burger{ display:none; }
.ip-logo{ display:block; }

.ip-search{ position:relative; margin:0; }
.ip .ip-head .ip-search .ip-search__i{ width:100% !important; height:50px !important; padding:0 58px 0 20px !important;
               margin:0 !important; border:1px solid #E4DFD6 !important; border-radius:999px !important;
               background:var(--ip-soft) !important; font:inherit; font-size:15px !important;
               color:var(--ip-ink) !important; outline:none; box-shadow:none !important;
               min-height:0 !important; max-width:none !important; }
.ip-search__i::placeholder{ color:#8B857B; opacity:1; }
.ip-search__i:focus{ background:#fff; border-color:var(--ip-o); box-shadow:0 0 0 3px rgba(255,170,0,.22); }
.ip .ip-head .ip-search .ip-search__b{ position:absolute !important; right:5px !important; top:5px !important;
               width:40px !important; height:40px !important; min-width:0 !important;
               padding:0 !important; margin:0 !important; border:0 !important;
               border-radius:50% !important; background:var(--ip-o) !important;
               color:var(--ip-ink) !important; font-size:0 !important; line-height:0 !important;
               display:grid !important; place-items:center; cursor:pointer; }
.ip .ip-head .ip-search .ip-search__b svg{ width:18px !important; height:18px !important; display:block !important; }
.ip .ip-head .ip-search .ip-search__b:hover{ background:var(--ip-o-d) !important; }

.ip-acts{ display:flex; align-items:center; gap:4px; }
.ip .ip-head .ip-acts .ip-ico{ width:46px !important; height:46px !important; min-width:0 !important;
         padding:0 !important; margin:0 !important; border:0 !important;
         display:grid !important; place-items:center; border-radius:50% !important;
         background:transparent !important; color:var(--ip-ink) !important; text-decoration:none; }
.ip-ico svg{ width:21px; height:21px; }
.ip-ico:hover{ background:#F6F3ED; }
.ip .ip-head .ip-acts .ip-cart{ display:flex !important; align-items:center; gap:9px;
          height:46px !important; min-width:0 !important; width:auto !important;
          padding:0 18px !important; margin-left:6px !important;
          background:var(--ip-o) !important; color:var(--ip-ink) !important;
          border:0 !important; border-radius:999px !important; text-decoration:none;
          font-weight:650; font-size:14.5px !important; line-height:1 !important; }
.ip-cart svg{ width:19px; height:19px; flex:none; }
.ip-cart:hover{ background:var(--ip-o-d); color:var(--ip-ink); }

/* ----------------------------------------------------------- NAVIGACE */
.ip-nav__in{ max-width:var(--ip-w); margin:0 auto; padding:0 15px; display:flex; align-items:center; }
.ip-nav ul{ display:flex; flex-wrap:nowrap; gap:2px; margin:0; padding:0; list-style:none; }
.ip-nav li{ position:static; }
.ip .ip-nav ul li > a{ display:flex !important; align-items:center; gap:8px;
                padding:15px 17px !important; margin:0 !important; position:relative;
                background:none !important; border:0 !important;
                color:var(--ip-ink) !important; text-decoration:none;
                font-weight:650 !important; font-size:16px !important;
                letter-spacing:-.012em; white-space:nowrap; }
.ip-nav li > a::after{ content:""; position:absolute; left:17px; right:17px; bottom:7px; height:3px;
                       border-radius:2px; background:var(--ip-o);
                       transform:scaleX(0); transform-origin:left; transition:transform .2s ease; }
.ip-nav li:hover > a::after, .ip-nav li:focus-within > a::after{ transform:scaleX(1); }
.ip-car{ width:7px; height:7px; border-right:2px solid currentColor; border-bottom:2px solid currentColor;
         transform:rotate(45deg) translate(-1px,-2px); opacity:.4; }

/* ---------------------------------------------------------- MEGA-MENU */
.ip-mm{ position:absolute; left:0; right:0; top:100%; background:#fff;
        border-top:1px solid var(--ip-line); box-shadow:0 22px 44px rgba(20,20,20,.13);
        opacity:0; visibility:hidden; transform:translateY(-8px);
        transition:opacity .2s ease, transform .2s ease, visibility .2s; z-index:9; }
.ip-nav li:hover > .ip-mm, .ip-nav li:focus-within > .ip-mm{ opacity:1; visibility:visible; transform:none; }
.ip-mm__in{ max-width:var(--ip-w); margin:0 auto; padding:26px 15px 30px; }
.ip-mm__grid{ display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:6px; align-items:start; }
.ip-mm__card{ padding:10px; border-radius:12px; transition:background .16s ease; }
.ip-mm__card:hover{ background:transparent; }
.ip .ip-mm .ip-mm__card .ip-mm__img{ display:block !important; position:relative; aspect-ratio:7/5;
             border-radius:10px; overflow:hidden !important;
             background:#fff !important;            /* zdroje mají bílou zapečenou v obrázku */
             border:1px solid #E8E3DA !important;   /* rám místo barevného podkladu */
             margin:0 0 11px !important; padding:8px !important; box-sizing:border-box !important;
             transition:border-color .16s ease; }
.ip .ip-mm .ip-mm__card .ip-mm__img img{ display:block !important; width:100% !important; height:100% !important;
                 aspect-ratio:auto !important; object-fit:contain !important; object-position:center !important;
                 max-width:none !important; max-height:none !important; min-height:0 !important;
                 transition:transform .3s ease; }
.ip-mm__card:hover .ip-mm__img{ border-color:var(--ip-o) !important; }
.ip-mm__t{ display:block; font-weight:700; font-size:15px; color:var(--ip-ink);
           text-decoration:none; margin-bottom:3px; }
.ip-mm__t:hover{ color:#B87A00; }
.ip-mm__subs{ display:block; }
.ip-mm__sub{ display:block; padding:2px 0; font-size:13.5px; color:var(--ip-muted); text-decoration:none; }
.ip-mm__sub:hover{ color:var(--ip-ink); }

/* ------------------------------------------------- ZÚŽENÍ PO SCROLLOVÁNÍ */
body.ip-stuck .ip-usp{ display:none; }
body.ip-stuck .ip-head__in{ padding:11px 15px; }
body.ip-stuck .ip-logo img{ height:38px !important; }
body.ip-stuck .ip-search__i{ height:42px; }
body.ip-stuck .ip-search__b{ width:34px; height:34px; top:4px; }
body.ip-stuck .ip-nav{ display:none; }

/* ---------------------------------------------------- MOBILNÍ ZÁSUVKA */
.ip-dr{ position:fixed; top:0; left:0; bottom:0; width:min(86vw,360px); z-index:10100;
        background:#fff; box-shadow:0 0 60px rgba(20,20,20,.25); display:flex; flex-direction:column; }
.ip-dr__head{ display:flex; align-items:center; justify-content:space-between;
              padding:16px 18px; border-bottom:1px solid var(--ip-line); }
.ip-dr__title{ font-weight:700; font-size:16px; }
.ip-dr__x{ width:38px; height:38px; border:0; background:none; border-radius:50%;
           display:grid; place-items:center; cursor:pointer; color:var(--ip-ink); }
.ip-dr__x svg{ width:20px; height:20px; }
.ip-dr__body{ overflow:auto; padding:8px 0 24px; }
.ip-dr__grp{ border-bottom:1px solid #F2EEE7; padding:4px 0; }
.ip-dr__top{ display:block; padding:12px 18px; font-weight:700; font-size:16px;
             color:var(--ip-ink); text-decoration:none; }
.ip-dr__subs{ padding:0 0 8px; }
.ip-dr__sub{ display:block; padding:8px 18px 8px 30px; font-size:14.5px;
             color:var(--ip-muted); text-decoration:none; }
.ip-dr__sub:hover{ color:var(--ip-ink); }
.ip-ovl{ position:fixed; inset:0; background:rgba(20,20,20,.45); z-index:10000; }
/* atribut hidden je jen display:none z prohlížeče, naše display:flex ho přebije */
.ip-dr[hidden], .ip-ovl[hidden]{ display:none !important; }
/* Shoptetí oznamovací pruh jede na z-index 9999 a prosvítal by přes zásuvku */
body.ip-dr-open .site-msg{ z-index:9 !important; }
body.ip-dr-open{ overflow:hidden; }

/* ---------------------------------------------------------------- MOBIL */
@media (max-width:991px){
  .ip-head__in{ grid-template-columns:auto auto 1fr; gap:12px; padding:12px 15px; }
  .ip-burger{ display:grid; place-items:center; width:42px; height:42px; padding:0;
              border:0; background:none; border-radius:10px; cursor:pointer; color:var(--ip-ink); }
  .ip-burger svg{ width:22px; height:22px; }
  .ip-logo img{ height:34px !important; }
  .ip-search{ grid-column:1 / -1; order:3; }
  .ip-search__i{ height:44px; }
  .ip-acts{ margin-left:auto; }
  .ip-ico{ display:none; }
  .ip-cart{ padding:0 14px; }
  .ip-cart__t{ display:none; }
  .ip-nav{ display:none; }
  .ip-usp__in{ gap:14px; justify-content:center; }
  .ip-u--sm, .ip-u--tel{ display:none; }
  body.ip-stuck .ip-usp{ display:block; }
}
@media (min-width:992px){ .ip-dr, .ip-ovl{ display:none !important; } }

/* --------------------------------------- VYPRODANÉ NA KONEC VÝPISU */
.ip-soldout .p, .ip-soldout .product-inner{ opacity:.82; }
.ip-soldout:hover .p, .ip-soldout:hover .product-inner{ opacity:1; }
