/* CSS Document
1. Gris oscuro (texto "PRO", "AC" y "PUERTAS Y MAMPARAS")
Hex: #666666

RGB: 102, 102, 102

Nombre aproximado: Gris medio oscuro

2. Azul brillante (puertas y subrayado)
Hex: #00A6DE

RGB: 0, 166, 222

Nombre aproximado: Azul celeste / Cyan profundo

3. Gris claro (bisel en letras o separaciones)
Hex: #B3B3B3 (opcional si lo consideras relevante para fondos o sombras)

RGB: 179, 179, 179

Nombre aproximado: Gris claro metálico

// <weight>: Use a value from 100 to 900
// <uniquifier>: Use a unique and descriptive class name

.roboto-<uniquifier> {
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-weight: <weight>;
  font-style: normal;
  font-variation-settings:
    "wdth" 100;
}

 */


body {
	margin: 0;
	background-color: #000;
	color: #333;
	font-family: "Roboto", sans-serif;
}

body button:hover {
	cursor: pointer;
}

#sec-presentacion {
	height: 800px;
	width: 100%;
	align-content: center;
	background-image: url(/img/promac-mamparas.png);
	background-position: center;
	background-size: cover;
}

#sec-presentacion h2 {
	font-size: 4rem;
	padding-left: 100px;
	color: #00A6DE;
	margin: 0;
}

#sec-presentacion p {
	font-size: 1.5rem;
	padding-left: 100px;
	color: #f2f2f2;
}

#sec-presentacion button {
	font-size: 1rem;
	border: none;
	background-color: #00A6DE;
	color: #f2f2f2;
	padding: 20px 65px 20px 65px;
	margin-left: 100px;

}

#sec-presentacion button:hover {
	background-color: #000;
	color: #f2f2f2;
	transition: .5s;
	border-radius: 10px;
}

/**/
/* Contenedores */
.container {
	max-width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding: clamp(1.25rem, 3vw, 2rem) clamp(1rem, 3vw, 1.5rem);
}

.container--wide {
	max-width: 1360px;
}

/* Sección base */
.about {
	background: #2f2f2f;
	/* fondo */
	color: #fff;
	/* texto principal */
}

/* Intro */
.about__intro {
	display: grid;
	gap: 2rem;
	grid-template-columns: 1fr;
	border-bottom: 1px solid #E3E8EF;
	/* línea separadora */
	padding-bottom: 2rem;
}

@media (min-width: 980px) {
	.about__intro {
		grid-template-columns: 1.5fr 1fr;
		/* 60/40 */
		align-items: start;
		gap: 3rem;
	}
}

/* Tipografía */
.about__title {
	font-size: clamp(2rem, 3vw, 2.6rem);
	line-height: 1.15;
	margin: 0 0 0.6rem;
	letter-spacing: -0.015em;
	color: #fff;
}

.about__subtitle {
	font-size: clamp(1.35rem, 2vw, 1.6rem);
	margin: 3rem 0 1.25rem;
	letter-spacing: -0.01em;
	color: #fff;
}

.about__lede {
	font-size: clamp(1.125rem, 1.4vw, 1.25rem);
	margin: 0.35rem 0 0.75rem;
	color: #fff;
}

.about__text {
	color: #fff;
	/* texto secundario */
	font-size: 1.05rem;
}

/* KPIs */
.about__highlights {
	display: grid;
	gap: 0.9rem;
}

.kpi {
	display: flex;
	gap: 0.9rem;
	align-items: center;
	border: 1px solid #E3E8EF;
	padding: 1rem 1.1rem;
	border-radius: 0.9rem;
	background: #F6FAFF;
	/* panel sutil azulado */
}

.kpi__icon {
	width: 28px;
	height: 28px;
	color: #0F6CBD;
	/* primario */
	flex: 0 0 28px;
}

.kpi__value {
	font-size: 1.35rem;
	font-weight: 700;
	line-height: 1;
	color: #101318;
}

.kpi__label {
	color: #596274;
	font-size: 1rem;
}

/* Secciones */
.about__section {
	border-bottom: 1px solid #E3E8EF;
	padding-bottom: 2rem;
}

/* Cards de diferenciadores */
.cards {
	display: grid;
	gap: 1.1rem;
	grid-template-columns: 1fr;
}

@media (min-width: 760px) {
	.cards {
		grid-template-columns: repeat(2, 1fr);
	}
}

@media (min-width: 1220px) {
	.cards {
		grid-template-columns: repeat(4, 1fr);
	}
}

.card {
	border: 1px solid #E3E8EF;
	border-radius: 0.9rem;
	padding: 1.15rem;
	background: #ffffff;
	min-height: 168px;
}

.card__icon {
	width: 34px;
	height: 34px;
	color: #0F6CBD;
	margin-bottom: 0.6rem;
}

.card__title {
	margin: 0 0 0.35rem;
	font-size: 1.125rem;
	letter-spacing: -0.005em;
	color: #101318;
}

.card__text {
	margin: 0;
	color: #596274;
	font-size: 1.02rem;
}

/* Steps del proceso */
.steps {
	list-style: none;
	padding: 0;
	margin: 0;
	display: grid;
	gap: 1rem;
}

@media (min-width: 980px) {
	.steps {
		grid-template-columns: repeat(4, 1fr);
	}
}

.step {
	display: flex;
	gap: 0.9rem;
	align-items: flex-start;
	border: 1px solid #E3E8EF;
	border-radius: 0.9rem;
	padding: 1.1rem;
	background: #ffffff;
	min-height: 120px;
}

.step__badge {
	display: inline-grid;
	place-items: center;
	font-weight: 700;
	width: 38px;
	height: 38px;
	border-radius: 50%;
	background: #0F6CBD;
	color: #ffffff;
	flex: 0 0 38px;
	font-size: 0.95rem;
}

.step__title {
	margin: 0.1rem 0 0.2rem;
	font-size: 1.08rem;
	letter-spacing: -0.005em;
	color: #101318;
}

.step__text {
	margin: 0;
	color: #596274;
	font-size: 1.02rem;
}

/* CTA */
.about__cta {
	display: flex;
	justify-content: flex-start;
	padding-top: 2rem;
}

.btn {
	display: inline-flex;
	align-items: center;
	gap: 0.6rem;
	padding: 1rem 1.35rem;
	border-radius: 0.6rem;
	background: #0F6CBD;
	color: #ffffff;
	text-decoration: none;
	font-weight: 700;
	font-size: 1.02rem;
	box-shadow: 0 2px 10px rgba(15, 108, 189, 0.18);
	transition: transform 0.12s ease, filter 0.12s ease;
}

.btn__icon {
	width: 20px;
	height: 20px;
}

.btn:hover {
	filter: brightness(1.06);
	transform: translateY(-1px);
}


@media only screen and (min-device-width : 320px) and (max-device-width : 480px) {

	#sec-presentacion h2 {
		font-size: 3.5rem;
		padding-left: 0px;
		text-align: center;

	}

	#sec-presentacion p {
		font-size: 1.5rem;
		padding-left: 0px;
		width: 80%;
		margin-left: 10%;
		text-align: center;
	}

	#d-contain {
		width: 80%;
		margin-left: 10%;
		height: auto;
		padding: 0px;
	}

	.left-panel,
	.right-panel {
		flex: 1 1 80%;
		padding: 20px;
		box-sizing: border-box;
	}

}