/* 040 — страница автора. Та же сетка и язык, что у статьи 039: основная колонка по линии копирайта шапки
   (14.85rem от края контейнера), боковые колонки — до края широких блоков; подписи в скобках серым; одна линия
   подчёркивания (1.5px, отступ как у «Get in touch»); скругление .5rem как у превью листинга. Всё под html.fm-team. */

html.fm-team {
  --ink: #0b0b0b; --text: #2a2a2e; --mute: #8b8b93; --line-soft: rgba(11, 11, 11, .14); --soft: #f4f4f2;
  --g: 1.5rem; --r: .5rem; --side: 14.85rem; --ease: cubic-bezier(.22, .61, .36, 1);
  --ul: 1.5px; --ul-gap: .33em;
}
html.fm-team body { background: #fff; }
html.fm-team .tm-hide { display: none !important; }
html.fm-team .tm-lbl, html.fm-team .tm .fm-lbl {
  display: block; color: var(--mute) !important; font-family: var(--x_fonts--main); font-size: .75rem; font-weight: 500;
  line-height: 1.2; letter-spacing: .015em; text-transform: uppercase;
}

/* ссылки — как в шапке сайта: 500 + линия 1.5px, «Get in touch»-ход */
html.fm-team .tm-link { display: inline-block; color: var(--ink); text-decoration: none; font-size: 1.125rem; line-height: 1.2; white-space: nowrap; }
html.fm-team .tm-link_t { font-weight: 500; }
html.fm-team :is(.tm-link_t, .tm-crumbs_a, .tm-person_n, .tm .blg_ln) {
  text-decoration: none; padding-bottom: var(--ul-gap);
  background: linear-gradient(currentColor, currentColor) no-repeat right 100% / 0 var(--ul);
  -webkit-box-decoration-break: clone; box-decoration-break: clone; transition: background-size 420ms var(--ease);
}
html.fm-team :is(.tm-crumbs_a:hover, .tm-person:hover .tm-person_n) { background-position: left 100%; background-size: 100% var(--ul); }
html.fm-team .tm-link .tm-link_t { background-position: left 100%; background-size: 100% var(--ul); }
html.fm-team .tm-link:hover .tm-link_t { background-position: right 100%; background-size: 0 var(--ul); }
html.fm-team :is(.tm-crumbs_a, .tm-person_n) { --ul-gap: .12em; }
html.fm-team .tm .blg_ln { --ul-gap: 0em; }

/* ——— хиро: слева (с линии копирайта) крошки → [ Team ] → имя → должность → био → ссылки, справа большое фото ——— */
html.fm-team .tm-hero { padding: 7rem 0 0; }
html.fm-team .tm-hero_in {
  display: grid; grid-template-columns: var(--side) minmax(0, 1fr) 34%; align-items: stretch; /* фото на 15% меньше (было 40%) */
  padding-bottom: 5rem; border-bottom: 1px solid var(--line-soft);
}
html.fm-team .tm-main { grid-column: 1 / 3; display: flex; flex-direction: column; justify-content: flex-end; padding-right: 4rem; min-width: 0; } /* от левого края контейнера, по низу фото */
html.fm-team .tm-photo { grid-column: 3; margin: 0; }
html.fm-team .tm-photo_img { display: block; width: 100%; height: auto; aspect-ratio: 1000 / 1143; object-fit: cover; border-radius: var(--r); background: #d9dde3; }
html.fm-team .tm-crumbs { display: flex; align-items: center; gap: .6rem; margin: 0 0 1.25rem; color: var(--mute); font-size: .75rem; font-weight: 500; letter-spacing: .015em; text-transform: uppercase; line-height: 1.2; } /* крошки — над именем, вместо подписи [ Team ] */
html.fm-team .tm-crumbs_a { color: var(--ink); }
html.fm-team .tm-name { margin: 0; font-family: var(--x_fonts--headings); font-weight: 400; color: var(--ink); font-size: 5.6rem; line-height: .95; letter-spacing: -.03em; }
html.fm-team .tm-role { margin: 1.25rem 0 0; color: var(--mute); font-size: 1.25rem; line-height: 1.3; }
html.fm-team .tm-bio { margin: 2.5rem 0 0; max-width: 38rem; color: var(--text); font-size: 1.35rem; line-height: 1.55; letter-spacing: -.003em; }
html.fm-team .tm-links { display: flex; flex-wrap: wrap; gap: 1rem 2rem; margin-top: 2.25rem; }

/* ——— индекс тем — простая таблица: заголовки серым, строки одним кеглем, тонкие линии; колонки — по сетке карточек ——— */
html.fm-team .tm-topics { padding: 7.5rem 0 0; }
html.fm-team .tm-index_lbl { margin: 0 0 1.75rem; }
html.fm-team .tm-table { width: 100%; border-collapse: collapse; table-layout: fixed; font-size: 1rem; line-height: 1.3; color: var(--ink); }
/* ширины по сетке карточек (контейнер 102rem: карточка + зазор = 25.306%): тема — 1 карточка, последняя статья — 2,
   дата и число статей — справа рядом */
html.fm-team .tm-table thead th:nth-child(1) { width: 25.306%; }
html.fm-team .tm-table thead th:nth-child(2) { width: 50.612%; }
html.fm-team .tm-table thead th:nth-child(4) { width: 7rem; }
html.fm-team .tm-table th, html.fm-team .tm-table td { padding: .7rem 1.25rem .7rem 0; text-align: left; font-weight: 400; vertical-align: baseline; border-bottom: 1px solid var(--line-soft); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.fm-team .tm-table thead th { color: var(--mute); font-size: .875rem; padding-top: 0; }
html.fm-team .tm-table th:last-child, html.fm-team .tm-table td:last-child { padding-right: 0; text-align: right; }
html.fm-team .tm-table td:nth-child(3) { color: var(--text); }
html.fm-team .tm-table th:nth-child(3), html.fm-team .tm-table td:nth-child(3) { text-align: right; }
html.fm-team .tm-table a { color: inherit; text-decoration: none; background: linear-gradient(currentColor, currentColor) no-repeat right 100% / 0 var(--ul); padding-bottom: .12em; transition: background-size 420ms var(--ease); }
html.fm-team .tm-table a:hover { background-position: left 100%; background-size: 100% var(--ul); }

/* ——— статьи автора: шапка как Insights на главной, по сетке карточек ——— */
html.fm-team .tm-articles { padding: 7.5rem 0 6rem; }
html.fm-team .tm .fm-ins_head { grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 1.25rem; }
html.fm-team .tm .fm-ins_head > .fm-lbl { grid-column: 1 / 3; }
html.fm-team .tm .fm-ins_main { grid-column: 3 / 5; }
html.fm-team .tm .fm-ins_sub { max-width: 26rem; }
html.fm-team .tm .blg_grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 1.25rem; row-gap: 3.5rem; margin: 0; padding: 0; list-style: none; }
html.fm-team .tm .blg_link { display: flex; flex-direction: column; row-gap: .875rem; color: #0b0b0b; text-decoration: none; }
html.fm-team .tm .blg_img { transition: transform 1.1s var(--ease); }
html.fm-team .tm .blg_by { display: flex; align-items: center; column-gap: .5rem; color: #0b0b0b99; font-size: .8125rem; }
html.fm-team .tm .blg_by-img { width: 1.5rem; height: 1.5rem; border-radius: 50%; object-fit: cover; }
html.fm-team .tm .blg_t { display: -webkit-box; overflow: hidden; -webkit-box-orient: vertical; -webkit-line-clamp: 3; font-size: 1.375rem; text-wrap: balance; padding-bottom: .2em; margin-bottom: -.2em; }
@media (hover: hover) {
  html.fm-team .tm .blg_link:hover .blg_img { transform: scale(1.06); }
  html.fm-team .tm .blg_link:hover .blg_ln { background-position: left 100%; background-size: 100% var(--ul); transition-delay: calc(var(--i, 0) * .22s); }
}
html.fm-team .tm-articles .fm-ins_body > .tm-link { align-self: flex-start; }

/* ——— другие авторы: подпись слева, люди — с третьей колонки, как заголовок секции выше ——— */
html.fm-team .tm-team { padding: 0 0 8rem; }
html.fm-team .tm-team_in { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); column-gap: 1.25rem; padding-top: 2.5rem; border-top: 1px solid var(--line-soft); }
html.fm-team .tm-team_in > .fm-lbl { grid-column: 1 / 3; }
html.fm-team .tm-team_list { grid-column: 3 / 5; display: grid; grid-template-columns: 1fr 1fr; column-gap: 1.25rem; }
html.fm-team .tm-person { display: flex; align-items: center; gap: .9rem; color: var(--ink); text-decoration: none; }
html.fm-team .tm-person_img { width: 3.5rem; height: 3.5rem; border-radius: 50%; object-fit: cover; flex: none; }
html.fm-team .tm-person_t { display: flex; flex-direction: column; gap: .15rem; }
html.fm-team .tm-person_n { align-self: flex-start; font-size: 1rem; font-weight: 500; line-height: 1.2; }
html.fm-team .tm-person_r { font-style: normal; color: var(--mute); font-size: .875rem; line-height: 1.2; }

/* ——— планшет ——— */
@media screen and (max-width: 991px) {
  /* планшет — журнальная раскладка: крошки и крупное имя на всю ширину, ниже фото | должность, био, ссылки (по низу фото) */
  html.fm-team .tm-hero { padding-top: 6.5rem; }
  html.fm-team .tm-hero_in { grid-template-columns: minmax(0, 46%) minmax(0, 1fr); grid-template-areas: "crumbs crumbs" "name name" "photo about"; column-gap: 2rem; padding-bottom: 3.5rem; border-bottom: 0; }
  html.fm-team .tm-main, html.fm-team .tm-text { display: contents; }
  html.fm-team .tm-crumbs { grid-area: crumbs; }
  html.fm-team .tm-name { grid-area: name; font-size: 4.4rem; margin-bottom: 2.25rem; }
  html.fm-team .tm-photo { grid-area: photo; grid-column: auto; }
  html.fm-team .tm-about { grid-area: about; align-self: end; }
  html.fm-team .tm-role { font-size: 1.05rem; margin-top: 0; }
  html.fm-team .tm-bio { font-size: 1.05rem; margin-top: 1.25rem; }
  html.fm-team .tm-links { margin-top: 1.75rem; gap: .75rem 1.25rem; } /* ссылки ближе друг к другу */
  html.fm-team .tm-topics { padding-top: 3rem; }
  html.fm-team .tm-table th:nth-child(3), html.fm-team .tm-table td:nth-child(3) { display: none; }
  html.fm-team .tm-table thead th:nth-child(1) { width: 40%; }
  html.fm-team .tm-table thead th:nth-child(2) { width: auto; }
  html.fm-team .tm-table thead th:nth-child(4) { width: 6rem; }
  html.fm-team .tm-articles { padding: 5rem 0 5rem; }
  html.fm-team .tm .fm-ins_head { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.fm-team .tm .fm-ins_head > .fm-lbl { grid-column: 1; }
  html.fm-team .tm .fm-ins_main { grid-column: 2; }
  html.fm-team .tm .blg_grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.fm-team .tm-team_in { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  html.fm-team .tm-team_in > .fm-lbl { grid-column: 1; }
  html.fm-team .tm-team_list { grid-column: 2; grid-template-columns: 1fr; row-gap: 1.25rem; }
}

/* ——— телефон ——— */
@media screen and (max-width: 767px) {
  html.fm-team .tm-hero { padding-top: 5.5rem; }
  /* телефон: крошки → имя → должность (одна группа) → фото квадратом → описание → ссылки */
  html.fm-team .tm-hero_in { grid-template-columns: minmax(0, 1fr); grid-template-areas: "crumbs" "name" "role" "photo" "bio" "links"; padding-bottom: 2.5rem; }
  html.fm-team .tm-about { display: contents; }
  html.fm-team .tm-crumbs { margin-bottom: 1.5rem; }
  html.fm-team .tm-name { margin-bottom: 0; font-size: 3rem; line-height: .95; }
  html.fm-team .tm-role { grid-area: role; margin-top: .85rem; font-size: .9375rem; }
  html.fm-team .tm-photo { grid-area: photo; margin-top: 2rem; }
  html.fm-team .tm-photo_img { aspect-ratio: 1 / 1; object-position: 50% 80%; }
  html.fm-team .tm-bio { grid-area: bio; margin-top: 1.75rem; line-height: 1.55; }
  html.fm-team .tm-links { grid-area: links; margin-top: 1.5rem; }
  html.fm-team .tm-crumbs { gap: .35rem; }
  html.fm-team .tm-bio { font-size: 1rem; }
  html.fm-team .tm-table th:nth-child(2), html.fm-team .tm-table td:nth-child(2) { display: none; }
  html.fm-team .tm-table { font-size: .9375rem; }
  html.fm-team .tm-table thead th:nth-child(1) { width: auto; }
  html.fm-team .tm .blg_grid { grid-template-columns: minmax(0, 1fr); row-gap: 1.25rem; } /* ровный зазор: карточка = высота превью */
  html.fm-team .tm .blg_link { display: grid; grid-template-columns: 7.5rem minmax(0, 1fr); grid-template-rows: auto auto auto; align-content: start; column-gap: 1rem; row-gap: .4rem; align-items: start; }
  html.fm-team .tm .blg_view { grid-row: 1 / 4; width: 7.5rem; height: 7.5rem; aspect-ratio: 1 / 1; margin: 0; }
  html.fm-team .tm .blg_meta { grid-column: 2; margin: 0; font-size: .6875rem; }
  html.fm-team .tm .blg_t { grid-column: 2; margin: 0; font-size: 1rem; line-height: 1.25; }
  html.fm-team .tm .blg_by { grid-column: 2; margin: .2rem 0 0; font-size: .75rem; }
  html.fm-team .tm .blg_by-img { width: 1.25rem; height: 1.25rem; }
  html.fm-team .tm-articles .fm-ins_body > .tm-link { align-self: center; }
  html.fm-team .tm-team_in { grid-template-columns: minmax(0, 1fr); row-gap: 1.5rem; }
  html.fm-team .tm-team_list { grid-column: 1; }
}

/* Нативная разметка Webflow (21.10) */
html.fm-team body > .w-dyn-list:has([fs-cmsnest-element]) { display: none; } /* служебный список Finsweet */
html.fm-team .tm-role > *, html.fm-team .tm-person_r > *, html.fm-team .tm-link > .tm-link_t { display: inline; }
html.fm-team .tm-name { font-family: var(--x_fonts--headings); }
html.fm-team .tm-team_list .w-dyn-items { display: grid; grid-template-columns: 1fr 1fr; column-gap: 1.25rem; row-gap: 1.25rem; }
html.fm-team .tm-articles .fm-ins_body { display: flex; flex-direction: column; gap: 3.5rem; }
html.fm-team .tm-src { display: none !important; }
html.fm-team .tm-hide { display: none !important; }
@media screen and (max-width: 991px) { html.fm-team .tm-team_list .w-dyn-items { grid-template-columns: 1fr; } }
