/* ==========================================================================
   Car Fleet Shortcode — rejilla [la_flota] + paginación
   Variables: --cfs-cols, --cfs-accent (en .cfs-wrap)
   ========================================================================== */

.cfs-wrap{ margin:36px 0; }

.cfs-flota{
	display:grid;
	grid-template-columns:repeat(var(--cfs-cols,3),minmax(0,1fr));
	gap:28px;
}
@media (max-width:900px){ .cfs-flota{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; } }
@media (max-width:560px){ .cfs-flota{ grid-template-columns:1fr; } }

/* ---- Tarjeta ---- */
.cfs-card{
	background:#fff;
	border-radius:18px;
	overflow:hidden;
	box-shadow:0 6px 24px rgba(15,23,42,.08);
	border:1px solid rgba(15,23,42,.06);
	transition:transform .35s ease, box-shadow .35s ease;
}
.cfs-card:hover{ transform:translateY(-6px); box-shadow:0 18px 44px rgba(15,23,42,.16); }

.cfs-card__link,
.cfs-card__link:hover,
.cfs-card__link:focus{ display:flex; flex-direction:column; height:100%; text-decoration:none !important; color:inherit; }
.cfs-card__title, .cfs-card__excerpt{ text-decoration:none !important; }

.cfs-card__media{ position:relative; aspect-ratio:16/10; overflow:hidden; background:#eef2f7; }
.cfs-card__media img{ width:100%; height:100%; object-fit:cover; display:block; transition:transform .6s ease; }
.cfs-card:hover .cfs-card__media img{ transform:scale(1.06); }
.cfs-card__noimg{ position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#94a3b8; font-size:14px; }

.cfs-card__body{ padding:20px 22px 24px; display:flex; flex-direction:column; gap:10px; flex:1; }
.cfs-card__title{ margin:0; font-size:20px; line-height:1.25; font-weight:700; color:#0f172a; }
.cfs-card__excerpt{
	margin:0; color:#475569; font-size:14.5px; line-height:1.6;
	display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden;
}
.cfs-card__cta{
	margin-top:auto; display:inline-flex; align-items:center; gap:8px;
	font-weight:600; font-size:14px; color:var(--cfs-accent,#0ea5e9); padding-top:8px;
}
.cfs-card__cta svg{ width:16px; height:16px; transition:transform .3s ease; }
.cfs-card:hover .cfs-card__cta{ text-decoration:underline; }
.cfs-card:hover .cfs-card__cta svg{ transform:translateX(5px); }

.cfs-empty{ color:#64748b; font-size:15px; padding:24px 0; }

/* ---- Paginación elegante ---- */
.cfs-pagination{ display:flex; justify-content:center; margin:42px 0 6px; }
.cfs-pagination ul,
.cfs-pagination ul.page-numbers{
	display:flex; gap:8px; list-style:none; margin:0; padding:0; flex-wrap:wrap;
	border:none !important; background:none !important; box-shadow:none !important; border-radius:0 !important;
}
.cfs-pagination li{ margin:0; border:none; background:none; }
.cfs-pagination li > .page-numbers{
	display:inline-flex; align-items:center; justify-content:center;
	min-width:44px; height:44px; padding:0 14px;
	border-radius:12px; border:1px solid rgba(15,23,42,.10);
	background:#fff; color:#0f172a; text-decoration:none;
	font-weight:600; font-size:14px; line-height:1;
	transition:border-color .2s ease, color .2s ease, background .2s ease, transform .2s ease;
}
.cfs-pagination li > a.page-numbers:hover{
	border-color:var(--cfs-accent,#0ea5e9); color:var(--cfs-accent,#0ea5e9); transform:translateY(-2px);
}
.cfs-pagination li > .page-numbers.current{
	background:var(--cfs-accent,#0ea5e9); border-color:var(--cfs-accent,#0ea5e9); color:#fff;
}
.cfs-pagination li > .page-numbers.dots{ border:none; background:transparent; min-width:auto; padding:0 4px; }
.cfs-pagination .prev, .cfs-pagination .next{ font-size:20px; }
