/**
 * Premium About page.
 *
 * Editorial spacing, rules and typography do the visual work. Surfaces use a
 * restrained radius and no decorative shadows, pills or ornamental graphics.
 */
.tk-about { background: var(--tk-color-background); }
.tk-about .tk-button { border-radius: 0.625rem; }

.tk-about-hero {
  padding-block: clamp(var(--tk-space-64), 10vw, var(--tk-space-128));
  border-block-end: 1px solid var(--tk-color-border-strong);
}
.tk-about-hero__inner {
  display: grid;
  grid-template-columns: minmax(0, 1.45fr) minmax(16rem, 0.55fr);
  gap: clamp(var(--tk-space-48), 9vw, var(--tk-space-128));
  align-items: end;
}
.tk-about-hero h1 {
  max-width: 17ch;
  margin-block-end: var(--tk-space-32);
  font-size: clamp(2.75rem, 5.7vw, 5.25rem);
  line-height: 0.99;
  letter-spacing: -0.055em;
  text-wrap: balance;
}
.tk-about-hero__lede {
  max-width: 44rem;
  color: var(--tk-color-text-secondary);
  font-size: clamp(1.125rem, 1.8vw, 1.35rem);
}
.tk-about-hero__location {
  margin-block-start: var(--tk-space-24);
  color: var(--tk-color-brand-primary);
  font-weight: 800;
}
.tk-about-hero__facts { margin: 0; border-block-start: 1px solid var(--tk-color-border-strong); }
.tk-about-hero__facts div {
  display: grid;
  grid-template-columns: 5rem minmax(0, 1fr);
  gap: var(--tk-space-16);
  padding-block: var(--tk-space-16);
  border-block-end: 1px solid var(--tk-color-border-strong);
}
.tk-about-hero__facts dt {
  color: var(--tk-color-brand-secondary);
  font-size: var(--tk-font-size-label);
  font-weight: 850;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.tk-about-hero__facts dd { margin: 0; color: var(--tk-color-text-primary); font-weight: 750; }

.tk-about-meaning { border-block-end: 1px solid var(--tk-color-border); background: #fffdf8; }
.tk-about-meaning__intro {
  display: grid;
  grid-template-columns: minmax(10rem, 0.45fr) minmax(0, 1fr);
  gap: clamp(var(--tk-space-32), 8vw, var(--tk-space-96));
  align-items: start;
  margin-block-end: clamp(var(--tk-space-48), 7vw, var(--tk-space-96));
}
.tk-about-meaning__intro h2 { max-width: 18ch; margin: 0; }
.tk-about-meaning__equation {
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr) auto minmax(0, 1.35fr);
  gap: clamp(var(--tk-space-16), 3vw, var(--tk-space-32));
  align-items: start;
  padding-block: var(--tk-space-32);
  border-block: 1px solid var(--tk-color-border-strong);
}
.tk-about-meaning__equation > span {
  padding-block-start: 0.15rem;
  color: var(--tk-color-brand-secondary);
  font-size: clamp(1.75rem, 3vw, 2.75rem);
  font-weight: 400;
}
.tk-about-meaning__equation p { margin-block-end: 0; color: var(--tk-color-text-secondary); }
.tk-about-meaning__term {
  color: var(--tk-color-text-primary) !important;
  font-size: clamp(1.45rem, 2.7vw, 2.3rem);
  font-weight: 850;
  letter-spacing: -0.035em;
  line-height: 1.1;
}
.tk-about-meaning__result {
  padding-inline-start: clamp(var(--tk-space-16), 3vw, var(--tk-space-32));
  border-inline-start: 2px solid var(--tk-color-brand-secondary);
}
.tk-about-meaning__note {
  max-width: 54rem;
  margin: var(--tk-space-32) 0 0 auto;
  color: var(--tk-color-text-secondary);
  font-size: var(--tk-font-size-body-large);
}

.tk-about-founder { background: var(--tk-color-background); }
.tk-about-founder__layout {
  display: grid;
  grid-template-columns: minmax(14rem, 0.55fr) minmax(0, 1.45fr);
  gap: clamp(var(--tk-space-48), 9vw, var(--tk-space-128));
  align-items: start;
}
.tk-about-founder__portrait { min-width: 0; margin: 0; }
.tk-about-founder__portrait > img {
  display: block;
  width: 100%;
  height: auto;
  border: 1px solid var(--tk-color-border);
  border-radius: 0.625rem;
  background: #f1eadc;
  aspect-ratio: 1;
  object-fit: cover;
}
.tk-about-founder__identity { padding-block: var(--tk-space-24); border-block: 1px solid var(--tk-color-border-strong); }
.tk-about-founder__identity .tk-eyebrow { margin-block-end: var(--tk-space-32); }
.tk-about-founder__name {
  margin-block-end: var(--tk-space-4);
  color: var(--tk-color-text-primary);
  font-size: clamp(1.75rem, 3.5vw, 2.65rem);
  font-weight: 850;
  letter-spacing: -0.04em;
  line-height: 1.05;
}
.tk-about-founder__role, .tk-about-founder__base { margin-block-end: 0; color: var(--tk-color-text-secondary); }
.tk-about-founder__base {
  margin-block-start: var(--tk-space-16);
  font-size: var(--tk-font-size-small);
  font-weight: 800;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}
.tk-about-founder__story { max-width: 50rem; }
.tk-about-founder__story h2 { max-width: 16ch; margin-block-end: var(--tk-space-32); }
.tk-about-founder__story > p:not(.tk-about-founder__external) {
  color: var(--tk-color-text-secondary);
  font-size: clamp(1rem, 1.5vw, 1.16rem);
}
.tk-about-founder__external {
  margin-block-start: var(--tk-space-32);
  padding-block-start: var(--tk-space-24);
  border-block-start: 1px solid var(--tk-color-border);
  color: var(--tk-color-text-secondary);
}
.tk-about-founder__external a {
  color: var(--tk-color-brand-primary);
  font-weight: 850;
  text-underline-offset: 0.2em;
}
.tk-about-founder__credibility {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin: clamp(var(--tk-space-48), 7vw, var(--tk-space-96)) 0 0;
  padding: var(--tk-space-24) 0;
  border-block: 1px solid var(--tk-color-border-strong);
  list-style: none;
}
.tk-about-founder__credibility li {
  min-width: 0;
  padding-inline: var(--tk-space-24);
  color: var(--tk-color-text-primary);
  font-size: var(--tk-font-size-small);
  font-weight: 850;
  letter-spacing: 0.06em;
  text-align: center;
  text-transform: uppercase;
}
.tk-about-founder__credibility li + li { border-inline-start: 1px solid var(--tk-color-border-strong); }

.tk-about-services { border-block: 1px solid var(--tk-color-border); background: #fffdf8; }
.tk-about-services .tk-section-intro {
  display: grid;
  max-width: none;
  grid-template-columns: minmax(0, 1.2fr) minmax(18rem, 0.8fr);
  gap: clamp(var(--tk-space-32), 8vw, var(--tk-space-96));
  align-items: end;
}
.tk-about-services .tk-section-intro .tk-eyebrow {
  grid-column: 1 / -1;
  margin-block-end: calc(var(--tk-space-24) * -1);
}
.tk-about-services .tk-section-intro h2, .tk-about-services .tk-section-intro > p:last-child { margin-block-end: 0; }
.tk-about-services .tk-section-intro a {
  color: var(--tk-color-brand-primary);
  font-weight: 850;
  text-underline-offset: 0.2em;
}
.tk-about-services__grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  margin: 0;
  padding: 0;
  border-block-start: 1px solid var(--tk-color-border-strong);
  list-style: none;
}
.tk-about-services__grid > li {
  min-width: 0;
  padding: clamp(var(--tk-space-24), 4vw, var(--tk-space-48));
  padding-inline-start: 0;
}
.tk-about-services__grid > li + li {
  padding-inline-start: clamp(var(--tk-space-24), 4vw, var(--tk-space-48));
  border-inline-start: 1px solid var(--tk-color-border-strong);
}
.tk-about-services__number {
  margin-block-end: var(--tk-space-32);
  color: var(--tk-color-brand-secondary);
  font-size: var(--tk-font-size-small);
  font-weight: 850;
  letter-spacing: 0.1em;
}
.tk-about-services__grid h3 { margin-block-end: var(--tk-space-16); }
.tk-about-services__grid > li > p:not(.tk-about-services__number, .tk-about-services__links) { color: var(--tk-color-text-secondary); }
.tk-about-services__links {
  display: flex;
  flex-wrap: wrap;
  gap: var(--tk-space-8) var(--tk-space-16);
  margin-block-start: var(--tk-space-24);
}
.tk-about-services__links a {
  color: var(--tk-color-brand-primary);
  font-weight: 850;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.24em;
}

.tk-about-testimonials { background: var(--tk-color-background); }
.tk-about-testimonials__intro {
  display: grid;
  grid-template-columns: minmax(0, 1.25fr) minmax(18rem, 0.75fr);
  gap: clamp(var(--tk-space-32), 8vw, var(--tk-space-96));
  align-items: end;
  margin-block-end: var(--tk-space-48);
}
.tk-about-testimonials__intro .tk-eyebrow {
  grid-column: 1 / -1;
  margin-block-end: calc(var(--tk-space-24) * -1);
}
.tk-about-testimonials__intro h2, .tk-about-testimonials__intro > p:last-child { margin-block-end: 0; }
.tk-about-testimonials__intro > p:last-child {
  color: var(--tk-color-text-secondary);
  font-size: var(--tk-font-size-body-large);
}
.tk-about-testimonials__projects {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: clamp(var(--tk-space-32), 5vw, var(--tk-space-64));
}
.tk-about-project {
  min-width: 0;
  margin: 0;
  padding-block-start: var(--tk-space-24);
  border-block-start: 1px solid var(--tk-color-border-strong);
}
.tk-about-project__media {
  overflow: hidden;
  border: 1px solid var(--tk-color-border);
  border-radius: 0.625rem;
  background: #fff;
  aspect-ratio: 3 / 2;
}
.tk-about-project__media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: top center;
}
.tk-about-project figcaption { padding-block-start: var(--tk-space-24); }
.tk-about-project__type {
  margin-block-end: var(--tk-space-8);
  color: var(--tk-color-brand-secondary);
  font-size: var(--tk-font-size-small);
  font-weight: 800;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.tk-about-project h3 { margin-block-end: var(--tk-space-12); }
.tk-about-project figcaption > p:last-child { color: var(--tk-color-text-secondary); }
.tk-about-testimonials__action { margin: var(--tk-space-48) 0 0; }

.tk-about-workflow { border-block-start: 1px solid var(--tk-color-border); background: #fffdf8; }
.tk-about-workflow .tk-section-intro { max-width: 54rem; }
.tk-about-workflow__list {
  margin: 0;
  padding: 0;
  border-block-start: 1px solid var(--tk-color-border-strong);
  list-style: none;
}
.tk-about-workflow__step {
  display: grid;
  grid-template-columns: 4rem minmax(10rem, 0.45fr) minmax(0, 1fr);
  gap: clamp(var(--tk-space-16), 4vw, var(--tk-space-48));
  align-items: baseline;
  padding-block: var(--tk-space-24);
  border-block-end: 1px solid var(--tk-color-border-strong);
}
.tk-about-workflow__number {
  color: var(--tk-color-brand-secondary);
  font-size: var(--tk-font-size-small);
  font-weight: 850;
  letter-spacing: 0.1em;
}
.tk-about-workflow__step > div:last-child { display: contents; }
.tk-about-workflow__step h3, .tk-about-workflow__step p { margin: 0; }
.tk-about-workflow__step p { color: var(--tk-color-text-secondary); }

.tk-about-contact { background: var(--tk-color-surface-strong); color: var(--tk-color-text-inverse); }
.tk-about-contact .tk-final-cta__panel {
  max-width: 62rem;
  padding: 0;
  border: 0;
  background: transparent;
  box-shadow: none;
}
.tk-about-contact .tk-eyebrow { color: var(--tk-color-accent-soft); }
.tk-about-contact h2 { max-width: 14ch; color: var(--tk-color-text-inverse); }
.tk-about-contact .tk-final-cta__panel > p:not(.tk-eyebrow) {
  max-width: 46rem;
  color: rgba(255, 250, 240, 0.76);
  font-size: var(--tk-font-size-body-large);
}
.tk-about-contact__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--tk-space-16);
  margin-block-start: var(--tk-space-32);
}
.tk-about-contact .tk-button {
  border-color: var(--tk-color-text-inverse);
  background: var(--tk-color-text-inverse);
  color: var(--tk-color-brand-primary);
}
.tk-about-contact .tk-button:hover { background: #fff; color: var(--tk-color-brand-primary); }
.tk-about-contact .tk-button--secondary {
  border-color: rgba(255, 250, 240, 0.6);
  background: transparent;
  color: var(--tk-color-text-inverse);
}
.tk-about-contact .tk-button--secondary:hover {
  border-color: var(--tk-color-text-inverse);
  background: var(--tk-color-text-inverse);
  color: var(--tk-color-brand-primary);
}

@media (max-width: 64rem) {
  .tk-about-hero__inner,
  .tk-about-founder__layout,
  .tk-about-services .tk-section-intro,
  .tk-about-testimonials__intro { grid-template-columns: 1fr; }
  .tk-about-hero__facts { max-width: 38rem; }
  .tk-about-meaning__equation { grid-template-columns: 1fr; }
  .tk-about-meaning__equation > span { padding: 0; line-height: 1; }
  .tk-about-meaning__result {
    padding: var(--tk-space-24) 0 0;
    border-block-start: 2px solid var(--tk-color-brand-secondary);
    border-inline-start: 0;
  }
  .tk-about-services .tk-section-intro .tk-eyebrow,
  .tk-about-testimonials__intro .tk-eyebrow {
    grid-column: auto;
    margin-block-end: calc(var(--tk-space-16) * -1);
  }
}

@media (max-width: 48rem) {
  .tk-about-hero { padding-block: var(--tk-space-64); }
  .tk-about-hero h1 { font-size: clamp(2.5rem, 12.4vw, 3.55rem); }
  .tk-about-meaning__intro,
  .tk-about-services__grid,
  .tk-about-testimonials__projects { grid-template-columns: 1fr; }
  .tk-about-meaning__intro { gap: var(--tk-space-16); }
  .tk-about-founder__credibility { grid-template-columns: repeat(2, minmax(0, 1fr)); padding-block: 0; }
  .tk-about-founder__credibility li { padding: var(--tk-space-16) var(--tk-space-8); }
  .tk-about-founder__credibility li + li { border-inline-start: 0; }
  .tk-about-founder__credibility li:nth-child(even) { border-inline-start: 1px solid var(--tk-color-border-strong); }
  .tk-about-founder__credibility li:nth-child(n + 3) { border-block-start: 1px solid var(--tk-color-border-strong); }
  .tk-about-services__grid > li,
  .tk-about-services__grid > li + li { padding: var(--tk-space-32) 0; border-inline-start: 0; }
  .tk-about-services__grid > li + li { border-block-start: 1px solid var(--tk-color-border-strong); }
  .tk-about-workflow__step { grid-template-columns: 2.5rem minmax(0, 1fr); align-items: start; }
  .tk-about-workflow__step > div:last-child { display: block; }
  .tk-about-workflow__step h3 { margin-block-end: var(--tk-space-8); }
  .tk-about-contact__actions { align-items: stretch; flex-direction: column; }
  .tk-about-contact__actions .tk-button { width: 100%; }
}

@media (max-width: 23rem) {
  .tk-about-founder__credibility { grid-template-columns: 1fr; }
  .tk-about-founder__credibility li:nth-child(even) { border-inline-start: 0; }
  .tk-about-founder__credibility li + li { border-block-start: 1px solid var(--tk-color-border-strong); }
}
