/*
=========================================================
HOME.CSS
Refinamiento visual de la portada en escritorio
Maceta y Cortafrío
=========================================================
*/

/* Evita que la regla global de section añada franjas vacías al hero. */
.home .hero-split{
	padding:0;
	min-height:560px;
}

.home .hero-split__panel{
	padding:3.5rem clamp(2.5rem,5vw,5rem);
}

.home .hero-split__title{
	font-size:clamp(3.3rem,5.2vw,5.6rem);
	line-height:.98;
	max-width:8.5ch;
	text-wrap:balance;
}

.home .hero-split__lead{
	margin-bottom:2rem;
	line-height:1.65;
}

.home .hero-split__actions{
	align-items:center;
}

.home .hero-split__media{
	min-height:560px;
}

/* Ritmo vertical general de la portada. */
.home .trust,
.home .services-preview,
.home .myc-benefits,
.home .myc-projects,
.home .myc-process,
.home .myc-guarantees,
.home .myc-testimonials{
	padding:clamp(4rem,5.5vw,5.5rem) 0;
}

.home .trust-bar{
	padding:1.35rem 0;
}

.home .services-preview + section,
.home section + .services-preview{
	margin-top:0;
}

/* Encabezados de sección más compactos y legibles. */
.home .section-header,
.home .section-title{
	max-width:780px;
	margin:0 auto 2.75rem;
	text-align:center;
}

.home .section-header h2,
.home .section-title__heading{
	font-size:clamp(2.5rem,4vw,4rem);
	line-height:1.06;
	max-width:16ch;
	margin:0 auto 1rem;
	text-wrap:balance;
}

.home .section-header p,
.home .section-title__description p{
	max-width:720px;
	margin-inline:auto;
	font-size:1.02rem;
	line-height:1.7;
}

.home .section-title__eyebrow,
.home .hero-split__eyebrow{
	letter-spacing:.08em;
}

/* Servicios: tarjetas más proporcionadas en escritorio. */
.home .services-grid{
	gap:1.4rem;
	margin-top:2.5rem;
}

.home .service-card{
	min-height:245px;
	justify-content:center;
}

.home .service-card__body{
	padding:2rem 1.8rem;
	text-align:center;
}

.home .service-card__body h3{
	justify-content:center;
	font-size:1.08rem;
	line-height:1.25;
	max-width:23ch;
	margin:0 auto .75rem;
	text-wrap:balance;
}

.home .service-card__body p{
	max-width:34ch;
	margin-inline:auto;
	line-height:1.65;
}

/* Tarjetas de confianza, beneficios, garantías y compromisos. */
.home .trust-grid,
.home .myc-benefits__grid,
.home .myc-guarantees__grid{
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:1.5rem;
	max-width:1120px;
	margin-inline:auto;
}

.home .trust-card,
.home .myc-card,
.home .commitment-card{
	padding:1.9rem 1.65rem;
}

.home .trust-card,
.home .myc-benefit-card,
.home .myc-guarantee-card,
.home .commitment-card{
	display:flex;
	flex-direction:column;
	align-items:center;
	text-align:center;
}

.home .trust-card .icon-circle,
.home .commitment-card .icon-circle,
.home .myc-card__icon{
	width:56px;
	height:56px;
	margin:0 auto 1rem;
}

.home .trust-card h3,
.home .commitment-card h3,
.home .myc-card__title{
	font-size:1.05rem;
	line-height:1.3;
	margin-bottom:.65rem;
	text-wrap:balance;
}

.home .trust-card p,
.home .commitment-card p,
.home .myc-card__description p{
	font-size:.91rem;
	line-height:1.65;
}

/* Banda de principios bajo la confianza. */
.home .trust-stats{
	max-width:1050px;
	margin:3rem auto 0;
	padding:2rem 2.25rem;
	border-top:1px solid var(--gray-200);
	border-bottom:1px solid var(--gray-200);
}

.home .stat-number{
	font-size:clamp(2rem,3vw,2.8rem);
	line-height:1.05;
}

/* Portfolio provisional: una sola pieza central, no lista y botón separados. */
.home .myc-projects__empty{
	display:grid;
	grid-template-columns:minmax(0,720px);
	justify-content:center;
	max-width:860px;
	margin-inline:auto;
	text-align:center;
}

.home .myc-projects__empty > p{
	max-width:760px;
	margin:0 auto 1.15rem;
	line-height:1.7;
}

.home .myc-projects__empty > p:nth-of-type(3){
	margin-top:.6rem;
	margin-bottom:1rem;
}

.home .myc-projects__empty ul{
	display:grid;
	grid-template-columns:repeat(2,minmax(0,1fr));
	gap:.9rem 1.5rem;
	width:100%;
	margin:0 auto 1.5rem;
	padding:1.6rem 1.8rem;
	list-style:none;
	text-align:left;
	background:#fff;
	border:1px solid var(--gray-200);
	border-radius:var(--radius-lg);
	box-shadow:var(--shadow-sm);
}

.home .myc-projects__empty li{
	position:relative;
	padding-left:1.5rem;
	margin:0;
	line-height:1.5;
}

.home .myc-projects__empty li::before{
	content:"✓";
	position:absolute;
	left:0;
	top:0;
	color:var(--color-secondary-dark);
	font-weight:var(--weight-bold);
}

.home .myc-projects__empty .button{
	justify-self:center;
	margin-top:0;
}

/* Proyectos reales en portada. */
.home .myc-projects .projects-grid{
	display:grid;
	grid-template-columns:repeat(3,minmax(0,1fr));
	gap:1.5rem;
	max-width:1120px;
	margin:0 auto;
}

.home .myc-projects .project-card{
	display:flex;
	flex-direction:column;
	min-width:0;
	height:100%;
	overflow:hidden;
	background:var(--white);
	border:1px solid var(--gray-200);
	border-radius:var(--radius-lg);
	color:inherit;
	text-decoration:none;
	transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast);
}

.home .myc-projects .project-card__media{
	position:relative;
	aspect-ratio:4/3;
	overflow:hidden;
	background:var(--gray-100);
}

.home .myc-projects .project-card__media img{
	display:block;
	width:100%;
	height:100%;
	object-fit:cover;
}

.home .myc-projects .project-card__badge{
	position:absolute;
	left:.75rem;
	bottom:.75rem;
	padding:.32rem .72rem;
	background:rgba(22,21,19,.86);
	border-radius:var(--radius-pill);
	color:var(--white);
	font-size:.72rem;
	font-weight:var(--weight-semibold);
	line-height:1.2;
}

.home .myc-projects .project-card__body{
	display:flex;
	flex:1;
	flex-direction:column;
	padding:1.3rem;
}

.home .myc-projects .project-card__title{
	margin:0 0 .6rem;
	font-size:1.05rem;
	line-height:1.3;
	text-wrap:balance;
}

.home .myc-projects .project-card__meta{
	display:flex;
	flex-wrap:wrap;
	gap:.5rem .8rem;
	margin:0;
	padding:0;
	color:var(--text-light);
	font-size:.79rem;
	line-height:1.45;
	list-style:none;
}

.home .myc-projects .project-card__meta li{
	margin:0;
}

.home .myc-projects .project-card__meta-label{
	color:var(--heading-color);
	font-weight:var(--weight-semibold);
}

.home .myc-projects__cta{
	margin-top:2rem;
	text-align:center;
}

@media (hover:hover) and (pointer:fine){
	.home .myc-projects .project-card:hover,
	.home .myc-projects .project-card:focus-visible{
		transform:translateY(-4px);
		border-color:var(--color-secondary);
		box-shadow:var(--shadow-md);
	}
}

/* Proceso: 3 + 2 columnas para evitar textos comprimidos. */
.home .myc-process__grid{
	grid-template-columns:repeat(6,minmax(0,1fr));
	gap:2rem 1.5rem;
	max-width:1120px;
	margin-inline:auto;
}

.home .myc-process-step{
	grid-column:span 2;
	padding:0 .5rem;
}

.home .myc-process-step:nth-child(4){
	grid-column:2 / span 2;
}

.home .myc-process-step:nth-child(5){
	grid-column:4 / span 2;
}

.home .myc-process-step__number{
	font-size:1.7rem;
	margin-bottom:.25rem;
}

.home .myc-process-step__description{
	max-width:30ch;
	margin-inline:auto;
	line-height:1.6;
}

/* Compromisos: cuatro tarjetas compactas. */
.home .commitments-grid{
	gap:1.4rem;
	margin-top:2.5rem;
}

/* Formulario: caja más contenida y separación clara del footer. */
.home #contacto{
	padding:4.5rem 0;
}

.home #contacto .container,
.home .quote-form-wrapper,
.home .quote-form{
	max-width:820px;
	margin-inline:auto;
}

.home #contacto h2{
	font-size:clamp(2rem,3vw,3rem);
	line-height:1.1;
}

/* Footer: jerarquía más ligera y mejor reparto de columnas. */
.home .site-footer{
	padding-top:4rem;
}

.home .footer-grid{
	grid-template-columns:1.35fr 1.2fr .95fr .95fr;
	gap:2.5rem;
	padding-bottom:3rem;
}

.home .footer-title{
	font-size:clamp(1.65rem,2.4vw,2.5rem);
	line-height:1.08;
	margin-bottom:1rem;
	text-wrap:balance;
}

.home .footer-links li,
.home .footer-contact li{
	margin-bottom:.65rem;
	line-height:1.45;
}

/* Escritorio intermedio. */
@media (max-width:1200px){
	.home .hero-split__title{
		font-size:clamp(3rem,5vw,4.8rem);
	}

	.home .main-menu{
		gap:1.35rem;
	}

	.home .footer-grid{
		grid-template-columns:1.2fr 1.15fr 1fr 1fr;
		gap:2rem;
	}
}

/* Tablet. */
@media (max-width:992px){
	.home .hero-split{
		min-height:0;
	}

	.home .hero-split__media{
		min-height:360px;
	}

	.home .hero-split__title{
		max-width:12ch;
	}

	.home .trust-grid,
	.home .myc-benefits__grid,
	.home .myc-guarantees__grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.home .myc-projects .projects-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.home .myc-process__grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
	}

	.home .myc-process-step,
	.home .myc-process-step:nth-child(4),
	.home .myc-process-step:nth-child(5){
		grid-column:auto;
	}

	.home .myc-process-step:last-child{
		grid-column:1 / -1;
		max-width:360px;
		justify-self:center;
	}

	/* La especificidad de .home no debe anular el footer global responsive. */
	.home .footer-grid{
		grid-template-columns:repeat(2,minmax(0,1fr));
		gap:2rem;
	}
}

/* Footer móvil: una sola columna y ancho completo para evitar palabras partidas. */
@media (max-width:768px){
	.home .site-footer{
		padding-top:3.25rem;
	}

	.home .footer-grid{
		grid-template-columns:minmax(0,1fr);
		gap:2rem;
		padding-bottom:2.5rem;
	}

	.home .footer-grid > *{
		min-width:0;
		width:100%;
	}

	.home .footer-title{
		font-size:clamp(1.45rem,7vw,1.85rem);
		line-height:1.12;
		word-break:normal;
		overflow-wrap:normal;
	}

	.home .footer-links li,
	.home .footer-contact li,
	.home .footer-column > p,
	.home .footer-hours,
	.home .footer-coverage{
		word-break:normal;
		overflow-wrap:break-word;
	}

	.home .footer-social{
		width:100%;
	}

	.home .footer-bottom-container{
		align-items:flex-start;
		text-align:left;
	}

	.home .footer-legal{
		justify-content:flex-start;
	}
}

/* Móvil. */
@media (max-width:600px){
	.home .trust,
	.home .services-preview,
	.home .myc-benefits,
	.home .myc-projects,
	.home .myc-process,
	.home .myc-guarantees,
	.home .myc-testimonials{
		padding:3.5rem 0;
	}

	.home .section-header,
	.home .section-title{
		margin-bottom:2.25rem;
	}

	.home .section-header h2,
	.home .section-title__heading{
		font-size:clamp(2rem,10vw,2.75rem);
	}

	.home .trust-grid,
	.home .myc-benefits__grid,
	.home .myc-guarantees__grid,
	.home .myc-process__grid,
	.home .myc-projects .projects-grid{
		grid-template-columns:1fr;
	}

	.home .myc-process-step:last-child{
		grid-column:auto;
	}

	.home .myc-projects__empty ul{
		grid-template-columns:1fr;
		padding:1.3rem;
	}

	.home .trust-stats{
		padding:1.5rem 1rem;
	}
}

/* =====================================================
   ACCESIBILIDAD — CONTRASTE AA EN PORTADA
===================================================== */

/* El dorado de marca se mantiene en fondos oscuros y elementos decorativos.
   Para texto pequeño sobre fondos claros usamos un dorado más oscuro. */
.home .badge-gold,
.home .section-title__eyebrow{
	color:var(--color-gold-text);
}

/* Los números de proceso eran demasiado claros sobre blanco. */
.home .myc-process-step__number{
	color:var(--gray-600);
}
