/**
 * Стыковка вёрстки темы progroup с Elementor.
 *
 * ЗДЕСЬ ТОЛЬКО ТИПОГРАФИКА И ДЕКОР ТЕМЫ.
 *
 * Раскладка и отступы — ширина контента, паддинги колонок, отступы между
 * блоками, поля на мобильном — задаются штатными настройками Elementor прямо
 * в редакторе (секция → «Ширина», колонка → «Внутренние отступы», виджет →
 * «Отступ»). В CSS их не дублируем: иначе правка в редакторе не даёт эффекта,
 * и непонятно, почему.
 *
 * Остаётся то, что раскладкой не является и должно быть одинаковым на всём
 * сайте: размеры шрифтов из дизайна темы, спрайтовые иконки контактов и
 * оформление карты. Вынеси их в поля виджетов — и при смене дизайна пришлось бы
 * обходить каждую страницу руками.
 *
 * Файл намеренно обычный .css и не собирается из style.scss: тема подключает
 * style.css и media.css, сборщика в репозитории нет,
 * поэтому правки в .scss на фронт не попадают.
 */

/* ---------------------------------------------------------------------------
   Отступ под фиксированную шапку.

   Тема задаёт «body { padding-top: 100px }», но глобальные стили WordPress
   (инлайновый global-styles-inline-css) объявляют «body { padding: 0 }».
   Селекторы одинаковой специфичности, а глобальные стили печатаются позже —
   и перебивают тему: первый экран уезжал под шапку на всех страницах, включая
   те, что на Elementor не переводились.

   Возвращаем только padding-top, не трогая горизонтальные отступы, чтобы не
   мешать правилам темы на узких экранах. Этот файл подключается после
   глобальных стилей, поэтому правило работает.
--------------------------------------------------------------------------- */
body {
	padding-top: 100px;
}

/* ---------------------------------------------------------------------------
   Отступы колонок Elementor — по умолчанию 10px со всех сторон.

   Из-за них секции темы (#s-work, #s-our-clients и прочие полноширинные)
   отрисовывались уже родительского контейнера: #s-work начинался с left: 10
   и был 1260px вместо 1280px, тогда как на непереведённых страницах —
   во всю ширину. Отсюда же разница в отображении одного и того же блока
   между страницами.

   Снимаем глобально: вся вертикальная и горизонтальная раскладка в этой теме
   задаётся её собственной вёрсткой (.container и т.п.), а не отступами колонок.
--------------------------------------------------------------------------- */
.elementor-column-gap-default > .elementor-column > .elementor-element-populated {
	padding: 0;
}

/* ---------------------------------------------------------------------------
   Блок «Подробнее» (переключатель у секции, progroup-collapsible.php).

   В теме правило свёрнутого состояния объявлено как «.page-text .hidden-content»
   — внутрь секций Elementor оно не достаёт, и блок оставался раскрытым, а
   кнопка ничего не делала.

   Цепляемся за СВОЙ класс pg-collapsible-body, который ставит
   progroup-collapsible.php, а не за разметку Elementor: её классы
   (.elementor-container, .elementor-element-populated) меняются между версиями
   — Elementor уже переводит вёрстку на flexbox-контейнеры. Свой класс от этого
   не зависит.

   Длительность 0.4s — из style.scss, чтобы анимация совпадала со старыми
   страницами.
--------------------------------------------------------------------------- */
.pg-collapsible-body {
	overflow: hidden;
	max-height: 0;
	transition: all 0.4s;
}

/* ---------------------------------------------------------------------------
   Секция «Как мы работаем»: в теме ей задана height: 550px + padding-top: 63px.

   box-sizing: Elementor применяет border-box ко всему внутри «.elementor».
   Раньше секция лежала вне его разметки и считалась как content-box: 550 + 63 =
   613px, из них 57px — свободное поле под кнопкой. Внутри Elementor те же 550px
   стали включать паддинг, высота упала до 556px и отступ снизу пропал.
   Возвращаем исходную модель расчёта.

   min-height вместо height: высота фиксированная, и при более крупном шрифте,
   другом языке или добавленном шаге контент вылезал бы за секцию. С min-height
   вид тот же (content-box: 550 + 63 = 613), но перелив невозможен.

   Селекторы без классов Elementor — только разметка темы, поэтому обновления
   плагина на них не влияют.
--------------------------------------------------------------------------- */
#s-work {
	box-sizing: content-box;
	height: auto;
	min-height: 550px;
}

/* ---------------------------------------------------------------------------
   Сетка записей (виджет «ProGroup: Записи сеткой»).

   Новый блок — в теме готовой вёрстки под него не было, поэтому раскладка
   и оформление живут здесь. Число колонок задаётся в редакторе и приходит
   классом pg-posts--cols-N.
--------------------------------------------------------------------------- */
.pg-posts {
	display: grid;
	gap: 40px 30px;
}

.pg-posts--cols-2 { grid-template-columns: repeat(2, 1fr); }
.pg-posts--cols-3 { grid-template-columns: repeat(3, 1fr); }
.pg-posts--cols-4 { grid-template-columns: repeat(4, 1fr); }

.pg-post {
	display: block;
	text-decoration: none;
	color: inherit;
}

.pg-post__image {
	border-radius: 5px;
	overflow: hidden;
	background-color: #f2f4f5;
	aspect-ratio: 16 / 10;
	margin-bottom: 20px;
}

.pg-post__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
	transition: transform 0.4s;
}

.pg-post:hover .pg-post__image img {
	transform: scale(1.04);
}

.pg-post__title {
	font-size: 20px;
	line-height: 27px;
	font-weight: 400;
	color: #050505;
	margin-bottom: 12px;
	transition: color 0.3s;
}

.pg-post:hover .pg-post__title {
	color: #75c52d;
}

.pg-post__text {
	font-size: 14px;
	line-height: 23px;
	color: #6d7882;
}

/* ---------------------------------------------------------------------------
   Вкладки-фильтры портфолио внутри виджета.

   В теме у table.tabs есть margin-top: 24px — он схлопывался с отступом
   заголовка (40px) в общие 40px. Elementor разносит виджеты по обёрткам,
   схлопывание отключается, и отступы складываются в 64px. Гасим свой отступ:
   зазор снова задаёт только заголовок.
--------------------------------------------------------------------------- */
/* Селектор с ID: правило темы — «#p-portfolio .tabs», простого класса
   не хватает по специфичности. */
#p-portfolio .pg-tabs,
#p-portfolio table.pg-tabs {
	margin-top: 0;
}

/* Постраничная навигация под сеткой. */
.pg-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 10px;
	justify-content: center;
	margin-top: 50px;
}

.pg-pagination .page-numbers {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	min-width: 44px;
	height: 44px;
	padding: 0 12px;
	box-sizing: border-box;
	border: 1px solid #dcdfe1;
	border-radius: 50px;
	font-size: 15px;
	color: #050505;
	text-decoration: none;
	transition: all 0.3s;
}

.pg-pagination a.page-numbers:hover {
	border-color: #75c52d;
	color: #75c52d;
}

.pg-pagination .page-numbers.current {
	background-color: #75c52d;
	border-color: #75c52d;
	color: #fff;
}

.pg-pagination .page-numbers.dots {
	border-color: transparent;
}

@media screen and (max-width: 1024px) {
	.pg-posts--cols-3,
	.pg-posts--cols-4 { grid-template-columns: repeat(2, 1fr); }
}

@media screen and (max-width: 700px) {
	.pg-posts {
		grid-template-columns: 1fr;
		gap: 30px;
	}

	.pg-posts--cols-2,
	.pg-posts--cols-3,
	.pg-posts--cols-4 { grid-template-columns: 1fr; }

	.pg-post__title { font-size: 17px; line-height: 23px; }
	.pg-post__text  { font-size: 12px; line-height: 20px; }
}

/* ---------------------------------------------------------------------------
   Страница «Контакты»

   Прежде заголовки и тексты рисовал кастомный виджет, и стили висели на его
   разметке (.left-content .title, .right-content .text). Теперь это штатные
   «Заголовок» и «Текстовый редактор», поэтому те же размеры перевешиваем на
   разметку Elementor — вид остаётся прежним.
--------------------------------------------------------------------------- */

/* Заголовки: «г. Алматы», «График работы:», «Реквизиты». */
#p-contact .elementor-heading-title {
	font-weight: 400;
	font-size: 45px;
	line-height: normal;
	color: #050505;
	text-transform: uppercase;
}

/* В «г. Алматы» приставка «г.» набрана строчными — как и было. */
#p-contact .elementor-heading-title span {
	text-transform: none;
}

/* Текст графика работы и реквизитов. */
#p-contact .elementor-widget-text-editor {
	font-size: 18px;
	line-height: 28px;
}

#p-contact .elementor-widget-text-editor p {
	margin: 0;
}

/* Контакты: адрес / телефон / почта со спрайтом иконок. Прежде эти правила
   жили внутри .left-content, теперь разметку даёт виджет «Контакты города». */
#p-contact .contact-item {
	padding-left: 40px;
	position: relative;
	font-size: 18px;
	margin-bottom: 20px;
}

#p-contact .contact-item:before {
	position: absolute;
	width: 24px;
	height: 24px;
	content: "";
	left: 0;
	top: 50%;
	margin-top: -12px;
	display: block;
	background-image: url(../imgs/contact-sprite-icons-green.png);
	background-repeat: no-repeat;
}

#p-contact .contact-item.address:before { background-position: 0px 2px; }
#p-contact .contact-item.phone:before   { background-position: 2px -38px; }
#p-contact .contact-item.email:before   { background-position: 2px -75px; }

#p-contact .contact-item a {
	color: inherit;
	text-decoration: none;
}

/* Карта. Отступы сверху/снизу — часть оформления блока, а не раскладки
   страницы: они одинаковы для обоих городов и заданы дизайном. */
#p-contact .map {
	margin: 40px 0px 50px;
	overflow: hidden;
	width: 100%;
	border-radius: 5px;
}

/* ---------------------------------------------------------------------------
   Мобильные размеры шрифтов.

   Порог 767px — на нём Elementor складывает колонки в одну. Величины взяты из
   media.scss (блок #p-contact внутри @media (max-width: 700px)), где висели на
   .left-content/.right-content — этих классов в новой разметке уже нет.
--------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
	#p-contact .elementor-heading-title {
		font-size: 22px;
	}

	#p-contact .contact-item {
		font-size: 12px;
		margin-bottom: 22px;
	}

	#p-contact .elementor-widget-text-editor {
		font-size: 12px;
		line-height: 24px;
	}

	#p-contact .map {
		margin: 24px 0 32px;
	}
}

/* ---------------------------------------------------------------------------
   Врезка под карточками услуг (виджет «ProGroup: Врезка под услугами»).

   В теме эти правила записаны как «#p-seo .container #s-our-service
   .service-note» — то есть срабатывали только на конкретной странице внутри
   конкретной обёртки. Виджет вынесен отдельно, поэтому вид собран здесь на
   собственных классах: значения перенесены из style.css без изменений.

   Вертикальные отступы виджета здесь не задаются: они выставлены в Elementor
   (Дополнительно → Отступы), чтобы правились из редактора. Горизонтальных нет
   вовсе — врезка занимает всю ширину колонки и стоит вровень с остальным
   содержимым страницы.
--------------------------------------------------------------------------- */
.pg-service-note {
	box-sizing: border-box;
	text-align: left;
	background-repeat: no-repeat;
}

/* Вариант «Предупреждение» — как на странице SEO. */
.pg-service-note--warning {
	background-image: url(../imgs/warning-icon-v1.png);
	background-position: 17px 13px;
	padding: 3px 10px 25px 88px;
	font-size: 14px;
	font-weight: 400;
	line-height: 25px;
	color: #666;
	border: 1px dashed red;
	border-radius: 5px;
	width: 100%;
}

.pg-service-note--warning .title {
	font-size: 24px;
	font-weight: 500;
	line-height: 65px;
	margin-bottom: -5px;
}

/* Вариант «Подарок» — как на странице создания сайтов. */
.pg-service-note--present {
	background-image: url(../imgs/pages/present-icon.png);
	background-position: 1px center;
	padding-left: 77px;
	font-size: 24px;
	font-weight: 500;
	line-height: 63px;
	color: #666;
}

/* Красная строка под списком в карточке — «+ рекламный бюджет от …».
   В исходной вёрстке она была незакрытым <span> прямо внутри <ul>, из-за чего
   разметка ломалась. Теперь это отдельное поле карточки.

   padding-left повторяет отступ пунктов списка: у <li> он равен 21px под
   значок-маркер. Без него строка начиналась на 21px левее текста списка,
   под которым стоит, — так было и в исходной вёрстке. */
.pg-card-note {
	color: red;
	display: block;
	margin-top: 6px;
	padding-left: 21px;
}

/* ---------------------------------------------------------------------------
   Мобильный вид врезок.

   Значения взяты из media.css, где они лежали под селекторами вида
   «#p-seo .container #s-our-service .service-note». После выноса врезки
   в отдельный виджет предка #s-our-service у неё больше нет, и ни одно
   из тех правил не срабатывало — на телефоне врезка оставалась в
   десктопном виде.
--------------------------------------------------------------------------- */
@media screen and (max-width: 700px) {
	/* Значок уезжает наверх по центру, текст занимает всю ширину. */
	.pg-service-note--warning {
		padding: 82px 20px 20px;
		background-position: center 18px;
		font-size: 11px;
		line-height: 20px;
	}

	/* Переносы расставлены под широкий экран и на узком рвут строку невпопад. */
	.pg-service-note--warning br {
		display: none;
	}

	.pg-service-note--warning .title {
		font-size: 15px;
		line-height: 18px;
		margin-bottom: 16px;
	}

	.pg-service-note--present {
		padding: 8px 12px 8px 77px;
		font-size: 16px;
		line-height: 22px;
	}

	.pg-card-note {
		font-size: 12px;
		line-height: 18px;
	}
}

/* ---------------------------------------------------------------------------
   Плитки портфолио: одна высота и заполнение картинкой.

   В теме у плиток background-size не объявлен вовсе — значение по умолчанию
   auto, поэтому фото показывалось в натуральную величину: мелкие не заполняли
   плитку, крупные обрезались произвольно. Ставим cover.

   Высота: обычная плитка и так 280px, а широкая (.colspan2) была 580px —
   из-за неё ряды разъезжались. Приводим к общей высоте.

   Мобильную вёрстку не трогаем: там media.min.css уже задаёт всем плиткам
   одинаковую высоту, включая широкие.
--------------------------------------------------------------------------- */
#s-portfolio .item {
	background-size: cover;
	background-position: center;
}

#s-portfolio .colspan2 {
	height: 280px;
}

/* ---------------------------------------------------------------------------
   Плитки портфолио: одна высота и заполнение картинкой.

   В теме высота задана двумя значениями — обычная плитка 280px, «широкая»
   (.colspan2) 580px, на мобильном 320px. Приводим все к 280px.

   background-size не был объявлен нигде, поэтому фон рисовался в натуральную
   величину: маленькие картинки не заполняли плитку, большие обрезались как
   попало. cover масштабирует под плитку, center держит кадр по центру.

   Правила без классов Elementor — только разметка темы, поэтому обновления
   плагина на них не влияют. Файл подключается на всех страницах, так что
   портфолио выглядит одинаково и на странице работ, и в блоках на услугах.
--------------------------------------------------------------------------- */
#s-portfolio .item,
#s-portfolio .colspan2,
#s-portfolio .colspan3 {
	height: 280px;
	background-size: cover;
	background-position: center;
}

/* ---------------------------------------------------------------------------
   Блок «Отзывы с площадок» (виджет pg_reviews).

   Новый компонент — готовой вёрстки под него в теме нет, поэтому раскладка
   и оформление живут здесь. Три равные колонки, последняя — итоговая
   со светлым фоном.
--------------------------------------------------------------------------- */
.pg-reviews__eyebrow {
	text-align: center;
	color: #e2225f;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.4px;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.pg-reviews__heading {
	text-align: center;
	font-size: 45px;
	line-height: 58px;
	font-weight: 400;
	color: #050505;
	margin: 0 0 46px;
}

.pg-reviews__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
	align-items: start;
}

.pg-reviews__card {
	border: 1px solid #e6edf2;
	border-radius: 12px;
	padding: 30px;
	box-sizing: border-box;
	background-color: #fff;
	height: 100%;
}

.pg-reviews__card-title {
	font-size: 22px;
	font-weight: 700;
	color: #050505;
	margin-bottom: 22px;
}

/* Логотип и аватары внахлёст. */
.pg-reviews__meta {
	display: flex;
	align-items: center;
	gap: 16px;
	padding-bottom: 22px;
	border-bottom: 1px solid #e6edf2;
	margin-bottom: 22px;
}

.pg-reviews__faces {
	display: flex;
}

.pg-reviews__face {
	width: 46px;
	height: 46px;
	border-radius: 50%;
	overflow: hidden;
	background-color: #f2f4f5;
	border: 2px solid #fff;
	flex: 0 0 auto;
	display: block;
}

.pg-reviews__face + .pg-reviews__face {
	margin-left: -14px;
}

.pg-reviews__face img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.pg-reviews__face--logo {
	background-color: #fff;
}

.pg-reviews__count {
	font-size: 15px;
	line-height: 20px;
	color: #050505;
}

.pg-reviews__label {
	font-size: 15px;
	color: #050505;
	margin-bottom: 14px;
}

.pg-reviews__text {
	font-size: 13px;
	line-height: 20px;
	color: #7b858c;
}

.pg-reviews__text p {
	margin: 0 0 14px;
}

/* Имя, должность и оценка набраны так же, как подпись «Последний отзыв:»:
   это подписи к отзыву, а не его текст, и читаться должны наравне с ней. */
.pg-reviews__author {
	font-size: 15px;
	color: #050505;
	margin-top: 18px;
}

.pg-reviews__position {
	font-size: 15px;
	color: #050505;
	margin-top: 4px;
}

.pg-reviews__rating {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 20px;
}

.pg-reviews__stars {
	font-size: 15px;
	letter-spacing: 1px;
}

.pg-reviews__rating-value {
	font-weight: 700;
	color: #050505;
	font-size: 15px;
}

.pg-reviews__rating-word {
	color: #050505;
	font-size: 15px;
}

/* Итоговая карточка. */
/* Колонка нужна, чтобы ссылки внизу карточки прижимались к её нижнему краю
   через margin-top: auto — карточки в ряду одной высоты, и без этого ссылки
   висели бы сразу под текстом, на разной высоте у разных карточек. */
.pg-reviews__card--summary {
	background-color: #eaf4fd;
	border-color: #eaf4fd;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
}

.pg-reviews__faces--big .pg-reviews__face {
	width: 62px;
	height: 62px;
}

.pg-reviews__faces--big .pg-reviews__face + .pg-reviews__face {
	margin-left: -18px;
}

.pg-reviews__summary-title {
	font-size: 34px;
	line-height: 42px;
	color: #050505;
	margin: 26px 0 22px;
}

.pg-reviews__summary-text {
	font-size: 17px;
	line-height: 26px;
	color: #3b4650;
}

.pg-reviews__badge {
	display: inline-block;
	margin-top: 24px;
	max-width: 100%;
}

.pg-reviews__badge img {
	max-width: 100%;
	height: auto;
	display: block;
}

/* Строчные ссылки на площадки под плашкой. Колонкой, а не в строку: подписи
   длинные («Смотреть все отзывы в 2GIS»), и на узкой карточке две подряд
   переносились бы вразнобой. */
.pg-reviews__links {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 8px;
	margin-top: auto;
	padding-top: 18px;
}

.pg-reviews__link {
	font-size: 14px;
	line-height: 20px;
	color: #6d7882;
	text-decoration: underline;
	text-underline-offset: 3px;
	transition: color 0.3s;
}

.pg-reviews__link:hover {
	color: #75c52d;
}

@media screen and (max-width: 1024px) {
	.pg-reviews__grid { grid-template-columns: repeat(2, 1fr); }
	.pg-reviews__heading { font-size: 34px; line-height: 44px; }
}

@media screen and (max-width: 700px) {
	.pg-reviews__grid { grid-template-columns: 1fr; gap: 20px; }
	.pg-reviews__heading { font-size: 22px; line-height: 30px; margin-bottom: 28px; text-align: left; }
	.pg-reviews__eyebrow { text-align: left; font-size: 12px; }
	.pg-reviews__card { padding: 22px; }
	.pg-reviews__card-title { font-size: 18px; }
	.pg-reviews__summary-title { font-size: 26px; line-height: 34px; }
	.pg-reviews__summary-text { font-size: 15px; line-height: 23px; }
	.pg-reviews__link { font-size: 13px; line-height: 19px; }
	.pg-reviews__links { margin-top: 14px; gap: 7px; }
}

/* ---------------------------------------------------------------------------
   Заголовки виджета «Заголовок».

   Elementor задаёт своим заголовкам line-height: 1 — с ним h1 получал
   межстрочный, равный кеглю, и выбивался из общего стиля. Размер, начертание
   и выравнивание приходят из общего правила в style.css, здесь достаём только
   межстрочный.

   Отступ снизу намеренно не трогаем: у виджета есть собственное поле
   «Отступы» в редакторе, и перебивать его из файла — как раз то, что ломается
   при следующей правке в Elementor.
--------------------------------------------------------------------------- */
.elementor-widget-heading .elementor-heading-title {
	line-height: 58px;
}

@media screen and (max-width: 700px) {
	.elementor-widget-heading .elementor-heading-title {
		line-height: 28px;
	}
}

/* ---------------------------------------------------------------------------
   Кнопка под сеткой записей.

   У .green-btn из темы фиксированная ширина 260px, поэтому по центру её
   ставит обёртка, а не сама кнопка. inline-flex нужен, чтобы вертикальный
   паддинг темы (19px) сработал на ссылке так же, как на кнопке.
--------------------------------------------------------------------------- */
.pg-posts-more {
	display: flex;
	justify-content: center;
	margin-top: 50px;
}

.pg-posts-more .green-btn {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
}

/* ---------------------------------------------------------------------------
   Вопросы и ответы.

   Раскрытие — встроенное поведение <details>, поэтому здесь только вид.
   Стрелку рисуем сами: штатный маркер <summary> в разных браузерах выглядит
   по-разному, а list-style: none его убирает (для Safari нужен ::-webkit-details-marker).
--------------------------------------------------------------------------- */
.pg-faq {
	max-width: 900px;
	margin: 0 auto;
}

.pg-faq__item {
	border-bottom: 1px solid #e3e6e8;
}

.pg-faq__item:first-child {
	border-top: 1px solid #e3e6e8;
}

.pg-faq__question {
	position: relative;
	list-style: none;
	cursor: pointer;
	padding: 24px 50px 24px 0;
	font-size: 18px;
	line-height: 26px;
	color: #050505;
	transition: color 0.3s;
}

.pg-faq__question::-webkit-details-marker {
	display: none;
}

.pg-faq__question:hover {
	color: #75c52d;
}

/* Плюс, превращающийся в минус: две полоски, вертикальная прячется. */
.pg-faq__question::before,
.pg-faq__question::after {
	content: '';
	position: absolute;
	right: 8px;
	top: 50%;
	background-color: #75c52d;
	transition: transform 0.3s, opacity 0.3s;
}

.pg-faq__question::before {
	width: 18px;
	height: 2px;
	margin-top: -1px;
}

.pg-faq__question::after {
	width: 2px;
	height: 18px;
	margin-top: -9px;
	margin-right: 8px;
}

.pg-faq__item[open] .pg-faq__question::after {
	opacity: 0;
	transform: rotate(90deg);
}

.pg-faq__answer {
	padding: 0 50px 24px 0;
	font-size: 15px;
	line-height: 25px;
	color: #6d7882;
}

.pg-faq__answer p {
	margin: 0 0 12px;
}

.pg-faq__answer p:last-child {
	margin-bottom: 0;
}

/* ---------------------------------------------------------------------------
   Наша команда.

   flex с переносом, а не grid: при пяти карточках последний ряд остаётся
   центрованным (3 + 2), тогда как сетка прижала бы его влево.
   Ширина карточки задана через basis с максимумом, чтобы на планшете
   помещалось по две, а на телефоне — одна.
--------------------------------------------------------------------------- */
.pg-team {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 45px 30px;
}

.pg-team__card {
	flex: 0 1 340px;
	max-width: 340px;
	text-align: center;
}

.pg-team__photo {
	width: 180px;
	height: 180px;
	margin: 0 auto 20px;
	border-radius: 50%;
	overflow: hidden;
	background-color: #f2f4f5;
}

.pg-team__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	display: block;
}

.pg-team__name {
	font-size: 20px;
	line-height: 27px;
	color: #050505;
	margin-bottom: 6px;
}

.pg-team__position {
	font-size: 14px;
	line-height: 20px;
	color: #75c52d;
	text-transform: uppercase;
	margin-bottom: 14px;
}

.pg-team__about {
	font-size: 14px;
	line-height: 23px;
	color: #6d7882;
}

@media screen and (max-width: 700px) {
	.pg-posts-more {
		margin-top: 30px;
	}

	.pg-faq__question {
		padding: 18px 40px 18px 0;
		font-size: 15px;
		line-height: 22px;
	}

	.pg-faq__answer {
		padding: 0 0 18px;
		font-size: 13px;
		line-height: 21px;
	}

	.pg-team {
		gap: 30px;
	}

	.pg-team__card {
		flex: 0 1 100%;
		max-width: 100%;
	}

	.pg-team__photo {
		width: 140px;
		height: 140px;
		margin-bottom: 16px;
	}

	.pg-team__name {
		font-size: 17px;
		line-height: 23px;
	}
}

/* ---------------------------------------------------------------------------
   Клирфикс темы против flex и grid.

   В style.css есть глобальное правило «div:after { content: ''; display: table }»
   — наследие вёрстки на float. Внутри flex- и grid-контейнера этот псевдоэлемент
   перестаёт быть невидимой подпоркой и становится полноценным элементом
   раскладки: в «Нашей команде» он добавлял в последний ряд лишний зазор и
   сдвигал два центрованных блока на 15px влево, а в сетке записей создавал
   вторую строку нулевой высоты и пустоту под карточками.

   Гасим точечно на своих контейнерах: убирать клирфикс глобально нельзя —
   на нём держится старая вёрстка темы.
--------------------------------------------------------------------------- */
.pg-team::after,
.pg-posts::after,
.pg-posts-more::after,
.pg-faq::after {
	content: none;
}

/* Поля по краям на телефоне: .container из темы там растягивается на 100%,
   и без этого новые блоки упирались бы в края экрана, тогда как остальное
   содержимое сайта имеет отступ. */
@media screen and (max-width: 700px) {
	.pg-team,
	.pg-posts,
	.pg-faq,
	.pg-posts-more {
		padding-left: 20px;
		padding-right: 20px;
		box-sizing: border-box;
	}
}
