/* ---------------------------------------------------------------------------
 *  schill-frontend.css   (v3.3)
 *  Drei Breakpoints: Desktop =980px · Tablet Portrait 600–979px · Mobil =599px
 *  Neue Burger-Icons (eigene SVGs) · einzeilige Slimbar · Nav-Promo mobil
 * --------------------------------------------------------------------------- */

:root {
  --schill-wood:#A06030;  --schill-wood-dark:#7A4520; --schill-wood-deep:#3D1F08;
  --schill-gold:#F0B030;  --schill-gold-dark:#C8901A; --schill-active:#E8B42D;
  --schill-green:#3D7828; --schill-green-dark:#2C5A1E;
  --schill-page:#EDE8DA;  --schill-box:#F5F0E3; --schill-cream:#FDFAF4; --schill-cream-mid:#EDE5D4;
  --schill-slim:#A06030;  --schill-slim-text:#FFD84D;
  --schill-text:#3D1F08;  --schill-text-sec:#7A5535; --schill-text-muted:#A08060;
  --schill-border:rgba(160,96,48,.25); --schill-border-strong:rgba(160,96,48,.55); --schill-border-soft:rgba(160,96,48,.12);
  --schill-max:1200px;
  --schill-col-left:205px; --schill-col-right:215px; --schill-gap:20px;
}

html,body { margin:0; }
body { font-family:Lato,sans-serif; }

/* --- Seiten-Hintergrund --------------------------------------------------- */
.schill-page-bg { background:var(--schill-page); }

/* --- Box + Schatten ------------------------------------------------------- */
.schill-wrap {
  max-width:var(--schill-max); margin:0 auto; width:100%;
  background:var(--schill-box);
  box-shadow:0 0 40px rgba(61,31,8,.10);
}
.schill-wrap * { box-sizing:border-box; }
.schill-inner { max-width:var(--schill-max); margin:0 auto; width:100%; }

/* ---------------------------------------------------------------------------
 *  1) SLIMBAR
 * ---------------------------------------------------------------------------*/
.schill-slimbar { background:var(--schill-slim); }
.schill-slimbar .schill-inner {
  display:flex; justify-content:space-around; align-items:center; gap:16px;
  padding:8px 24px; color:var(--schill-slim-text); font-weight:700;
  font-size:14px; font-family:Lato,sans-serif; flex-wrap:nowrap;
}
.schill-slimbar span {
  display:inline-flex; align-items:center; gap:6px; white-space:nowrap;
}
.schill-slimbar svg { flex-shrink:0; }

/* ---------------------------------------------------------------------------
 *  2) HERO
 * ---------------------------------------------------------------------------*/
.schill-hero img { display:block; width:100%; height:auto; }

/* ---------------------------------------------------------------------------
 *  3) HORIZONTALE NAV
 * ---------------------------------------------------------------------------*/
.schill-navbar { background:var(--schill-box); }
.schill-nav {
  position:relative; display:flex; align-items:center; min-height:52px;
  padding:0 24px; background:var(--schill-cream-mid);
  border-bottom:1px solid var(--schill-border);
  font-family:'Baloo 2',sans-serif; font-weight:700; color:var(--schill-wood-deep);
}
/* Einrückung ? Haus-Icon beginnt bündig mit Mittelspalte */
.schill-nav-indent { width:calc(var(--schill-col-left) + var(--schill-gap)); flex-shrink:0; }

.schill-navlinks { display:flex; align-items:center; gap:32px; }
.schill-navlinks a {
  color:var(--schill-wood-deep); text-decoration:none; font-size:16px;
  display:flex; align-items:center;
}
.schill-navlinks a:hover { color:var(--schill-wood); }
.schill-navlinks a.schill-home { color:var(--schill-wood-deep); }
.schill-navlinks a.schill-home svg { display:block; }
.schill-navlinks a.schill-home-text { display:none; }

.schill-nav .schill-cart-link { margin-left:auto; }

/* --- Warenkorb ------------------------------------------------------------- */
.schill-cart-link {
  position:relative; display:inline-flex; align-items:center;
  color:var(--schill-wood-deep); text-decoration:none;
}
.schill-cart-link:hover { color:var(--schill-wood); }
.schill-cart-count {
  position:absolute; top:-6px; right:-8px;
  background:var(--schill-wood); color:#fff;
  font-size:10px; font-weight:700; min-width:16px; height:16px;
  border-radius:999px; display:inline-flex; align-items:center;
  justify-content:center; padding:0 3px;
}
.schill-cart-count.is-empty { display:none; }

/* --- Nav-Promo (Newsletter-Hinweis · nur Tablet/Mobil) ------- */
.schill-nav-promo {
  display:none;
  position:absolute; left:50%; transform:translateX(-50%);
  font-family:'Baloo 2',sans-serif; font-size:13px; font-weight:700;
  color:var(--schill-wood-deep); text-decoration:none; white-space:nowrap;
  z-index:1; pointer-events:auto;
}
.schill-nav-promo:hover { color:var(--schill-wood); text-decoration:underline; }

/* --- Burger-Button -------------------------------------------------------- */
.schill-burger {
  display:none; width:26px; height:26px; cursor:pointer;
  background:none; border:0; padding:0; color:var(--schill-wood-deep);
  flex-shrink:0;
}
.schill-burger svg { display:block; width:100%; height:100%; fill:currentColor; }

/* ---------------------------------------------------------------------------
 *  4) BODY-GRID (3 Spalten Desktop)
 * ---------------------------------------------------------------------------*/
.schill-body .schill-inner {
  display:grid;
  grid-template-columns:var(--schill-col-left) 1fr var(--schill-col-right);
  gap:var(--schill-gap); align-items:start;
  padding:10px 24px 32px;
  font-family:Lato,sans-serif;
}

/* --- Suchfeld ------------------------------------------------------------- */
.schill-search {
  display:flex; align-items:center; gap:8px;
  border:1.5px solid var(--schill-border-strong); border-radius:8px;
  background:var(--schill-cream); padding:8px 12px; margin-bottom:12px;
  transition:border-color .15s;
}
.schill-search:focus-within { border-color:var(--schill-wood); }
.schill-search svg { flex-shrink:0; color:var(--schill-text-muted); }
.schill-search input {
  border:none; background:transparent; font-family:Lato,sans-serif;
  font-size:14px; color:var(--schill-text); width:100%; outline:none;
}
.schill-search input::placeholder { color:var(--schill-text-muted); }

/* --- Linkes Kategorie-Menü ------------------------------------------------ */
.schill-menu {
  border:1px solid var(--schill-border-soft); border-radius:8px;
  overflow:hidden; background:var(--schill-cream);
  box-shadow:0 1px 3px rgba(61,31,8,.10);
}
.schill-menu-label {
  background:var(--schill-green); color:#fff;
  font-family:'Baloo 2',sans-serif; font-size:14px; font-weight:700;
  padding:9px 16px; letter-spacing:.06em; text-transform:uppercase;
}
.schill-menu-item {
  display:flex; align-items:center; gap:10px; padding:9px 16px;
  font-size:14px; color:var(--schill-text); text-decoration:none;
  border-bottom:1px solid var(--schill-border-soft); transition:background .15s;
}
.schill-menu-item:last-child { border-bottom:none; }
.schill-menu-item:hover { background:var(--schill-cream-mid); }
.schill-menu-item.is-active {
  background:var(--schill-active); color:var(--schill-wood);
  font-weight:700; border-left:3px solid var(--schill-gold); padding-left:13px;
}
.schill-menu-icon { display:inline-flex; flex-shrink:0; width:17px; height:17px; color:var(--schill-wood-deep); opacity:.7; }
.schill-menu-icon svg { width:17px; height:17px; display:block; }
.schill-menu-item.is-active .schill-menu-icon { opacity:1; color:var(--schill-wood); }

/* --- Willkommenstext ------------------------------------------------------ */
.schill-welcome { margin-bottom:24px; }
.schill-welcome-h {
  font-family:'Baloo 2',sans-serif; font-size:30px; font-weight:700;
  color:var(--schill-wood); line-height:1.35; margin:0 0 12px;
}
.schill-welcome p { font-size:16px; color:var(--schill-text-sec); line-height:1.55; margin:0; }

/* --- Produktgitter (Desktop: 3-spaltig) ----------------------------------- */
.schill-prodgrid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.schill-card {
  background:var(--schill-cream); border:1px solid var(--schill-border);
  border-radius:16px; overflow:hidden; box-shadow:0 2px 6px rgba(61,31,8,.12);
  display:flex; flex-direction:column; transition:box-shadow .2s,transform .2s;
}
.schill-card:hover { box-shadow:0 8px 22px rgba(61,31,8,.18); transform:translateY(-2px); }
.schill-card-img { position:relative; }
.schill-card-img img { display:block; width:100%; height:auto; }
.schill-badge {
  position:absolute; top:10px; left:10px; background:var(--schill-green);
  color:#fff; font-size:11px; font-weight:700; padding:3px 10px;
  border-radius:4px; letter-spacing:.07em; text-transform:uppercase; z-index:2;
}
.schill-card-body { padding:16px; text-align:center; display:flex; flex-direction:column; gap:8px; flex:1; }
.schill-card-name { font-family:'Baloo 2',sans-serif; font-size:16px; font-weight:700; color:var(--schill-wood-deep); }
.schill-card-price { font-family:'Baloo 2',sans-serif; font-size:20px; font-weight:700; color:var(--schill-green); }
.schill-btn {
  margin-top:auto; background:var(--schill-gold); color:var(--schill-wood-deep);
  border-radius:8px; padding:9px 0; font-family:Lato,sans-serif;
  font-size:14px; font-weight:700; text-decoration:none; display:block;
  letter-spacing:.03em; border:none; cursor:pointer;
}
.schill-btn:hover { background:var(--schill-gold-dark); }

/* --- Rechte Sidebar ------------------------------------------------------- */
.schill-sidebar { display:flex; flex-direction:column; gap:16px; }
.schill-hotline { border-radius:8px; overflow:hidden; box-shadow:0 2px 6px rgba(61,31,8,.12); border:1px solid var(--schill-border); }
.schill-hotline-h { background:var(--schill-green); color:#fff; font-family:'Baloo 2',sans-serif; font-size:14px; font-weight:700; padding:9px 16px; text-align:center; letter-spacing:.05em; }
.schill-hotline img { display:block; width:100%; height:auto; }
.schill-hotline-b { background:var(--schill-cream); padding:12px 14px; text-align:center; }
.schill-hotline-num { display:flex; align-items:center; justify-content:center; gap:8px; font-family:'Baloo 2',sans-serif; font-size:20px; font-weight:700; color:var(--schill-wood-deep); margin-bottom:3px; }
.schill-hotline-hours { font-size:14px; color:var(--schill-text-muted); }
.schill-box-card { background:var(--schill-cream); border:1px solid var(--schill-border); border-radius:8px; padding:12px; box-shadow:0 1px 3px rgba(61,31,8,.10); }
.schill-secure { text-align:center; margin-bottom:12px; }
.schill-secure img { height:59px; object-fit:contain; }
.schill-paygrid { display:grid; grid-template-columns:repeat(3,1fr); gap:5px; }
.schill-pay { height:36px; border-radius:4px; background:#fff; display:flex; align-items:center; justify-content:center; overflow:hidden; padding:2px; }
.schill-pay img { max-width:100%; max-height:100%; object-fit:contain; }
.schill-rating { background:var(--schill-cream); border:1px solid var(--schill-border); border-radius:8px; padding:10px 16px; text-align:center; box-shadow:0 1px 3px rgba(61,31,8,.10); }
.schill-stars { color:var(--schill-gold); font-size:28px; letter-spacing:2px; line-height:1; }
.schill-score { font-family:'Baloo 2',sans-serif; font-size:24px; font-weight:800; color:var(--schill-wood-deep); }
.schill-score-c { font-size:14px; color:var(--schill-text-muted); }
.schill-wko { text-align:center; padding:4px 0; }
.schill-wko img { width:131px; height:auto; }

/* --- Footer --------------------------------------------------------------- */
.schill-footer-sec { background:var(--schill-cream-mid); }
/* Footer-Navlinks: sichtbar auf Tablet/Mobil, per Desktop-Block ausgeblendet */
.schill-footer-navlinks {
  display:flex; flex-wrap:wrap; justify-content:center; gap:12px 24px;
  padding:14px 16px; border-bottom:1px solid var(--schill-border-soft);
  font-family:'Baloo 2',sans-serif;
}
.schill-footer-navlinks a {
  font-size:14px; color:var(--schill-text-sec); text-decoration:none;
}
.schill-footer-navlinks a:hover { color:var(--schill-wood); }
.schill-footer { display:flex; justify-content:center; align-items:center; gap:32px; flex-wrap:wrap; padding:24px 16px; font-family:Lato,sans-serif; }
.schill-footer a { font-size:14px; color:var(--schill-text-muted); text-decoration:none; }
.schill-footer a:hover { color:var(--schill-wood); }
.schill-footer .sep { color:var(--schill-text-muted); font-size:18px; opacity:.5; }

/* ---------------------------------------------------------------------------
 *  WOOCOMMERCE-SEITEN
 * ---------------------------------------------------------------------------*/
.woocommerce,.woocommerce-page,
.archive.woocommerce #main,.single-product #main { background:var(--schill-box); }
.woocommerce .woocommerce-products-header,
.woocommerce-page .woocommerce-products-header { max-width:var(--schill-max); margin:0 auto; padding:24px 16px 0; }
.woocommerce-products-header__title,
.woocommerce .product_title { font-family:'Baloo 2',sans-serif; color:var(--schill-wood); }
.woocommerce ul.products,.woocommerce-page ul.products {
  display:grid !important; grid-template-columns:repeat(3,1fr); gap:16px;
  margin:0 auto !important; max-width:var(--schill-max); padding:16px;
}
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none !important; content:none !important; }
.woocommerce ul.products li.product {
  width:auto !important; margin:0 !important; float:none !important; padding:0 !important;
  background:var(--schill-cream); border:1px solid var(--schill-border); border-radius:16px;
  overflow:hidden; box-shadow:0 2px 6px rgba(61,31,8,.12);
  display:flex; flex-direction:column; transition:box-shadow .2s,transform .2s;
}
.woocommerce ul.products li.product:hover { box-shadow:0 8px 22px rgba(61,31,8,.18); transform:translateY(-2px); }
.woocommerce ul.products li.product a img { margin:0 !important; border-radius:0 !important; width:100%; height:auto; display:block; }
.woocommerce ul.products li.product .woocommerce-loop-product__title { font-family:'Baloo 2',sans-serif; font-size:16px; font-weight:700; color:var(--schill-wood-deep); text-align:center; padding:16px 16px 0; }
.woocommerce ul.products li.product .price { font-family:'Baloo 2',sans-serif; font-size:20px; font-weight:700; color:var(--schill-green); text-align:center; display:block; margin:6px 0 0; }
.woocommerce ul.products li.product .price del { color:var(--schill-text-muted); font-weight:400; }
.woocommerce ul.products li.product .price ins { text-decoration:none; color:var(--schill-green-dark); }
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
  margin:auto 16px 16px !important; background:var(--schill-gold) !important;
  color:var(--schill-wood-deep) !important; border-radius:8px !important;
  padding:9px 0 !important; font-family:Lato,sans-serif; font-size:14px;
  font-weight:700; text-align:center; letter-spacing:.03em; border:none !important; display:block;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .added_to_cart:hover { background:var(--schill-gold-dark) !important; }
.woocommerce span.onsale { background:var(--schill-green) !important; color:#fff !important; border-radius:4px; min-height:auto; min-width:auto; padding:3px 10px; font-size:11px; font-weight:700; letter-spacing:.07em; text-transform:uppercase; top:10px; left:10px; right:auto; margin:0; line-height:1.4; }
.single-product div.product { max-width:var(--schill-max); margin:0 auto; padding:24px 16px; }
.single-product div.product .product_title { font-size:30px; font-weight:700; margin-bottom:8px; }
.single-product div.product p.price,
.single-product div.product span.price { font-family:'Baloo 2',sans-serif; color:var(--schill-green) !important; font-weight:700; font-size:26px; }
.single-product div.product .woocommerce-product-details__short-description { color:var(--schill-text-sec); line-height:1.55; }
.woocommerce #respond input#submit,
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,
.woocommerce .single_add_to_cart_button { background:var(--schill-gold) !important; color:var(--schill-wood-deep) !important; border-radius:8px !important; font-family:Lato,sans-serif; font-weight:700; letter-spacing:.03em; border:none !important; padding:12px 22px !important; }
.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover,
.woocommerce .single_add_to_cart_button:hover { background:var(--schill-gold-dark) !important; }
.woocommerce .button.alt,.woocommerce .checkout-button { background:var(--schill-green) !important; color:#fff !important; }
.woocommerce .button.alt:hover,.woocommerce .checkout-button:hover { background:var(--schill-green-dark) !important; }
.woocommerce .woocommerce-breadcrumb { max-width:var(--schill-max); margin:0 auto; padding:12px 16px 0; color:var(--schill-text-muted); }
.woocommerce .woocommerce-breadcrumb a { color:var(--schill-wood); }
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering { max-width:var(--schill-max); margin:0 auto; padding:0 16px; }

/* ---------------------------------------------------------------------------
 *  RESPONSIVE
 *
 *  =980px   : Desktop (3-Spalten-Grid, volle Nav, kein Burger)
 *  600–979px: Tablet Portrait (1-Spalten-Grid, Burger, Nav-Promo, 3-spaltig Produkte)
 *  =599px   : Mobil (1-Spalten-Grid, Burger, 1-spaltig Produkte)
 * ---------------------------------------------------------------------------*/

/* -- Tablet Portrait + Mobil: gemeinsame Regeln ---------------------------- */
@media (max-width:979px) {

  /* 1-Spalten-Seiten-Grid */
  .schill-body .schill-inner { grid-template-columns:1fr; }

  /* Slimbar: schmaler, einzeilig, Newsletter ausblenden */
  .schill-slimbar .schill-inner {
    flex-wrap:nowrap; gap:24px; padding:7px 6px;
    justify-content:center;
    font-size:clamp(10px,2.8vw,14px);
  }
  .schill-slimbar svg { width:12px; height:12px; }  .schill-slimbar .schill-slim-newsletter { display:none; }

  /* Nav: Burger-Layout */
  .schill-nav-indent { display:none; }
  .schill-nav { flex-wrap:nowrap; }

  /* Burger sichtbar */
  .schill-cat-burger  { display:block; order:1; }
  .schill-nav-promo   { display:block; }
  .schill-nav-burger  { display:none !important; }  /* rechter Burger entfällt */
  .schill-cart-link   { order:2; margin-left:auto; }

  /* Nav-Links werden auf Tablet/Mobil im Footer gezeigt, nicht per Burger */
  .schill-navlinks {
    position:absolute; top:100%; left:0; right:0; z-index:60;
    display:none !important; flex-direction:column; gap:0;
    background:var(--schill-cream-mid); border-top:1px solid var(--schill-border);
    box-shadow:0 10px 24px rgba(61,31,8,.16);
  }
  .schill-nav.is-open .schill-navlinks { display:flex; }
  .schill-navlinks a { padding:12px 24px; border-bottom:1px solid var(--schill-border-soft); }
  .schill-navlinks a:last-child { border-bottom:none; }

  /* Haus-Icon verstecken, Textlink zeigen */
  .schill-navlinks a.schill-home      { display:none; }
  .schill-navlinks a.schill-home-text { display:flex; }

  /* Linkes Menü: standardmäßig eingeklappt */
  .schill-catbody { display:none; }
  .schill-catwrap.is-open .schill-catbody { display:block; }
}

/* -- Tablet Portrait (600–979px): Produkte 3-spaltig ---------------------- */
@media (max-width:979px) and (min-width:600px) {
  .schill-prodgrid { grid-template-columns:repeat(3,1fr); }
  .woocommerce ul.products,.woocommerce-page ul.products { grid-template-columns:repeat(3,1fr); }
}

/* -- Mobil (=599px): Produkte 1-spaltig, kleinere Überschrift ------------- */
@media (max-width:599px) {
  .schill-prodgrid { grid-template-columns:1fr; }
  .schill-welcome-h { font-size:22px; }
  .woocommerce ul.products,.woocommerce-page ul.products { grid-template-columns:1fr; }
  /* Produktbilder auf ~50% Höhe begrenzen */
  .schill-card-img img {
    max-height:160px; object-fit:contain;
    background:var(--schill-cream);
  }
}

/* -- Desktop (=980px): explizite Overrides --------------------------------- */
@media (min-width:980px) {
  .schill-catbody         { display:block !important; }
  .schill-navlinks        { display:flex !important; position:static !important;
                            flex-direction:row !important; }
  .schill-nav-promo       { display:none !important; }
  .schill-slim-newsletter { display:inline-flex !important; }
  .schill-cat-burger,
  .schill-nav-burger      { display:none !important; }
  .schill-nav-indent      { display:block !important; }
  .schill-cart-link       { margin-left:auto !important; order:unset !important; }
  .schill-footer-navlinks { display:none !important; }
}
