/* ==========================================================================
   Vinoteca — header e footer
   ========================================================================== */

/* header */
.site-header{padding:34px 0 30px;border-bottom:1px solid var(--rule);background:var(--stone);}
.topbar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;}
.brand{display:flex;align-items:center;justify-content:center;gap:0;order:2;justify-self:center;}
.brand img{height:130px;width:auto;}
.brand .site-title-fallback{font-family:"Newsreader",serif;font-style:italic;font-weight:600;font-size:1.8rem;color:var(--ink);text-decoration:none;}
.main-nav{display:flex;gap:26px;flex-wrap:wrap;align-items:center;order:1;justify-self:start;}
.main-nav ul{display:flex;gap:26px;flex-wrap:wrap;align-items:center;margin:0;padding:0;list-style:none;}
.main-nav a{
  font-size:.76rem;text-transform:uppercase;letter-spacing:.1em;font-weight:700;
  text-decoration:none;color:var(--ink-dim);border-bottom:2px solid transparent;padding-bottom:3px;
}
.main-nav a:hover,.main-nav .current-menu-item > a{color:var(--ink);}
.main-nav .current-menu-item > a{border-bottom-color:var(--accent);}
.header-actions{display:flex;align-items:center;gap:20px;order:3;justify-self:end;position:relative;}
.cart-count{
  font-size:.78rem;font-weight:700;color:var(--accent);border-bottom:2px solid var(--accent);
  padding-bottom:2px;white-space:nowrap;text-decoration:none;
}

/* ricerca: <details>/<summary> nativi, niente JS */
.site-search{position:relative;}
.site-search summary{
  list-style:none;cursor:pointer;color:var(--ink-dim);display:flex;align-items:center;
  padding:2px;line-height:0;
}
.site-search summary::-webkit-details-marker{display:none;}
.site-search summary:hover,.site-search[open] summary{color:var(--ink);}
.site-search .search-form{
  position:absolute;top:calc(100% + 12px);right:0;display:flex;gap:0;
  background:var(--paper);border:1px solid var(--rule);padding:6px;z-index:20;
  box-shadow:0 8px 24px rgba(0,0,0,.08);
}
.site-search input[type="search"]{
  border:none;background:transparent;font-family:inherit;font-size:.86rem;color:var(--ink);
  padding:8px 10px;width:200px;
}
.site-search input[type="search"]:focus{outline:none;}
.site-search button{
  border:none;background:var(--accent);color:#fff;font-size:.72rem;text-transform:uppercase;
  letter-spacing:.08em;font-weight:700;padding:0 16px;cursor:pointer;
}

@media (max-width:760px){
  .topbar{grid-template-columns:1fr;gap:14px;}
  .brand{order:1;justify-content:center;}
  .brand img{height:72px;}
  .main-nav{order:2;justify-content:center;}
  .main-nav ul{justify-content:center;row-gap:8px;}
  .header-actions{order:3;justify-self:center;}
  .site-search .search-form{right:auto;left:50%;transform:translateX(-50%);}
  .site-search input[type="search"]{width:160px;}
}

/* footer */
.site-footer{padding:44px 0 30px;background:var(--paper);border-top:1px solid var(--rule);}
.foot-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:32px;}
.foot-grid p{color:var(--ink-dim);font-size:.86rem;max-width:280px;margin-top:12px;}
.foot-col h5{font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:14px;margin-top:0;}
.foot-col a{display:block;color:var(--ink-dim);text-decoration:none;font-size:.86rem;margin-bottom:9px;}
.foot-col a:hover{color:var(--ink);}
.foot-bottom{
  margin-top:32px;padding-top:18px;border-top:1px solid var(--rule);
  display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:.76rem;color:var(--ink-dim);
}

@media (max-width:760px){
  .foot-grid{grid-template-columns:1fr;}
}
