/* --------------------------------------------------------------------------
   iSaive — inner pages (extends homepage system, no new visual language)
   -------------------------------------------------------------------------- */

.hero--simple {
	padding: 4.75rem 0 5rem;
}

.hero--simple .hero__grid {
	grid-template-columns: 1fr;
	min-height: 0;
	align-items: center;
}

.hero--simple .hero__copy {
	padding-bottom: 0;
	max-width: 44rem;
}

.hero--contact {
	padding: 4.5rem 0 5.5rem;
}

.hero--contact .cta__grid {
	min-height: 0;
	align-items: start;
}

.hero--contact .hero__copy {
	padding-bottom: 0;
}

.section--after-device {
	position: relative;
	z-index: 1;
	padding-top: 7rem;
}

.placeholder {
	display: inline;
	padding: 0.05em 0.4em;
	border-radius: 0.4em;
	background: var(--isaive-green-soft);
	color: var(--isaive-green-dark);
	font-weight: 700;
}

.team-grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 1.25rem;
}

.team-card {
	padding: 1.4rem;
	background: var(--isaive-white);
	border: 1px dashed rgba(18, 35, 58, 0.18);
	border-radius: var(--isaive-radius);
}

.team-card__photo {
	width: 100%;
	aspect-ratio: 1;
	margin-bottom: 1.1rem;
	border-radius: 1.1rem;
	background: var(--isaive-bg-muted);
	display: grid;
	place-items: center;
	color: var(--isaive-muted);
	font-size: 0.88rem;
	font-weight: 700;
	text-align: center;
	padding: 1rem;
}

.team-card h3,
.team-card p {
	margin-bottom: 0.4rem;
}

.team-card p {
	color: var(--isaive-muted);
	font-size: 0.95rem;
}

.team-note {
	margin-top: 1.25rem;
	font-size: 0.92rem;
	color: var(--isaive-muted);
}

.legal {
	max-width: 46rem;
}

.legal h2 {
	font-size: 1.35rem;
	margin: 2.2rem 0 0.7rem;
}

.legal p,
.legal li {
	color: var(--isaive-muted);
}

.legal ul {
	list-style: disc;
	padding-left: 1.2rem;
	display: grid;
	gap: 0.4rem;
	margin-bottom: 1rem;
}

.form-note {
	margin: 0 0 1rem;
	font-size: 0.9rem;
	color: rgba(255, 255, 255, 0.62);
}

@media (max-width: 1024px) {
	.section--after-device {
		padding-top: 5.5rem;
	}

	.team-grid {
		grid-template-columns: 1fr 1fr;
	}
}

@media (max-width: 720px) {
	.section--after-device {
		padding-top: 4.75rem;
	}

	.team-grid {
		grid-template-columns: 1fr;
	}

	.hero--simple {
		padding: 3.5rem 0 3.75rem;
	}
}
