/* Colna: open typography, architectural details and restrained motion. */
.k-editorial .k-co-proof {
  position: relative;
  background: transparent;
  border: 0;
  padding: clamp(62px, 7vw, 106px) 0 clamp(76px, 8vw, 118px);
  isolation: isolate;
}
/* A quiet drawing-line marks the next chapter without turning the figures into a band. */
.k-editorial .k-co-proof::after {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  width: min(1150px, calc(100% - 64px));
  height: 1px;
  background: linear-gradient(90deg, transparent, #c3ae92 18%, #c3ae92 82%, transparent);
  transform: translateX(-50%);
  pointer-events: none;
}
.k-editorial .k-co-proof::before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0;
  width: 1px;
  height: 18px;
  background: #c3ae92;
  pointer-events: none;
}
.k-editorial .k-co-proof > .k-wrap {
  display: grid;
  grid-template-columns: 1fr 1fr 1.12fr;
  align-items: center;
  gap: 42px;
  max-width: 1150px;
}
.k-editorial .k-co-proof p {
  position: relative;
  margin: 0;
  padding: 25px 8px 0;
  border: 0;
  text-align: center;
  min-width: 0;
}
.k-editorial .k-co-proof p::before {
  content: '';
  display: block;
  width: 52px;
  height: 1px;
  background: #bba58b;
  margin: 0 auto 27px;
  transform-origin: center;
}
.k-editorial .k-co-proof strong {
  display: block;
  font: 400 clamp(60px, 7.5vw, 108px)/1 var(--k-heading);
  letter-spacing: -.075em;
  font-variant-numeric: tabular-nums;
  color: var(--k-ink);
}
.k-editorial .k-co-proof p:last-child strong {
  max-width: 310px;
  margin: 0 auto;
  font-size: clamp(33px, 3.8vw, 51px);
  line-height: 1.16;
  letter-spacing: -.06em;
  text-wrap: balance;
}
.k-editorial .k-co-proof p > span {
  display: block;
  margin: 21px auto 0;
  padding: 0;
  color: var(--k-muted);
  font: 400 15px/1.6 var(--k-body);
  text-wrap: balance;
  max-width: 265px;
}
.k-editorial .k-co-proof strong .k-id-count-visual {
  display: inline;
  color: inherit;
  font: inherit;
  margin: 0;
  padding: 0;
}
.k-id-count-accessible {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
.k-editorial .k-co-visualize.k-id-visualize {
  position: relative;
  overflow: hidden;
  padding-block: clamp(66px, 7vw, 100px);
  background: #f8f4ec;
  text-align: center;
}
.k-id-visualize-inner {
  max-width: 1120px;
  margin-inline: auto;
}
.k-editorial .k-id-visualize .k-heading {
  margin-bottom: 42px;
  max-width: 760px;
  text-align: center;
}
.k-editorial .k-id-visualize h2 {
  font-size: clamp(35px, 4.2vw, 60px);
  line-height: 1.12;
  text-wrap: balance;
}
.k-editorial .k-id-visualize .k-lead {
  margin: 21px auto 0;
  max-width: 625px;
  font-size: 17px;
  line-height: 1.7;
  color: var(--k-muted);
}
.k-id-visualize-steps {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  align-items: start;
  gap: 36px;
  margin: 0 auto;
  max-width: 1020px;
}
.k-id-visualize-steps > article {
  position: relative;
  min-width: 0;
  padding: 0 12px;
  text-align: center;
}
.k-id-visualize-steps > article + article::before {
  content: '';
  position: absolute;
  top: 26px;
  left: -34px;
  width: 32px;
  height: 1px;
  background: #c8b69e;
}
.k-id-step-icon {
  display: grid;
  place-items: center;
  width: 60px;
  height: 60px;
  margin: 0 auto 22px;
  color: var(--k-clay-dark);
}
.k-id-step-icon svg {
  display: block;
  width: 52px;
  height: 52px;
  fill: none;
  stroke: currentColor;
  stroke-width: 1.25;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.k-editorial .k-id-visualize-steps h3 {
  margin: 0 auto;
  font: 400 clamp(19px, 2vw, 24px)/1.35 var(--k-heading);
  letter-spacing: -.04em;
  text-wrap: balance;
  max-width: 270px;
}
.k-editorial .k-id-visualize-steps p {
  margin: 13px auto 0;
  max-width: 265px;
  color: var(--k-muted);
  font-size: 15px;
  line-height: 1.65;
}
.k-id-visualize-image {
  margin: 40px 0 0;
  position: relative;
  overflow: hidden;
  border-radius: 3px;
}
.k-id-visualize-image img {
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 4.6 / 1;
  object-fit: cover;
  object-position: center 57%;
}
.k-editorial .k-id-visualize .k-actions {
  justify-content: center;
  margin-top: 34px;
}
.k-id-team-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 32px;
  max-width: 1170px;
  margin-inline: auto;
}
.k-id-team-grid > article {
  padding: 32px 14px 0;
  border-top: 1px solid #c7b69f;
  min-width: 0;
  text-align: center;
}
.k-id-team-grid .k-id-step-icon { margin-bottom: 20px; }
.k-editorial .k-id-team-grid h3 {
  font: 400 23px/1.3 var(--k-heading);
  letter-spacing: -.04em;
  margin: 0 auto 17px;
  max-width: 250px;
  text-wrap: balance;
}
.k-editorial .k-id-team-grid p {
  font: 400 15px/1.75 var(--k-body);
  margin: 0 auto;
  max-width: 265px;
  color: var(--k-muted);
}
/* Center decision summaries while retaining left-aligned long-form guides. */
.k-editorial .k-section > .k-wrap > .k-heading {
  margin-inline: auto;
  text-align: center;
}
.k-editorial .k-section > .k-wrap > .k-heading > p,
.k-editorial .k-section > .k-wrap > .k-heading > h2 { margin-inline: auto; }
.k-ed-about .k-ed-prose,
.k-ed-about .k-split-copy { text-align: center; }
.k-ed-about .k-split-copy > p { margin-inline: auto; }
.k-ed-about .k-ed-cards > .k-ed-card { align-items: center; text-align: center; }
.k-editorial .k-contact-band {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  text-align: center;
  background: #eae1d5;
  border-top: 0;
  padding: clamp(78px, 8vw, 116px) 0;
}
.k-editorial .k-contact-band .k-contact-content,
.k-editorial .k-contact-band .k-contact-band-inner {
  position: relative;
  z-index: 1;
  display: block;
  text-align: center;
  max-width: 1030px;
}
.k-editorial .k-contact-band h2 {
  max-width: 880px;
  margin-inline: auto;
  font-size: clamp(42px, 5.8vw, 78px);
  line-height: 1.1;
  text-wrap: balance;
}
.k-editorial .k-contact-band h2 em { color: var(--k-clay-dark); }
.k-editorial .k-contact-band p:not(.k-eyebrow) {
  max-width: 550px;
  margin: 26px auto 0;
  line-height: 1.75;
}
.k-editorial .k-contact-band .k-contact-arch {
  inset: 24px auto -220px 50%;
  width: min(930px, 91vw);
  border-color: #c8b8a35c;
  border-radius: 50% 50% 0 0;
}
.k-editorial .k-contact-band .k-contact-choices,
.k-editorial .k-contact-band .k-contact-band-action {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 14px;
  margin-top: 31px;
}
.k-editorial .k-contact-band .k-button { min-width: 218px; min-height: 56px; }
.k-editorial .k-contact-band .k-button-outline { border-color: #b7a68f; }
.k-editorial .k-contact-band .k-contact-footnote {
  margin-top: 27px;
  font-size: 12px;
  letter-spacing: .02em;
}
@media (prefers-reduced-motion: no-preference) {
  .k-id-is-visible .k-id-stat-enter,
  .k-id-visualize.k-id-is-visible .k-id-visualize-steps > article {
    animation: colna-identity-rise .7s both cubic-bezier(.2,.6,.25,1);
  }
  .k-id-is-visible .k-id-stat-enter:nth-child(2),
  .k-id-visualize.k-id-is-visible .k-id-visualize-steps > article:nth-child(2) { animation-delay: .1s; }
  .k-id-is-visible .k-id-stat-enter:nth-child(3),
  .k-id-visualize.k-id-is-visible .k-id-visualize-steps > article:nth-child(3) { animation-delay: .2s; }
  .k-id-is-visible .k-id-stat-enter::before { animation: colna-identity-line .85s both ease; }
  @keyframes colna-identity-rise { from { opacity: .25; transform: translateY(14px); } to { opacity: 1; transform: none; } }
  @keyframes colna-identity-line { from { transform: scaleX(.3); } to { transform: scaleX(1); } }
}
@media (max-width: 1000px) {
  .k-editorial .k-co-proof > .k-wrap { gap: 23px; }
  .k-editorial .k-co-proof p:last-child strong { font-size: 35px; }
  .k-id-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 35px; }
}
@media (max-width: 700px) {
  .k-editorial .k-co-proof { padding-block: 48px 65px; }
  .k-editorial .k-co-proof::after { width: calc(100% - 40px); }
  .k-editorial .k-co-proof::before { height: 14px; }
  .k-editorial .k-co-proof > .k-wrap { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 26px 20px; }
  .k-editorial .k-co-proof p { padding: 0; }
  .k-editorial .k-co-proof p::before { width: 38px; margin-bottom: 21px; }
  .k-editorial .k-co-proof strong { font-size: clamp(56px, 13vw, 76px); }
  .k-editorial .k-co-proof p > span { font-size: 13px; margin-top: 13px; max-width: 170px; }
  .k-editorial .k-co-proof p:last-child { grid-column: 1 / -1; padding-top: 8px; }
  .k-editorial .k-co-proof p:last-child::before { margin-bottom: 17px; }
  .k-editorial .k-co-proof p:last-child strong { max-width: none; font-size: 30px; line-height: 1.2; }
  .k-editorial .k-co-proof p:last-child > span { max-width: none; margin-top: 10px; }
  .k-id-visualize-steps { grid-template-columns: 1fr; gap: 26px; max-width: 450px; }
  .k-id-visualize-steps > article { padding: 0; }
  .k-id-visualize-steps > article + article::before { display: none; }
  .k-id-step-icon { width: 48px; height: 48px; margin-bottom: 12px; }
  .k-id-step-icon svg { width: 44px; height: 44px; }
  .k-editorial .k-id-visualize-steps h3 { max-width: 100%; font-size: 21px; }
  .k-editorial .k-id-visualize-steps p { margin-top: 9px; max-width: 305px; }
  .k-editorial .k-id-visualize .k-heading { margin-bottom: 32px; }
  .k-id-visualize-image { margin-top: 30px; }
  .k-id-visualize-image img { aspect-ratio: 2.1 / 1; }
}
@media (max-width: 480px) {
  .k-id-team-grid { grid-template-columns: 1fr; gap: 27px; }
  .k-id-team-grid > article { padding: 26px 8px 0; }
}
