/* Página Sobre – estilos específicos */

.hero {
	position: relative;
	padding: 0;
	overflow: hidden;
	border-bottom: 1px solid var(--border);
	min-height: 650px;
	display: flex;
	align-items: center;
	background-image: url('../../img/about_background.png');
	background-size: cover;
	background-position: center 70%;
	background-repeat: no-repeat;
}

/* Overlay removido - imagem do hero agora sem sobreposição */

/* Grid do hero (replicado do index.css) */
.hero .hero__grid{
	position: relative;
	z-index: 3;
	display: grid;
	grid-template-columns: 1.2fr .8fr;
	gap: 56px;
	align-items: center;
	padding-top: 250px;
}

.hero .hero__text{
	max-width: 800px;
	color: var(--black);
}

.hero .hero__text h1{
	color: #ffffff;
	font-weight: 800;
	margin-bottom: 1.2rem;
	text-shadow: 0 2px 4px rgba(0,0,0,0.3);
	transform: translate(var(--hero-titulo-x), var(--hero-titulo-y));
}

.hero .hero__text p{
	color: #ffffff;
	max-width: 700px;
	margin: .6rem 0 1.4rem;
	font-size: 1.1rem;
	line-height: 1.6;
	text-align: left;
	transform: translate(var(--hero-paragrafo-x), var(--hero-paragrafo-y));
}

.hero .hero__actions{
	display: flex;
	gap: 12px;
	flex-wrap: wrap;
	margin: 1.5rem 0;
	transform: translate(var(--hero-botoes-x), var(--hero-botoes-y));
}

.hero .hero__note{
	margin-top: 1rem;
	color: #ffffff;
	font-size: .95rem;
	font-weight: 600;
	transform: translate(var(--hero-nota-x), var(--hero-nota-y));
}

.about-title {
	padding: 60px 0 40px;
	background: #ffffff;
	text-align: center;
}

.about-title h1 {
	color: var(--deep);
	font-size: clamp(2.5rem, 2rem + 3vw, 4rem);
	font-weight: 800;
	margin: 0;
}

/* Conteúdo da página Sobre */
.about-content { padding: 20px 0 50px; background: #ffffff; }

.about-section { max-width: 800px; margin: 0 auto 50px; text-align: center; }
.about-section:last-child { margin-bottom: 0; }

.about-section h2 {
	color: var(--deep);
	font-size: 1.8rem;
	font-weight: 800;
	margin-bottom: 1.5rem;
	position: relative;
}

.about-section h2::after {
	content: '';
	display: block;
	width: 60px;
	height: 3px;
	background: var(--green);
	margin: 0.8rem auto 0;
}

.about-section p { color: #444; font-size: 1.1rem; line-height: 1.7; margin: 0; }
.about-section strong { color: var(--deep); font-weight: 800; }

/* Responsividade do hero (replicada do index.css) */
@media (max-width: 820px) {
	.hero .hero__grid {
		grid-template-columns: 1fr !important;
		gap: 20px !important;
		text-align: center !important;
	}
}

@media (max-width: 768px) {
	.hero {
		padding: 120px 0 90px !important;
		min-height: 500px !important;
		margin-top: 0 !important;
	}
	.hero .container {
		padding: 0 20px !important;
	}
	.hero .hero__text h1 {
		font-size: 2.2rem !important;
	}
	.hero .hero__text p {
		font-size: 1rem !important;
		text-align: center !important;
		max-width: 100% !important;
	}
	.hero .hero__text {
		max-width: 100% !important;
		width: 100% !important;
	}
	.hero .hero__actions {
		justify-content: center !important;
	}
	.hero .hero__note {
		text-align: center !important;
	}
	.about-title { padding: 40px 0 30px; }
	.about-content { padding: 60px 0 80px; }
	.about-section { margin-bottom: 40px; }
	.about-section h2 { font-size: 1.5rem; }
	.about-section p { font-size: 1rem; }
}

@media (max-width: 480px) {
	.hero {
		padding: 90px 0 70px;
		min-height: 200px;
	}
}

/* Mobile médio - iPhone 14 Pro Max e similares (430-476px) */
@media (max-width: 476px) and (min-width: 430px) {
	.hero .hero__text h1 {
		font-size: 1.9rem !important;
	}
	.hero .hero__text p {
		font-size: 0.9rem !important;
	}
	.hero .btn--xl, .hero .btn--cta {
		padding: 0.9rem 2rem !important;
		font-size: 1.5rem !important;
		min-width: 320px !important;
		max-width: 85vw !important;
	}
	.hero .hero__note {
		font-size: 0.85rem !important;
	}
}

/* Mobile pequeno-médio (401-429px) */
@media (max-width: 429px) and (min-width: 401px) {
	.hero .hero__text h1 {
		font-size: 1.8rem !important;
	}
	.hero .hero__text p {
		font-size: 0.85rem !important;
	}
	.hero .btn--xl, .hero .btn--cta {
		padding: 0.8rem 1.8rem !important;
		font-size: 1.4rem !important;
		min-width: 280px !important;
		max-width: 80vw !important;
	}
	.hero .hero__note {
		font-size: 0.8rem !important;
	}
}

@media (max-width: 400px) {
	.hero {
		padding: 80px 0 60px;
		min-height: 175px;
	}
}

/* Responsividade mobile simplificada */
@media (max-width: 768px) {
	.hero {
		padding: 80px 0 80px;
		min-height: 225px;
	}

	.hero .hero__grid {
		gap: 16px !important;
	}

	.hero .hero__text {
		text-align: center !important;
	}

	.hero .hero__actions {
		justify-content: center !important;
		width: 100% !important;
	}
}

/* HERO — largura do bloco de texto (título + parágrafo) */
.hero .hero__text{
	max-width: 900px !important;
	width: 900px !important;
}
@media (max-width: 820px){
	.hero .hero__text{
		max-width: 100% !important;
		width: 100% !important;
	}
}

/* CTA (compartilhado com home), mantém aqui apenas ajustes se precisarmos
   Caso não haja ajustes específicos, herda de styles.css */


