/* Zkusvino — information / centered brand / contact, 2026-09-09 v1.1.0.
   Append after all current footer and review styles. CSS only: all native
   content, links, hidden payment/widget settings and footer-bottom survive. */
body.zv-shoptet #footer.footer > .footer-rows {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  grid-template-areas:'information brand contact';
  align-items:center;
  gap:clamp(24px,3.5vw,56px);
  padding-bottom:40px;
}
/* Remove clearfix pseudo boxes from this grid, not the brand slogan. */
body.zv-shoptet #footer.footer > .footer-rows::before,
body.zv-shoptet #footer.footer > .footer-rows::after { display:none; }
body.zv-shoptet #footer.footer > .footer-rows > .custom-footer {
  display:contents;
}
body.zv-shoptet #footer.footer > .footer-rows > .custom-footer > .custom-footer__articles {
  grid-area:information;
  width:100%;
  max-width:100%;
  min-width:0;
  justify-self:center;
  text-align:center;
}
body.zv-shoptet #footer.footer .custom-footer__articles h3,
body.zv-shoptet #footer.footer .custom-footer__articles ul,
body.zv-shoptet #footer.footer .custom-footer__articles li { text-align:center; }

body.zv-shoptet #footer.footer > .footer-rows > .site-name {
  grid-area:brand;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  align-self:center;
  justify-self:center;
  gap:20px;
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:180px;
  margin:0;
  padding:24px 18px;
  border:0;
  border-inline:1px solid #d2c3b4;
  text-align:center;
}
body.zv-shoptet #footer.footer > .footer-rows > .site-name > a {
  display:block;
  width:clamp(170px,15vw,220px);
  max-width:100%;
  margin:0 auto;
}
body.zv-shoptet #footer.footer > .footer-rows > .site-name img {
  width:100%;
  max-width:100%;
  height:auto;
  margin:0 auto;
}
body.zv-shoptet #footer.footer > .footer-rows > .site-name::after {
  max-width:290px;
  font-size:clamp(22px,2vw,28px);
  line-height:1.25;
  letter-spacing:-.02em;
  text-align:center;
  text-wrap:balance;
}
body.zv-shoptet #footer.footer > .footer-rows > .custom-footer > .custom-footer__contact {
  grid-area:contact;
  width:100%;
  min-width:0;
  max-width:440px;
  justify-self:center;
  margin:0;
}
body.zv-shoptet #footer.footer .custom-footer__contact h3,
body.zv-shoptet #footer.footer .contact-box,
body.zv-shoptet #footer.footer .contact-box > strong,
body.zv-shoptet #footer.footer .contact-box ul,
body.zv-shoptet #footer.footer .contact-box li { text-align:center; }
body.zv-shoptet #footer.footer .contact-box ul li > span {
  justify-content:center;
  text-align:center;
}
body.zv-shoptet #footer.footer .contact-box ul li > span > a { text-align:center; }
body.zv-shoptet #footer.footer .contact-box .tel a { font-size:clamp(18px,1.6vw,22px); }

/* Keep the review text and cards inside the same comfortable page inset. */
body.zv-shoptet:has(.banner-rating.zv-home-reviews) #zv-cakes {
  margin-bottom:24px;
}
body.zv-shoptet .welcome-wrapper:has(.banner-rating.zv-home-reviews) {
  margin-top:24px;
}
body.zv-shoptet .banner-rating.zv-home-reviews {
  padding-top:16px;
  padding-bottom:48px;
}
body.zv-shoptet .banner-rating.zv-home-reviews .zvr-section {
  width:100%;
  max-width:min(1648px,calc(100% - 2 * var(--zv-inset,40px)));
  margin-inline:auto;
}

@media(max-width:1023px) {
  body.zv-shoptet #footer.footer > .footer-rows {
    grid-template-columns:minmax(0,1fr);
    grid-template-areas:'brand' 'information' 'contact';
    gap:32px;
    justify-items:center;
    padding-bottom:32px;
  }
  body.zv-shoptet #footer.footer > .footer-rows > .site-name {
    min-height:0;
    max-width:440px;
    padding:4px 0 28px;
    border:0;
    border-bottom:1px solid #d2c3b4;
    gap:18px;
  }
  body.zv-shoptet #footer.footer > .footer-rows > .site-name > a { width:200px; }
  body.zv-shoptet #footer.footer > .footer-rows > .site-name::after { font-size:26px; }
  body.zv-shoptet #footer.footer > .footer-rows > .custom-footer > .custom-footer__articles,
  body.zv-shoptet #footer.footer > .footer-rows > .custom-footer > .custom-footer__contact {
    width:100%;
    max-width:440px;
    justify-self:center;
    text-align:center;
  }
  body.zv-shoptet #footer.footer .custom-footer__articles h3,
  body.zv-shoptet #footer.footer .custom-footer__articles ul,
  body.zv-shoptet #footer.footer .custom-footer__articles li,
  body.zv-shoptet #footer.footer .custom-footer__contact h3,
  body.zv-shoptet #footer.footer .contact-box,
  body.zv-shoptet #footer.footer .contact-box > strong,
  body.zv-shoptet #footer.footer .contact-box ul,
  body.zv-shoptet #footer.footer .contact-box li,
  body.zv-shoptet #footer.footer .contact-box ul li > span,
  body.zv-shoptet #footer.footer .contact-box ul li > span > a { text-align:center; }
  body.zv-shoptet #footer.footer .contact-box ul li > span { justify-content:center; }
  body.zv-shoptet #footer.footer .contact-box .tel a { font-size:clamp(18px,5.5vw,23px); }
}
@media(max-width:767px) {
  body.zv-shoptet:has(.banner-rating.zv-home-reviews) #zv-cakes { margin-bottom:16px; }
  body.zv-shoptet .welcome-wrapper:has(.banner-rating.zv-home-reviews) { margin-top:16px; }
  body.zv-shoptet .banner-rating.zv-home-reviews { padding-bottom:40px; }
  body.zv-shoptet .banner-rating.zv-home-reviews .zvr-section {
    max-width:calc(100% - 40px);
  }
}
