/**
 * Страница: Проекты.
 *
 * Значения перенесены из design-reference/проекты.html; источник помечен
 * «reference:». Мобильных состояний в макете нет — они спроектированы
 * темой, см. docs/DESIGN-DEVIATIONS.md.
 */

/* ====================================================================
 * HERO
 * reference: background:#FFFFFF; border-bottom:1px solid #EBEDF1
 * ================================================================== */

.tri-pj-hero {
	background-color: var(--tri-color-white);
	border-bottom: var(--tri-border-width) solid var(--tri-color-divider);
}

/* reference: padding:20px 0 0 */
.tri-pj-hero__crumbs {
	padding-block-start: var(--tri-space-20);
}

/* reference: grid 47fr 53fr; gap:64px; padding:44px 0 0 */
.tri-pj-hero__grid {
	display: grid;
	gap: var(--tri-space-64);
	padding-block-start: var(--tri-space-44);
}

.tri-pj-hero__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	min-width: 0;
}

/* reference: 56px/1.08/700; ls -0.028em */
.tri-pj-hero__title {
	font-size: var(--tri-fs-56);
	line-height: var(--tri-lh-1-08);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-028);
	margin: 0;
}

/* reference: 20px/1.55 #5A6270; margin-top:20px; max-width:560px */
.tri-pj-hero__lead {
	font-size: var(--tri-fs-20);
	line-height: var(--tri-lh-1-55);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-20);
	max-width: 560px;
}

/* reference: gap:14px; margin-top:30px */
.tri-pj-hero__actions {
	margin-block-start: var(--tri-space-30);
}

.tri-pj-hero__media {
	position: relative;
	min-width: 0;
}

/* reference: radius 20px; min-height:420px; shadow 0 24px 56px rgba(4,34,92,0.18) */
.tri-pj-hero__photo {
	border-radius: var(--tri-radius-20);
	overflow: hidden;
	min-height: 420px;
	box-shadow: var(--tri-shadow-navy-56-18);
	background-color: var(--tri-color-surface-edf2fd);
	height: 100%;
}

.tri-pj-hero__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* reference: заглушка — #EDF2FD; 12px/700 #6B7280 */
.tri-photo-placeholder {
	width: 100%;
	height: 100%;
	min-height: inherit;
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	padding: var(--tri-space-12);
	background-color: var(--tri-color-surface-edf2fd);
	color: var(--tri-color-muted-soft);
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-700);
}

/* reference: left:22px; bottom:22px; rgba(255,255,255,0.94); radius 10px; padding 12px 18px */
.tri-pj-hero__caption {
	position: absolute;
	left: var(--tri-space-22);
	bottom: var(--tri-space-22);
	background-color: rgba(255, 255, 255, 0.94);
	border-radius: var(--tri-radius-10);
	padding: var(--tri-space-12) var(--tri-space-18);
	pointer-events: none;
}

/* reference: 13px/700 #6B7280 */
.tri-pj-hero__caption-eyebrow {
	font-size: var(--tri-fs-13);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted-soft);
}

/* reference: 15px/800 #16181D; margin-top:3px */
.tri-pj-hero__caption-text {
	font-size: var(--tri-fs-15);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	margin-block-start: var(--tri-space-3);
}

/* reference: margin:52px auto 0; repeat(4,1fr); gap:40px;
   border-top 1px #EBEDF1; padding:34px 0 40px */
.tri-pj-hero__metrics {
	display: grid;
	/* На узких экранах показатели идут парами: одна колонка растягивает
	   короткие значения на всю ширину и рвёт ритм полосы. */
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 132px), 1fr));
	gap: var(--tri-space-24) var(--tri-space-20);
	margin-block-start: var(--tri-space-52);
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
	padding-block: var(--tri-space-34) var(--tri-space-40);
	list-style: none;
}

/* reference: 40px/800 #16181D; ls -0.02em; lh1 */
.tri-pj-hero__metric-value {
	font-size: var(--tri-fs-40);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-02);
	line-height: var(--tri-lh-1);
	font-variant-numeric: tabular-nums lining-nums;
}

/* reference: 14px/600 #6B7280; margin-top:8px */
.tri-pj-hero__metric-label {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-600);
	color: var(--tri-color-muted-soft);
	margin-block-start: var(--tri-space-8);
}

@media (min-width: 1024px) {
	/* reference: grid-template-columns:47fr 53fr */
	.tri-pj-hero__grid {
		grid-template-columns: 47fr 53fr;
	}

	.tri-pj-hero__metrics {
		grid-template-columns: repeat(4, minmax(0, 1fr));
		gap: var(--tri-space-40);
	}
}

/* ====================================================================
 * КЕЙСЫ
 * reference: background:#F5F8FF; padding:88px 0
 * ================================================================== */

.tri-pj-cases {
	background-color: var(--tri-color-surface-f5f8ff);
}

.tri-section-head {
	display: flex;
	flex-wrap: wrap;
	align-items: flex-end;
	justify-content: space-between;
	gap: var(--tri-space-40);
}

/* reference: 42px/700; ls -0.022em */
.tri-section-head__title {
	font-size: var(--tri-fs-42);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-022);
	margin: 0;
}

/* reference: 14.5px/800 #16181D */
.tri-section-head__link {
	font-size: var(--tri-fs-14-5);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	white-space: nowrap;
	text-decoration: none;
}

/* reference: repeat(3,1fr); gap:20px; margin-top:32px */
.tri-pj-cases__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
	gap: var(--tri-space-20);
	margin-block-start: var(--tri-space-32);
}

/* reference: #FFFFFF; border rgba(18,41,92,0.10); radius 20px */
.tri-pj-case {
	background-color: var(--tri-color-white);
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.1);
	border-radius: var(--tri-radius-20);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-width: 0;
}

/* reference: height:230px */
.tri-pj-case__media {
	height: 230px;
	position: relative;
	flex-shrink: 0;
	background-color: var(--tri-color-surface-edf2fd);
}

.tri-pj-case__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* reference: top/left 16px; rgba(255,255,255,0.94); radius 10px; padding 6px 12px; 12px/800 */
.tri-pj-case__tag {
	position: absolute;
	top: var(--tri-space-16);
	left: var(--tri-space-16);
	background-color: rgba(255, 255, 255, 0.94);
	border-radius: var(--tri-radius-10);
	padding: var(--tri-space-6) var(--tri-space-12);
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-navy);
	pointer-events: none;
}

/* reference: padding:26px 28px 28px */
.tri-pj-case__body {
	padding: var(--tri-space-26) var(--tri-space-28) var(--tri-space-28);
	display: flex;
	flex-direction: column;
	flex: 1;
}

/* reference: 22px/800 #16181D; lh1.3 */
.tri-pj-case__title {
	font-size: var(--tri-fs-22);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	line-height: var(--tri-lh-1-3);
	margin: 0;
}

/* reference: 14.5px/1.5 #5A6270; margin-top:8px */
.tri-pj-case__task {
	font-size: var(--tri-fs-14-5);
	line-height: var(--tri-lh-1-5);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-8);
}

/* reference: 13px/800 #16181D; margin-top:18px */
.tri-pj-case__label {
	font-size: var(--tri-fs-13);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	margin-block-start: var(--tri-space-18);
}

/* reference: gap:7px; margin-top:9px */
.tri-pj-case__list {
	list-style: none;
	margin: var(--tri-space-9) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--tri-space-7);
}

/* reference: 13.5px/1.45 #3A3F49; gap:10px; иконка-галочка 15px в круге #EDF2FD */
.tri-pj-case__list li {
	display: flex;
	gap: var(--tri-space-10);
	align-items: flex-start;
	font-size: var(--tri-fs-13-5);
	line-height: var(--tri-lh-1-45);
	color: var(--tri-color-ink-secondary);
}

.tri-pj-case__list svg {
	flex-shrink: 0;
	margin-block-start: 3px;
}

/* reference: 13.5px/1.5 #5A6270; margin-top:7px */
.tri-pj-case__result {
	font-size: var(--tri-fs-13-5);
	line-height: var(--tri-lh-1-5);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-7);
}

/* reference: margin-top:auto; padding-top:18px */
.tri-pj-case__foot {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--tri-space-12);
	margin-block-start: auto;
	padding-block-start: var(--tri-space-18);
}

/* reference: 13.5px/800 #16181D */
.tri-pj-case__more {
	font-size: var(--tri-fs-13-5);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	text-decoration: none;
}

/* reference: 12px/500 #6B7280 */
.tri-pj-case__region {
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-500);
	color: var(--tri-color-muted-soft);
}

@media (min-width: 1024px) {
	.tri-pj-cases__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ====================================================================
 * КАТАЛОГ ПРОЕКТОВ
 * reference: border-top 1px #EBEDF1; padding:96px 0 0; scroll-margin-top:110px
 * ================================================================== */

.tri-pj-catalog {
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
	scroll-margin-top: 110px;
}

/* reference: 42px/700; ls -0.022em */
.tri-pj-catalog__title {
	font-size: var(--tri-fs-42);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-022);
	margin: 0;
}

/* reference: 16.5px/1.6 #5A6270; margin-top:14px; max-width:720px */
.tri-pj-catalog__text {
	font-size: var(--tri-fs-16-5);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-14);
	max-width: 720px;
}

/* reference: #FAFBFF; border rgba(18,41,92,0.10); radius 20px;
   padding 20px 22px; margin-top:30px */
.tri-pj-filters {
	background-color: var(--tri-color-surface-fafbff);
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.1);
	border-radius: var(--tri-radius-20);
	padding: var(--tri-space-20) var(--tri-space-22);
	margin-block-start: var(--tri-space-30);
}

/* reference: gap:8px; чипы 14px/700; padding 11px 20px; radius 10px */
.tri-pj-filters__chips {
	display: flex;
	gap: var(--tri-space-8);
	flex-wrap: wrap;
	list-style: none;
	margin: 0;
	padding: 0;
}

/*
 * НА ТЕЛЕФОНЕ НАПРАВЛЕНИЯ ЕДУТ В РЯД. Пять направлений переносом
 * занимали пять строк и отодвигали каталог за экран. Ряд остаётся
 * одной строкой и прокручивается внутри себя: горизонтальной
 * прокрутки у страницы при этом не появляется.
 */
@media (max-width: 767px) {
	.tri-pj-filters__chips {
		flex-wrap: nowrap;
		overflow-x: auto;
		overscroll-behavior-x: contain;
		scroll-snap-type: x proximity;
		scrollbar-width: none;
		padding-block-end: var(--tri-space-4);
		/* Поле контейнера, чтобы крайние чипы не липли к краям экрана. */
		margin-inline: calc(var(--tri-gutter) * -1);
		padding-inline: var(--tri-gutter);
	}

	.tri-pj-filters__chips::-webkit-scrollbar {
		display: none;
	}

	.tri-pj-filters__chips > li {
		flex: 0 0 auto;
		scroll-snap-align: start;
	}
}

.tri-pj-chip {
	display: inline-block;
	background-color: var(--tri-color-white);
	border: var(--tri-border-width) solid var(--tri-color-border);
	color: var(--tri-color-ink-secondary);
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-700);
	padding: var(--tri-space-11) var(--tri-space-20);
	border-radius: var(--tri-radius-10);
	text-decoration: none;
	font-family: inherit;
	cursor: pointer;
}

.tri-pj-chip:hover,
.tri-pj-chip:focus-visible {
	border-color: var(--tri-color-navy);
	color: var(--tri-color-navy);
}

/* reference: активный чип — заливка #12295C */
.tri-pj-chip[aria-current="true"],
.tri-pj-chip.is-active {
	background-color: var(--tri-color-navy);
	border-color: var(--tri-color-navy);
	color: var(--tri-color-white);
}

/* reference: gap:10px; margin-top:14px */
.tri-pj-filters__row {
	display: flex;
	flex-wrap: wrap;
	gap: var(--tri-space-10);
	align-items: center;
	margin-block-start: var(--tri-space-14);
}

/* reference: select — #FFFFFF; border #DDE0E6; radius 10px;
   padding 12px 14px; 14px/700 #16181D */
.tri-pj-filters__select {
	background-color: var(--tri-color-white);
	border: var(--tri-border-width) solid var(--tri-color-border);
	border-radius: var(--tri-radius-10);
	padding: var(--tri-space-12) var(--tri-space-14);
	font-family: inherit;
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	cursor: pointer;
	width: auto;
	min-width: 172px;
}

.tri-pj-filters__select--wide {
	min-width: 216px;
}

/* reference: поле поиска — flex:1; gap:11px; padding 0 16px */
.tri-pj-filters__search {
	flex: 1 1 260px;
	display: flex;
	align-items: center;
	gap: var(--tri-space-11);
	background-color: var(--tri-color-white);
	border: var(--tri-border-width) solid var(--tri-color-border);
	border-radius: var(--tri-radius-10);
	padding-inline: var(--tri-space-16);
	min-width: 0;
}

.tri-pj-filters__search svg {
	flex-shrink: 0;
	color: var(--tri-color-muted-soft);
}

/* reference: 14.5px/500 #16181D; padding 12px 0 */
.tri-pj-filters__input {
	flex: 1;
	border: 0;
	outline: none;
	font-family: inherit;
	font-size: var(--tri-fs-14-5);
	font-weight: var(--tri-fw-500);
	color: var(--tri-color-ink);
	padding-block: var(--tri-space-12);
	background: none;
	min-width: 0;
}

.tri-pj-filters__input:focus {
	box-shadow: none;
	border: 0;
}

/* reference: 13.5px/700 #6B7280 */
.tri-pj-filters__reset {
	background: none;
	border: 0;
	padding-inline: var(--tri-space-8);
	font-size: var(--tri-fs-13-5);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted-soft);
	font-family: inherit;
	white-space: nowrap;
	text-decoration: none;
}

.tri-pj-filters__reset:hover {
	color: var(--tri-color-ink);
}

/* reference: 14px/700 #5A6270; margin-top:26px */
.tri-pj-catalog__found {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-26);
}

/* reference: repeat(3,1fr); gap:20px; margin-top:16px */
.tri-pj-catalog__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
	gap: var(--tri-space-20);
	margin-block-start: var(--tri-space-16);
	list-style: none;
	padding: 0;
}

/* reference: карточка каталога — та же рамка, hover border #16181D */
.tri-pj-card {
	background-color: var(--tri-color-white);
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.1);
	border-radius: var(--tri-radius-20);
	overflow: hidden;
	display: flex;
	flex-direction: column;
	min-width: 0;
	transition:
		border-color var(--tri-duration-3) var(--tri-ease),
		box-shadow var(--tri-duration-32) var(--tri-ease);
}

.tri-pj-card:hover,
.tri-pj-card:focus-within {
	border-color: var(--tri-color-ink);
	box-shadow: var(--tri-shadow-navy-26-07);
}

/* reference: height:200px */
.tri-pj-card__media {
	height: 200px;
	position: relative;
	flex-shrink: 0;
	background-color: var(--tri-color-surface-edf2fd);
}

.tri-pj-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* reference: top/left 14px; radius 6px; padding 5px 11px; 12px/800 #16181D */
.tri-pj-card__tag {
	position: absolute;
	top: var(--tri-space-14);
	left: var(--tri-space-14);
	background-color: rgba(255, 255, 255, 0.94);
	border-radius: var(--tri-radius-6);
	padding: var(--tri-space-5) var(--tri-space-11);
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	pointer-events: none;
}

/* reference: padding:22px 24px 24px */
.tri-pj-card__body {
	padding: var(--tri-space-22) var(--tri-space-24) var(--tri-space-24);
	display: flex;
	flex-direction: column;
	flex: 1;
}

/* reference: 19px/800 #16181D; lh1.3 */
.tri-pj-card__title {
	font-size: var(--tri-fs-19);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	line-height: var(--tri-lh-1-3);
	margin: 0;
}

/* reference: 13.5px/1.45 #5A6270; margin-top:7px */
.tri-pj-card__task {
	font-size: var(--tri-fs-13-5);
	line-height: var(--tri-lh-1-45);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-7);
}

/* reference: 12.5px/800 #16181D; margin-top:16px */
.tri-pj-card__label {
	font-size: var(--tri-fs-12-5);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	margin-block-start: var(--tri-space-16);
}

/* reference: gap:6px; margin-top:8px; точка 5px #12295C */
.tri-pj-card__list {
	list-style: none;
	margin: var(--tri-space-8) 0 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: var(--tri-space-6);
}

.tri-pj-card__list li {
	display: flex;
	gap: var(--tri-space-9);
	align-items: flex-start;
	font-size: var(--tri-fs-13);
	line-height: var(--tri-lh-1-45);
	color: var(--tri-color-ink-secondary);
}

.tri-pj-card__list li::before {
	content: "";
	width: 5px;
	height: 5px;
	border-radius: var(--tri-radius-circle);
	background-color: var(--tri-color-navy);
	flex-shrink: 0;
	margin-block-start: 7px;
}

/* reference: 13px/1.45 #5A6270; margin-top:6px */
.tri-pj-card__result {
	font-size: var(--tri-fs-13);
	line-height: var(--tri-lh-1-45);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-6);
}

/* reference: margin-top:auto; padding-top:16px */
.tri-pj-card__foot {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--tri-space-12);
	margin-block-start: auto;
	padding-block-start: var(--tri-space-16);
}

/* reference: 12px/500 #6B7280 */
.tri-pj-card__meta {
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-500);
	color: var(--tri-color-muted-soft);
}

/* reference: 13px/800 #16181D */
.tri-pj-card__more {
	font-size: var(--tri-fs-13);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	text-decoration: none;
	white-space: nowrap;
}

/* reference: пустой результат — border rgba(18,41,92,0.10); radius 20px; padding 44px */
.tri-pj-empty {
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.1);
	border-radius: var(--tri-radius-20);
	padding: var(--tri-space-44);
	text-align: center;
	margin-block-start: var(--tri-space-16);
}

/* reference: 21px/800 #16181D */
.tri-pj-empty__title {
	font-size: var(--tri-fs-21);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	margin: 0;
}

/* reference: 15px/1.6 #5A6270; margin:10px auto 0; max-width:520px */
.tri-pj-empty__text {
	font-size: var(--tri-fs-15);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-muted);
	margin: var(--tri-space-10) auto 0;
	max-width: 520px;
}

.tri-pj-empty .tri-btn {
	margin-block-start: var(--tri-space-20);
}

/* reference: кнопка «Показать ещё» по центру; margin-top:32px */
.tri-pj-catalog__more {
	display: flex;
	justify-content: center;
	margin-block-start: var(--tri-space-32);
}

@media (min-width: 1024px) {
	.tri-pj-catalog__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ====================================================================
 * ГЕОГРАФИЯ (сетка отличается от главной: 400px + 1fr)
 * reference: border-top 1px #EBEDF1; padding:104px 0 0
 * ================================================================== */

.tri-pj-geo {
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
}

.tri-pj-geo__grid {
	display: grid;
	gap: var(--tri-space-64);
	align-items: center;
}

/* reference: 40px/1.15/700; ls -0.02em */
.tri-pj-geo__title {
	font-size: var(--tri-fs-40);
	line-height: var(--tri-lh-1-15);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-02);
	margin: 0;
}

/* reference: 16px/1.6 #5A6270; margin-top:16px; max-width:64ch */
.tri-pj-geo__text {
	font-size: var(--tri-fs-16);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-16);
	max-width: var(--tri-measure);
}

/* reference: строки — border-top 1px #EBEDF1; padding:14px 0 */
.tri-pj-geo__rows {
	list-style: none;
	margin: var(--tri-space-26) 0 0;
	padding: 0;
}

.tri-pj-geo__row {
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
	padding-block: var(--tri-space-14);
}

/* reference: 16px/800 #16181D */
.tri-pj-geo__row-title {
	font-size: var(--tri-fs-16);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
}

/* reference: 13.5px/600 #6B7280; margin-top:3px */
.tri-pj-geo__row-note {
	font-size: var(--tri-fs-13-5);
	font-weight: var(--tri-fw-600);
	color: var(--tri-color-muted-soft);
	margin-block-start: var(--tri-space-3);
}

@media (min-width: 1024px) {
	/* reference: grid-template-columns:400px 1fr */
	.tri-pj-geo__grid {
		grid-template-columns: 400px minmax(0, 1fr);
	}
}

/* --------------------------------------------------------------------
 * Отрасли (второй блок секции «География»)
 * reference: контейнер margin:88px auto 0; заголовок 40px/700 ls -0.022em;
 * плитки gap 12px 14px; margin-top:30px
 * ------------------------------------------------------------------ */

.tri-pj-industries {
	margin-block-start: calc(var(--tri-space-88) * var(--tri-section-scale));
}

.tri-pj-industries__title {
	font-size: var(--tri-fs-40);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-022);
	margin: 0;
}

.tri-pj-industries__list {
	display: flex;
	flex-wrap: wrap;
	gap: var(--tri-space-12) var(--tri-space-14);
	margin-block-start: var(--tri-space-30);
	list-style: none;
	padding: 0;
}

/* reference: border 1px #E2E5EA; radius 10px; padding 14px 24px;
   19px/800 #16181D; gap 12px; hover border #16181D */
.tri-pj-industry {
	display: flex;
	align-items: center;
	gap: var(--tri-space-12);
	background: none;
	border: var(--tri-border-width) solid var(--tri-color-border-e2e5ea);
	border-radius: var(--tri-radius-10);
	padding: var(--tri-space-14) var(--tri-space-24);
	font-size: var(--tri-fs-19);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	text-decoration: none;
	font-family: inherit;
	transition: border-color var(--tri-duration-3) var(--tri-ease);
}

.tri-pj-industry:hover,
.tri-pj-industry:focus-visible {
	border-color: var(--tri-color-ink);
	color: var(--tri-color-ink);
}

.tri-pj-industry[aria-current="true"] {
	border-color: var(--tri-color-navy);
}

.tri-pj-industry svg {
	flex-shrink: 0;
	color: var(--tri-color-navy);
}

/* reference: 13.5px/600 #6B7280; margin-top:14px */
.tri-pj-industries__note {
	font-size: var(--tri-fs-13-5);
	font-weight: var(--tri-fw-600);
	color: var(--tri-color-muted-soft);
	margin-block-start: var(--tri-space-14);
}

/* ====================================================================
 * КАК ВЕДЁМ ПРОЕКТЫ (тёмная секция с фотофоном)
 * reference: background:#12295C; padding:96px 0; margin-top:104px
 * ================================================================== */

.tri-pj-process {
	position: relative;
	background-color: var(--tri-color-navy);
	margin-block-start: var(--tri-space-104);
	overflow: hidden;
}

.tri-pj-process__bg {
	position: absolute;
	inset: 0;
}

.tri-pj-process__bg img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* reference: linear-gradient(90deg,rgba(4,18,46,0.95) 0%,rgba(4,18,46,0.85) 100%) */
.tri-pj-process__veil {
	position: absolute;
	inset: 0;
	pointer-events: none;
	background-image: linear-gradient(90deg, rgba(4, 18, 46, 0.95) 0%, rgba(4, 18, 46, 0.85) 100%);
}

/* reference: grid 1fr 1.1fr; gap:64px */
.tri-pj-process__grid {
	position: relative;
	display: grid;
	gap: var(--tri-space-64);
	align-items: center;
}

/* reference: 40px/700 #FFFFFF; ls -0.022em; margin-top:16px */
.tri-pj-process__title {
	font-size: var(--tri-fs-40);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-white);
	letter-spacing: var(--tri-ls-n0-022);
	margin: 0;
}

/* reference: 16px/1.6 #C8CDD6; margin-top:16px */
.tri-pj-process__text {
	font-size: var(--tri-fs-16);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-on-dark-c8cdd6);
	margin-block-start: var(--tri-space-16);
}

.tri-pj-process__cta {
	margin-block-start: var(--tri-space-26);
}

/* reference: rgba(255,255,255,0.08); border rgba(255,255,255,0.16);
   blur(4px); radius 20px; padding 24px */
.tri-pj-cabinet {
	background-color: rgba(255, 255, 255, 0.08);
	border: var(--tri-border-width) solid rgba(255, 255, 255, 0.16);
	backdrop-filter: blur(4px);
	border-radius: var(--tri-radius-20);
	padding: var(--tri-space-24);
	min-width: 0;
}

/* reference: #FFFFFF; radius 14px */
.tri-pj-cabinet__window {
	background-color: var(--tri-color-white);
	border-radius: var(--tri-radius-14);
	overflow: hidden;
}

/* reference: #FAFBFF; border-bottom 1px #EBEDF1; padding 10px 16px; gap 7px */
.tri-pj-cabinet__bar {
	display: flex;
	align-items: center;
	gap: var(--tri-space-7);
	background-color: var(--tri-color-surface-fafbff);
	border-bottom: var(--tri-border-width) solid var(--tri-color-divider);
	padding: var(--tri-space-10) var(--tri-space-16);
}

.tri-pj-cabinet__dot {
	width: 9px;
	height: 9px;
	border-radius: var(--tri-radius-circle);
	background-color: var(--tri-color-border-e2e5ea);
}

/* reference: 12px/700 #6B7280; margin-left:8px */
.tri-pj-cabinet__host {
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted-soft);
	margin-left: var(--tri-space-8);
}

/* reference: padding:20px */
.tri-pj-cabinet__body {
	padding: var(--tri-space-20);
}

.tri-pj-cabinet__row {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--tri-space-12);
}

/* reference: 14px/800 #16181D */
.tri-pj-cabinet__stage {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
}

/* reference: 12px/800 #16181D */
.tri-pj-cabinet__pct {
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
}

/* reference: height 7px; #EBEDF1; radius 100px; margin-top:9px */
.tri-pj-cabinet__bar-track {
	height: 7px;
	background-color: var(--tri-color-divider);
	border-radius: var(--tri-radius-pill);
	margin-block-start: var(--tri-space-9);
	overflow: hidden;
}

.tri-pj-cabinet__bar-track > span {
	display: block;
	height: 100%;
	background-color: var(--tri-color-navy);
	border-radius: var(--tri-radius-pill);
}

/* reference: #FAFBFF; border #EBEDF1; radius 10px; padding 12px 16px; margin-top:14px */
.tri-pj-cabinet__file {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: var(--tri-space-12);
	background-color: var(--tri-color-surface-fafbff);
	border: var(--tri-border-width) solid var(--tri-color-divider);
	border-radius: var(--tri-radius-10);
	padding: var(--tri-space-12) var(--tri-space-16);
	margin-block-start: var(--tri-space-14);
	font-size: var(--tri-fs-12-5);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted);
}

.tri-pj-cabinet__file b {
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
}

/* reference: #EDF2FD; radius 10px; padding 11px 16px; margin-top:10px; 12px/700 #16181D */
.tri-pj-cabinet__note {
	background-color: var(--tri-color-surface-edf2fd);
	border-radius: var(--tri-radius-10);
	padding: var(--tri-space-11) var(--tri-space-16);
	margin-block-start: var(--tri-space-10);
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
}

/* reference: margin:64px auto 0; border-top rgba(255,255,255,0.14); padding-top:48px */
.tri-pj-experts {
	position: relative;
	margin-block-start: var(--tri-space-64);
	border-top: var(--tri-border-width) solid rgba(255, 255, 255, 0.14);
	padding-block-start: var(--tri-space-48);
}

/* reference: 32px/800 #FFFFFF; ls -0.01em */
.tri-pj-experts__title {
	font-size: var(--tri-fs-32);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-white);
	letter-spacing: var(--tri-ls-n0-01);
	margin: 0;
}

/* reference: 14px/800 #FFFFFF */
.tri-pj-experts__link {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-white);
	white-space: nowrap;
	text-decoration: none;
}

/* reference: repeat(4,1fr); gap:16px; margin-top:28px */
.tri-pj-experts__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 220px), 1fr));
	gap: var(--tri-space-16);
	margin-block-start: var(--tri-space-28);
	list-style: none;
	padding: 0;
}

/* reference: #FFFFFF; radius 14px; gap:14px; padding 14px 16px */
.tri-pj-expert {
	background-color: var(--tri-color-white);
	border-radius: var(--tri-radius-14);
	overflow: hidden;
	display: flex;
	align-items: center;
	gap: var(--tri-space-14);
	padding: var(--tri-space-14) var(--tri-space-16);
	min-width: 0;
}

/* reference: 56x56; круг */
.tri-pj-expert__photo {
	width: 56px;
	height: 56px;
	flex-shrink: 0;
	border-radius: var(--tri-radius-circle);
	overflow: hidden;
	background-color: var(--tri-color-surface-edf2fd);
}

.tri-pj-expert__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* reference: 14px/800 #16181D */
.tri-pj-expert__name {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
}

/* reference: 12px/700 #16181D; lh1.3; margin-top:2px */
.tri-pj-expert__role {
	font-size: var(--tri-fs-12);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	line-height: var(--tri-lh-1-3);
	margin-block-start: 2px;
}

@media (min-width: 1024px) {
	/* reference: grid-template-columns:1fr 1.1fr */
	.tri-pj-process__grid {
		grid-template-columns: 1fr 1.1fr;
	}

	.tri-pj-experts__list {
		grid-template-columns: repeat(4, minmax(0, 1fr));
	}
}

/* ====================================================================
 * ОТЗЫВЫ
 * reference: border-top 1px #EBEDF1; padding:104px 0 0
 * ================================================================== */

.tri-pj-reviews {
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
}

/* reference: 42px/700; ls -0.022em; margin-top:16px */
.tri-pj-reviews__title {
	font-size: var(--tri-fs-42);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-022);
	margin: 0;
}

/* reference: repeat(3,1fr); gap:18px; margin-top:40px */
.tri-pj-reviews__list {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 300px), 1fr));
	gap: var(--tri-space-18);
	margin-block-start: var(--tri-space-40);
	list-style: none;
	padding: 0;
}

/* reference: border rgba(18,41,92,0.10); radius 20px; padding 26px; gap 14px */
.tri-pj-review {
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.1);
	border-radius: var(--tri-radius-20);
	padding: var(--tri-space-26);
	display: flex;
	flex-direction: column;
	gap: var(--tri-space-14);
	min-width: 0;
}

/* reference: 130x44; contain */
.tri-pj-review__logo {
	height: 44px;
	width: 130px;
	background-color: var(--tri-color-surface-edf2fd);
}

.tri-pj-review__logo img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

/* reference: 15.5px/1.6 #3A3F49; w500 */
.tri-pj-review__quote {
	font-size: var(--tri-fs-15-5);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-ink-secondary);
	font-weight: var(--tri-fw-500);
	margin: 0;
}

.tri-pj-review__who {
	margin-block-start: auto;
}

/* reference: 13.5px/800 #16181D */
.tri-pj-review__name {
	font-size: var(--tri-fs-13-5);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
}

/* reference: 12.5px/600 #6B7280; margin-top:2px */
.tri-pj-review__role {
	font-size: var(--tri-fs-12-5);
	font-weight: var(--tri-fw-600);
	color: var(--tri-color-muted-soft);
	margin-block-start: 2px;
}

/* reference: border-top 1px #EBEDF1; padding-top:14px; gap:12px */
.tri-pj-review__foot {
	display: flex;
	align-items: center;
	gap: var(--tri-space-12);
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
	padding-block-start: var(--tri-space-14);
}

/* reference: 38x48; border #E2E5EA; radius 6px */
.tri-pj-review__scan {
	width: 38px;
	height: 48px;
	border: var(--tri-border-width) solid var(--tri-color-border-e2e5ea);
	border-radius: var(--tri-radius-6);
	overflow: hidden;
	flex-shrink: 0;
}

.tri-pj-review__scan .tri-photo-placeholder {
	font-size: 8px;
	padding: 2px;
}

/* reference: 13px/800 #16181D */
.tri-pj-review__link {
	font-size: var(--tri-fs-13);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	text-decoration: none;
}

@media (min-width: 1024px) {
	.tri-pj-reviews__list {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ====================================================================
 * ПРЕЗЕНТАЦИЯ
 * reference: border-top 1px #EBEDF1; padding:96px 0 0
 * ================================================================== */

.tri-pj-deck {
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
}

/* reference: #F5F8FF; border rgba(18,41,92,0.10); radius 20px;
   gap:48px; padding 40px 48px */
.tri-pj-deck__panel {
	background-color: var(--tri-color-surface-f5f8ff);
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.1);
	border-radius: var(--tri-radius-20);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--tri-space-48);
	padding: var(--tri-space-40) var(--tri-space-48);
}

/* reference: 150x190; #FFFFFF; border #E2E5EA; radius 10px;
   shadow 0 14px 34px rgba(4,34,92,0.12); rotate(-2deg) */
.tri-pj-deck__cover {
	width: 150px;
	height: 190px;
	background-color: var(--tri-color-white);
	border: var(--tri-border-width) solid var(--tri-color-border-e2e5ea);
	border-radius: var(--tri-radius-10);
	box-shadow: var(--tri-shadow-navy-34-12);
	overflow: hidden;
	flex-shrink: 0;
	transform: rotate(-2deg);
}

.tri-pj-deck__cover img {
	width: 100%;
	height: 100%;
	object-fit: contain;
	background-color: var(--tri-color-surface-edf2fd);
}

.tri-pj-deck__body {
	flex: 1 1 320px;
	min-width: 0;
}

/* reference: 30px/800 #16181D; ls -0.01em */
.tri-pj-deck__title {
	font-size: var(--tri-fs-30);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	letter-spacing: var(--tri-ls-n0-01);
	margin: 0;
}

/* reference: 15.5px/1.6 #5A6270; margin-top:10px; max-width:640px */
.tri-pj-deck__text {
	font-size: var(--tri-fs-15-5);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-10);
	max-width: 640px;
}

/* reference: gap:16px; margin-top:20px */
.tri-pj-deck__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--tri-space-16);
	margin-block-start: var(--tri-space-20);
}

/* reference: 12.5px/700 #6B7280 */
.tri-pj-deck__note {
	font-size: var(--tri-fs-12-5);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted-soft);
}

/* reference: repeat(3,1fr); gap:18px; margin-top:64px */
.tri-pj-eco {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(min(100%, 280px), 1fr));
	gap: var(--tri-space-18);
	margin-block-start: var(--tri-space-64);
	list-style: none;
	padding: 0;
}

/* reference: border rgba(18,41,92,0.09); radius 14px; padding 24px 26px */
.tri-pj-eco__item {
	border: var(--tri-border-width) solid rgba(18, 41, 92, 0.09);
	border-radius: var(--tri-radius-14);
	padding: var(--tri-space-24) var(--tri-space-26);
	min-width: 0;
}

/* reference: 13px/700 #6B7280 */
.tri-pj-eco__tag {
	font-size: var(--tri-fs-13);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-muted-soft);
}

/* reference: 17.5px/800 #16181D; margin-top:8px */
.tri-pj-eco__title {
	font-size: var(--tri-fs-17-5);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-ink);
	margin-block-start: var(--tri-space-8);
}

/* reference: 13.5px/1.55 #5A6270; margin-top:8px */
.tri-pj-eco__text {
	font-size: var(--tri-fs-13-5);
	line-height: var(--tri-lh-1-55);
	color: var(--tri-color-muted);
	margin-block-start: var(--tri-space-8);
}

@media (min-width: 1024px) {
	.tri-pj-eco {
		grid-template-columns: repeat(3, minmax(0, 1fr));
	}
}

/* ====================================================================
 * ФИНАЛЬНЫЙ CTA
 * reference: border-top 1px #EBEDF1; padding:104px 0 0; scroll-margin-top:110px
 * ================================================================== */

.tri-pj-cta {
	border-top: var(--tri-border-width) solid var(--tri-color-divider);
	scroll-margin-top: 110px;
}

/* reference: #12295C + сетка-паттерн 56x56; radius 24px; grid 1.35fr 1fr */
.tri-pj-cta__panel {
	position: relative;
	overflow: hidden;
	background-color: var(--tri-color-navy);
	background-image:
		linear-gradient(rgba(255, 255, 255, 0.035) 1px, transparent 1px),
		linear-gradient(90deg, rgba(255, 255, 255, 0.035) 1px, transparent 1px);
	background-size: 56px 56px;
	border-radius: var(--tri-radius-24);
	display: grid;
}

/* reference: фото поверх фона, opacity 0.48 */
.tri-pj-cta__photo {
	position: absolute;
	inset: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	opacity: 0.48;
	pointer-events: none;
}

/* reference: padding:56px 60px */
.tri-pj-cta__body {
	position: relative;
	padding: var(--tri-space-56) var(--tri-space-60);
}

/* reference: 42px/700 #FFFFFF; ls -0.022em */
.tri-pj-cta__title {
	font-size: var(--tri-fs-42);
	font-weight: var(--tri-fw-700);
	color: var(--tri-color-white);
	letter-spacing: var(--tri-ls-n0-022);
	margin: 0;
}

/* reference: 16.5px/1.6 #C8CDD6; margin-top:16px; max-width:520px */
.tri-pj-cta__text {
	font-size: var(--tri-fs-16-5);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-on-dark-c8cdd6);
	margin-block-start: var(--tri-space-16);
	max-width: 520px;
}

/*
 * reference: gap:12px; margin-top:28px.
 *
 * Внутри теперь кнопки, а не поля: заявку принимает общий поп-ап.
 * Ограничение ширины снято вместе с полями: оно держало колонку
 * ввода, а две кнопки в него не помещались и переносились.
 */
.tri-pj-cta__form {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: var(--tri-space-12);
	margin-block-start: var(--tri-space-28);
}

/* reference: 12px/1.5 #9AA1AE */
.tri-pj-cta__consent {
	font-size: var(--tri-fs-12);
	line-height: var(--tri-lh-1-5);
	color: var(--tri-color-on-dark-9aa1ae);
}

/* reference: rgba(255,255,255,0.04); border-left rgba(255,255,255,0.1);
   padding 56px 48px; gap 18px */
.tri-pj-cta__aside {
	position: relative;
	background-color: rgba(255, 255, 255, 0.04);
	padding: var(--tri-space-56) var(--tri-space-48);
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: var(--tri-space-18);
}

/* reference: 96x96 круг */
.tri-pj-cta__avatar {
	width: 96px;
	height: 96px;
	border-radius: var(--tri-radius-circle);
	overflow: hidden;
	background-color: var(--tri-color-surface-edf2fd);
	flex-shrink: 0;
}

.tri-pj-cta__avatar img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* reference: 20px/800 #FFFFFF */
.tri-pj-cta__person {
	font-size: var(--tri-fs-20);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-white);
}

/* reference: 14px/600 #C8CDD6; margin-top:4px */
.tri-pj-cta__role {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-600);
	color: var(--tri-color-on-dark-c8cdd6);
	margin-block-start: var(--tri-space-4);
}

/* reference: 15px/1.6 #C8CDD6 */
.tri-pj-cta__quote {
	font-size: var(--tri-fs-15);
	line-height: var(--tri-lh-1-6);
	color: var(--tri-color-on-dark-c8cdd6);
	margin: 0;
}

/* reference: 19px/800 #FFFFFF; margin-top:auto */
.tri-pj-cta__phone {
	font-size: var(--tri-fs-19);
	font-weight: var(--tri-fw-800);
	color: var(--tri-color-white);
	margin-block-start: auto;
	text-decoration: none;
}

/* reference: 14px/600 #C8CDD6 */
.tri-pj-cta__email {
	font-size: var(--tri-fs-14);
	font-weight: var(--tri-fw-600);
	color: var(--tri-color-on-dark-c8cdd6);
	text-decoration: none;
}

@media (min-width: 1024px) {
	/* reference: grid-template-columns:1.35fr 1fr */
	.tri-pj-cta__panel {
		grid-template-columns: 1.35fr 1fr;
	}

	.tri-pj-cta__aside {
		border-left: var(--tri-border-width) solid rgba(255, 255, 255, 0.1);
	}
}

@media (max-width: 1023px) {
	.tri-pj-cta__body,
	.tri-pj-cta__aside {
		padding: var(--tri-space-32) var(--tri-space-24);
	}

	.tri-pj-cta__aside {
		border-top: var(--tri-border-width) solid rgba(255, 255, 255, 0.1);
	}

	.tri-pj-deck__panel {
		padding: var(--tri-space-24);
		gap: var(--tri-space-24);
	}

	.tri-pj-process {
		margin-block-start: var(--tri-space-56);
	}
}

/* ------------------------------------------------------------------
 * ЦЕЛИ НАЖАТИЯ НА СЕНСОРНЫХ ЭКРАНАХ (мобильный этап 14.09)
 *
 * Ссылки-действия внутри карточек набраны мелким шрифтом: по высоте
 * они занимали 20–26px, и палец попадал в них через раз. Размер
 * шрифта и вид ссылки не меняются — увеличивается только область,
 * по которой можно нажать.
 * ---------------------------------------------------------------- */
@media (max-width: 1023px) {
	.tri-pj-card__more,
	.tri-pj-case__more,
	.tri-pj-review__link {
		display: inline-flex;
		align-items: center;
		min-block-size: 44px;
	}
}

/*
 * ПОРЯДОК ЧТЕНИЯ КАРТОЧКИ НА ТЕЛЕФОНЕ (мобильный этап 14.09).
 *
 * Сначала направление и название, затем короткая суть и результат —
 * то, ради чего карточку открывают. Состав работ читают уже после:
 * это подробность, а не главное. Порядок меняется только на узком
 * экране; на desktop карточка остаётся прежней.
 *
 * Снимок объекта остаётся сверху: он держит карточку как единый
 * объект в ленте и служит якорем при прокрутке.
 */
@media (max-width: 767px) {
	.tri-pj-card__tag { order: 1; }
	.tri-pj-card__title { order: 2; }
	.tri-pj-card__task { order: 3; }
	.tri-pj-card__result { order: 4; }
	.tri-pj-card__label { order: 5; }
	.tri-pj-card__list { order: 6; }
	.tri-pj-card__foot { order: 7; }

	.tri-pj-card__result {
		margin-block-end: var(--tri-space-14);
	}
}

/* Телефон и почта — тоже цели нажатия (мобильный этап 14.09). */
@media (max-width: 1023px) {
	.tri-pj-cta__phone,
	.tri-pj-cta__email {
		display: inline-flex;
		align-items: center;
		min-block-size: 44px;
	}
}
