/* KIVANTOS / one visual language for the existing brand pages.
 * Decorative rails never encode ingredient amounts, ratings or customer data.
 * The shared navigation and all native form actions remain untouched.
 */
body.kv-brand-body .kv {
  --kv-energy-panel: linear-gradient(155deg, #192f73 0%, #0c192f 46%, #080f1c 100%);
  --kv-energy-rail: repeating-linear-gradient(90deg, #c4e52d 0 12px, transparent 12px 17px);
  --kv-card-surface: #f0f3f7;
  --kv-card-border: #d7e0eb;
}

/* Use the first-drop label only at major content entries, not on every metric. */
body.kv-brand-body .kv main .inner-hero > .eyebrow,
body.kv-brand-body .kv main .lv-brand-intro-grid > div:first-child > .eyebrow,
body.kv-brand-body .kv main .kv-section-head > div > .eyebrow,
body.kv-brand-body .kv main .lv-section-heading > div > .eyebrow,
body.kv-brand-body .kv main .culture-heading > div > .eyebrow,
body.kv-brand-body .kv main .lv-brand-close > .wrap > .eyebrow,
body.kv-brand-body .kv main .kv-reviews-heading > .eyebrow {
  display: inline-block;
  box-sizing: border-box;
  max-width: calc(100% - 8px);
  margin: 0 0 24px;
  padding: 8px 13px;
  border: 0;
  border-radius: 0;
  background: var(--lime, #c4e52d);
  color: #152750;
  font: 10px/1.5 ui-monospace, SFMono-Regular, Consolas, monospace;
  letter-spacing: 1.5px;
  text-transform: uppercase;
  white-space: normal;
  overflow-wrap: normal;
  transform: rotate(-2deg);
  transform-origin: center;
  box-shadow: none;
}

/* A restrained electric-blue layer connects purchase, support and review cards. */
body.kv-brand-body .kv main .product > div:last-child,
body.kv-brand-body .kv main .pd-summary,
body.kv-brand-body .kv main .contact-callout,
body.kv-brand-body .kv main .kv-policy-toc,
body.kv-brand-body .kv main .kv-reviews-summary,
body.kv-brand-body .kv main .kv-home-review-summary {
  background: var(--kv-energy-panel);
  border-color: #31456a;
}
body.kv-brand-body .kv main .lv-inner-hero {
  border: 1px solid #31456a;
}
body.kv-brand-body .kv main .lv-inner-hero::after {
  /* Keep the existing photo overlay and stacking; only its blue tint is shared. */
  background: linear-gradient(90deg, #0c192ff5 30%, #142952e8 55%, #080f1c30);
}
body.kv-brand-body .kv main .value-grid > div:first-child,
body.kv-brand-body .kv main .lv-brand-formula .lv-brand-intro-grid > div:first-child,
body.kv-brand-body .kv main .step-grid > div:nth-child(2) {
  background: var(--kv-energy-panel);
  border-color: #31456a;
}

/* Replace existing accent lines with the same short instrument scale. */
body.kv-brand-body .kv main .step-grid > div::before {
  width: 68px;
  height: 4px;
  border-radius: 0;
  background: var(--kv-energy-rail);
  transform: skewX(-18deg);
}
body.kv-brand-body .kv main .kv-policy-toc > span::before,
body.kv-brand-body .kv main .kv-reviews-summary::before,
body.kv-brand-body .kv main .contact-callout::before {
  content: "";
  display: block;
  width: 68px;
  height: 4px;
  margin: 0 0 24px;
  background: var(--kv-energy-rail);
  transform: skewX(-18deg);
  pointer-events: none;
}
body.kv-brand-body .kv main .kv-policy-toc > span { color: var(--lime); }
body.kv-brand-body .kv main .kv-policy-copy,
body.kv-brand-body .kv main .wpcf7,
body.kv-brand-body .kv main .kv-reviews-form-card {
  border-top: 3px solid #192f73;
  background: #fff;
}

/* Readable content cards share their borders, selected state and type rhythm. */
body.kv-brand-body .kv main.page > .inner-section:not(:has(.step-grid, details, .kv-table-wrap, .wpcf7)),
body.kv-brand-body .kv main .lv-carry-copy,
body.kv-brand-body .kv main .kv-review-card,
body.kv-brand-body .kv main .kv-reviews-empty {
  background: var(--kv-card-surface);
  border-color: var(--kv-card-border);
}
body.kv-brand-body .kv main.page > .inner-section > h2,
body.kv-brand-body .kv main .lv-section-heading h2,
body.kv-brand-body .kv main .kv-section-head h2,
body.kv-brand-body .kv main .culture-heading h2 {
  font-family: var(--font-display, "Space Grotesk", sans-serif);
  font-weight: 600;
  letter-spacing: -.04em;
  line-height: 1.14;
}
body.kv-brand-body .kv main details {
  border-color: #d7e0eb;
  border-left: 3px solid #b5c3da;
}
body.kv-brand-body .kv main details[open] {
  border-color: #bac9dc;
  border-left-color: #192f73;
  background: #fff;
}
body.kv-brand-body .kv main details[open] > summary { color: #192f73; }
body.kv-brand-body .kv main .kv-review-verified {
  border-color: #bccb9f;
  background: #f5f8ed;
  color: #48620c;
}
body.kv-brand-body .kv main .kv-home-reviews .kv-rating-track path {
  fill: none;
  stroke: currentColor;
  stroke-width: 1.4;
}

/* Reuse the existing button's charge line, without adding another pseudo layer. */
body.kv-brand-body .kv :is(main, .kv-quick-order) .btn {
  border-radius: 9px;
  overflow: hidden;
  transition: border-color .22s ease, background-color .22s ease, box-shadow .22s ease;
}
body.kv-brand-body .kv :is(main, .kv-quick-order) .btn::before {
  inset: auto 16px 5px;
  height: 3px;
  z-index: 0;
  background: repeating-linear-gradient(90deg, currentColor 0 10px, transparent 10px 14px);
  transform: scaleX(.08);
  transform-origin: left;
  opacity: 0;
  animation: none;
  transition: transform .3s cubic-bezier(.16, 1, .3, 1), opacity .2s ease;
}
body.kv-brand-body .kv :is(main, .kv-quick-order) .btn::after { display: none; }
body.kv-brand-body .kv :is(main, .kv-quick-order) .btn:not(:disabled):focus-visible::before {
  opacity: .55;
  transform: scaleX(1);
}
body.kv-brand-body .kv :is(main, .kv-quick-order) .btn:focus-visible {
  outline: 2px solid #192f73;
  outline-offset: 4px;
  box-shadow: none;
}
body.kv-brand-body .kv main :is(.pd-summary, .product > div:last-child, .dark, .lv-inner-hero, .lv-brand-hero, .hero-v2, .race, .lv-nature) .btn:focus-visible {
  outline-color: #c4e52d;
}
body.kv-brand-body .kv .kv-quick-order .btn:focus-visible { outline-color: #c4e52d; }
body.kv-brand-body .kv main .wpcf7 :is(input[type=submit], .wpcf7-submit),
body.kv-brand-body .kv main .kv-reviews .submit:not(:disabled) {
  border-radius: 9px;
  background: #c4e52d;
  color: #152750;
  font-family: var(--font-text, "Manrope", sans-serif);
  font-weight: 600;
}
body.kv-brand-body .kv main .wpcf7 :is(input, select, textarea):focus-visible {
  outline: 2px solid #192f73;
  outline-offset: 3px;
}
body.kv-brand-body .kv main .kv-policy-toc a:focus-visible,
body.kv-brand-body .kv main .contact-callout a:focus-visible {
  outline: 2px solid #c4e52d;
  outline-offset: 4px;
}
@media (hover: hover) and (pointer: fine) {
  body.kv-brand-body .kv :is(main, .kv-quick-order) .btn:not(:disabled):hover {
    animation: none;
    transform: none;
    box-shadow: 0 0 0 1px #192f7360;
  }
  body.kv-brand-body .kv :is(main, .kv-quick-order) .btn:not(:disabled):hover::before {
    animation: none;
    opacity: .55;
    transform: scaleX(1);
  }
  body.kv-brand-body .kv :is(main, .kv-quick-order) .btn:not(:disabled):hover::after { display: none; }
  body.kv-brand-body .kv main .step-grid > div:hover,
  body.kv-brand-body .kv main .kv-review-card:hover,
  body.kv-brand-body .kv main details:hover { border-color: #8196b7; }
  body.kv-brand-body .kv main .wpcf7 :is(input[type=submit], .wpcf7-submit):hover { background: #d0eb50; }
}
@media (max-width: 760px) {
  body.kv-brand-body .kv main .lv-inner-hero::after {
    background: linear-gradient(90deg, #0c192ff5, #10254cbf);
  }
  body.kv-brand-body .kv main .inner-hero > .eyebrow { margin-bottom: 22px; }
  body.kv-brand-body .kv main .kv-policy-toc > span::before,
  body.kv-brand-body .kv main .kv-reviews-summary::before,
  body.kv-brand-body .kv main .contact-callout::before { margin-bottom: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  body.kv-brand-body .kv :is(main, .kv-quick-order) .btn,
  body.kv-brand-body .kv :is(main, .kv-quick-order) .btn::before { animation: none; transition: none; }
}
