/* Keep the reference site's KPI typography, including on small screens. */
.route-kpis dt{font-size:.78rem;font-weight:650}
.route-kpis dd{font-size:clamp(1.25rem,1.8vw,1.62rem);font-weight:700;letter-spacing:-.025em}
.route-kpis small{font-size:.72rem}
.route-kpis>div{min-width:0}
.route-next-day{position:relative;top:-.15em;margin-left:.3em;color:#7c899b;font-size:.52em;line-height:1;white-space:nowrap;font-weight:400}
.routes-table-v8 .route-cell--price>strong{white-space:nowrap}
.routes-table-v8 .comfort-list{flex-wrap:wrap;gap:5px;max-width:108px}
.routes-table-v8 .comfort-list .table-icon-chip{flex:none;width:28px;height:28px;padding:0;border-radius:8px}
.routes-table-v8 .comfort-list .icon{width:16px;height:16px}
.routes-table-v8 .route-row-cta{width:40px;min-width:40px;height:40px;padding:0}
.routes-table-v8 .table-icon-chip:after{display:none}
.routes-table-v8 .table-icon-chip:hover:after,.routes-table-v8 .table-icon-chip:focus-visible:after{display:block}
.route-filter select,.route-comfort-picker>summary{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%232d4668' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:16px;padding-right:38px}
.route-comfort-picker>summary:after{content:none}
@media(min-width:901px){
 .routes-table-v8 table{table-layout:fixed;min-width:0}
 .routes-table-v8 thead th:nth-child(1),.routes-table-v8 thead th:nth-child(2){width:21%}
 .routes-table-v8 thead th:nth-child(3){width:9%}
 .routes-table-v8 thead th:nth-child(4){width:11%}
 .routes-table-v8 thead th:nth-child(5){width:13%}
 .routes-table-v8 thead th:nth-child(6){width:7%}
 .routes-table-v8 thead th:nth-child(7){width:12%}
 .routes-table-v8 thead th:nth-child(8){width:6%}
 .routes-table-v8 td,.routes-table-v8 thead th{padding-left:9px;padding-right:9px;overflow-wrap:anywhere}
 .routes-table-v8 .route-sort{flex-wrap:wrap;justify-content:flex-start}
 .routes-table-v8 .route-sort span{white-space:nowrap}
}
@media(max-width:900px){
 .routes-table-v8 .route-cell--action{justify-content:flex-end}
 .routes-table-v8 .route-row-cta{width:44px;min-width:44px;height:44px}
 .routes-table-v8 .comfort-list{max-width:none}
}
@media(max-width:380px){.route-kpis>div{grid-template-columns:1fr;gap:0}.route-kpis dd{margin-top:4px}}
@media(max-width:600px){
 .routes-table-v8 .route-cell--departure{grid-column:1/7;grid-row:1}
 .routes-table-v8 .route-cell--arrival{grid-column:7/13;grid-row:1}
 .routes-table-v8 .route-cell--duration{grid-column:1/-1;grid-row:2}
}
@media(max-width:480px){
 .routes-table-v8 .route-cell--ticket{grid-column:1/6}
 .routes-table-v8 .route-cell--comfort{grid-column:6/13;flex-wrap:wrap}
}
@media(max-width:900px){
 .transport-table{overflow:visible}
 .transport-table table,.transport-table tbody,.transport-table tr,.transport-table tbody th,.transport-table td{display:block;width:100%;min-width:0}
 .transport-table thead{display:none}
 .transport-table tbody{display:grid;gap:12px}
 .transport-table tr{padding:16px;border:1px solid var(--line);border-radius:14px;background:#fff}
 .transport-table tbody th,.transport-table td{padding:6px 0;border:0;background:transparent!important;overflow-wrap:anywhere}
 .transport-table tbody th{font-size:.95rem}
 .transport-table td::before{display:block;margin-bottom:3px;color:var(--muted);font-size:.75rem;font-weight:650}
 .transport-table td:nth-child(2)::before{content:"В пути"}
 .transport-table td:nth-child(3)::before{content:"Стоимость"}
 .transport-table td:nth-child(4)::before{content:"Что проверить"}
}
