/* Ziel Practice R35 — consistent vector icon language. Icons only. */
/* Home module illustrations: same 56px footprint, SVG stays sharp at any DPR. */
#zp-home-v5 .cpv3-icon-img {width:56px;height:56px;max-height:56px;object-fit:contain;image-rendering:auto;border-radius:0;}
/* Shared outline style: noninteractive artwork only, no reflow. */
.ziel-r35-line {stroke-linecap:round;stroke-linejoin:round;shape-rendering:geometricPrecision;}
/* About: matching rounded mint tiles, without affecting card dimensions or text. */
.ziel-about-r17 .za17-mini > svg.ziel-r35-line {
 border-radius:15px;background:linear-gradient(140deg,#ecfbf7 0%,#dff6ef 100%);
 color:#00856f;stroke-width:1.9;flex:none;
}
.ziel-about-r17 .za17-mission-note > svg.ziel-r35-line{color:#00856f;stroke-width:1.9;}
/* Contact category artwork: preserve existing button sizing/interaction. */
#zc13 .zc13-options button > svg.ziel-r35-line:not(.zc13-card-arrow){
 color:#00856f;stroke-width:1.9;shape-rendering:geometricPrecision;
}
#zc13 .zc13-points svg.ziel-r35-line,
#zc13 .zc13-whatsapp-why svg.ziel-r35-line{color:#00856f;stroke-width:1.9;}
/* Why Ziel: icon geometry now shares the same rounded stroke system. */
#ziel-why-r2 svg use{stroke-linecap:round;stroke-linejoin:round;}
/* Pricing FAQ: more refined interactive mint controls; keep plus/rotation behavior. */
body:has(.pricing-grid) .faq-icon{display:inline-grid;place-items:center;
 width:28px;height:28px;border-radius:10px;background:#e9f9f4;
 color:#00856f;font-weight:650;line-height:1;}
@media (prefers-reduced-motion: reduce) {.ziel-r35-line{transition:none!important;}}


/* R36: icon backplates only. Preserve R35 teal icon artwork and surrounding card layouts. */
/* Opaque white edges remove the dark corner artifacts seen around SVG tiles. */
#zp-home-v5 .cpv3-icon-img {
  display:block;
  width:56px;
  height:56px;
  background-color:#ffffff;
  border-radius:17px;
  overflow:hidden;
  backface-visibility:visible;
  image-rendering:auto;
}
/* Explicit About SVG holder separates the white outside from the mint inside. */
#za17 .za17-mini > .ziel-r36-icon-surround {
  position:relative;
  display:grid;
  place-items:center;
  isolation:isolate;
  flex:0 0 50px;
  width:50px;
  height:50px;
  background:#ffffff;
  border-radius:16px;
  overflow:hidden;
}
#za17 .za17-mini > .ziel-r36-icon-surround::before {
  content:"";
  position:absolute;
  inset:1px;
  border-radius:15px;
  background:linear-gradient(140deg,#ecfbf7 0%,#dff6ef 100%);
  border:1px solid #d6eee7;
}
#za17 .za17-mini > .ziel-r36-icon-surround > svg.ziel-r35-line {
  position:relative;
  z-index:1;
  box-sizing:border-box;
  width:26px;
  height:26px;
  min-width:0;
  padding:0;
  margin:0;
  border:0;
  border-radius:0;
  background:none;
  color:#00856f;
  flex:none;
  overflow:visible;
  stroke-width:1.9;
}
#za17 .za17-product-points .za17-mini > .ziel-r36-icon-surround {
  flex-basis:40px;width:40px;height:40px;border-radius:13px;
}
#za17 .za17-product-points .za17-mini > .ziel-r36-icon-surround::before{border-radius:12px;}
#za17 .za17-product-points .za17-mini > .ziel-r36-icon-surround > svg {width:21px;height:21px;}
#za17 section[aria-labelledby="za17-philosophy"] .za17-mini > .ziel-r36-icon-surround {
  flex-basis:74px;width:74px;height:74px;border-radius:22px;
}
#za17 section[aria-labelledby="za17-philosophy"] .za17-mini > .ziel-r36-icon-surround::before{border-radius:21px;}
#za17 section[aria-labelledby="za17-philosophy"] .za17-mini > .ziel-r36-icon-surround > svg {width:36px;height:36px;}
@media (max-width:620px){
  #za17 section[aria-labelledby="za17-philosophy"] .za17-mini > .ziel-r36-icon-surround{
    flex-basis:64px;width:64px;height:64px;border-radius:19px;
  }
  #za17 section[aria-labelledby="za17-philosophy"] .za17-mini > .ziel-r36-icon-surround::before{border-radius:18px;}
  #za17 section[aria-labelledby="za17-philosophy"] .za17-mini > .ziel-r36-icon-surround > svg{width:32px;height:32px;}
}

/* R37: inline vector icons avoid cached raster artifacts at tile corners. */
#zp-home-v5 svg.cpv3-icon-inline {
  display:block; width:56px; height:56px; min-width:56px; max-width:56px;
  background:#fff; border-radius:16px; overflow:hidden;
  box-sizing:border-box; flex:none; vertical-align:top;
}
