﻿/**
 * Hero Nosotros — full viewport negro (Figma, como el home).
 */

.elementor-widget-althus-nosotros-hero,
.elementor-widget-althus-nosotros-hero > .elementor-widget-container {
	margin: 0 !important;
	padding: 0 !important;
	max-width: none !important;
	width: 100% !important;
	min-height: 100vh !important;
	min-height: 100dvh !important;
	height: auto !important;
}

.althus-nosotros-hero {
	--althus-nosotros-hero-bg: #000000;
	--althus-nosotros-hero-text: #ffffff;
	--althus-nosotros-hero-header-clearance: clamp(5.5rem, 12vh, 8.5rem);
	--althus-nosotros-hero-pad-bottom: clamp(3rem, 8vh, 5.5rem);
	--althus-nosotros-hero-headline-size: clamp(2.35rem, 5vw, 5.75rem);
	--althus-nosotros-hero-body-size: clamp(1.0625rem, 1.35vw, 1.5rem);
	width: 100vw;
	max-width: 100vw;
	margin-left: calc(50% - 50vw);
	margin-right: calc(50% - 50vw);
	min-height: 100vh;
	min-height: 100dvh;
	background-color: var(--althus-nosotros-hero-bg);
	color: var(--althus-nosotros-hero-text);
	box-sizing: border-box;
	font-family: var(--althus-font-family);
	overflow: visible;
	display: flex;
	flex-direction: column;
}

.althus-nosotros-hero *,
.althus-nosotros-hero *::before,
.althus-nosotros-hero *::after {
	box-sizing: inherit;
}

.althus-nosotros-hero__inner {
	position: relative;
	display: block;
	flex: 1 1 auto;
	width: 100%;
	max-width: none;
	min-height: 100vh;
	min-height: 100dvh;
	margin: 0 auto;
	padding:
		var(--althus-nosotros-hero-header-clearance)
		clamp(1.5rem, 5vw, 6rem)
		var(--althus-nosotros-hero-pad-bottom);
}

.althus-nosotros-hero__content {
	position: absolute;
	/* Figma: bloque en la mitad inferior (como home/servicios) */
	top: 48%;
	left: clamp(1.5rem, 5vw, 6rem);
	right: clamp(1.5rem, 5vw, 6rem);
	width: auto;
	max-width: none;
	margin: 0;
	transform: none;
}

.althus-nosotros-hero__headline {
	margin: 0;
	max-width: 16ch;
	color: var(--althus-nosotros-hero-text);
	font-family: var(--althus-font-family) !important;
	font-size: var(--althus-nosotros-hero-headline-size);
	font-weight: 500 !important; /* Medium */
	line-height: 1.08;
	letter-spacing: -0.03em;
	text-transform: none;
}

.althus-nosotros-hero__body {
	margin-top: clamp(1.5rem, 2.8vw, 2.75rem);
	/* Ancho amplio: párrafo completo como en Figma (~3–4 líneas) */
	max-width: min(72rem, 100%);
	color: var(--althus-nosotros-hero-text);
	font-family: var(--althus-font-family) !important;
	font-size: var(--althus-nosotros-hero-body-size);
	font-weight: 300 !important; /* Light */
	line-height: 1.65;
	letter-spacing: -0.01em;
	opacity: 1;
}

.althus-nosotros-hero__body p {
	margin: 0;
	font-family: inherit;
	font-size: inherit;
	font-weight: inherit;
	line-height: inherit;
	color: inherit;
}

.althus-nosotros-hero__body p + p {
	margin-top: 1em;
}

@media (min-width: 1600px) {
	.althus-nosotros-hero {
		--althus-nosotros-hero-headline-size: clamp(4.75rem, 5vw, 5.75rem);
		--althus-nosotros-hero-body-size: 1.4375rem;
	}
}

@media (min-width: 1920px) {
	.althus-nosotros-hero {
		--althus-nosotros-hero-header-clearance: 8.5rem;
		--althus-nosotros-hero-pad-bottom: 5.5rem;
		--althus-nosotros-hero-headline-size: 5.75rem; /* ~92px */
		--althus-nosotros-hero-body-size: 1.5rem; /* 24px */
	}

	.althus-nosotros-hero__inner {
		padding-left: 6rem;
		padding-right: 6rem;
	}

	.althus-nosotros-hero__content {
		top: 48%;
		left: 6rem;
		right: 6rem;
		max-width: none;
	}

	.althus-nosotros-hero__headline {
		max-width: 15ch;
	}

	.althus-nosotros-hero__body {
		margin-top: 2.75rem;
		max-width: 68rem;
	}
}

@media (max-width: 767px) {
	.althus-nosotros-hero {
		--althus-nosotros-hero-header-clearance: 4.5rem;
		--althus-nosotros-hero-pad-bottom: 2.75rem;
		--althus-nosotros-hero-headline-size: clamp(2rem, 8.5vw, 2.75rem);
		--althus-nosotros-hero-body-size: clamp(1rem, 4vw, 1.1875rem);
	}

	.althus-nosotros-hero__inner {
		padding-left: 1.15rem;
		padding-right: 1.15rem;
	}

	.althus-nosotros-hero__content {
		top: 42%;
		left: 1.15rem;
		right: 1.15rem;
		max-width: none;
	}

	.althus-nosotros-hero__headline {
		max-width: none;
	}

	.althus-nosotros-hero__body {
		margin-top: 1.5rem;
		max-width: none;
	}
}
