/* =========================================================
   ZLATO Z OLIV – HLAVIČKA + VLASTNÍ DESKTOPOVÁ NAVIGACE V4
   Oprava rozložení: logo | search | hodnocení | účet + košík
   ========================================================= */

:root{
  --zzo-green:#253511;
  --zzo-green-dark:#1f2f12;
  --zzo-gold:#c9a442;
  --zzo-gold-dark:#b98b24;
  --zzo-cream:#fffdf8;
  --zzo-cream-2:#faf8f2;
  --zzo-line:#e7dcc7;
  --zzo-muted:#66685f;
}

@media (min-width:1200px){

  /* Celá bílá část hlavičky má jen jeden kompaktní řádek. */
  #header .header-top,
  #header .header-top-wrapper{
    min-height:132px!important;
    height:132px!important;
    padding:0!important;
    margin:0!important;
    box-sizing:border-box!important;
    background:#fff!important;
    overflow:visible!important;
  }

  #header .header-top > .container,
  #header .header-top-wrapper > .container{
    width:100%!important;
    max-width:none!important;
    min-height:132px!important;
    height:132px!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box!important;
  }

  /* Náš vlastní vnitřní řádek. JS do něj přesune skutečné prvky Shoptetu. */
  #header .zzo-header-main{
    position:relative!important;
    width:100%!important;
    max-width:1450px!important;
    min-height:132px!important;
    height:132px!important;
    margin:0 auto!important;
    padding:10px 24px!important;
    display:grid!important;
    grid-template-columns:320px minmax(360px,1fr) 205px auto!important;
    align-items:center!important;
    column-gap:26px!important;
    box-sizing:border-box!important;
    background:#fff!important;
  }

  /* Zrušení staré V3 dispozice, pokud zůstala na některém Shoptet wrapperu. */
  #header .zzo-header-layout{
    display:block!important;
  }

  /* LOGO */
  #header .zzo-header-logo-slot{
    position:static!important;
    float:none!important;
    width:320px!important;
    max-width:320px!important;
    min-width:0!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    text-align:left!important;
  }

  #header .zzo-header-logo-slot .site-name,
  #header .zzo-header-logo-slot.site-name,
  #header .zzo-header-logo-slot a{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  #header .zzo-header-logo-slot img,
  #header .site-name img,
  #header .header-logo img,
  #header .logo img{
    display:block!important;
    width:300px!important;
    max-width:300px!important;
    height:auto!important;
    max-height:100px!important;
    margin:0!important;
    object-fit:contain!important;
  }

  /* VYHLEDÁVÁNÍ */
  #header .zzo-header-search-slot{
    position:relative!important;
    display:block!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:54px!important;
    margin:0!important;
    padding:0!important;
    overflow:visible!important;
  }

  #header .zzo-header-search-slot form{
    position:relative!important;
    display:block!important;
    width:100%!important;
    max-width:none!important;
    height:54px!important;
    margin:0!important;
    padding:0!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }

  #header .zzo-header-search-slot input[type="search"],
  #header .zzo-header-search-slot input[type="text"],
  #header .zzo-header-search-slot input[name="string"],
  #header .zzo-header-search-slot .form-control{
    position:static!important;
    display:block!important;
    visibility:visible!important;
    opacity:1!important;
    width:100%!important;
    min-width:0!important;
    max-width:none!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0 62px 0 18px!important;
    box-sizing:border-box!important;
    border:1px solid #c9c9c9!important;
    border-radius:3px!important;
    outline:0!important;
    background:#fff!important;
    color:var(--zzo-green)!important;
    box-shadow:none!important;
    font-size:15px!important;
    line-height:54px!important;
    font-weight:400!important;
    text-indent:0!important;
    transform:none!important;
  }

  #header .zzo-header-search-slot input::placeholder{
    color:#8a8a8a!important;
    opacity:1!important;
  }

  #header .zzo-header-search-slot input:focus{
    border-color:var(--zzo-gold)!important;
    box-shadow:0 0 0 2px rgba(201,164,66,.10)!important;
  }

  #header .zzo-header-search-slot form button,
  #header .zzo-header-search-slot form .btn{
    position:absolute!important;
    top:0!important;
    right:0!important;
    left:auto!important;
    display:block!important;
    width:56px!important;
    min-width:56px!important;
    max-width:56px!important;
    height:54px!important;
    min-height:54px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    box-shadow:none!important;
    color:transparent!important;
    font-size:0!important;
    overflow:hidden!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
    z-index:3!important;
  }

  #header .zzo-header-search-slot form button > *,
  #header .zzo-header-search-slot form .btn > *{
    opacity:0!important;
  }

  #header .zzo-header-search-slot form button::before,
  #header .zzo-header-search-slot form .btn::before{
    content:""!important;
    position:absolute!important;
    left:17px!important;
    top:15px!important;
    width:16px!important;
    height:16px!important;
    border:2px solid var(--zzo-gold)!important;
    border-radius:50%!important;
    box-sizing:border-box!important;
  }

  #header .zzo-header-search-slot form button::after,
  #header .zzo-header-search-slot form .btn::after{
    content:""!important;
    position:absolute!important;
    left:31px!important;
    top:31px!important;
    width:9px!important;
    height:2px!important;
    border-radius:2px!important;
    background:var(--zzo-gold)!important;
    transform:rotate(45deg)!important;
    transform-origin:left center!important;
  }

  /* HODNOCENÍ */
  #header .zzo-header-review{
    position:static!important;
    width:205px!important;
    min-width:205px!important;
    height:58px!important;
    margin:0!important;
    padding:0 0 0 24px!important;
    display:flex!important;
    align-items:center!important;
    box-sizing:border-box!important;
    border-left:1px solid #e3dccd!important;
    color:var(--zzo-green)!important;
    background:transparent!important;
    text-decoration:none!important;
    transform:none!important;
  }

  #header .zzo-header-review-star{
    flex:0 0 auto!important;
    margin:0 10px 0 0!important;
    color:var(--zzo-gold)!important;
    font-size:31px!important;
    line-height:1!important;
  }

  #header .zzo-header-review-copy{
    min-width:0!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:flex-start!important;
    justify-content:center!important;
  }

  #header .zzo-header-review-value{
    margin:0!important;
    color:var(--zzo-green)!important;
    font-size:19px!important;
    line-height:1.1!important;
    font-weight:800!important;
    white-space:nowrap!important;
  }

  #header .zzo-header-review-text{
    margin:5px 0 0!important;
    color:#68685f!important;
    font-size:10.5px!important;
    line-height:1.25!important;
    font-weight:500!important;
    white-space:nowrap!important;
  }

  /* ÚČET + KOŠÍK */
  #header .zzo-header-actions-slot{
    position:static!important;
    float:none!important;
    width:auto!important;
    min-width:150px!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:18px!important;
    transform:none!important;
  }

  #header .zzo-header-actions-slot > *{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    margin:0!important;
    transform:none!important;
  }

  /* Samostatná lupa v původních navigation-buttons už na desktopu není potřeba. */
  #header .zzo-header-actions-slot .search,
  #header .zzo-header-actions-slot .search-trigger,
  #header .zzo-header-actions-slot [data-target="search"],
  #header .zzo-header-actions-slot [data-target="#search"],
  #header .zzo-header-actions-slot [aria-controls*="search"]{
    display:none!important;
  }

  /* Schová prázdný původní obal search formuláře po jeho přesunutí. */
  #header .zzo-header-old-search{
    display:none!important;
  }

  /* Původní menu schováme až po úspěšném vytvoření nového */
  .zzo-native-nav-hidden{
    display:none!important;
  }

  /* =======================================================
     VLASTNÍ DESKTOPOVÁ NAVIGACE
     ======================================================= */

  .zzo-custom-nav{
    position:relative;
    z-index:1000;
    width:100%;
    height:64px;
    margin:0;
    padding:0;
    overflow:visible;
    background:#fffdf8;
    border-top:1px solid #c9a442;
    border-bottom:1px solid #e7dcc7;
    box-shadow:0 3px 10px rgba(39,48,25,.06);
    box-sizing:border-box;
  }

  .zzo-custom-nav>ul{
    width:100%;
    height:63px;
    margin:0;
    padding:0;
    display:grid;
    grid-template-columns:repeat(var(--zzo-count),minmax(0,1fr));
    align-items:stretch;
    list-style:none;
  }

  .zzo-custom-nav>ul>li{
    position:relative;
    min-width:0;
    height:63px;
    margin:0;
    padding:0;
    list-style:none;
    border-left:1px solid #dbc58f;
    background:#fffdf8;
    box-sizing:border-box;
  }

  .zzo-custom-nav>ul>li:first-child{
    border-left:0;
  }

  .zzo-custom-nav>ul>li>a{
    width:100%;
    height:63px;
    min-height:63px;
    padding:7px 4px 8px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-sizing:border-box;
    color:#253511!important;
    background:transparent!important;
    font-size:13.5px!important;
    line-height:1.15!important;
    font-weight:800!important;
    letter-spacing:.005em!important;
    text-align:center!important;
    text-transform:uppercase!important;
    white-space:normal!important;
    text-decoration:none!important;
    transition:color .2s ease,background .2s ease,box-shadow .2s ease;
  }

  .zzo-custom-nav>ul>li:hover>a,
  .zzo-custom-nav>ul>li.active>a{
    color:#b98b24!important;
    background:#faf7ef!important;
    box-shadow:inset 0 -4px 0 #c9a442;
  }

  /* Rozbalovací nabídky */
  .zzo-custom-nav li>ul{
    position:absolute;
    top:100%;
    left:0;
    z-index:1100;
    min-width:245px;
    margin:0;
    padding:10px 0;
    display:none;
    list-style:none;
    background:#fffdf8;
    border:1px solid #e7dcc7;
    border-top:3px solid #c9a442;
    border-radius:0 0 9px 9px;
    box-shadow:0 14px 30px rgba(39,48,25,.13);
    box-sizing:border-box;
  }

  .zzo-custom-nav>ul>li:nth-last-child(-n+3)>ul{
    right:0;
    left:auto;
  }

  .zzo-custom-nav li:hover>ul{
    display:block;
  }

  .zzo-custom-nav li>ul li{
    position:relative;
    margin:0;
    padding:0;
    list-style:none;
  }

  .zzo-custom-nav li>ul a{
    display:block!important;
    padding:12px 18px!important;
    color:#273019!important;
    background:transparent!important;
    font-size:15px!important;
    line-height:1.35!important;
    font-weight:600!important;
    text-align:left!important;
    text-transform:none!important;
    white-space:normal!important;
    text-decoration:none!important;
  }

  .zzo-custom-nav li>ul a:hover{
    color:#b98b24!important;
    background:#f5efe1!important;
  }

  .zzo-custom-nav li>ul li>ul{
    top:-13px;
    left:100%;
  }

  /* Obrázky v dropdownu pryč */
  .zzo-custom-nav li>ul img,
  .zzo-custom-nav li>ul picture,
  .zzo-custom-nav li>ul figure,
  .zzo-custom-nav li>ul .image,
  .zzo-custom-nav li>ul .category-image,
  .zzo-custom-nav li>ul .menu-image,
  .zzo-custom-nav li>ul .submenu-image{
    display:none!important;
    width:0!important;
    height:0!important;
    min-width:0!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
  }

  .zzo-custom-nav li>ul a > div:empty,
  .zzo-custom-nav li>ul a > span:empty{
    display:none!important;
  }

  /* Kompaktní řádky dropdownu */
  .zzo-custom-nav li>ul>li{
    height:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    background:#fff!important;
    border-bottom:1px solid #eee9df!important;
  }

  .zzo-custom-nav li>ul>li:last-child{
    border-bottom:0!important;
  }

  .zzo-custom-nav li>ul>li>a{
    display:flex!important;
    align-items:center!important;
    width:100%!important;
    height:auto!important;
    min-height:48px!important;
    margin:0!important;
    padding:11px 18px!important;
    box-sizing:border-box!important;
    color:#253511!important;
    background:#fff!important;
    font-size:15px!important;
    line-height:1.25!important;
    font-weight:600!important;
  }

  .zzo-custom-nav li>ul>li>a:hover{
    color:#b98b24!important;
    background:#f7f3e9!important;
  }

  /* CHUŤ */
  .zzo-custom-nav>ul>li.zzo-nav-taste>ul{
    left:50%!important;
    right:auto!important;
    transform:translateX(-50%)!important;
    width:300px!important;
    min-width:300px!important;
    padding:5px 0!important;
    max-height:none!important;
    overflow:visible!important;
  }

  /* PODLE POUŽITÍ – 2 sloupce */
  .zzo-custom-nav>ul>li.zzo-nav-use>ul{
    left:auto!important;
    right:0!important;
    transform:none!important;
    width:520px!important;
    min-width:520px!important;
    padding:6px!important;
    max-height:none!important;
    overflow:visible!important;
    display:none!important;
  }

  .zzo-custom-nav>ul>li.zzo-nav-use:hover>ul{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:0!important;
  }

  .zzo-custom-nav>ul>li.zzo-nav-use>ul>li{
    border-bottom:1px solid #eee9df!important;
  }

  .zzo-custom-nav>ul>li.zzo-nav-use>ul>li:nth-child(odd){
    border-right:1px solid #eee9df!important;
  }

  .zzo-custom-nav>ul>li.zzo-nav-use>ul>li>a{
    min-height:50px!important;
  }
}

/* Menší desktop / notebook */
@media (min-width:1200px) and (max-width:1450px){
  #header .zzo-header-layout{
    gap:18px!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }

  #header .zzo-header-logo-slot{
    flex-basis:275px!important;
    width:275px!important;
    max-width:275px!important;
  }

  #header .zzo-header-logo-slot img,
  #header .site-name img,
  #header .header-logo img,
  #header .logo img,
  .site-name img,
  .header-logo img,
  .logo img{
    width:275px!important;
    max-width:275px!important;
  }

  #header .zzo-header-review{
    flex-basis:170px!important;
    min-width:170px!important;
    padding-left:17px!important;
  }

  #header .zzo-header-review-star{
    font-size:27px!important;
    margin-right:7px!important;
  }

  #header .zzo-header-review-value{
    font-size:17px!important;
  }

  #header .zzo-header-review-text{
    font-size:9.5px!important;
  }

  .zzo-custom-nav>ul>li>a{
    padding-left:2px;
    padding-right:2px;
    font-size:12px!important;
  }
}

/* Mobil a tablet – necháváme původní Shoptet hlavičku beze změny */
@media (max-width:1199px){
  .zzo-custom-nav,
  #header .zzo-header-review{
    display:none!important;
  }
}

/* =========================================================
   V4 finální responzivní korekce
   ========================================================= */
@media (min-width:1200px) and (max-width:1450px){
  #header .zzo-header-main{
    grid-template-columns:275px minmax(300px,1fr) 185px auto!important;
    column-gap:18px!important;
    padding-left:20px!important;
    padding-right:20px!important;
  }
  #header .zzo-header-logo-slot{
    width:275px!important;
    max-width:275px!important;
  }
  #header .zzo-header-logo-slot img,
  #header .site-name img,
  #header .header-logo img,
  #header .logo img{
    width:265px!important;
    max-width:265px!important;
  }
  #header .zzo-header-review{
    width:185px!important;
    min-width:185px!important;
    padding-left:17px!important;
  }
  #header .zzo-header-review-star{
    font-size:27px!important;
    margin-right:7px!important;
  }
  #header .zzo-header-review-value{font-size:17px!important;}
  #header .zzo-header-review-text{font-size:9.5px!important;}
}

@media (max-width:1199px){
  #header .zzo-header-main{display:contents!important;}
  #header .zzo-header-search-slot{display:none!important;}
  #header .zzo-header-review{display:none!important;}
  .zzo-custom-nav{display:none!important;}
}
