/**
 * Dealscoin — мобильная оптимизация
 * Устраняет обрезку текста, горизонтальный скролл и переполнение на узких экранах.
 * Учитывает safe-area (вырезы), зоны нажатия и большие отступы в контенте.
 */

/* Базовые правила для всех экранов: длинные URL/адреса не ломают верстку */
.wp-block-group p,
.wp-block-paragraph,
main .wp-block-group p {
	word-wrap: break-word;
	overflow-wrap: break-word;
	word-break: break-word;
	max-width: 100%;
}

@media (max-width: 781px) {

	/* Уменьшаем боковые отступы + safe-area для вырезов (notch) */
	.wp-block-group.alignfull,
	.alignfull.wp-block-group,
	.wp-block-group.alignwide,
	.alignwide.wp-block-group,
	.wp-block-columns.alignwide {
		padding-left: max(1rem, env(safe-area-inset-left)) !important;
		padding-right: max(1rem, env(safe-area-inset-right)) !important;
	}

	/* Контент с большими отступами (50/60) — уменьшаем на мобильных */
	main .wp-block-group[style*="padding-left"],
	main .wp-block-group[style*="padding-right"] {
		padding-left: max(1rem, env(safe-area-inset-left)) !important;
		padding-right: max(1rem, env(safe-area-inset-right)) !important;
	}

	/* Колонки фаз и футера — в столбик */
	.wp-block-columns.alignwide,
	.wp-block-columns:not(.is-not-stacked-on-mobile) {
		flex-direction: column !important;
	}

	.wp-block-columns .wp-block-column {
		flex-basis: 100% !important;
		max-width: 100%;
	}

	/* Картинки не вылезают за экран */
	.wp-block-image img,
	.wp-block-image figure img {
		max-width: 100%;
		height: auto;
	}

	.wp-block-image.alignwide,
	.wp-block-image.alignfull {
		margin-left: 0;
		margin-right: 0;
	}

	/* Хедер — компактнее, лого и X не наезжают */
	.wp-block-group.has-background-color .wp-block-group.alignwide {
		flex-wrap: wrap;
		gap: 0.75rem;
		row-gap: 0.5rem;
	}

	.wp-block-group .wp-block-group .wp-block-image.is-resized img,
	header .wp-block-image.site-logo img,
	.dealscoin-header-brand .site-logo img {
		max-width: 64px;
		width: 64px;
		height: auto;
	}

	/* Иконка X в хедере — удобная зона нажатия (минимум 44px) */
	header .wp-block-image.header-x-icon a,
	header .header-x-icon a {
		display: inline-flex;
		min-width: 44px;
		min-height: 44px;
		align-items: center;
		justify-content: center;
	}
	header .wp-block-image.header-x-icon img,
	header .header-x-icon img {
		max-width: 56px;
		height: auto;
	}

	/* Заголовки и текст — адаптивный размер */
	.wp-block-heading.has-text-align-center {
		font-size: clamp(1.25rem, 5vw, 1.85rem);
	}

	.wp-block-group p.has-text-align-center {
		font-size: 0.95rem;
	}

	/* Уменьшаем вертикальные отступы у крупных блоков (testimonial, CTA) */
	.wp-block-group[style*="padding-top:var(--wp--preset--spacing--60)"],
	.wp-block-group[style*="padding-top:var(--wp--preset--spacing--50)"] {
		padding-top: var(--wp--preset--spacing--30) !important;
		padding-bottom: var(--wp--preset--spacing--30) !important;
	}

	/* Без горизонтального скролла */
	html, body {
		overflow-x: hidden;
		max-width: 100vw;
	}
	.wp-site-blocks,
	main {
		max-width: 100%;
		overflow-x: hidden;
	}
}

@media (max-width: 480px) {
	.wp-block-group.alignfull,
	.alignfull.wp-block-group,
	.wp-block-group.alignwide,
	.alignwide.wp-block-group,
	main .wp-block-group[style*="padding-left"] {
		padding-left: max(0.75rem, env(safe-area-inset-left)) !important;
		padding-right: max(0.75rem, env(safe-area-inset-right)) !important;
	}
}
