/* ki_pure_ingredients — title + radial diagram + callout + foot. */

.ki-scope .ki-pure-ingredients {
  padding: 140px 0;
  position: relative;
  /* default sky bg — overridable via the section_bg color control. */
  background: var(--ki-blue-tint);
}
/* Full-bleed background image + overlay layers (Elementor native group
   controls drive these). Both are transparent until configured, so the solid
   section background shows through by default. */
.ki-scope .ki-pure-ingredients .ki-pi-bg,
.ki-scope .ki-pure-ingredients .ki-pi-overlay {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
}
.ki-scope .ki-pure-ingredients .ki-pi-bg      { z-index: 0; }
.ki-scope .ki-pure-ingredients .ki-pi-overlay { z-index: 1; }
.ki-scope .ki-pure-ingredients .ki-pi-wrap {
  position: relative;
  z-index: 2;
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 48px;
}
.ki-scope .ki-pure-ingredients .ki-pi-title {
  /* Source `.ingredients-head` (Ki Home.html 343–347). */
  text-align: center;
  margin-bottom: 72px;
}
.ki-scope .ki-pure-ingredients .ki-pi-title .eyebrow {
  display: block;
  margin-bottom: 20px;
  font-family: var(--ki-sans);
  font-size: 14px;
  font-weight: 600;
  letter-spacing: 0.22em;
  text-transform: uppercase;
  color: var(--ki-blue-2);
}
.ki-scope .ki-pure-ingredients .ki-pi-title h2 {
  font-family: var(--ki-serif);
  font-weight: 400;
  font-size: clamp(40px, 5vw, 64px);
  line-height: 1.05;
  letter-spacing: -0.005em;
  margin: 0 auto 16px;
  max-width: 18ch;
  color: #000;
}
.ki-scope .ki-pure-ingredients .ki-pi-title .ki-pi-sub {
  font-family: var(--ki-sans);
  font-size: 17px;
  line-height: 1.6;
  color: var(--ki-ink-mute);
  margin: 0 auto;
  max-width: 54ch;
}

.ki-scope .ki-pure-ingredients .ingredient-grid {
  /* Source `.ing-grid` (Ki Home.html 349–351). */
  display: grid;
  grid-template-columns: 1fr 1.1fr 1fr;
  gap: 32px;
  align-items: center;
}
.ki-scope .ki-pure-ingredients .ingredient-col {
  display: flex;
  flex-direction: column;
  gap: 28px;
}
.ki-scope .ki-pure-ingredients .ing-card {
  /* Source `.ing-card` (Ki Home.html 353–367). */
  padding: 28px 26px;
  background: #fff;
  border: 1px solid var(--ki-rule-cool);
  position: relative;
}
.ki-scope .ki-pure-ingredients .ing-card .n {
  font-family: var(--ki-sans);
  font-size: 11px;
  letter-spacing: 0.22em;
  color: var(--ki-blue);
  font-weight: 600;
  text-transform: uppercase;
  margin-bottom: 14px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
}
.ki-scope .ki-pure-ingredients .ing-card .n .sym {
  font-family: var(--ki-serif);
  font-style: normal;
  font-size: 22px;
  color: #fff;
  background: var(--ki-blue);
  width: 40px;
  height: 40px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  letter-spacing: 0;
}
.ki-scope .ki-pure-ingredients .ing-card h3 {
  font-family: var(--ki-serif);
  font-weight: 400;
  font-size: 24px;
  margin: 0 0 4px;
  color: #000;
  display: flex;
  align-items: baseline;
  gap: 10px;
}
.ki-scope .ki-pure-ingredients .ing-card h3 small {
  font-family: var(--ki-num);
  font-size: 14px;
  color: var(--ki-ink-mute);
  font-weight: 500;
  letter-spacing: 0;
}
.ki-scope .ki-pure-ingredients .ing-card p {
  margin: 0;
  font-family: var(--ki-sans);
  font-size: 14.5px;
  color: var(--ki-ink-mute);
  line-height: 1.55;
}
.ki-scope .ki-pure-ingredients .ing-card .bar {
  margin-top: 16px;
  height: 3px;
  background: var(--ki-rule-cool);
  border-radius: 2px;
  overflow: hidden;
}
.ki-scope .ki-pure-ingredients .ing-card .bar i {
  display: block;
  height: 100%;
  background: var(--ki-blue);
  border-radius: 2px;
}

.ki-scope .ki-pure-ingredients .ing-center {
  /* Source `.ing-center` (Ki Home.html 369–378). */
  position: relative;
  aspect-ratio: 1;
  background: transparent;
  overflow: hidden;
}
.ki-scope .ki-pure-ingredients .ing-center .ki-pi-center-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  display: block;
}
.ki-scope .ki-pure-ingredients .ing-center .product-placeholder {
  position: absolute;
  inset: 16%;
  display: grid;
  place-items: center;
  text-align: center;
  font-family: var(--ki-sans);
  font-size: 11px;
  letter-spacing: 0.18em;
  color: var(--ki-ink-mute);
  font-weight: 600;
  border: 1px dashed var(--ki-rule-cool);
  border-radius: 50%;
  background: rgba(255,255,255,0.6);
  text-transform: uppercase;
}

.ki-scope .ki-pure-ingredients .ki-pi-callout {
  /* Source `.ing-callout` (Ki Home.html 379–386). */
  margin-top: 64px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  gap: 32px;
  align-items: center;
  padding: 36px 48px;
  background: #fff;
  border: 1px solid var(--ki-rule-cool);
}
.ki-scope .ki-pure-ingredients .ki-pi-callout .left {
  text-align: right;
  font-family: var(--ki-serif);
  font-style: normal;
  font-size: 22px;
  color: #000;
  line-height: 1.3;
}
.ki-scope .ki-pure-ingredients .ki-pi-callout .mid {
  width: 64px;
  height: 64px;
  border-radius: 50%;
  border: 1px solid var(--ki-blue);
  display: grid;
  place-items: center;
  color: var(--ki-blue);
  font-family: var(--ki-serif);
  font-style: italic;
  font-size: 24px;
  background: transparent;
}
.ki-scope .ki-pure-ingredients .ki-pi-callout .right {
  text-align: left;
  font-family: var(--ki-serif);
  font-style: normal;
  font-size: 22px;
  color: #000;
  line-height: 1.3;
}
.ki-scope .ki-pure-ingredients .ki-pi-callout .right em {
  font-family: var(--ki-serif-italic);
  font-style: italic;
  color: var(--ki-blue-deep);
}

.ki-scope .ki-pure-ingredients .ki-ing-foot {
  margin-top: 64px;
  text-align: center;
}
.ki-scope .ki-pure-ingredients .ki-ing-foot h3 {
  font-family: var(--ki-serif);
  font-weight: 300;
  font-size: clamp(29px, 3.5vw, 45px);
  line-height: 1.05;
  margin: 0 0 14px;
  letter-spacing: -0.02em;
}
.ki-scope .ki-pure-ingredients .ki-ing-foot h3 em {
  font-style: italic;
  color: var(--ki-blue-deep);
}
.ki-scope .ki-pure-ingredients .ki-ing-foot p {
  font-family: var(--ki-serif);
  font-style: italic;
  font-size: 20px;
  color: var(--ki-ink-soft);
  max-width: 640px;
  margin: 0 auto;
  line-height: 1.5;
}

@media (max-width: 1100px) {
  .ki-scope .ki-pure-ingredients { padding: 96px 0; }
  .ki-scope .ki-pure-ingredients .ki-pi-wrap { padding: 0 32px; }
  .ki-scope .ki-pure-ingredients .ingredient-grid {
    grid-template-columns: 1fr;
    gap: 32px;
  }
  .ki-scope .ki-pure-ingredients .ing-center {
    max-width: 480px;
    margin: 0 auto;
    width: 100%;
  }
  .ki-scope .ki-pure-ingredients .ki-pi-callout {
    grid-template-columns: 1fr;
    text-align: center;
    padding: 32px 24px;
  }
  .ki-scope .ki-pure-ingredients .ki-pi-callout .left { text-align: center; }
  .ki-scope .ki-pure-ingredients .ki-pi-callout .right { text-align: center; }
  .ki-scope .ki-pure-ingredients .ki-pi-callout .mid { margin: 0 auto; }
}
@media (max-width: 700px) {
  .ki-scope .ki-pure-ingredients { padding: 72px 0; }
  .ki-scope .ki-pure-ingredients .ki-pi-wrap { padding: 0 24px; }
}
