/* Carrusel de Modelos v12 (aprobado por William) -- reemplaza el diseno anterior */
.jf-modelos-seccion{
	--bg:#050505;
	--red:#d81f27;
	--red-dark:#6e0f13;
	--text:#f5f5f5;
	--muted:#9a9a9a;
	--border:#2a2020;
	--display:'Anton',sans-serif;
	--body:'Barlow',sans-serif;
	position:relative;
	background:#0a0707;
	overflow:hidden;
	padding:36px 0 0;
	font-family:var(--body);
	color:var(--text);
}
.jf-modelos-glow-bg{
	position:absolute; inset:0; pointer-events:none; z-index:0;
	background:
		radial-gradient(60% 90% at 82% 15%, rgba(216,31,39,0.35) 0%, rgba(110,15,19,0.16) 35%, transparent 65%),
		radial-gradient(70% 60% at 8% 5%, rgba(60,20,20,0.25) 0%, transparent 60%);
}
.jf-modelos-marca-fondo{
	position:absolute; top:-14px; left:-8px; z-index:1; pointer-events:none;
	font-family:var(--display); font-size:8.5rem; letter-spacing:0.02em;
	color:transparent; -webkit-text-stroke:1px rgba(255,255,255,0.05);
	white-space:nowrap; opacity:0.9;
}
.jf-modelos-accent{
	position:absolute; top:0; right:0; width:320px; height:100%;
	background:linear-gradient(125deg, transparent 0%, transparent 42%, rgba(216,31,39,0.85) 46%, rgba(110,15,19,0.55) 62%, transparent 78%);
	filter:blur(6px);
	opacity:0.95; pointer-events:none; z-index:1;
}
.jf-modelos-tag{
	position:absolute; top:30px; right:40px; text-align:right; z-index:3;
	font-family:var(--display); font-weight:400; font-size:1rem; line-height:1.2;
	color:#fff;
}

.jf-modelos-header{ position:relative; z-index:2; text-align:center; padding:0 24px 28px; }
.jf-modelos-eyebrow{
	display:flex; align-items:center; justify-content:center; gap:12px;
	color:#c9c9c9; font-size:0.72rem; letter-spacing:0.32em; margin-bottom:14px;
	font-family:var(--body); font-weight:500;
}
.jf-modelos-eyebrow::before, .jf-modelos-eyebrow::after{ content:''; width:30px; height:1.5px; background:var(--red); }
.jf-modelos-header h2{
	font-family:var(--display); font-weight:400; font-size:clamp(1.5rem, 5.6vw, 2.75rem);
	margin:0; letter-spacing:0.005em; text-transform:uppercase;
}
.jf-modelos-header h2 .rojo{ color:var(--red); }
.jf-modelos-header p{ color:#cfcfcf; font-size:1rem; margin:10px 0 0; font-family:var(--body); font-weight:400; }

.jf-modelos-carrusel{ position:relative; z-index:2; padding:4px 58px 28px; }
.jf-modelos-track-wrap{ overflow:hidden; -webkit-mask-image:linear-gradient(90deg, transparent 0, #000 4%, #000 96%, transparent 100%); mask-image:linear-gradient(90deg, transparent 0, #000 4%, #000 96%, transparent 100%); }
.jf-modelos-track{
	display:flex; gap:16px; width:max-content;
	will-change:transform;
}

.jf-modelo-card{
	flex:0 0 auto; width:208px;
	display:flex; flex-direction:column;
	border-radius:16px;
	overflow:hidden;
	background:#0c0a0a;
	border:1px solid rgba(255,255,255,0.07);
	box-shadow:0 16px 30px rgba(0,0,0,.45);
	transition:transform .25s ease, box-shadow .25s ease;
}
.jf-modelo-card:hover{
	transform:scale(1.06);
	box-shadow:0 20px 38px rgba(0,0,0,.6);
	position:relative; z-index:5;
}
.jf-modelo-foto{
	width:100%;
	aspect-ratio:1122 / 1000;
	background-size:cover;
	background-position:center;
	background-color:#0c0a0a;
}
.jf-modelo-info{
	flex:1;
	display:flex; flex-direction:column; align-items:center;
	text-align:center;
	gap:10px;
	padding:14px 12px 16px;
	background:linear-gradient(180deg, #0a0808 0%, #0c0a0a 100%);
}
.jf-modelo-info h3{
	font-family:var(--display); font-weight:400; color:#fff;
	font-size:0.98rem; margin:0; line-height:1.2; letter-spacing:0.01em;
	text-transform:uppercase;
}
.jf-modelo-marca{
	display:block; margin-top:-6px;
	font-family:var(--body); font-weight:400; color:#9a9a9a;
	font-size:0.68rem; letter-spacing:0.1em; text-transform:uppercase;
}
.jf-modelo-btn{
	display:block;
	width:100%; border:none; border-radius:999px;
	background:linear-gradient(180deg, #e8232f 0%, #b3121c 100%);
	box-shadow:0 0 0 1px rgba(255,255,255,.08) inset, 0 6px 16px rgba(216,31,39,.45);
	color:#fff; padding:11px 8px;
	font-family:var(--body); font-weight:800; font-size:0.68rem; letter-spacing:0.06em;
	text-decoration:none; text-align:center;
	cursor:pointer; transition:all .2s; margin-top:auto;
}
.jf-modelo-btn:hover{ filter:brightness(1.12); box-shadow:0 0 0 1px rgba(255,255,255,.1) inset, 0 6px 20px rgba(216,31,39,.7); color:#fff; }

.jf-modelos-flecha{
	position:absolute; top:42%; transform:translateY(-50%);
	width:40px; height:40px; border-radius:50%; z-index:4;
	background:rgba(255,255,255,0.06); border:1px solid #3a3a3a; color:#fff;
	display:flex; align-items:center; justify-content:center; cursor:pointer;
	font-size:1.3rem; transition:all .2s; backdrop-filter:blur(2px);
}
.jf-modelos-flecha:hover{ background:var(--red); border-color:var(--red); }
.jf-modelos-flecha.prev{ left:6px; }
.jf-modelos-flecha.next{ right:6px; }

.jf-modelos-footer{
	position:relative; z-index:2;
	border-top:1px solid var(--border);
	display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:16px;
	padding:18px 32px;
}
.jf-modelos-feats{ display:flex; align-items:center; gap:0; flex-wrap:wrap; }
.jf-feat{ display:flex; align-items:center; gap:10px; padding:0 20px; border-right:1px solid var(--border); }
.jf-feat:last-child{ border-right:none; }
.jf-feat svg{ width:24px; height:24px; color:var(--red); flex:none; }
.jf-feat .txt{ font-size:0.72rem; line-height:1.3; letter-spacing:0.02em; }
.jf-feat strong{ display:block; color:#fff; font-weight:700; }
.jf-feat em{ display:block; color:var(--muted); font-style:normal; font-weight:500; }
.jf-modelos-cta{
	background:transparent; border:1.5px solid var(--red); color:#fff;
	font-family:var(--body); font-weight:700; font-size:0.8rem; letter-spacing:0.04em;
	padding:12px 22px; border-radius:4px; cursor:pointer; white-space:nowrap;
	display:inline-flex; align-items:center; gap:8px; transition:all .2s;
	text-decoration:none;
}
.jf-modelos-cta span{ color:var(--red); font-size:1.1rem; }
.jf-modelos-cta:hover{ background:var(--red); color:#fff; }
.jf-modelos-cta:hover span{ color:#fff; }

@media (max-width:900px){
	.jf-modelos-tag{ display:none; }
	.jf-modelos-accent{ width:100px; }
	.jf-modelos-marca-fondo{ font-size:5.5rem; }
	.jf-modelos-carrusel{ padding:4px 40px 20px; }
	.jf-modelo-card{ width:164px; }
	.jf-modelo-info h3{ font-size:0.86rem; }
	.jf-modelo-marca{ font-size:0.6rem; }
	.jf-modelo-btn{ font-size:0.62rem; padding:10px 6px; }
	.jf-modelos-footer{ flex-direction:column; align-items:stretch; }
	.jf-modelos-feats{ flex-direction:row; flex-wrap:nowrap; justify-content:space-between; gap:4px; width:100%; }
	.jf-feat{ flex:1 1 0; flex-direction:column; align-items:center; text-align:center; gap:6px; border-right:none; padding:0 2px; }
	.jf-feat .txt{ font-size:0.62rem; }
	.jf-feat svg{ width:20px; height:20px; }
	.jf-modelos-cta{ width:100%; justify-content:center; }
}
