/* ==============================
   JMF FILTER CARD
============================== */

.jmf-filter-module{
background:#A2E1EA;
padding:20px;
border-radius:14px;
box-shadow:0 4px 14px rgba(0,0,0,0.08);
margin-bottom:30px;

}


/* GRID LAYOUT (desktop) */

.jmf-filter-module{
display:grid;
grid-template-columns:
1fr
1fr
1fr
1fr
auto;
gap:14px;
align-items:end;
}


/* LABEL */

.jmf-filter-group label{
font-size:14px;
font-weight:600;
margin-bottom:6px;
display:block;

}

/* INPUT + SELECT */
.jmf-filter-group select,
.jmf-filter-group input{
height:42px;
border-radius:8px;
border:1px solid #ddd;
padding:0 10px;
font-size:14px;
background:#fff;

}


/* CLEAR BUTTON */
.jmf-filter-actions a{
background:#F7941D;
color:#fff;
padding:10px 18px;
border-radius:8px;
text-decoration:none;
display:inline-block;
}

.jmf-filter-actions a:hover{
opacity:.9;
}



/* MOBILE */


@media (max-width:800px){
.jmf-filter-module{
grid-template-columns:1fr;
}
}


/* TRACK GRID – 3 korttia rinnakkain */
.jmf-tracks-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 30px;
}

.track-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:30px;
max-width:1200px;
margin:0 auto;

}
/* TABLET */
@media (max-width:900px){
.track-grid{
grid-template-columns:repeat(2,1fr);
}
}

/* MOBILE */
@media (max-width:600px){
.track-grid{
grid-template-columns:1fr;
}
}

/* FILTER TITLE */
.card-header{
font-size:22px;
font-weight:700;
padding-bottom:10px;
margin-bottom:20px;
border-bottom:3px solid #F7941D;
background:none;
}


/* =========================
   TRACK GRID
========================= */

.track-grid{
display:grid;
grid-template-columns:repeat(auto-fill,minmax(260px,300px));
gap:20px;
justify-content:center;
max-width:1200px;
margin:0 auto;
padding:20px 10px;
}

@media (max-width:1024px){
.track-grid{
grid-template-columns:repeat(2,1fr);
}
}

@media (max-width:640px){
.track-grid{
grid-template-columns:1fr;
}
}

/* TRACK GRID */

.track-grid{

display:grid;

grid-template-columns:repeat(3,1fr);

gap:30px;

max-width:1200px;

margin:0 auto;

padding:20px 10px;

}


/* TABLET */

@media (max-width:1024px){

.track-grid{

grid-template-columns:repeat(2,1fr);

}

}


/* MOBILE */

@media (max-width:640px){

.track-grid{

grid-template-columns:1fr;

}

}


