/* About page only. Shared header/footer/button/chip/card styles live in
   shared/css/components.css. */

.about-page {
  padding-top: clamp(28px, 6vw, 72px);
  padding-bottom: clamp(64px, 10vw, 140px);
  display: flex;
  flex-direction: column;
  gap: clamp(28px, 4vw, 48px);
}

mark {
  background: linear-gradient(var(--accent), var(--accent)) no-repeat 0 100% / 100% 0.09em;
  padding-bottom: 0.06em;
  color: var(--brand);
  background-color: transparent;
}

/* ---- Hero ---- */

.about-hero {
  display: flex;
  flex-direction: column;
  gap: 18px;
  max-width: 900px;
}

.about-hero__title {
  /* Was clamp(36px, 6vw, 84px): a 40-char headline at 77px took up 29vh
     before anything else on the page. Sized to match the sentence. */
  font-size: clamp(30px, 4.2vw, 56px);
  line-height: 1;
  letter-spacing: -0.03em;
  font-weight: 850;
  text-wrap: balance;
}

.about-hero__lead {
  font-size: clamp(17px, 1.6vw, 21px);
  line-height: 1.65;
  color: var(--muted);
  max-width: 720px;
  text-wrap: pretty;
}

/* ---- Principles grid ---- */

.about-principles {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(100%, 260px), 1fr));
  gap: 12px;
}

.about-principle {
  padding: 26px;
  display: flex;
  flex-direction: column;
  gap: 12px;
  transition: transform 0.2s, border-color 0.2s;
}

.about-principle:hover {
  transform: translateY(-3px);
  border-color: color-mix(in srgb, var(--brand) 35%, var(--line));
}

.about-principle__icon {
  width: 42px;
  height: 42px;
  border-radius: 12px;
  background: color-mix(in srgb, var(--brand) 12%, transparent);
  display: grid;
  place-items: center;
}

.about-principle__icon svg {
  width: 20px;
  height: 20px;
  fill: none;
  stroke: var(--brand);
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}

.about-principle__d a {
  color: var(--brand);
  font-weight: 600;
  white-space: nowrap;
}

.about-principle__t {
  font-size: 20px;
  line-height: 1.3;
}

.about-principle__d {
  font-size: 15px;
  line-height: 1.6;
  color: var(--muted);
}

/* ---- v2: dark hero band ---- */
.about-page { padding-top: clamp(32px, 4vw, 56px); }
