@media(min-width:901px){
.routes .route-grid{gap:18px}
.routes .route-grid .rcard{aspect-ratio:auto;min-height:340px}
.routes .route-count-4{grid-template-columns:44fr 56fr;grid-template-rows:repeat(3,minmax(195px,auto))}
.routes .route-count-4 .rcard{min-height:195px}
.routes .route-count-4 .rcard:first-child{grid-row:span 3}
.routes .route-count-4 .rcard:first-child h3{font-size:clamp(27px,2.5vw,36px);line-height:1.1}
.routes .route-count-4 .rcard:not(:first-child) .bg{right:60%}
.routes .route-count-4 .rcard:not(:first-child)::after{display:none}
.routes .route-count-4 .rcard:not(:first-child) .rcard-inner{margin-left:40%;width:60%;padding:18px 20px;align-self:center}
.routes .route-count-4 .rcard:not(:first-child) h3{font-size:22px;line-height:1.12}
.routes .route-count-4 .rcard:not(:first-child) .runs{font-size:10px;margin-top:9px}
.routes .route-count-4 .rcard:not(:first-child) .season-tag{font-size:11px;margin-top:9px}
.routes .route-count-3{grid-template-columns:1.35fr 1fr 1fr}
.routes .route-count-1{grid-template-columns:1fr}
.routes .route-count-1 .rcard{min-height:320px}
.routes .route-count-1 .rcard-inner{max-width:640px;padding:32px}
.routes .route-count-1 h3{font-size:34px;line-height:1.1}
.routes .route-count-1 .bg{background-position:center 45%}
}
@media(min-width:601px) and (max-width:900px){.routes .route-count-1{grid-template-columns:1fr}.routes .route-count-1 .rcard{aspect-ratio:2/1}}

/* Homepage card correction: descriptors remain text, never badges. */
.routes .rcard .runs{background:none;padding:0;border:0;border-radius:0;box-shadow:none}
.routes .rcard .meta{flex-wrap:wrap;row-gap:5px}
.routes .rcard .card-note{font-family:var(--body);font-size:12px;line-height:1.5;font-weight:400;letter-spacing:0;color:var(--paper);margin:8px 0 0;max-width:52ch}
.routes .rcard .route-preparation{display:block;margin:0 0 12px}
.routes .rcard.in-preparation{scroll-margin-top:110px}
