/* TEP human-copy + UI polish patch | 2026-10-04
   Loaded after tep-premium.css. Keeps the current visual system and fixes spacing,
   CEO image sizing, readability, team links and share controls. */

:root {
  --tep-navy: #071524;
  --tep-blue: #0b4f8a;
  --tep-gold: #d2a03b;
  --tep-paper: #ffffff;
  --tep-ink: #0b2545;
  --tep-soft: #60708a;
}

html { scroll-behavior: smooth; }
body.human-copy-v1 {
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

/* Keep reading widths comfortable. */
.human-copy-v1 .page-hero .wrap,
.human-copy-v1 .section-head {
  max-width: 980px;
}
.human-copy-v1 .page-hero p,
.human-copy-v1 .section-head .lead,
.human-copy-v1 .article-body {
  max-width: 820px;
}
.human-copy-v1 .article-body {
  margin-inline: auto;
}
.human-copy-v1 .article-body p,
.human-copy-v1 .article-body li {
  line-height: 1.72;
}

/* Slightly tighter pages on desktop without changing the page order. */
.human-copy-v1 .section {
  padding-top: clamp(64px, 7vw, 88px);
  padding-bottom: clamp(64px, 7vw, 88px);
}
.human-copy-v1 .page-hero {
  padding-top: clamp(72px, 8vw, 104px);
  padding-bottom: clamp(64px, 7vw, 90px);
}
.human-copy-v1 .card,
.human-copy-v1 .legacy-card,
.human-copy-v1 .article-card,
.human-copy-v1 .contributor-card,
.human-copy-v1 .panel {
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
@media (hover:hover) {
  .human-copy-v1 .card:hover,
  .human-copy-v1 .legacy-card:hover,
  .human-copy-v1 .article-card:hover,
  .human-copy-v1 .contributor-card:hover {
    transform: translateY(-3px);
  }
}

/* Home hero: use the small CEO portrait treatment shown on mobile at every size. */
.human-copy-v1 .hero-ceo-note {
  width: min(100%, 760px);
  display: grid !important;
  grid-template-columns: 58px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 18px !important;
  margin-top: 24px;
  padding: 18px 20px !important;
  border-radius: 22px !important;
  overflow: hidden;
}
.human-copy-v1 .hero-ceo-note > img {
  width: 58px !important;
  height: 58px !important;
  min-width: 58px !important;
  max-width: 58px !important;
  max-height: 58px !important;
  aspect-ratio: 1 / 1;
  object-fit: cover !important;
  object-position: center top;
  border-radius: 50% !important;
  border: 3px solid #f0c46c;
  box-shadow: 0 8px 24px rgba(0,0,0,.18);
}
.human-copy-v1 .hero-ceo-note > div {
  min-width: 0;
}
.human-copy-v1 .hero-ceo-note > div > span {
  display: block;
  margin-bottom: 6px;
  color: #f0c46c;
  font-size: 12px;
  font-weight: 800;
  letter-spacing: .11em;
  text-transform: uppercase;
}
.human-copy-v1 .hero-ceo-note p {
  max-width: none !important;
  margin: 0 0 8px !important;
  font-size: 16px !important;
  line-height: 1.55 !important;
}
.human-copy-v1 .hero-ceo-note a {
  display: inline-block;
  font-weight: 800;
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Full CEO article: keep the portrait small and separate from the letter. */
.human-copy-v1 .ceo-message-card {
  max-width: 940px;
  margin-inline: auto;
}
.human-copy-v1 .ceo-author.author-card {
  display: flex !important;
  align-items: center !important;
  gap: 14px !important;
  padding: 18px 20px !important;
}
.human-copy-v1 .ceo-author .author-photo {
  width: 72px !important;
  height: 72px !important;
  min-width: 72px !important;
  max-width: 72px !important;
  max-height: 72px !important;
  aspect-ratio: 1 / 1;
  object-fit: cover !important;
  object-position: center top;
  border-radius: 50% !important;
  border: 3px solid #d2a03b;
}
.human-copy-v1 .ceo-copy {
  max-width: 780px;
  margin: 28px auto 0;
}
.human-copy-v1 .ceo-copy p {
  margin-bottom: 20px;
}

/* Team profiles. */
.human-copy-v1 .team-body {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.human-copy-v1 .team-body p {
  flex: 1 1 auto;
}
.human-copy-v1 .team-linkedin {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 16px;
  min-height: 38px;
  padding: 9px 14px;
  border: 1px solid rgba(11,79,138,.25);
  border-radius: 999px;
  color: #0b4f8a;
  background: rgba(11,79,138,.06);
  font-size: 13px;
  font-weight: 800;
  text-decoration: none;
}
.human-copy-v1 .team-linkedin:hover {
  background: #0b4f8a;
  color: #fff;
}

/* Share controls: compact and predictable, no floating button covering copy. */
.human-copy-v1 .share-panel {
  display: flex !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 9px !important;
}
.human-copy-v1 .share-panel > span {
  margin-right: 2px;
  font-size: 12px;
  letter-spacing: .06em;
}
.human-copy-v1 .share-btn,
.human-copy-v1 .share-btn.share-native {
  position: static !important;
  width: auto !important;
  height: auto !important;
  min-height: 38px !important;
  padding: 9px 14px !important;
  border-radius: 999px !important;
  transform: none !important;
  box-shadow: none;
  font-size: 13px !important;
  line-height: 1 !important;
}

/* Buttons stay substantial without feeling oversized. */
.human-copy-v1 .btn,
.human-copy-v1 .tep-btn {
  min-height: 48px;
}

/* Mobile: keep the approved compact CEO card and reduce dead space. */
@media (max-width: 760px) {
  .human-copy-v1 .section {
    padding-top: 54px;
    padding-bottom: 54px;
  }
  .human-copy-v1 .page-hero {
    padding-top: 54px;
    padding-bottom: 54px;
  }
  .human-copy-v1 .hero-ceo-note {
    grid-template-columns: 50px minmax(0, 1fr) !important;
    gap: 14px !important;
    padding: 17px !important;
  }
  .human-copy-v1 .hero-ceo-note > img {
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    max-width: 50px !important;
    max-height: 50px !important;
  }
  .human-copy-v1 .hero-ceo-note p {
    font-size: 15px !important;
    line-height: 1.5 !important;
  }
  .human-copy-v1 .ceo-author .author-photo {
    width: 60px !important;
    height: 60px !important;
    min-width: 60px !important;
    max-width: 60px !important;
    max-height: 60px !important;
  }
  .human-copy-v1 .share-panel {
    gap: 7px !important;
  }
  .human-copy-v1 .share-btn,
  .human-copy-v1 .share-btn.share-native {
    min-height: 36px !important;
    padding: 8px 12px !important;
    font-size: 12px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .human-copy-v1 *,
  .human-copy-v1 *::before,
  .human-copy-v1 *::after {
    animation-duration: .01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: .01ms !important;
  }
}


/* 2026-10-04 source-led corrections: CTA colours, M/V/V, summit and WhatsApp. */
.human-copy-v1 .btn-insights {
  background:#0b63b6 !important;
  color:#fff !important;
  border-color:#0b63b6 !important;
}
.human-copy-v1 .btn-insights:hover {
  background:#084f92 !important;
  border-color:#084f92 !important;
}
.human-copy-v1 .btn-whatsapp {
  background:#25d366 !important;
  color:#062b1b !important;
  border-color:#25d366 !important;
}
.human-copy-v1 .btn-whatsapp:hover {
  background:#20bd5a !important;
  border-color:#20bd5a !important;
}
.human-copy-v1 .mvv-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.human-copy-v1 .mvv-card {
  min-width:0;
  padding:28px 24px 26px;
  text-align:center;
  border:1px solid rgba(11,37,69,.10);
  border-radius:24px;
  background:#fff;
  box-shadow:0 16px 38px rgba(6,21,38,.08);
}
.human-copy-v1 .mvv-icon {
  width:112px;
  height:135px;
  object-fit:cover;
  object-position:center top;
  margin:0 auto 16px;
  display:block;
}
.human-copy-v1 .mvv-card h3 {
  margin-bottom:12px;
  color:#0b2545;
  font-size:21px;
}
.human-copy-v1 .mvv-card p {
  margin:0;
  color:#60708a;
  font-size:14.5px;
  line-height:1.68;
}
.human-copy-v1 .mvv-values {
  font-weight:700;
  line-height:1.9 !important;
}
.human-copy-v1 .summit-layout {
  display:grid;
  grid-template-columns:minmax(280px,.86fr) minmax(0,1.14fr);
  gap:42px;
  align-items:center;
}
.human-copy-v1 .summit-photo-wrap {
  min-height:440px;
  max-height:560px;
  border-radius:26px;
  overflow:hidden;
  box-shadow:0 20px 48px rgba(6,21,38,.14);
}
.human-copy-v1 .summit-photo-wrap img {
  width:100%;
  height:100%;
  min-height:440px;
  object-fit:cover;
  object-position:center center;
  display:block;
}
.human-copy-v1 .summit-copy h2 { margin-bottom:16px; }
.human-copy-v1 .summit-copy > p:not(.lead) {
  color:#4f6279;
  font-size:15px;
  line-height:1.72;
  margin-top:16px;
}
.human-copy-v1 .summit-stats {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
  margin:22px 0 4px;
}
.human-copy-v1 .summit-stats div {
  padding:16px 18px;
  border:1px solid rgba(11,79,138,.12);
  border-radius:18px;
  background:rgba(11,79,138,.055);
}
.human-copy-v1 .summit-stats strong {
  display:block;
  color:#0b4f8a;
  font-size:28px;
  line-height:1;
  margin-bottom:7px;
}
.human-copy-v1 .summit-stats span {
  color:#60708a;
  font-size:13px;
}
.human-copy-v1 .whatsapp-float {
  display:grid !important;
  right:18px !important;
  bottom:58px !important;
  width:52px !important;
  height:52px !important;
  background:#25d366 !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.65) !important;
}
.human-copy-v1 .whatsapp-float svg {
  width:27px !important;
  height:27px !important;
  fill:none;
}
@media (max-width:760px) {
  .human-copy-v1 .mvv-grid { grid-template-columns:1fr; }
  .human-copy-v1 .mvv-card { padding:24px 20px; }
  .human-copy-v1 .mvv-icon { width:100px; height:121px; }
  .human-copy-v1 .summit-layout { grid-template-columns:1fr; gap:24px; }
  .human-copy-v1 .summit-photo-wrap,
  .human-copy-v1 .summit-photo-wrap img { min-height:340px; max-height:430px; }
  .human-copy-v1 .summit-stats { grid-template-columns:1fr 1fr; }
  .human-copy-v1 .whatsapp-float { right:14px !important; bottom:50px !important; width:50px !important; height:50px !important; }
}
