/* KazelOnline Stage 8: section alignment, readable detail text, no layout reset.
   Loaded after the existing Stage 5-6-7 styles. No scripts or price changes. */

/* The heading occupies row 2; its action uses the SAME row, not the subtitle. */
.store-home.kzl-home-polish .store-section-head,
.store-home.kzl-home-polish .parts-category-head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap: 0 20px;
  align-items: center;
  justify-content: normal;
  margin-bottom: 22px;
}
.store-home.kzl-home-polish .store-section-head > div,
.store-home.kzl-home-polish .parts-category-head > div {
  display: contents;
}
.store-home.kzl-home-polish .store-section-head .store-kicker,
.store-home.kzl-home-polish .parts-category-head .store-kicker {
  grid-column: 1 / -1;
  grid-row: 1;
  margin: 0 0 7px;
}
.store-home.kzl-home-polish .store-section-head h2,
.store-home.kzl-home-polish .parts-category-head h2 {
  grid-column: 1;
  grid-row: 2;
  margin: 0;
  min-width: 0;
  line-height: 1.2;
}
.store-home.kzl-home-polish .store-section-head p:not(.store-kicker),
.store-home.kzl-home-polish .parts-category-head p:not(.store-kicker) {
  grid-column: 1 / -1;
  grid-row: 3;
  margin: 8px 0 0;
  font-size: 14px;
  line-height: 1.55;
}
.store-home.kzl-home-polish .store-section-head > a,
.store-home.kzl-home-polish .parts-category-head > a {
  grid-column: 2;
  grid-row: 2;
  justify-self: end;
  align-self: center;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  margin: 0;
  padding: 5px 0 5px 12px;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.45;
  white-space: nowrap;
  text-decoration: none;
}
.store-home.kzl-home-polish .store-section-head > a:hover,
.store-home.kzl-home-polish .parts-category-head > a:hover { text-decoration: underline; }
.store-home.kzl-home-polish .store-section-head > a:focus-visible,
.store-home.kzl-home-polish .parts-category-head > a:focus-visible {
  outline: 2px solid var(--accent, #df162d);
  outline-offset: 4px;
  border-radius: 3px;
}

/* Small tax labels: readable at 100% zoom, including the two-column mobile grid.
   The gross amount retains its existing, larger size. The calculation is untouched. */
.kzl-vat-included,
.kzl-vat-mini,
.kzl-vat-card,
.kzl-vat-unit,
.kzl-vat-legacy {
  font-size: 13px;
  line-height: 1.55;
  color: #526174;
}
.kzl-vat-mini { gap: 4px; overflow-wrap: anywhere; }
.kzl-vat-breakdown,
.kzl-vat-breakdown.is-compact { font-size: 13px; line-height: 1.55; }

/* Footer scope only; preserve the configured links, support band and columns. */
.site-footer.kzl-footer .kzl-footer-brand > p,
.site-footer.kzl-footer .kzl-footer-brand > address,
.site-footer.kzl-footer .kzl-footer-nav > a {
  font-size: 14px;
  line-height: 1.65;
  color: #526174 !important;
}
.site-footer.kzl-footer .kzl-footer-nav { gap: 6px; }
.site-footer.kzl-footer .kzl-footer-nav h3 { font-size: 15px; }
.site-footer.kzl-footer .kzl-footer-nav > a { padding: 4px 0; }
.site-footer.kzl-footer .kzl-footer-help-copy p,
.site-footer.kzl-footer .kzl-footer-email { font-size: 14px; }
.site-footer.kzl-footer .kzl-footer-phone small { font-size: 12px; color: #526174 !important; }
.site-footer.kzl-footer .kzl-footer-bottom,
.site-footer.kzl-footer .kzl-footer-bottom small,
.site-footer.kzl-footer .kzl-footer-bottom > span,
.site-footer.kzl-footer .kzl-footer-bottom .kzl-footer-discover {
  font-size: 13px;
  line-height: 1.6;
  color: #526174 !important;
}

/* Compact legal footer: keep every link without letting the footer dominate the page. */
.site-footer.kzl-footer .kzl-footer-help { padding: 22px 0; }
.site-footer.kzl-footer .kzl-footer-grid {
  grid-template-columns: minmax(240px, 1.35fr) minmax(120px, .72fr) minmax(120px, .72fr) minmax(380px, 1.75fr);
  gap: 28px;
  padding: 28px 0 24px;
}
.site-footer.kzl-footer .kzl-footer-brand { gap: 11px; }
.site-footer.kzl-footer .kzl-footer-legal {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  column-gap: 24px;
  row-gap: 3px;
}
.site-footer.kzl-footer .kzl-footer-legal h3 { grid-column: 1 / -1; }
.site-footer.kzl-footer .kzl-footer-legal > a { padding: 2px 0; }
.site-footer.kzl-footer .kzl-footer-bottom { padding: 16px 0 18px; }

@media (max-width: 1050px) and (min-width: 581px) {
  .site-footer.kzl-footer .kzl-footer-grid { padding: 26px 0 22px; }
  .site-footer.kzl-footer .kzl-footer-legal { grid-template-columns: 1fr; }
}

@media (max-width: 600px) {
  .store-home.kzl-home-polish .store-section-head,
  .store-home.kzl-home-polish .parts-category-head {
    column-gap: 10px;
    margin-bottom: 18px;
  }
  .store-home.kzl-home-polish .store-section-head h2,
  .store-home.kzl-home-polish .parts-category-head h2 {
    font-size: 23px !important;
    letter-spacing: -.035em;
    overflow-wrap: normal;
  }
  .store-home.kzl-home-polish .store-section-head > a,
  .store-home.kzl-home-polish .parts-category-head > a {
    font-size: 13px;
    padding-left: 0;
  }
  .store-home.kzl-home-polish .store-section-head p:not(.store-kicker),
  .store-home.kzl-home-polish .parts-category-head p:not(.store-kicker) { font-size: 13px; }
  .site-footer.kzl-footer .kzl-footer-nav > a { min-height: 36px; padding: 6px 0; }
  .site-footer.kzl-footer .kzl-footer-bottom { gap: 12px; }
}

@media (max-width: 580px) {
  .site-footer.kzl-footer .kzl-footer-help { padding: 20px 0; }
  .site-footer.kzl-footer .kzl-footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    padding: 24px 0 20px;
    gap: 24px 18px;
  }
  .site-footer.kzl-footer .kzl-footer-legal { display: flex; gap: 4px; }
  .site-footer.kzl-footer .kzl-footer-legal > a { min-height: 34px; padding: 5px 0; }
  .site-footer.kzl-footer .kzl-footer-bottom { padding: 15px 0 18px; }
}

@media (max-width: 420px) {
  .site-footer.kzl-footer .kzl-footer-grid { grid-template-columns: 1fr; }
}

/* Information and legal pages */
.kzl-info-page { background:#f5f7fa; color:#111827; min-height:55vh; }
.kzl-info-shell { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
.kzl-info-hero { padding:42px 0 38px; background:linear-gradient(135deg,#0d1728 0%,#15243b 100%); color:#fff; }
.kzl-info-breadcrumb { display:flex; gap:9px; align-items:center; margin-bottom:25px; font-size:13px; color:#aeb9c9; }
.kzl-info-breadcrumb a { color:#fff; text-decoration:none; }
.kzl-info-kicker { display:block; margin-bottom:9px; color:#ff4053; font-size:12px; font-weight:800; letter-spacing:.14em; }
.kzl-info-hero h1 { max-width:850px; margin:0; font-size:clamp(32px,4vw,50px); line-height:1.08; letter-spacing:-.035em; }
.kzl-info-hero .lead { max-width:760px; margin:16px 0 0; color:#d6dde8; font-size:17px; line-height:1.7; }
.kzl-info-layout { display:grid; grid-template-columns:minmax(0,1fr) 320px; gap:28px; align-items:start; padding-block:36px 56px; }
.kzl-info-card,.kzl-info-aside { background:#fff; border:1px solid #e2e7ee; border-radius:18px; box-shadow:0 10px 30px rgba(15,23,42,.055); }
.kzl-info-card { padding:clamp(25px,4vw,48px); }
.kzl-info-card .rich-content { max-width:820px; color:#344054; font-size:16px; line-height:1.75; }
.kzl-info-card .rich-content h2 { margin:34px 0 12px; color:#111827; font-size:24px; line-height:1.25; letter-spacing:-.02em; }
.kzl-info-card .rich-content h2:first-child { margin-top:0; }
.kzl-info-card .rich-content h3 { margin:26px 0 9px; color:#172033; font-size:18px; }
.kzl-info-card .rich-content p { margin:0 0 15px; }
.kzl-info-card .rich-content ul,.kzl-info-card .rich-content ol { margin:10px 0 20px; padding-left:22px; }
.kzl-info-card .rich-content li { margin:7px 0; }
.kzl-info-card .rich-content a { color:#cf1628; text-underline-offset:3px; }
.kzl-info-card .rich-content strong { color:#172033; }
.kzl-info-card .rich-content table { width:100%; border-collapse:collapse; margin:20px 0; font-size:14px; }
.kzl-info-card .rich-content th,.kzl-info-card .rich-content td { padding:12px 14px; border:1px solid #e2e7ee; text-align:left; vertical-align:top; }
.kzl-info-card .rich-content th { background:#f7f8fa; color:#172033; }
.kzl-info-aside { position:sticky; top:96px; padding:28px; }
.kzl-info-aside-icon { display:grid; place-items:center; width:44px; height:44px; margin-bottom:19px; border-radius:13px; background:#fff0f2; color:#dc1e33; font-size:23px; font-weight:800; }
.kzl-info-aside h2 { margin:0 0 9px; font-size:21px; letter-spacing:-.02em; }
.kzl-info-aside>p { margin:0 0 22px; color:#667085; font-size:14px; line-height:1.65; }
.kzl-info-contact { display:block; padding:14px 0; border-top:1px solid #edf0f4; color:#172033; text-decoration:none; overflow-wrap:anywhere; }
.kzl-info-contact small { display:block; margin-bottom:3px; color:#667085; }
.kzl-info-contact strong { font-size:14px; }
.kzl-info-action { display:flex; justify-content:center; margin-top:20px; padding:13px 16px; border-radius:10px; background:#dc1e33; color:#fff; font-weight:750; text-decoration:none; }
.kzl-info-action:hover { background:#b91426; }
@media(max-width:820px){.kzl-info-layout{grid-template-columns:1fr}.kzl-info-aside{position:static}.kzl-info-hero{padding:32px 0}.kzl-info-shell{width:min(100% - 28px,1180px)}}
