/*
	Адаптив поверх десктопных стилей.

	Откат:
	1. Удалите <link href="/static/css/responsive.css" …> из
	   src/_includes/partials/head-index.njk и head-404.njk
	2. Можно удалить этот файл — исходные CSS не менялись.
*/

.app__icon {
	flex-shrink: 0;
}

.app__icon picture,
.app__icon img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

img {
	max-width: 100%;
}

/* Планшет и уже */
@media (max-width: 900px) {
	.container {
		width: min(100% - 40px, var(--max-width));
	}

	.header__photo {
		margin: 32px 0;
	}

	h1 {
		margin-bottom: 64px;
		max-width: 560px;
		font-size: 40px;
	}

	.content {
		grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
		gap: 16px;
	}

	.app {
		gap: 32px;
		padding: 24px;
	}

	.app__name p {
		font-size: 28px;
	}

	.app__description p {
		font-size: 22px;
	}

	footer {
		gap: 24px;
		padding: 80px 0;
	}

	.footer-support {
		font-size: 32px;
	}

	footer a {
		font-size: 48px;
	}
}

/* Узкий планшет / крупный телефон: одна колонка карточек */
@media (max-width: 640px) {
	.container {
		width: min(100% - 32px, var(--max-width));
	}

	.header__menu p {
		font-size: 22px;
	}

	.header__photo {
		margin: 28px 0;
	}

	.header__photo img {
		width: 200px;
		height: 200px;
	}

	h1 {
		margin-bottom: 40px;
		max-width: 100%;
		font-size: 32px;
	}

	.content {
		grid-template-columns: 1fr;
		gap: 12px;
	}

	.app {
		gap: 24px;
		padding: 20px;
		border-radius: 12px;
	}

	.app__icon {
		width: 64px;
		height: 64px;
	}

	.app__icon-title {
		gap: 12px;
	}

	.app__title {
		gap: 8px;
	}

	.app__name p {
		font-size: 24px;
	}

	.app__link p,
	.app__link-soon p,
	.app__os p {
		font-size: 14px;
	}

	footer {
		gap: 12px;
		padding: 64px 0;
	}

	.footer-support {
		font-size: 24px;
	}

	footer a {
		font-size: clamp(28px, 8vw, 40px);
		max-width: 100%;
		overflow-wrap: anywhere;
		text-align: center;
	}
}

/* Компактные телефоны */
@media (max-width: 360px) {
	.container {
		width: min(100% - 24px, var(--max-width));
	}

	.header__menu {
		gap: 8px 16px;
	}

	.header__menu p {
		font-size: 18px;
	}

	.header__photo img {
		width: 168px;
		height: 168px;
		border-radius: 12px;
	}

	h1 {
		margin-bottom: 32px;
		font-size: 28px;
	}

	.app {
		gap: 20px;
		padding: 16px;
	}

	.app__icon {
		width: 56px;
		height: 56px;
	}

	.app__name p {
		font-size: 22px;
	}

	footer {
		padding: 48px 0;
	}

	.footer-support {
		font-size: 20px;
	}
}
