/* ZWIERZAK 5.13.8 — edytowalny hero slider + finalne sterowanie mobile/tablet. */
.home .hero-visual{overflow:hidden}
.home .zw-home-slider,.home .zw-home-slider__track{position:absolute;inset:0;width:100%;height:100%}
.home .zw-home-slider__track{z-index:0}
.home .zw-home-slide{position:absolute;inset:0;margin:0;opacity:0;visibility:hidden;transition:opacity .65s ease,visibility .65s step-end}
.home .zw-home-slide.is-active{z-index:1;opacity:1;visibility:visible;transition:opacity .65s ease,visibility 0s}
.home .zw-home-slide picture,.home .zw-home-slide img{display:block;width:100%;height:100%}
.home .zw-home-slide img{object-fit:cover;object-position:center 48%}
.home .zw-home-slider__controls{position:absolute;z-index:5;right:20px;bottom:18px;display:flex;align-items:center;gap:8px}
.home .zw-home-slider__arrow{display:grid;width:38px;height:38px;place-items:center;padding:0;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(255,255,255,.88);color:#112019;box-shadow:0 7px 24px rgba(0,0,0,.10);cursor:pointer;backdrop-filter:blur(8px)}
.home .zw-home-slider__arrow:hover,.home .zw-home-slider__arrow:focus-visible{border-color:#087a3c;color:#087a3c;outline:none}
.home .zw-home-slider__dots{display:flex;align-items:center;gap:6px;padding:7px 9px;border-radius:999px;background:rgba(255,255,255,.88);box-shadow:0 7px 24px rgba(0,0,0,.08);backdrop-filter:blur(8px)}
.home .zw-home-slider__dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:#9baba2;cursor:pointer}
.home .zw-home-slider__dot.is-active{width:20px;border-radius:99px;background:#087a3c}

/* Finalne sterowanie mobile/tablet. Jedna reguła do 1024 px — bez nakładających się hotfixów.
   Reset min-size jest konieczny, bo warstwa dostępności nadaje przy pointer:coarse min-height:44px wszystkim buttonom. */
@media (max-width:1024px){
  body.zw-v510.home .zw-home-slider__controls{right:9px;bottom:9px;gap:0}
  body.zw-v510.home .zw-home-slider__arrow{display:none!important}
  body.zw-v510.home .zw-home-slider__dots{
    display:flex;
    align-items:center;
    gap:4px;
    padding:4px 6px;
    border-radius:999px;
  }
  body.zw-v510.home .zw-home-slider__dot{
    width:5px;
    height:5px;
    min-width:5px;
    min-height:5px;
    padding:0;
    border:0;
    border-radius:50%;
    opacity:.62;
  }
  body.zw-v510.home .zw-home-slider__dot.is-active{
    width:12px;
    height:5px;
    min-width:12px;
    min-height:5px;
    border-radius:999px;
    opacity:1;
  }
  body.zw-v510.home .zw-home-slider--mobile-controls-hidden .zw-home-slider__controls{display:none!important}
}
.home .hero-facts--v5131{
  display:grid;
  grid-template-columns:minmax(150px,.78fr) minmax(300px,1.62fr);
  align-items:stretch;
  gap:10px;
  max-width:650px;
  margin-top:24px;
}
.home .hero-facts--v5131>.hero-location,
.home .hero-facts--v5131>.hero-hours{
  min-width:0;
  border:1px solid rgba(203,221,211,.84);
  border-radius:14px;
  background:rgba(255,255,255,.76);
  box-shadow:0 8px 24px rgba(11,67,37,.045);
  backdrop-filter:blur(8px);
}
.home .hero-facts--v5131>.hero-location{
  display:flex;
  align-items:center;
  gap:10px;
  padding:12px 13px;
}
.home .hero-facts--v5131>.hero-location svg{
  flex:0 0 22px;
  width:22px;
  height:22px;
  color:#087a3c;
}
.home .hero-facts--v5131>.hero-location span{
  display:flex;
  min-width:0;
  flex-direction:column;
}
.home .hero-facts--v5131>.hero-location b{font-size:11px;line-height:1.25}
.home .hero-facts--v5131>.hero-location small{margin-top:2px;color:#64726b;font-size:9px}
.home .hero-facts--v5131>.hero-hours{
  display:grid!important;
  grid-template-columns:24px minmax(0,1fr);
  align-items:start;
  gap:9px;
  padding:10px 12px 11px;
  color:#17241d;
}
.home .hero-facts--v5131>.hero-hours>svg{
  width:22px;
  height:22px;
  margin-top:2px;
  color:#087a3c;
}
.home .hero-hours__content{display:grid;min-width:0;gap:2px}
.home .hero-hours__eyebrow{
  margin-bottom:3px;
  color:#087a3c;
  font-size:8px;
  font-weight:900;
  letter-spacing:.055em;
  line-height:1.2;
  text-transform:uppercase;
}
.home .hero-hours__row{
  display:grid;
  grid-template-columns:minmax(105px,1fr) auto;
  align-items:center;
  gap:14px;
  min-width:0;
  padding:2px 0;
  color:#44544b;
  line-height:1.22;
}
.home .hero-hours__row b{
  overflow:hidden;
  font-size:10px;
  font-weight:650;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.home .hero-hours__row strong{
  color:#17241d;
  font-size:10px;
  font-weight:800;
  white-space:nowrap;
}
.home .hero-hours__row.is-weekend{
  margin-top:1px;
  padding:3px 6px;
  border-radius:7px;
  background:rgba(8,122,60,.065);
}
.home .hero-hours__row.is-weekend b{
  color:#075f35;
  font-weight:900;
}
.home .hero-hours__row.is-weekend strong{
  color:#075f35;
  font-weight:900;
}
@media(max-width:860px){
  body.zw-v510.home .hero-facts--v5131{
    grid-template-columns:1fr;
    gap:9px;
    max-width:none;
    margin:0;
    padding:18px 24px 0;
  }
  body.zw-v510.home .hero-facts--v5131>.hero-location,
  body.zw-v510.home .hero-facts--v5131>.hero-hours{
    border:1px solid #e0ebe5;
    background:#f8fcfa;
  }
  body.zw-v510.home .hero-facts--v5131>.hero-hours{display:grid!important;grid-template-columns:26px minmax(0,1fr)}
  body.zw-v510.home .hero-hours__eyebrow{font-size:9px}
  body.zw-v510.home .hero-hours__row b,body.zw-v510.home .hero-hours__row strong{font-size:12px}
  body.zw-v510.home .hero-hours__row{grid-template-columns:minmax(150px,1fr) auto;padding:4px 0}
  body.zw-v510.home .hero-hours__row.is-weekend{padding:5px 8px}
}
@media(max-width:620px){
  body.zw-v510.home .hero-facts--v5131{padding:16px 18px 0}
  body.zw-v510.home .hero-facts--v5131>.hero-hours:last-child{display:grid!important}
}
@media(max-width:480px){
  body.zw-v510.home .hero-hours__row{grid-template-columns:minmax(0,1fr) auto;gap:8px}
  body.zw-v510.home .hero-hours__row b,body.zw-v510.home .hero-hours__row strong{font-size:11px}
}
@media(prefers-reduced-motion:reduce){.home .zw-home-slide{transition:none}}


/* =========================================================
   ZWIERZAK 5.13.2 — zaakceptowany układ hero:
   lokalizacja + duży moduł godzin + króliki jako fallback.
   ========================================================= */
@media (min-width:1025px){
  .home .hero-facts--v5131{
    grid-template-columns:minmax(0,520px);
    gap:12px;
    max-width:520px;
    margin-top:26px;
  }
  .home .hero-facts--v5131>.hero-location{
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    padding:2px 2px 4px;
  }
  .home .hero-facts--v5131>.hero-location svg{
    flex-basis:27px;
    width:27px;
    height:27px;
  }
  .home .hero-facts--v5131>.hero-location b{
    font-size:14px;
    font-weight:850;
  }
  .home .hero-facts--v5131>.hero-location small{
    margin-top:3px;
    color:#087a3c;
    font-size:11px;
    font-weight:750;
  }
  .home .hero-facts--v5131>.hero-hours{
    grid-template-columns:58px minmax(0,1fr);
    gap:18px;
    padding:20px 22px 21px;
    border-color:rgba(190,211,199,.9);
    border-radius:18px;
    background:rgba(255,255,255,.91);
    box-shadow:0 14px 38px rgba(11,67,37,.075);
    backdrop-filter:blur(12px);
  }
  .home .hero-facts--v5131>.hero-hours>svg{
    align-self:center;
    width:42px;
    height:42px;
    margin:0;
    padding:8px;
    border:2px solid #0b974e;
    border-radius:50%;
  }
  .home .hero-hours__content{
    gap:3px;
    padding-left:18px;
    border-left:1px solid #dbe7e0;
  }
  .home .hero-hours__eyebrow{
    margin-bottom:5px;
    font-size:14px;
    font-weight:900;
    letter-spacing:0;
    text-transform:none;
  }
  .home .hero-hours__row{
    grid-template-columns:minmax(180px,1fr) auto;
    gap:22px;
    padding:3px 0;
  }
  .home .hero-hours__row b,
  .home .hero-hours__row strong{
    font-size:16px;
    line-height:1.28;
  }
  .home .hero-hours__row:first-of-type b{
    font-weight:600;
    color:#293a31;
  }
  .home .hero-hours__row:first-of-type strong{
    font-weight:750;
  }
  .home .hero-hours__row.is-weekend{
    margin:0;
    padding:3px 0;
    border-radius:0;
    background:transparent;
  }
  .home .hero-hours__row.is-weekend b,
  .home .hero-hours__row.is-weekend strong{
    color:#087a3c;
    font-size:17px;
    font-weight:950;
  }
}

@media (max-width:860px){
  body.zw-v510.home .hero-facts--v5131>.hero-hours{
    grid-template-columns:42px minmax(0,1fr)!important;
    gap:12px;
    padding:15px 16px 16px;
    border-radius:15px;
  }
  body.zw-v510.home .hero-facts--v5131>.hero-hours>svg{
    width:34px;
    height:34px;
    margin:3px 0 0;
    padding:6px;
    border:2px solid #0b974e;
    border-radius:50%;
  }
  body.zw-v510.home .hero-hours__content{
    gap:2px;
    padding-left:12px;
    border-left:1px solid #dbe7e0;
  }
  body.zw-v510.home .hero-hours__eyebrow{
    margin-bottom:4px;
    font-size:12px;
    letter-spacing:0;
    text-transform:none;
  }
  body.zw-v510.home .hero-hours__row b,
  body.zw-v510.home .hero-hours__row strong{
    font-size:13px;
  }
  body.zw-v510.home .hero-hours__row.is-weekend b,
  body.zw-v510.home .hero-hours__row.is-weekend strong{
    font-size:14px;
    font-weight:900;
  }
}

@media (max-width:480px){
  body.zw-v510.home .hero-hours__row{
    grid-template-columns:minmax(0,1fr) auto;
    gap:10px;
  }
  body.zw-v510.home .hero-hours__row b,
  body.zw-v510.home .hero-hours__row strong{
    font-size:12px;
  }
  body.zw-v510.home .hero-hours__row.is-weekend b,
  body.zw-v510.home .hero-hours__row.is-weekend strong{
    font-size:13px;
  }
}
