/*!
 * ASOFRIO — Estilos específicos de la portada (frontpage.php)
 * Cargado únicamente en la página de inicio (ver functions.php).
 *
 * Los componentes reutilizados en más páginas (hero grande, video-card,
 * paneles de audiencia, marquee, market-stats, post-card, review-card,
 * FAQ...) viven ahora en style.css. Aquí solo queda lo exclusivo de la home.
 */

/* ============ Servicios de valor Asofrío ============ */
.value-services{
	position:relative; background:var(--nav) url('../assets/images/servicios-valor-asofrio.webp') center 30%/cover no-repeat;
	color:#fff; overflow:hidden; padding:clamp(56px,8vh,88px) 0;
}
.value-services::before{
	content:''; position:absolute; inset:0; pointer-events:none;
	background-image:
		linear-gradient(135deg, rgba(1,8,140,.90) 0%, rgba(6,27,95,.93) 55%, rgba(3,12,54,.95) 100%),
		radial-gradient(circle at 8% 12%, rgba(140,143,246,.30), transparent 45%),
		radial-gradient(circle at 92% 88%, rgba(22,199,232,.24), transparent 45%);
}
.value-services > .wrap{position:relative; z-index:1;}
.value-services .eyebrow{color:var(--accent); justify-content:center;}
.value-services h2{color:#fff;}
.value-services-grid{
	display:grid; grid-template-columns:repeat(3,1fr); gap:0;
	margin-top:40px; border-top:1px solid rgba(255,255,255,.16);
}
.value-service{
	padding:36px 32px; border-right:1px solid rgba(255,255,255,.16);
	display:flex; flex-direction:column;
}
.value-service:last-child{border-right:none;}
.value-service-num{ font-size:14px; font-weight:700; letter-spacing:.08em; color:var(--accent); margin-bottom:16px; }
.value-service h3{color:#fff; font-size:20px; margin-bottom:12px;}
.value-service p{color:#C3CCE3; line-height:1.65; font-size:14.5px; flex:1;}
.value-service-cta{
	display:inline-flex; align-items:center; gap:6px; margin-top:24px;
	background:none; border:none; padding:0 0 3px; font-size:14px; font-weight:700;
	color:#fff; cursor:pointer; text-decoration:none; align-self:flex-start; font-family:inherit;
	border-bottom:2px solid var(--accent);
}
.value-service-cta .material-symbols-outlined{font-size:18px; transition:transform .2s ease;}
.value-service-cta:hover{color:var(--accent);}
.value-service-cta:hover .material-symbols-outlined{transform:translateX(4px);}
.value-services-bottom{
	position:relative; z-index:1; display:grid; grid-template-columns:1fr 1fr; gap:56px;
	align-items:center; margin:clamp(40px,6vh,64px) 0 0;
}
.value-testimonial-quote{ font-style:italic; font-weight:500; font-size:22px; line-height:1.5; color:#fff; }
.value-testimonial-author{margin-top:22px; display:flex; flex-direction:column; gap:3px;}
.value-testimonial-name{font-weight:700; color:#fff; font-size:15px; font-style:normal;}
.value-testimonial-role{color:#C3CCE3; font-size:13.5px; font-style:normal;}
.value-services-video{position:relative;}
.value-services-video .video-card{
	aspect-ratio:16/9; border-radius:var(--r-lg); box-shadow:0 20px 48px rgba(1,8,45,.35);
}
@media(max-width:860px){
	.value-services-grid{grid-template-columns:1fr; border-top:none; margin-top:32px;}
	.value-service{border-right:none; border-top:1px solid rgba(255,255,255,.16); padding:28px 4px;}
	.value-services-bottom{grid-template-columns:1fr; gap:32px;}
}

/* ============ Trabaja con nosotros (carrusel de empleo) ============ */
.jobs-grid{ display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:stretch; margin-top:8px; }
.jobs-col{ display:flex; flex-direction:column; }
.jobs-viewport{ overflow:hidden; position:relative; }
.jobs-track{ will-change:transform; }
.jobs-controls{ display:flex; gap:10px; margin-top:16px; flex-shrink:0; }
.jobs-col > .btn{ margin-top:16px; align-self:flex-start; flex-shrink:0; }
.jobs-media-wrap{ position:relative; height:clamp(360px, 34vw, 460px); }
.jobs-media{ position:absolute; inset:0; border-radius:20px; overflow:hidden; box-shadow:0 1px 3px rgba(11,31,77,.06); }
.jobs-media img{ width:100%; height:100%; object-fit:cover; display:block; }
.jobs-media-shade{
	position:absolute; inset:0;
	background:linear-gradient(0deg, rgba(1,8,45,.78) 0%, rgba(1,8,45,.1) 45%, rgba(1,8,45,0) 68%);
}
.jobs-media-caption{ position:absolute; left:22px; bottom:22px; color:#fff; }
.jobs-media-caption strong{ display:block; font-size:16px; font-weight:700; }
.jobs-media-caption span{ display:block; font-size:13px; color:#DCE2F2; margin-top:2px; }
@media(max-width:860px){
	.jobs-grid{ grid-template-columns:1fr; }
	.jobs-media-wrap{ height:280px; order:-1; margin-bottom:28px; }
}

/* ============ Ajustes responsive de refuerzo (< 980px) ============ */
@media(max-width:980px){
	.jobs-grid > *,
	.jobs-col > *{
		min-width:0;
	}
}
