.qfpc-grid{
display:grid;
grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
gap:40px;
}

.columns-2{
grid-template-columns:repeat(2,1fr);
}

.columns-3{
grid-template-columns:repeat(3,1fr);
}

.columns-4{
grid-template-columns:repeat(4,1fr);
}

.qfpc-slider{
display:flex;
overflow-x:auto;
scroll-snap-type:x mandatory;
gap:30px;
}

.qfpc-slider .qfpc-card{
min-width:320px;
scroll-snap-align:start;
}


/* carte */

.qfpc-card{
display:block;
text-decoration:none;
color:inherit;
background:#fff;

box-shadow:0 6px 18px rgba(0,0,0,0.12);
transition:all .25s ease;
}


/* hover */

.qfpc-card:hover{
transform:translateY(-4px);
box-shadow:0 14px 32px rgba(0,0,0,0.18);
}


/* bloc image */

.qfpc-image{
background:#ffffff;
padding:10px;
border-bottom:1px solid #eee;
}

.qfpc-image img{
width:100%;
height:320px;
object-fit:cover;
display:block;
}


/* cartouche */

.qfpc-content{
background:#ffffff;
text-align:center;
padding:18px 20px;
}

.qfpc-content h2{
text-transform:none;
}


/* titre */
/* on laisse le thème gérer la typo */

.qfpc-content h2{
margin:0;
}


/* sous titre */

.qfpc-subtitle{
font-size:13px;
color:#777;
margin-top:6px;
}