/* ═══════════════════════════════════════════════════════════════════════
   EMPRESA — Soria Casas Inmobiliaria
   Página: /empresa/
   Plugin: soria-casas-web
   ═══════════════════════════════════════════════════════════════════════ */

/* ─── CSS Variables ─── */
.sc-empresa {
	--azul: #4a8fcc;
	--azul-hover: #3a7fb8;
	--azul-light: rgba(74, 143, 204, 0.08);
	--azul-soft: rgba(74, 143, 204, 0.15);
	--beige: #fbf5e9;
	--beige-dark: #f0e8d5;
	--blanco: #ffffff;
	--gris-texto: #54585e;
	--negro: #333333;
	--borde: #e5e5e5;
	--sombra: 0 2px 16px rgba(0, 0, 0, 0.08);
	--sombra-hover: 0 8px 32px rgba(0, 0, 0, 0.14);
	--radio: 12px;
	--radio-sm: 8px;
	--max-width: 1200px;
	--transition: 0.3s cubic-bezier(0.4, 0, 0.2, 1);
}

/* ─── Typography ─── */
.sc-empresa h1, .sc-empresa h2, .sc-empresa h3, .sc-empresa h4 {
	font-family: 'Cormorant Garamond', serif !important;
	color: var(--negro);
	line-height: 1.2;
}
.sc-empresa p {
	font-family: 'DM Sans', sans-serif !important;
	color: var(--gris-texto);
	font-size: 15px;
	line-height: 1.75;
}

/* ─── Animations ─── */
@keyframes scEmpresaFadeUp {
	from { opacity: 0; transform: translateY(30px); }
	to { opacity: 1; transform: translateY(0); }
}
@keyframes scEmpresaFadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

.sc-empresa-animate {
	opacity: 0;
	transform: translateY(30px);
	transition: opacity 0.7s ease-out, transform 0.7s ease-out;
}
.sc-empresa-animate.sc-visible {
	opacity: 1;
	transform: translateY(0);
}

/* stagger children */
.sc-empresa-animate.sc-visible .sc-empresa-stagger-1 { transition-delay: 0.1s; }
.sc-empresa-animate.sc-visible .sc-empresa-stagger-2 { transition-delay: 0.2s; }
.sc-empresa-animate.sc-visible .sc-empresa-stagger-3 { transition-delay: 0.3s; }

/* ════════════════════════════════════════════
   SECTION 1 — HERO
   ════════════════════════════════════════════ */
.sc-empresa-hero {
	position: relative;
	min-height: 420px;
	overflow: hidden;
}
.sc-empresa-hero::before {
	content: '';
	position: absolute;
	top: -120px;
	right: -120px;
	width: 400px;
	height: 400px;
	border-radius: 50%;
	background: rgba(74, 143, 204, 0.06);
	pointer-events: none;
}
.sc-empresa-hero::after {
	content: '';
	position: absolute;
	bottom: -80px;
	left: -60px;
	width: 250px;
	height: 250px;
	border-radius: 50%;
	background: rgba(74, 143, 204, 0.04);
	pointer-events: none;
}
.sc-empresa-breadcrumb {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px;
	color: var(--gris-texto);
	margin-bottom: 32px;
	animation: scEmpresaFadeIn 0.6s ease-out;
}
.sc-empresa-breadcrumb a {
	color: var(--azul) !important;
	text-decoration: none !important;
	transition: color var(--transition);
}
.sc-empresa-breadcrumb a:hover { color: var(--azul-hover) !important; }
.sc-empresa-breadcrumb span { margin: 0 8px; color: #ccc; }

.sc-empresa-hero-label {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--azul);
	margin-bottom: 16px;
	animation: scEmpresaFadeUp 0.7s ease-out 0.1s both;
}
.sc-empresa-hero h1 {
	font-size: 46px !important;
	font-weight: 500 !important;
	color: var(--negro) !important;
	margin-bottom: 20px !important;
	max-width: 700px;
	animation: scEmpresaFadeUp 0.7s ease-out 0.2s both;
}
.sc-empresa-hero h1 em {
	font-style: italic;
	color: var(--azul) !important;
}
.sc-empresa-hero-subtitle {
	font-size: 17px !important;
	color: var(--gris-texto) !important;
	max-width: 560px;
	line-height: 1.8 !important;
	animation: scEmpresaFadeUp 0.7s ease-out 0.35s both;
}
.sc-empresa-hero-stat-number {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 38px !important;
	font-weight: 600 !important;
	color: var(--azul) !important;
	line-height: 1;
}
.sc-empresa-hero-stat-label {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px;
	color: var(--gris-texto);
	margin-top: 4px;
}

/* ════════════════════════════════════════════
   SECTION 2 — NUESTRA HISTORIA
   ════════════════════════════════════════════ */
.sc-empresa-historia-img {
	position: relative;
	border-radius: 16px;
	overflow: hidden;
}
.sc-empresa-historia-img img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border-radius: 16px;
	transition: transform 0.6s ease;
}
.sc-empresa-historia-img:hover img {
	transform: scale(1.02);
}
.sc-empresa-historia-img::after {
	content: '';
	position: absolute;
	bottom: -8px;
	right: -8px;
	width: 120px;
	height: 120px;
	border: 3px solid var(--azul);
	border-radius: 12px;
	opacity: 0.2;
	pointer-events: none;
}

.sc-empresa-section-label {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px;
	font-weight: 500;
	letter-spacing: 0.15em;
	text-transform: uppercase;
	color: var(--azul);
	margin-bottom: 12px;
}
.sc-empresa-section-label::before {
	content: '';
	display: inline-block;
	width: 24px;
	height: 2px;
	background: var(--azul);
	margin-right: 10px;
	vertical-align: middle;
}
.sc-empresa-historia-content h2 {
	font-size: 36px !important;
	font-weight: 500 !important;
	margin-bottom: 24px !important;
}
.sc-empresa-historia-content p {
	margin-bottom: 16px;
}
.sc-empresa-historia-content p strong { color: var(--negro); }

.sc-empresa-highlight-box {
	background: var(--beige);
	border-radius: var(--radio);
	padding: 24px 28px;
	margin-top: 28px;
	border-left: 4px solid var(--azul);
}
.sc-empresa-highlight-box p {
	font-size: 15px !important;
	font-style: italic;
	color: var(--negro) !important;
	margin: 0 !important;
	line-height: 1.7 !important;
}

.sc-empresa-divider {
	width: 60px;
	height: 3px;
	background: var(--azul);
	border-radius: 2px;
	margin-bottom: 24px;
}
.sc-empresa-divider.center { margin-left: auto; margin-right: auto; }

/* ════════════════════════════════════════════
   SECTION 3 — EQUIPO / GALERÍA
   ════════════════════════════════════════════ */
h2.sc-empresa-equipo {
	font-size: 36px !important;
	font-weight: 500 !important;
	margin-bottom: 12px !important;
}
.sc-empresa-equipo-subtitle {
	font-size: 16px !important;
	color: var(--gris-texto) !important;
	max-width: 600px;
	margin: 0 auto 48px !important;
}
.sc-empresa-equipo-photo {
	position: relative;
	border-radius: var(--radio);
	overflow: hidden;
	aspect-ratio: 4/3;
	background: #eee;
	box-shadow: var(--sombra);
	transition: all var(--transition);
}
.sc-empresa-equipo-photo:hover {
	transform: translateY(-4px);
	box-shadow: var(--sombra-hover);
}
.sc-empresa-equipo-photo img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
	display: block !important;
	transition: transform 0.5s ease;
}
.sc-empresa-equipo-photo:hover img { transform: scale(1.04); }
.sc-empresa-equipo-photo-overlay {
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	padding: 20px;
	background: linear-gradient(0deg, rgba(0,0,0,0.6) 0%, transparent 100%);
	opacity: 0;
	transition: opacity var(--transition);
}
.sc-empresa-equipo-photo:hover .sc-empresa-equipo-photo-overlay { opacity: 1; }
.sc-empresa-equipo-photo-overlay span {
	font-family: 'DM Sans', sans-serif !important;
	color: #fff !important;
	font-size: 14px;
	font-weight: 500;
}

/* ════════════════════════════════════════════
   SECTION 4 — SERVICIO PERSONALIZADO
   ════════════════════════════════════════════ */
.sc-empresa-servicio-img {
	border-radius: 16px;
	overflow: hidden;
	position: relative;
}
.sc-empresa-servicio-img img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border-radius: 16px;
	transition: transform 0.6s ease;
}
.sc-empresa-servicio-img:hover img { transform: scale(1.02); }
.sc-empresa-servicio-badge {
	position: absolute;
	top: 20px;
	left: 20px;
	background: var(--azul);
	color: #fff;
	font-family: 'DM Sans', sans-serif;
	font-size: 12px;
	font-weight: 600;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	padding: 8px 16px;
	border-radius: 6px;
}

/* ════════════════════════════════════════════
   SECTION 5 — POR QUÉ ELEGIRNOS
   ════════════════════════════════════════════ */
.sc-empresa-porque-header h2 {
	font-size: 36px !important;
	font-weight: 500 !important;
	margin-bottom: 16px !important;
}
.sc-empresa-porque-header p {
	font-size: 16px !important;
	max-width: 600px;
	margin: 0 auto !important;
}
.sc-empresa-porque-card {
	background: #ffffff;
	border: 1px solid var(--borde);
	border-radius: var(--radio);
	padding: 36px 28px;
	transition: all var(--transition);
	position: relative;
	overflow: hidden;
}
.sc-empresa-porque-card::before {
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 4px;
	background: var(--azul);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform 0.4s ease;
}
.sc-empresa-porque-card:hover::before { transform: scaleX(1); }
.sc-empresa-porque-card:hover {
	transform: translateY(-4px);
	box-shadow: var(--sombra-hover);
}
.sc-empresa-porque-icon {
	width: 56px; height: 56px;
	border-radius: 12px;
	background: var(--azul-light);
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 20px;
	transition: all var(--transition);
}
.sc-empresa-porque-card:hover .sc-empresa-porque-icon { background: var(--azul); }
.sc-empresa-porque-icon svg { transition: all var(--transition); }
.sc-empresa-porque-card:hover .sc-empresa-porque-icon svg { stroke: #fff; }
.sc-empresa-porque-card h3 {
	font-size: 22px !important;
	font-weight: 500 !important;
	margin-bottom: 12px !important;
}
.sc-empresa-porque-card p { font-size: 14.5px !important; }

/* ════════════════════════════════════════════
   SECTION 6 — CIFRAS
   ════════════════════════════════════════════ */
.sc-empresa-cifras::before {
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	background: url("data:image/svg+xml,%3Csvg width='60' height='60' viewBox='0 0 60 60' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' fill-rule='evenodd'%3E%3Cg fill='%23ffffff' fill-opacity='0.02'%3E%3Cpath d='M36 34v-4h-2v4h-4v2h4v4h2v-4h4v-2h-4zm0-30V0h-2v4h-4v2h4v4h2V6h4V4h-4zM6 34v-4H4v4H0v2h4v4h2v-4h4v-2H6zM6 4V0H4v4H0v2h4v4h2V6h4V4H6z'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") repeat;
}
.sc-empresa-cifras-header h2 {
	font-size: 36px !important;
	font-weight: 500 !important;
	color: #ffffff !important;
	margin-bottom: 12px !important;
}
.sc-empresa-cifras-header p { color: rgba(255,255,255,0.6) !important; font-size: 15px !important; }
.sc-empresa-cifra-item {
	text-align: center;
	padding: 32px 16px;
	border-radius: var(--radio);
	background: rgba(255,255,255,0.05);
	border: 1px solid rgba(255,255,255,0.08);
	transition: all var(--transition);
}
.sc-empresa-cifra-item:hover {
	background: rgba(255,255,255,0.1);
	transform: translateY(-3px);
}
.sc-empresa-cifra-number {
	font-family: 'Cormorant Garamond', serif !important;
	font-size: 48px !important;
	font-weight: 600 !important;
	color: var(--azul) !important;
	line-height: 1;
	margin-bottom: 8px;
}
.sc-empresa-cifra-label {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px;
	color: rgba(255,255,255,0.7) !important;
	line-height: 1.5;
}

/* counter animation */
.sc-empresa-cifra-number[data-count] {
	transition: color 0.3s ease;
}

/* ════════════════════════════════════════════
   SECTION 7 — VALORES
   ════════════════════════════════════════════ */
.sc-empresa-confianza-img {
	border-radius: 16px;
	overflow: hidden;
}
.sc-empresa-confianza-img img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	border-radius: 16px;
	transition: transform 0.6s ease;
}
.sc-empresa-confianza-img:hover img { transform: scale(1.02); }
.sc-empresa-valores-list {
	list-style: none !important;
	margin-top: 28px !important;
	padding: 0 !important;
}
.sc-empresa-valores-list li {
	display: flex !important;
	gap: 14px;
	align-items: flex-start;
	padding: 14px 0;
	border-bottom: 1px solid var(--borde);
}
.sc-empresa-valores-list li:last-child { border-bottom: none; }
.sc-empresa-valores-list li svg {
	flex-shrink: 0;
	margin-top: 2px;
}
.sc-empresa-valores-list li strong {
	color: var(--negro) !important;
	font-weight: 600;
	display: block;
	font-size: 15px;
	margin-bottom: 2px;
}
.sc-empresa-valores-list li span {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px;
	color: var(--gris-texto) !important;
	line-height: 1.6;
}

/* ════════════════════════════════════════════
   SECTION 8 — CERTIFICADOS
   ════════════════════════════════════════════ */
.sc-empresa-certificados h2 {
	font-size: 32px !important;
	font-weight: 500 !important;
	margin-bottom: 12px !important;
}
.sc-empresa-certificados p {
	max-width: 540px;
	margin: 0 auto 36px !important;
	font-size: 15px !important;
}
.sc-empresa-certificados-img { max-width: 500px; margin: 0 auto; }
.sc-empresa-certificados-img img {
	width: 100% !important;
	height: auto !important;
	display: block !important;
	transition: transform 0.4s ease;
}
.sc-empresa-certificados-img:hover img { transform: scale(1.03); }

/* ════════════════════════════════════════════
   SECTION 9 — FORMULARIO
   ════════════════════════════════════════════ */
.sc-empresa-contacto::before {
	content: '';
	position: absolute;
	top: 50px; right: 50px;
	width: 200px; height: 200px;
	border-radius: 50%;
	background: rgba(74, 143, 204, 0.05);
	pointer-events: none;
}
.sc-empresa-contacto-info h2 {
	font-size: 34px !important;
	font-weight: 500 !important;
	margin-bottom: 16px !important;
}
.sc-empresa-contacto-info > p {
	font-size: 15px !important;
	margin-bottom: 32px !important;
	max-width: 450px;
}
.sc-empresa-contacto-dato {
	display: flex;
	gap: 16px;
	align-items: center;
}
.sc-empresa-contacto-dato-icon {
	width: 48px; height: 48px;
	border-radius: 12px;
	background: rgba(74, 143, 204, 0.1);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-shrink: 0;
	transition: all var(--transition);
}
.sc-empresa-contacto-dato:hover .sc-empresa-contacto-dato-icon { background: var(--azul); }
.sc-empresa-contacto-dato:hover .sc-empresa-contacto-dato-icon svg { stroke: #fff; }
.sc-empresa-contacto-dato-text strong {
	display: block;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px;
	font-weight: 600;
	color: var(--negro) !important;
}
.sc-empresa-contacto-dato-text span,
.sc-empresa-contacto-dato-text a {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px;
	color: var(--gris-texto) !important;
	text-decoration: none !important;
	transition: color var(--transition);
}
.sc-empresa-contacto-dato-text a:hover { color: var(--azul) !important; }
.sc-empresa-contacto-horario {
	background: var(--beige);
	border-radius: var(--radio);
	padding: 24px;
	margin-top: 32px;
	border: 1px solid var(--beige-dark);
}
.sc-empresa-contacto-horario h4 {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px !important;
	font-weight: 600 !important;
	color: var(--negro) !important;
	margin-bottom: 12px !important;
}
.sc-empresa-contacto-horario-row {
	display: flex;
	justify-content: space-between;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 14px;
	padding: 6px 0;
}
.sc-empresa-contacto-horario-row span:first-child { color: var(--gris-texto); }
.sc-empresa-contacto-horario-row span:last-child { color: var(--negro); font-weight: 500; }

/* ─── Form ─── */
.sc-empresa-form {
	background: #ffffff;
	border-radius: 16px;
	padding: 40px 36px;
	box-shadow: 0 4px 24px rgba(0,0,0,0.08);
	border: 1px solid rgba(74, 143, 204, 0.1);
}
.sc-empresa-form h3 {
	font-size: 24px !important;
	font-weight: 500 !important;
	margin-bottom: 6px !important;
}
.sc-empresa-form > p {
	font-size: 14px !important;
	color: var(--gris-texto) !important;
	margin-bottom: 28px !important;
}
.sc-empresa-form-field {
	display: flex;
	flex-direction: column;
}
.sc-empresa-form-field label {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px !important;
	font-weight: 500 !important;
	color: var(--negro) !important;
	margin-bottom: 6px !important;
}
.sc-empresa-form-field label .required { color: #e53935; margin-left: 2px; }
.sc-empresa-form-field input,
.sc-empresa-form-field textarea,
.sc-empresa-form-field select {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 15px !important;
	padding: 12px 16px !important;
	border: 1px solid var(--borde) !important;
	border-radius: var(--radio-sm) !important;
	background: #fafafa !important;
	color: var(--negro) !important;
	transition: all var(--transition);
	outline: none !important;
	width: 100% !important;
	box-sizing: border-box !important;
	-webkit-appearance: none !important;
}
.sc-empresa-form-field select {
	-webkit-appearance: menulist !important;
	appearance: menulist !important;
	height: 48px !important;
	line-height: 1.4 !important;
	padding-right: 32px !important;
	cursor: pointer !important;
}
.sc-empresa-form-field input:focus,
.sc-empresa-form-field textarea:focus,
.sc-empresa-form-field select:focus {
	border-color: var(--azul) !important;
	background: #fff !important;
	box-shadow: 0 0 0 3px rgba(74, 143, 204, 0.12) !important;
}
.sc-empresa-form-field textarea { resize: vertical; min-height: 100px; }
.sc-empresa-form-privacy {
	display: flex;
	gap: 10px;
	align-items: flex-start;
	margin: 20px 0 24px;
}
.sc-empresa-form-privacy input[type="checkbox"] {
	width: 18px !important;
	height: 18px !important;
	margin-top: 2px;
	accent-color: var(--azul);
	flex-shrink: 0;
}
.sc-empresa-form-privacy label {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 13px !important;
	color: var(--gris-texto) !important;
	line-height: 1.5 !important;
}
.sc-empresa-form-privacy label a { color: var(--azul) !important; text-decoration: none !important; }
.sc-empresa-form-submit {
	width: 100%;
	padding: 16px 32px;
	background: var(--azul);
	color: #ffffff !important;
	font-family: 'DM Sans', sans-serif !important;
	font-size: 16px !important;
	font-weight: 500;
	border: none !important;
	border-radius: var(--radio-sm);
	cursor: pointer !important;
	transition: all var(--transition);
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.sc-empresa-form-submit:hover {
	background: var(--azul-hover);
	transform: translateY(-1px);
	box-shadow: 0 4px 16px rgba(74, 143, 204, 0.35);
}
.sc-empresa-form-submit.sc-empresa-loading {
	opacity: 0.7;
	pointer-events: none;
}
.sc-empresa-form-legal {
	font-family: 'DM Sans', sans-serif !important;
	font-size: 11px !important;
	color: #999 !important;
	margin-top: 16px;
	line-height: 1.6 !important;
}

/* form status messages */
.sc-empresa-form-msg {
	padding: 14px 20px;
	border-radius: var(--radio-sm);
	font-family: 'DM Sans', sans-serif;
	font-size: 14px;
	margin-bottom: 20px;
	display: none;
}
.sc-empresa-form-msg.sc-success {
	display: block;
	background: #e8f5e9;
	color: #2e7d32;
	border: 1px solid #c8e6c9;
}
.sc-empresa-form-msg.sc-error {
	display: block;
	background: #ffebee;
	color: #e53935;
	border: 1px solid #ffcdd2;
}

/* ════════════════════════════════════════════
   SECTION 10 — CTA FINAL
   ════════════════════════════════════════════ */
.sc-empresa-cta::before {
	content: '';
	position: absolute;
	top: -50%; left: -20%;
	width: 140%; height: 200%;
	background: radial-gradient(ellipse at center, rgba(255,255,255,0.08) 0%, transparent 70%);
	pointer-events: none;
}
.sc-empresa-cta h2 {
	font-size: 34px !important;
	font-weight: 500 !important;
	color: #ffffff !important;
	margin-bottom: 16px !important;
}
.sc-empresa-cta p {
	color: rgba(255,255,255,0.85) !important;
	font-size: 16px !important;
	margin-bottom: 32px !important;
}
.sc-empresa-cta-btn {
	display: inline-flex !important;
	align-items: center;
	gap: 8px;
	padding: 16px 32px;
	border-radius: var(--radio-sm);
	font-family: 'DM Sans', sans-serif !important;
	font-size: 16px !important;
	font-weight: 500;
	text-decoration: none !important;
	transition: all var(--transition);
}
.sc-empresa-cta-btn.primary {
	background: #ffffff;
	color: var(--azul) !important;
}
.sc-empresa-cta-btn.primary:hover {
	background: var(--beige);
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}
.sc-empresa-cta-btn.secondary {
	background: transparent;
	color: #ffffff !important;
	border: 2px solid rgba(255,255,255,0.5);
}
.sc-empresa-cta-btn.secondary:hover {
	border-color: #ffffff;
	background: rgba(255,255,255,0.1);
	transform: translateY(-2px);
}

/* ════════════════════════════════════════════
   RESPONSIVE
   ════════════════════════════════════════════ */

/* ── Tablet (≤ 900px) ─────────────────────── */
@media (max-width: 900px) {

	/* Section paddings */
	.sc-empresa > section[style*="padding:80px"] { padding: 56px 20px !important; }
	.sc-empresa > section[style*="padding:72px"] { padding: 52px 20px !important; }
	.sc-empresa .sc-empresa-cta { padding: 52px 20px !important; }
	.sc-empresa-hero > div[style*="padding:80px"] { padding: 56px 20px 44px !important; }

	/* Typography */
	.sc-empresa-hero h1 { font-size: 34px !important; }
	.sc-empresa-hero-stat-number { font-size: 30px !important; }
	.sc-empresa-historia-content h2,
	.sc-empresa-porque-header h2,
	.sc-empresa-cifras-header h2,
	h2.sc-empresa-equipo,
	.sc-empresa-contacto-info h2,
	.sc-empresa-certificados h2,
	.sc-empresa-cta h2 { font-size: 28px !important; }

	/* Form card */
	.sc-empresa-form { padding: 32px 24px; }

	/* 2-col content grids → 1 col */
	.sc-empresa .sc-empresa-animate[style*="grid-template-columns:1fr 1fr"],
	.sc-empresa .sc-empresa-animate[style*="grid-template-columns: 1fr 1fr"] {
		grid-template-columns: 1fr !important;
		gap: 36px !important;
	}

	/* Contact 2-col → 1 col */
	.sc-empresa .sc-empresa-contacto [style*="grid-template-columns:1fr 1.1fr"] {
		grid-template-columns: 1fr !important;
		gap: 36px !important;
	}

	/* 3-col grids → 2 cols */
	.sc-empresa [style*="grid-template-columns:repeat(3"] {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 20px !important;
	}

	/* 4-col → 2 col */
	.sc-empresa [style*="grid-template-columns:repeat(4"] {
		grid-template-columns: repeat(2, 1fr) !important;
	}

	/* Section header margins */
	.sc-empresa [style*="margin-bottom:56px"] { margin-bottom: 40px !important; }
	.sc-empresa [style*="margin-bottom:48px"] { margin-bottom: 36px !important; }

	/* Decorative elements */
	.sc-empresa-hero::before { width: 280px; height: 280px; top: -80px; right: -80px; }
	.sc-empresa-hero::after { width: 180px; height: 180px; }
	.sc-empresa-historia-img::after { width: 80px; height: 80px; }
}

/* ── Mobile (≤ 600px) ─────────────────────── */
@media (max-width: 600px) {

	/* Section paddings */
	.sc-empresa > section[style*="padding:80px"],
	.sc-empresa > section[style*="padding:72px"],
	.sc-empresa > section[style*="padding:56px"] { padding: 40px 16px !important; }
	.sc-empresa .sc-empresa-cta,
	.sc-empresa .sc-empresa-cifras { padding: 40px 16px !important; }
	.sc-empresa-hero > div[style*="padding"] { padding: 36px 16px 28px !important; }

	/* Typography */
	.sc-empresa-hero h1 { font-size: 26px !important; max-width: 100% !important; }
	.sc-empresa-hero-subtitle { font-size: 15px !important; max-width: 100% !important; }
	.sc-empresa-hero-label { font-size: 12px !important; letter-spacing: 0.12em; }
	.sc-empresa-hero-stat-number { font-size: 26px !important; }
	.sc-empresa-hero-stat-label { font-size: 12px !important; }

	.sc-empresa-historia-content h2,
	.sc-empresa-porque-header h2,
	.sc-empresa-cifras-header h2,
	h2.sc-empresa-equipo,
	.sc-empresa-contacto-info h2,
	.sc-empresa-certificados h2,
	.sc-empresa-cta h2 { font-size: 24px !important; }

	.sc-empresa p { font-size: 14px !important; }
	.sc-empresa-section-label { font-size: 12px !important; }
	.sc-empresa-cifra-number { font-size: 34px !important; }
	.sc-empresa-cifra-label { font-size: 13px !important; }
	.sc-empresa-porque-card h3 { font-size: 19px !important; }
	.sc-empresa-porque-card p { font-size: 13.5px !important; }
	.sc-empresa-form h3 { font-size: 20px !important; }

	/* Hero stats → 2×2 grid using flex-wrap */
	.sc-empresa [style*="display:flex"][style*="gap:40px"] {
		gap: 20px !important;
		margin-top: 28px !important;
	}
	.sc-empresa [style*="display:flex"][style*="gap:40px"] > div[style*="text-align"] {
		flex: 0 0 calc(50% - 10px) !important;
	}

	/* 2-col grids → 1 col */
	.sc-empresa [style*="grid-template-columns:1fr 1fr"],
	.sc-empresa [style*="grid-template-columns: 1fr 1fr"],
	.sc-empresa [style*="grid-template-columns:1fr 1.1fr"] {
		grid-template-columns: 1fr !important;
		gap: 28px !important;
	}

	/* 3-col → 1 col */
	.sc-empresa [style*="grid-template-columns:repeat(3"] {
		grid-template-columns: 1fr !important;
		gap: 16px !important;
	}

	/* 4-col → 2 col */
	.sc-empresa [style*="grid-template-columns:repeat(4"] {
		grid-template-columns: repeat(2, 1fr) !important;
		gap: 12px !important;
	}

	/* Form field grids → 1 col */
	.sc-empresa [style*="grid-template-columns:1fr 1fr"][style*="margin-bottom"] {
		grid-template-columns: 1fr !important;
		gap: 12px !important;
	}

	/* Equipo photos: square + centered on mobile */
	.sc-empresa-equipo-photo {
		aspect-ratio: 1/1 !important;
		max-width: 280px !important;
		margin-left: auto !important;
		margin-right: auto !important;
	}

	/* Porque elegirnos cards */
	.sc-empresa-porque-card { padding: 28px 22px; }

	/* Form */
	.sc-empresa-form { padding: 24px 18px; }
	.sc-empresa-form-submit { padding: 14px 24px; font-size: 15px !important; }

	/* CTA buttons stacking */
	.sc-empresa .sc-empresa-cta [style*="display:flex"] {
		flex-direction: column !important;
		align-items: stretch !important;
		gap: 12px !important;
	}
	.sc-empresa .sc-empresa-cta a[class*="sc-empresa-cta-btn"] {
		width: 100% !important;
		justify-content: center !important;
		text-align: center !important;
		box-sizing: border-box !important;
	}

	/* Content details */
	.sc-empresa-highlight-box { padding: 18px 20px; margin-top: 20px; }
	.sc-empresa-contacto-dato-icon { width: 42px !important; height: 42px !important; border-radius: 10px; }
	.sc-empresa-contacto-horario { padding: 18px; margin-top: 24px; }
	.sc-empresa-contacto-horario-row { flex-direction: column; gap: 2px; padding: 8px 0; }
	.sc-empresa-valores-list li { padding: 12px 0; gap: 12px; }
	.sc-empresa-certificados-img { max-width: 100%; }
	.sc-empresa-certificados p { margin-bottom: 28px !important; }
	.sc-empresa-servicio-badge { font-size: 11px; padding: 6px 12px; top: 12px; left: 12px; }
	.sc-empresa-divider { margin-bottom: 18px; }
	.sc-empresa-breadcrumb { margin-bottom: 20px; font-size: 12px; }

	/* Section header margins */
	.sc-empresa [style*="margin-bottom:56px"],
	.sc-empresa [style*="margin-bottom:48px"] { margin-bottom: 28px !important; }

	/* Hide decorative elements */
	.sc-empresa-hero::before,
	.sc-empresa-hero::after,
	.sc-empresa-contacto::before,
	.sc-empresa-historia-img::after { display: none; }
}

/* ── Small mobile (≤ 400px) ───────────────── */
@media (max-width: 400px) {
	.sc-empresa-hero h1 { font-size: 22px !important; }
	.sc-empresa-hero-stat-number { font-size: 22px !important; }

	.sc-empresa-historia-content h2,
	.sc-empresa-porque-header h2,
	.sc-empresa-cifras-header h2,
	h2.sc-empresa-equipo,
	.sc-empresa-contacto-info h2,
	.sc-empresa-certificados h2,
	.sc-empresa-cta h2 { font-size: 21px !important; }

	.sc-empresa-cifra-number { font-size: 28px !important; }
	.sc-empresa-cifra-item { padding: 24px 12px; }
	.sc-empresa-form { padding: 20px 14px; }
	.sc-empresa-form h3 { font-size: 18px !important; }

	/* Equipo photos smaller */
	.sc-empresa-equipo-photo { max-width: 240px !important; }

	/* CTA buttons tighter */
	.sc-empresa .sc-empresa-cta a[class*="sc-empresa-cta-btn"] {
		padding: 14px 20px !important;
		font-size: 14px !important;
	}
}
