/**
 * GoldenCross — ajustes mobile (≤768px). Carregado após style.min.css.
 *
 * @package GoldenCross
 */

@media (max-width: 768px) {
	/* Evita scroll horizontal por margens/paddings + safe area */
	body {
		overflow-x: hidden;
	}

	.container,
	.container--article {
		padding-left: max(1rem, env(safe-area-inset-left, 0px));
		padding-right: max(1rem, env(safe-area-inset-right, 0px));
		box-sizing: border-box;
	}

	/* Hero: usar largura útil, texto não “preso” ao centro estreito */
	.hero-inner {
		padding-left: max(0.75rem, env(safe-area-inset-left, 0px));
		padding-right: max(0.75rem, env(safe-area-inset-right, 0px));
		padding-top: calc(var(--header-h) + 0.35rem);
		box-sizing: border-box;
	}

	.hero-body {
		max-width: 100%;
		width: 100%;
	}

	.hero-title,
	.hero-lead,
	.hero-footnote,
	.hero-micro {
		max-width: 100%;
	}

	.hero-title {
		overflow-wrap: break-word;
		word-wrap: break-word;
	}

	.hero-lead {
		hyphens: auto;
		-webkit-hyphens: auto;
	}

	/* Botões do hero: cabem na viewport, texto pode quebrar */
	.hero-actions {
		max-width: 100%;
		width: 100%;
		box-sizing: border-box;
	}

	.hero-actions__primary,
	.hero-actions__ghost {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
		padding: 0.75rem 1rem;
		font-size: 0.9375rem;
		line-height: 1.35;
		white-space: normal;
		text-align: center;
		justify-content: center;
	}

	.hero-actions__ghost {
		flex-wrap: wrap;
		row-gap: 0.35rem;
	}

	.hero-actions__pill {
		margin-left: 0;
		flex: 0 1 auto;
		max-width: 100%;
	}

	.hero-actions__arrow {
		flex-shrink: 0;
	}

	/* Secções com padding lateral mais equilibrado */
	.stats-bar {
		padding-left: max(1rem, env(safe-area-inset-left, 0px));
		padding-right: max(1rem, env(safe-area-inset-right, 0px));
	}

	.section-block .container {
		max-width: 100%;
	}

	/* CTA final home */
	.cta-final-section {
		padding-left: max(1rem, env(safe-area-inset-left, 0px));
		padding-right: max(1rem, env(safe-area-inset-right, 0px));
		box-sizing: border-box;
	}

	.cta-final-buttons {
		width: 100%;
		max-width: 100%;
		padding: 0;
		box-sizing: border-box;
		flex-direction: column;
		align-items: stretch;
		gap: 0.75rem;
	}

	.cta-final-buttons .btn {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		box-sizing: border-box;
		white-space: normal;
		padding-left: 1rem;
		padding-right: 1rem;
	}

	/* Hero interno premium (planos e outras páginas) */
	.page-hero.page-hero--premium {
		padding-left: max(1rem, env(safe-area-inset-left, 0px));
		padding-right: max(1rem, env(safe-area-inset-right, 0px));
	}

	.page-hero.page-hero--premium .page-hero-title,
	.page-hero.page-hero--premium .page-hero-subtitle,
	.page-hero.page-hero--premium .page-hero__meta {
		max-width: 100%;
		box-sizing: border-box;
	}

	/* Shell internas */
	.page-hero--inner {
		padding-left: max(1rem, env(safe-area-inset-left, 0px));
		padding-right: max(1rem, env(safe-area-inset-right, 0px));
	}

	.page-hero__lead {
		max-width: 100%;
	}

	.inner-panel,
	.default-content {
		padding-left: max(1.15rem, env(safe-area-inset-left, 0px));
		padding-right: max(1.15rem, env(safe-area-inset-right, 0px));
		box-sizing: border-box;
	}

	.cta-strip {
		padding-left: max(1rem, env(safe-area-inset-left, 0px));
		padding-right: max(1rem, env(safe-area-inset-right, 0px));
	}

	.cta-strip .btn {
		max-width: 100%;
		box-sizing: border-box;
		white-space: normal;
	}

	/* Reduz custo de pintura do texto LCP no mobile */
	.hero-title,
	.hero-lead {
		text-shadow: none;
	}
}

@media (max-width: 480px) {
	.hero-actions__primary,
	.hero-actions__ghost {
		font-size: 0.875rem;
		padding: 0.65rem 0.85rem;
	}
}

/* Otimiza renderização inicial: secções abaixo da dobra */
@supports (content-visibility: auto) {
	@media (max-width: 768px) {
		.home .section-block,
		.home .cta-final-section {
			content-visibility: auto;
			contain-intrinsic-size: 1px 900px;
		}
	}
}
