/* Shared component repairs, loaded after the legacy stylesheet. */
body.route-page .tc-menu-extra{display:none!important}
body.route-page .tc-route-hero{min-height:0!important;height:auto!important;padding:0!important;overflow:visible!important}
body.route-page .tc-route-hero .m6-hero-inner{display:block!important;padding:16px 4.5vw!important;max-width:1280px!important;margin:auto!important}
body.route-page .tc-route-identity{display:flex!important;align-items:center!important;gap:14px!important;min-width:0!important}
body.route-page .tc-route-identity .m6-badge{display:grid!important;place-items:center!important;flex:0 0 68px!important;width:68px!important;height:68px!important;min-width:0!important;margin:0!important;border-radius:10px!important;font-size:var(--tc-badge-size,30px)!important;line-height:1!important}
body.route-page .tc-route-identity>div:last-child{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:9px 12px!important;min-width:0!important}
body.route-page .tc-route-identity h1{font-size:36px!important;line-height:1.15!important;letter-spacing:-.6px!important;margin:0!important;white-space:normal!important}
body.route-page .tc-route-identity .live-pill{margin:0!important;padding:5px 8px!important;font-size:11px!important;line-height:16px!important;white-space:nowrap!important}
body.route-page .tc-route-hero .m6-subtitle{margin:10px 0 0!important;font-size:14px!important;line-height:1.5!important;max-width:72ch!important}
body.route-page .tc-route-hero .m6-live-summary{margin:7px 0 0!important;font-size:13px!important;line-height:1.5!important;font-weight:600!important;max-width:70ch!important}
body.route-page .tc-route-hero .m6-hero-facts{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:12px 0 0!important}
body.route-page .m6-summary-strip{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:12px 0!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article{display:grid!important;grid-template-columns:56px minmax(0,1fr)!important;align-items:center!important;gap:12px!important;padding:14px!important;min-height:108px!important;border:1px solid #cbd9e5!important;border-radius:10px!important;background:#fff!important;box-shadow:0 2px 7px #24445f0b!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article>div:last-child{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:4px!important;min-width:0!important;grid-template-rows:none!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article :is(small,strong,span){height:auto!important;min-height:0!important;max-width:100%!important;margin:0!important;white-space:normal!important;overflow-wrap:break-word!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article small{font-size:12px!important;line-height:1.35!important;color:#5b7185!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article strong{font-size:23px!important;line-height:1.15!important;color:#29475f!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article span{font-size:11px!important;line-height:1.4!important;color:#6c8091!important}
body.route-page :is(.m6-summary-strip,.section-live-strip)>article .summary-icon,
body.route-page .home-summary-strip-photo .summary-icon{display:grid!important;place-items:center!important;width:56px!important;height:56px!important;min-width:56px!important;flex:0 0 56px!important;align-self:center!important;margin:0!important;font-size:36px!important;line-height:1!important;border-radius:50%!important}
body.route-page .m6-summary-strip>article:last-child{grid-column:span 2!important;grid-template-columns:56px minmax(0,1fr)!important;min-height:108px!important;padding:14px!important}
body.route-page .m6-summary-strip>article:last-child>div:last-child{display:flex!important;gap:4px!important;grid-template-columns:none!important}
body.route-page .m6-summary-strip>article:last-child strong{font-size:22px!important}
body.route-page .direction-tabs.direction-wide{display:flex!important;flex-wrap:nowrap!important;gap:7px!important;overflow-x:auto!important;max-width:100%!important;padding:0 0 7px!important;scrollbar-width:thin!important}
body.route-page .direction-tabs.direction-wide button{display:inline-flex!important;flex:0 0 auto!important;align-items:center!important;justify-content:center!important;gap:5px!important;white-space:nowrap!important;width:auto!important;min-width:0!important;min-height:40px!important;padding:10px 12px!important;font-size:13px!important;line-height:18px!important;border:1px solid #b9cddd!important;border-radius:7px!important}
body.route-page .direction-tabs.direction-wide button span{font-size:11px!important;white-space:nowrap!important}
/* Full outlines and clear card headers replace the repeated coloured left stripe. */
body.route-page .home-results>.card,
body.route-page .home-results .affected-section,
body.route-page .approved-list .route-row,
body.route-page .approved-list a.route-row-link{border:1.5px solid #ccd9e5!important;border-left-width:1.5px!important;border-radius:10px!important;background:#fff!important;box-shadow:0 2px 6px #28455f0a!important;padding:14px!important;margin:0 0 14px!important;min-height:0!important}
body.route-page :is(.home-results .card,.home-results .affected-section,.approved-list .route-row).tc-report--congestion{background:#f5f9fe!important;border-color:#bbd2e7!important}
body.route-page :is(.home-results .card,.home-results .affected-section,.approved-list .route-row).tc-report--closure{background:#fff6f7!important;border-color:#e4b5bf!important}
body.route-page :is(.home-results .card,.home-results .affected-section,.approved-list .route-row).tc-report--incident{background:#fffaf6!important;border-color:#e2ccb7!important}
body.route-page :is(.home-results .card,.home-results .affected-section,.approved-list .route-row).tc-report--works{background:#fff!important;border-color:#c6d6e3!important}
.tc-report-top{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important;margin:0 0 10px!important}
.tc-report-symbol,.tc-junction-mark{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;border-radius:9px;background:#e8f1fa;color:#276391}
.tc-report-symbol svg,.tc-junction-mark svg{width:25px;height:25px}
.tc-report--works .tc-report-symbol{background:#fff0d4;color:#95611d}
.tc-report--closure .tc-report-symbol{background:#ffe4e8;color:#b62e46}
.tc-report--incident .tc-report-symbol{background:#ffecd9;color:#a05d28}
.tc-report-label{display:inline-flex;padding:4px 8px;border-radius:5px;background:#e7eff7;color:#385e7d;font-size:11px!important;font-weight:750!important;line-height:16px!important;letter-spacing:.15px}
.tc-report--closure .tc-report-label{background:#fbe0e6;color:#9e2c43}
.tc-report--works .tc-report-label{background:#f9eedc;color:#886128}
.tc-report-delay{margin-left:auto;padding:4px 8px;border:1px solid #d0dde7;border-radius:5px;background:#fff;color:#4d6579;font-size:12px;line-height:16px;font-weight:700;white-space:nowrap}
body.route-page .home-results .card h3{margin:0 0 9px!important;font-size:16px!important;line-height:1.45!important;color:#385269!important}
body.route-page .home-results .card p.tc-report-detail{margin:5px 0!important;font-size:13px!important;line-height:1.55!important;color:#526e83!important}
.tc-report-dates{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;margin:11px 0 0;padding:10px 0 0;border-top:1px solid #dce5ed}
.tc-report-dates>div{min-width:0}
.tc-report-dates dt{font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.5px;color:#708598;margin:0 0 4px}
.tc-report-dates dd{font-size:12px;line-height:1.45;color:#445f75;margin:0;overflow-wrap:anywhere}
.tc-report-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;margin-top:12px;padding-top:10px;border-top:1px solid #dae4ed}
.tc-report-footer small{font-size:11px;line-height:1.45;color:#728597}
body.route-page .home-results .tc-report-footer button,
.tc-small-action,.tc-report-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-height:32px!important;padding:6px 10px!important;border:1px solid #a9c3d9!important;border-radius:6px!important;background:#edf5fc!important;color:#245d88!important;font-size:12px!important;line-height:18px!important;font-weight:700!important;white-space:nowrap!important;text-decoration:none!important;box-shadow:none!important}
body.route-page .home-results .affected-section{margin-top:10px!important}
body.route-page .home-results>.card>.card-top{border:0!important;padding:0!important;margin:0!important}
body.route-page .approved-list .route-row{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important;gap:10px!important;align-items:start!important}
body.route-page .approved-list .route-row-icon{display:grid!important;place-items:center!important;width:36px!important;height:36px!important;min-width:36px!important;grid-column:1!important;grid-row:1!important;border-radius:9px!important;align-self:start!important;padding:0!important}
body.route-page .approved-list .route-row-icon svg{width:25px!important;height:25px!important}
body.route-page .approved-list .route-row-body{grid-column:2!important;grid-row:1!important;min-width:0!important}
body.route-page .approved-list .route-row-title{display:block!important;font-size:15px!important;line-height:1.45!important;margin:6px 0!important}
body.route-page .approved-list .route-row-body p{font-size:13px!important;line-height:1.5!important;margin:4px 0!important}
body.route-page .approved-list .route-row-side{grid-column:1/-1!important;grid-row:2!important;display:flex!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;gap:7px!important;width:100%!important;min-width:0!important;max-width:100%!important;padding:9px 0 0!important;margin:0!important;border-top:1px solid #dae4ed!important;text-align:left!important}
body.route-page .approved-list .route-row-side span{display:inline-flex!important;align-items:center!important;line-height:18px!important;padding:4px 8px!important;margin:0!important;font-size:11px!important;background:#e8f0f7!important;border-radius:5px!important;white-space:nowrap!important}
body.route-page .approved-list .route-row-side>b{margin-left:auto!important}
body.route-page .m6-stack-card{padding:14px!important;border:1px solid #c8d9e7!important;border-radius:12px!important;background:#edf3f8!important}
body.route-page .m6-stack-card .approved-head{padding:0 0 11px!important;border-bottom:1px solid #c5d5e3!important;margin-bottom:12px!important}
body.route-page .m6-stack-card .approved-head h2{font-size:19px!important}
body.route-page .m6-info-card,
body.route-page .m6-feature-card{border:1px solid #c7d8e7!important;border-left-width:1px!important;border-radius:12px!important;padding:18px!important;background:#fff!important;box-shadow:0 2px 7px #28455f0a!important}
body.route-page :is(.m6-info-card,.m6-feature-card)>h2,
body.route-page .m6-feature-card h2{font-size:20px!important;line-height:1.3!important;margin-bottom:12px!important}
body.route-page .route-detail-card{background:#f5f9fd!important}
body.route-page .traffic-pattern-card{background:#f0f7f8!important;border-color:#bcd6da!important}
body.route-page .upcoming-card{background:#fffaf2!important;border-color:#dfd2bc!important}
body.route-page .archive-card{background:#f3f6fd!important;border-color:#c8d3e8!important}
body.route-page .route-detail-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
body.route-page .route-detail-grid>div{min-width:0!important;padding:12px!important;border:1px solid #cfdeea!important;border-radius:8px!important;background:#fff!important}
body.route-page .route-detail-grid small{display:block!important;font-size:10px!important;line-height:1.4!important;color:#6e8496!important;letter-spacing:.4px!important;margin-bottom:7px!important}
body.route-page .route-detail-grid strong{font-size:15px!important;line-height:1.45!important;color:#385269!important;overflow-wrap:anywhere!important}
.tc-direction-stat{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 14px;padding:13px;margin:9px 0;border:1px solid #b7d1d7;border-radius:9px;background:#fff}
.tc-direction-stat>span{font-size:14px;font-weight:750;color:#375e6c}
.tc-direction-stat>strong{font-size:25px;color:#254d5c;line-height:1.1}
.tc-direction-stat>strong small{font-size:11px;font-weight:600;margin-left:5px;color:#6d8490}
.tc-direction-stat>em{grid-column:1/-1;font-size:12px;font-style:normal;color:#617f8c;padding-top:8px;border-top:1px solid #dce9ec}
.tc-empty-state{display:flex;align-items:flex-start;gap:11px;padding:13px;border:1px dashed #c5d5e0;border-radius:8px;background:#fff;color:#5a7488;font-size:13px;line-height:1.6}
.tc-empty-state svg{flex:0 0 23px;width:23px;height:23px;color:#8198aa;margin-top:2px}
body.route-page .feature-link{display:inline-flex!important;align-items:center!important;min-height:36px!important;padding:8px 11px!important;border:1px solid #adc5d9!important;border-radius:6px!important;background:#fff!important;font-size:13px!important;line-height:18px!important;font-weight:700!important;color:#2e638b!important;text-decoration:none!important;margin-top:12px!important}
body.route-page .tc-junction-card{display:block!important;min-width:0!important;text-decoration:none!important;border:0!important;background:none!important;box-shadow:none!important;padding:0!important}
body.route-page .tc-junction-card article{display:grid!important;grid-template-columns:40px minmax(0,1fr)!important;align-items:center!important;gap:7px 10px!important;padding:13px!important;border:1px solid #b4cde4!important;border-radius:9px!important;background:#f5f9fe!important;box-shadow:0 2px 5px #28455f0a!important;text-align:left!important;position:relative!important;min-height:0!important}
body.route-page .tc-junction-card article:after{content:none!important}
body.route-page .tc-junction-card .tc-junction-mark{grid-column:1!important;grid-row:1/3!important;width:40px!important;height:40px!important;background:#176ab1!important;color:#fff!important}
body.route-page .tc-junction-card article strong{grid-column:2!important;margin:0!important;font-size:18px!important;color:#365975!important}
body.route-page .tc-junction-card article>span:not(.tc-junction-mark){grid-column:2!important;font-size:12px!important;line-height:1.4!important;margin:0!important;color:#627d92!important}
body.route-page .tc-junction-card article em{grid-column:1/-1!important;margin:4px 0 0!important;font-size:12px!important;font-weight:700!important;font-style:normal!important;color:#31668f!important;padding-top:8px!important;border-top:1px solid #d2e0ee!important}
body.route-page .m6-bottom-grid .connecting-list>a,
body.route-page .m6-bottom-grid .travel-list>a{padding:12px!important;border:1px solid #c6d9e8!important;border-radius:8px!important;background:#f5f9fd!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:none!important;gap:8px!important;min-height:0!important}
body.route-page .m6-bottom-grid :is(.connecting-list,.travel-list)>a>*{grid-column:auto!important;grid-row:auto!important;margin:0!important}
body.route-page .m6-bottom-grid .connecting-list>a>b{justify-self:start!important;min-width:48px!important;font-size:15px!important}
body.route-page .m6-bottom-grid :is(.connecting-list,.travel-list)>a .tc-small-action{justify-self:start!important}
body.route-page .m6-faq details{margin:9px 0!important;border:1px solid #c6d7e6!important;border-radius:9px!important;background:#fff!important;overflow:hidden!important}
body.route-page .m6-faq details>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:48px!important;padding:13px!important;margin:0!important;border:0!important;list-style:none!important;font-size:14px!important;line-height:1.45!important;font-weight:700!important;color:#385269!important;background:#f7fafd!important}
body.route-page .m6-faq summary:before{content:none!important}
body.route-page .m6-faq summary::-webkit-details-marker{display:none!important}
body.route-page .m6-faq summary:after{content:'+'!important;display:grid!important;place-items:center!important;flex:0 0 24px!important;width:24px!important;height:24px!important;border:1px solid #c0d3e4!important;border-radius:50%!important;color:#39709a!important;font-size:20px!important;line-height:1!important;position:static!important;background:#fff!important}
body.route-page .m6-faq details[open]>summary:after{content:'−'!important}
body.route-page .m6-faq details p{padding:0 13px 13px!important;margin:10px 0 0!important;font-size:13px!important;line-height:1.65!important;color:#597286!important}
body.route-page .m6-services-strip>p{font-size:13px!important;line-height:1.65!important;color:#647d90!important;max-width:72ch!important;margin:10px 0 14px!important}
body.route-page .m6-services-strip .m6-service-card span{font-size:12px!important;line-height:1.5!important}
/* Compact map popups have a short list, not a large zoom call to action. */
#map .maplibregl-popup-content,#map .leaflet-popup-content-wrapper{border-radius:9px!important;max-width:244px!important;box-shadow:0 4px 16px #213e5830!important}
#map .maplibregl-popup-content{width:230px!important;max-height:260px!important;padding:11px!important;border:1px solid #bed0df!important}
#map .tc-map-cluster-popup>strong,#map .tc-map-popup-head strong{font-size:13px!important;line-height:1.4!important;padding-right:20px!important}
#map .tc-map-cluster-list{max-height:170px!important;overflow:auto!important}
#map .tc-map-cluster-item{font-size:12px!important;line-height:1.45!important;padding:8px!important;margin-top:6px!important;min-height:0!important;max-height:none!important}
#map .tc-map-cluster-item b{font-size:12px!important;line-height:1.45!important;font-weight:650!important}
#map .tc-cluster-zoom{display:none!important}
#map .tc-map-popup p,#map .tc-map-popup-details{font-size:12px!important;line-height:1.5!important}
#map .tc-popup-link{display:inline-flex!important;font-size:12px!important;padding:6px 8px!important;border:1px solid #bbd0e0!important;border-radius:5px!important;background:#edf5fb!important;color:#32678e!important;text-decoration:none!important}
body.route-page footer.tc-footer{display:grid!important;grid-template-columns:1.2fr 1fr 1fr .8fr!important;align-items:start!important;gap:24px!important;clear:both!important}
body.route-page footer.tc-footer>nav{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;margin:0!important;min-width:0!important}
.tc-info-shell{max-width:1000px;margin:auto;padding:32px 4.5vw}
.tc-info-card{padding:22px;margin:16px 0;border:1px solid #c6d8e6;border-radius:12px;background:#fff;color:#45657d}
.tc-info-card h2{font-size:22px;margin:0 0 12px;color:#36566e}
.tc-info-card p,.tc-info-card li{font-size:15px;line-height:1.65}
.tc-contact-link{display:inline-flex;align-items:center;min-height:42px;padding:10px 14px;border:1px solid #adc7dd;border-radius:7px;background:#edf5fc;color:#2e648e;font-weight:700;text-decoration:none}
@media(max-width:1000px){body.route-page .m6-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){
 body.route-page .tc-nav.menu-open .tc-nav-links{max-height:calc(100dvh - 74px)!important;overflow-y:auto!important;align-content:start!important;padding:12px 16px!important;gap:4px!important}
 body.route-page .tc-nav.menu-open .tc-nav-links>a{min-height:40px!important;height:auto!important;font-size:14px!important;padding:9px 10px!important}
 body.route-page .tc-nav.menu-open .tc-menu-extra{display:grid!important;grid-column:1/-1!important;grid-template-columns:1fr 1fr!important;gap:6px!important;margin:10px 0 0!important;padding-top:12px!important;border-top:1px solid #476179!important}
 body.route-page .tc-menu-extra strong{grid-column:1/-1!important;color:#a9c3d8!important;font-size:11px!important;text-transform:uppercase!important;letter-spacing:.8px!important;margin:6px 0!important}
 body.route-page .tc-nav.menu-open .tc-menu-extra a{height:auto!important;min-height:38px!important;padding:8px 10px!important;margin:0!important;border:1px solid #3b5972!important;border-radius:6px!important;font-size:13px!important;line-height:20px!important;background:#17344d!important;color:#e7eff6!important}
}
@media(max-width:700px){
 body.route-page .tc-route-hero .m6-hero-inner{padding:14px 16px!important}
 body.route-page .tc-route-identity{gap:11px!important;align-items:center!important}
 body.route-page .tc-route-identity .m6-badge{flex-basis:54px!important;width:54px!important;height:54px!important;font-size:var(--tc-badge-mobile,25px)!important}
 body.route-page .tc-route-identity h1{font-size:28px!important;line-height:1.15!important;letter-spacing:-.4px!important}
 body.route-page .tc-route-identity>div:last-child{display:block!important}
 body.route-page .tc-route-identity .live-pill{display:inline-flex!important;margin-top:6px!important;font-size:10px!important;padding:3px 7px!important}
 body.route-page .tc-route-hero .m6-subtitle{font-size:13px!important;line-height:1.55!important;margin-top:10px!important}
 body.route-page .tc-route-hero .m6-live-summary{font-size:12px!important;line-height:1.55!important;margin-top:7px!important}
 body.route-page .m6-summary-strip{gap:9px!important;margin-top:10px!important}
 body.route-page :is(.m6-summary-strip,.section-live-strip)>article{grid-template-columns:56px minmax(0,1fr)!important;gap:9px!important;padding:12px!important;min-height:112px!important;align-items:center!important}
 body.route-page :is(.m6-summary-strip,.section-live-strip)>article strong{font-size:21px!important;line-height:1.2!important}
 body.route-page .m6-summary-strip>article:last-child{grid-column:1/-1!important;padding:12px!important;min-height:90px!important}
 body.route-page .m6-summary-strip>article:last-child strong{font-size:21px!important}
 body.route-page .direction-tabs.direction-wide button{padding:9px 11px!important;font-size:12px!important;min-height:38px!important}
 body.route-page .direction-tabs.direction-wide button span{display:none!important}
 body.route-page .m6-main-grid{gap:14px!important}
 body.route-page .m6-stack-card{padding:12px!important}
 body.route-page .m6-right .approved-list{max-height:none!important;overflow:visible!important}
 body.route-page .m6-feature-grid{grid-template-columns:minmax(0,1fr)!important;gap:13px!important}
 body.route-page .route-detail-grid{gap:8px!important}
 body.route-page .route-detail-grid>div{padding:10px!important}
 body.route-page .route-detail-grid strong{font-size:14px!important}
 body.route-page .m6-feature-card,.m6-info-card{padding:15px!important}
 body.route-page .approved-junctions{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}
 body.route-page .tc-junction-card article{padding:10px!important;grid-template-columns:34px minmax(0,1fr)!important;gap:6px 8px!important}
 body.route-page .tc-junction-card .tc-junction-mark{width:34px!important;height:36px!important}
 body.route-page .tc-junction-card article strong{font-size:16px!important}
 body.route-page .m6-services-strip>p{font-size:12px!important;line-height:1.6!important}
 body.route-page footer.tc-footer{grid-template-columns:minmax(0,1fr)!important;gap:0!important;padding:23px 18px!important;width:100%!important;margin-top:24px!important}
 body.route-page footer.tc-footer>.tc-footer-brand{padding:0 0 18px!important;width:100%!important}
 body.route-page footer.tc-footer>nav{width:100%!important;padding:17px 0!important;border-top:1px solid #3a536a!important;margin:0!important;gap:8px!important}
 body.route-page footer.tc-footer nav a{font-size:14px!important;line-height:22px!important}
 body.route-page footer.tc-footer nav strong{font-size:14px!important;margin:0 0 5px!important}
 .tc-info-shell{padding:20px 16px}.tc-info-card{padding:16px}
}
@media(max-width:370px){body.route-page :is(.m6-summary-strip,.section-live-strip)>article{grid-template-columns:46px minmax(0,1fr)!important;padding:10px!important;gap:7px!important}body.route-page :is(.m6-summary-strip,.section-live-strip)>article .summary-icon{width:46px!important;min-width:46px!important;height:50px!important;font-size:34px!important}}

.tc-direction-stat>p{grid-column:1/-1;margin:0;font-size:12px;padding-top:8px;border-top:1px solid #dce9ec;color:#617f8c}
body.route-page .upcoming-work-row{border:1px solid #d8c9b0!important;border-radius:8px!important;padding:12px!important;margin:10px 0!important;background:#fff!important;gap:10px!important}
body.route-page .approved-list .route-row-side small{font-size:10px!important;line-height:1.5!important;color:#73889a!important}
body.route-page .tc-report-extra summary{font-size:12px;font-weight:700;cursor:pointer;padding:7px 0}
body.route-page .m6-left,body.route-page .m6-right,body.route-page .m6-main-grid>*{min-width:0!important}
body.route-page .tc-route-hero .m6-hero-inner{position:relative!important;inset:auto!important;transform:none!important;width:100%!important}
body.route-page .tc-route-identity .m6-badge{position:static!important;transform:none!important;inset:auto!important}
@media(max-width:600px){body.route-page .upcoming-work-row{display:flex!important;flex-direction:column!important;align-items:flex-start!important}body.route-page .upcoming-work-row>div:last-child{text-align:left!important}}
/* Explicit hidden states take precedence over the legacy component displays. */
body.route-page .direction-tabs.direction-wide button[hidden],body.route-page section[hidden]{display:none!important}
body.route-page .approved-list .route-row-icon{background:#e8f1fa!important;color:#276391!important}
body.route-page .approved-list .tc-report--works .route-row-icon{background:#fff0d4!important;color:#95611d!important}
body.route-page .approved-list .tc-report--closure .route-row-icon{background:#ffe4e8!important;color:#b62e46!important}
body.route-page .approved-list .tc-report--incident .route-row-icon{background:#ffecd9!important;color:#a05d28!important}
body.route-page #map .tc-cluster-popup-shell .maplibregl-popup-content{width:230px!important;min-width:0!important;max-width:244px!important;max-height:260px!important;padding:11px!important;overflow:auto!important;border-top:1px solid #bed0df!important}
body.route-page #map .tc-map-cluster-list{max-height:155px!important}
body.route-page #map .tc-map-cluster-item{font-size:12px!important;line-height:1.45!important}

body.route-page .tc-route-hero+.tc-global-search{padding-top:12px!important;padding-bottom:14px!important;margin-top:0!important}

body.route-page .home-results-meta{display:none!important}

body.route-page .tc-ticker-group{gap:20px!important;padding-right:20px!important;min-width:0!important;justify-content:flex-start!important}

body.route-page .tc-road-links{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:7px!important;padding:0!important;margin:0!important}
body.route-page .tc-road-links>span{font-size:12px!important;margin-right:3px!important;color:#657d90!important}
body.route-page .tc-road-links>a{display:inline-flex!important;align-items:center!important;justify-content:center!important;min-width:42px!important;min-height:32px!important;padding:6px 10px!important;border:1px solid #a8c6df!important;border-radius:6px!important;background:#edf5fc!important;color:#24628f!important;font-size:13px!important;line-height:18px!important;font-weight:750!important;text-decoration:none!important}
body.route-page .tc-road-links>a.tc-all-roads{background:#fff!important;font-size:12px!important;font-weight:600!important}

body.route-page .m6-summary-strip>.tc-feed-status-card{display:none!important}
@media(min-width:1001px){body.route-page .m6-summary-strip{grid-template-columns:repeat(3,minmax(0,1fr))!important}}

/* Small inline map credits replace the oversized information bubble. */
body.route-page #map .maplibregl-ctrl-attrib,
body.route-page #map .maplibregl-ctrl-attrib.maplibregl-compact,
body.route-page #map .maplibregl-ctrl-attrib:focus-within{width:auto!important;min-width:0!important;max-width:calc(100vw - 70px)!important;height:auto!important;min-height:0!important;padding:2px 5px!important;border:0!important;border-radius:2px!important;overflow:visible!important;background:#ffffffe6!important;box-shadow:none!important;font-size:10px!important;line-height:14px!important}
body.route-page #map .maplibregl-ctrl-attrib-button{display:none!important}
body.route-page #map .maplibregl-ctrl-attrib-inner{display:block!important;font-size:10px!important;line-height:14px!important}

body.route-page .tc-junction-card article{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
body.route-page .tc-junction-card article strong,body.route-page .tc-junction-card article>span:not(.tc-junction-mark){grid-column:1!important}
body.route-page .tc-junction-card .tc-junction-mark{display:none!important}
body.route-page .tc-junction-card article .tc-junction-action{display:inline-flex!important;align-items:center!important;justify-content:center!important;justify-self:start!important;grid-column:1!important;min-height:34px!important;margin:4px 0 0!important;padding:7px 12px!important;border:1px solid #a7c3db!important;border-radius:6px!important;background:#e7f1fa!important;color:#245f8d!important;font-size:12px!important;line-height:18px!important;font-style:normal!important;font-weight:750!important}

/* Route detail panels must contain long location descriptions. */
body.route-page .m6-bottom-grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr))!important;align-items:start!important;gap:14px!important}
body.route-page .m6-bottom-grid>article{min-width:0!important;max-width:100%!important;height:auto!important;box-sizing:border-box!important}
body.route-page .m6-bottom-grid>article[hidden]{display:none!important}
body.route-page .m6-bottom-grid :is(.travel-list,.connecting-list){display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important;min-width:0!important;max-width:100%!important}
body.route-page .m6-bottom-grid :is(.travel-list,.connecting-list)>a{display:grid!important;grid-template-columns:minmax(0,1fr)!important;width:100%!important;min-width:0!important;max-width:100%!important;box-sizing:border-box!important;white-space:normal!important;gap:9px!important;margin:0!important;overflow-wrap:anywhere!important}
body.route-page .m6-bottom-grid :is(.travel-list,.connecting-list)>a>span{display:block!important;min-width:0!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;font-size:13px!important;line-height:1.5!important}
body.route-page .m6-bottom-grid :is(.travel-list,.connecting-list)>a .tc-small-action{justify-self:start!important;width:auto!important;max-width:100%!important;margin:0!important}
/* Compact, coloured road summaries without equal-height empty panels. */
body.route-page .m6-feature-grid{align-items:start!important}
body.route-page .m6-feature-grid>.m6-feature-card{height:auto!important;min-height:0!important;align-self:start!important}
body.route-page .route-detail-card{background:#e5effb!important;border-color:#aac7e5!important}
body.route-page .route-detail-grid>div{padding:11px!important;background:#d8e8f9!important;border-color:#aecae5!important}
body.route-page .route-detail-grid>div:nth-child(4n+3),body.route-page .route-detail-grid>div:nth-child(4n+4){background:#e8eef8!important;border-color:#bfcee4!important}
body.route-page .route-detail-grid small{color:#536f8c!important}
body.route-page .route-detail-grid strong{color:#294e74!important}
body.route-page .traffic-pattern-card{background:#dfefed!important;border-color:#a5cac6!important}
body.route-page .traffic-pattern-card .tc-direction-stat{padding:11px 12px!important;background:#cbe5e2!important;border-color:#95bfb9!important}
body.route-page .traffic-pattern-card .tc-direction-stat>strong{color:#175e60!important}
body.route-page .traffic-pattern-card .tc-direction-stat>p{margin:0!important;padding:7px 0 0!important;border-top:1px solid #aaccc7!important;border-bottom:0!important;color:#3b686a!important}
body.route-page .m6-services-grid{align-items:stretch!important;grid-auto-rows:1fr!important}
body.route-page .m6-services-grid>.m6-service-card{grid-template-rows:minmax(0,1fr) auto!important;align-content:stretch!important;align-self:stretch!important;height:100%!important;box-sizing:border-box!important}
body.route-page .m6-services-grid>.m6-service-card:after{align-self:end!important;justify-self:start!important;margin-top:3px!important}
/* Keep the map key visible beneath the map on touch screens. */
body.route-page .m6-map-card>.map-event-legend{position:static!important;inset:auto!important;display:flex!important;flex-wrap:wrap!important;gap:8px 16px!important;max-width:100%!important;width:auto!important;margin:0!important;padding:10px 12px!important;box-sizing:border-box!important;border:0!important;border-top:1px solid #c6d7e5!important;border-radius:0 0 9px 9px!important;background:#edf4fa!important;box-shadow:none!important;z-index:auto!important}
body.route-page .map-event-legend>div{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:8px 14px!important;min-width:0!important}
body.route-page .map-event-legend strong{font-size:11px!important;line-height:18px!important}
body.route-page .map-event-legend span{font-size:11px!important;line-height:18px!important}
body.route-page .map-event-legend .legend-dot{flex:0 0 11px!important;width:11px!important;height:11px!important}

body.route-page .m6-map-card>details.map-event-legend{display:block!important}
body.route-page .map-event-legend>summary{cursor:pointer;font-size:12px!important;line-height:20px!important;font-weight:750!important;color:#365f80!important;padding:2px 0!important;min-height:28px!important}
body.route-page .map-event-legend:not([open])>.tc-map-key-items{display:none!important}
body.route-page .map-event-legend>.tc-map-key-items{display:flex!important;flex-wrap:wrap!important;gap:9px 16px!important;padding-top:7px!important}
body.route-page .tc-connection-name{padding:10px;border:1px solid #c6d9e8;border-radius:8px;background:#edf5fc;font-size:13px;font-weight:700;color:#406684}

body.route-page .tc-route-identity .m6-badge{padding:0!important;box-sizing:border-box!important;letter-spacing:-.6px!important;overflow:hidden!important}
body.route-page .tc-location-more{margin-top:16px!important}
body.route-page .tc-location-more>summary{display:inline-flex;align-items:center;min-height:40px;padding:9px 14px;border:1px solid #a8c5dd;border-radius:7px;background:#e5f0fa;color:#2d638d;font-size:14px;font-weight:750;cursor:pointer;list-style:none}
body.route-page .tc-location-more[open]>summary{margin-bottom:15px}

body.route-page .m6-faq .tc-faq-checked{font-size:11px!important;color:#70869a!important;margin:0 0 12px!important;padding:0!important}
body.route-page .m6-faq .tc-faq-answer{padding:2px 13px 13px!important}
body.route-page .m6-faq .tc-faq-answer p{padding:0!important;font-size:13px!important;line-height:1.6!important;margin:10px 0!important}
body.route-page .m6-faq .tc-faq-reports{display:grid!important;gap:8px!important;list-style:none!important;margin:10px 0!important;padding:0!important}
body.route-page .m6-faq .tc-faq-reports li{padding:10px!important;border:1px solid #c3d6e7!important;border-radius:7px!important;background:#edf5fc!important}
body.route-page .m6-faq .tc-faq-reports li strong{display:block!important;font-size:12px!important;line-height:1.5!important;color:#3a607f!important}
body.route-page .m6-faq .tc-faq-reports li span{display:block!important;font-size:11px!important;line-height:1.5!important;color:#648097!important;margin-top:5px!important}
/* Stack outer panels; use compact inner grids rather than leaving column-sized holes. */
body.route-page .m6-bottom-grid,body.route-page .m6-feature-grid{grid-template-columns:minmax(0,1fr)!important;gap:14px!important}
body.route-page .m6-bottom-grid .travel-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr))!important;align-items:stretch!important}
body.route-page .m6-bottom-grid .connecting-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr))!important;align-items:stretch!important}
body.route-page .m6-bottom-grid .connecting-list>a{grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;padding:10px!important;min-height:48px!important}
body.route-page .m6-bottom-grid .connecting-list>a>b{grid-column:1!important;grid-row:1!important;min-width:0!important;padding:6px 8px!important;font-size:14px!important;line-height:18px!important}
body.route-page .m6-bottom-grid .connecting-list>a>span{grid-column:2!important;grid-row:1!important;font-size:12px!important}
body.route-page .m6-bottom-grid .connecting-list>a>em{grid-column:3!important;grid-row:1!important;font-size:12px!important}
body.route-page .route-detail-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
body.route-page #route-direction-stats{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr))!important;gap:10px!important}
body.route-page .traffic-pattern-card .tc-direction-stat{margin:0!important}
body.route-page .approved-list .route-row-title{font-size:16px!important;line-height:1.5!important}
body.route-page .approved-list .route-row-body p,body.route-page .home-results .card p.tc-report-detail{font-size:14px!important;line-height:1.6!important}
body.route-page .home-results .card h3{font-size:17px!important;line-height:1.5!important}
body.route-page .approved-list .route-row-side small,body.route-page .tc-report-footer small{font-size:12px!important;line-height:1.5!important}
body.route-page .section-live-row strong{font-size:16px!important;line-height:1.5!important}
body.route-page .section-live-row p,body.route-page .m6-faq .tc-faq-answer p{font-size:14px!important;line-height:1.6!important}
@media(max-width:700px){body.route-page .route-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
/* Compact cards and actions without narrow implicit grid cells. Original button colours retained. */
body .tc-small-action,body .tc-report-action,body.route-page .tc-junction-card article .tc-junction-action,
body.route-page .home-results .tc-report-footer button{width:auto!important;max-width:100%!important;box-sizing:border-box!important;white-space:normal!important;overflow-wrap:anywhere!important;text-align:center!important;min-height:38px!important;padding:8px 12px!important;line-height:20px!important}
body :is(.tc-small-action,.tc-report-action,.tc-junction-card):focus-visible{outline:3px solid #e7a425!important;outline-offset:3px!important}
body.route-page .tc-junction-card article{grid-template-columns:minmax(0,1fr) auto!important;gap:5px 10px!important;padding:11px!important;align-items:center!important}
body.route-page .tc-junction-card article strong{grid-column:1!important;grid-row:1!important;font-size:17px!important;line-height:23px!important}
body.route-page .tc-junction-card article>span:not(.tc-junction-mark){grid-column:1!important;grid-row:2!important;line-height:18px!important}
body.route-page .tc-junction-card article .tc-junction-action{grid-column:2!important;grid-row:1/3!important;margin:0!important;font-size:12px!important}
body.route-page .approved-list .route-row>a.tc-small-action{grid-column:2/-1!important;grid-row:auto!important;justify-self:start!important;align-self:start!important;position:static!important;transform:none!important;margin:0!important;min-width:0!important}
body.route-page .m6-bottom-grid .connecting-list>a{gap:7px!important;padding:8px!important}
@media(max-width:400px){body.route-page .tc-junction-card article{gap:5px 7px!important;padding:10px!important}body.route-page .tc-junction-card article .tc-junction-action{padding:8px!important}}
/* Service cards: one aligned row on wider screens; a clear full-width action on phones. */
body.route-page .m6-services-grid{grid-auto-rows:auto!important}
body.route-page .m6-services-grid>.m6-service-card{grid-template-columns:36px minmax(0,1fr) auto!important;grid-template-rows:auto!important;gap:10px!important;align-items:center!important;padding:12px!important;height:auto!important}
body.route-page .m6-service-card .m6-service-logo{width:36px!important;height:36px!important;grid-row:1!important;align-self:center!important;font-size:14px!important}
body.route-page .m6-service-card>div:last-child{grid-column:2!important;grid-row:1!important;align-self:center!important}
body.route-page .m6-services-grid>.m6-service-card:after{grid-column:3!important;grid-row:1!important;align-self:center!important;justify-self:end!important;margin:0!important;white-space:normal!important;text-align:center!important;box-sizing:border-box!important}
@media(max-width:700px){
 body.route-page .m6-services-grid>.m6-service-card{grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:auto auto!important}
 body.route-page .m6-services-grid>.m6-service-card:after{grid-column:1/-1!important;grid-row:2!important;justify-self:stretch!important;padding:8px 10px!important}
}

/* Quieter road facts and direction summaries: remove nested tinted boxes. */
body.route-page :is(.route-detail-card,.traffic-pattern-card){background:#f8fafc!important;border-color:#cfdae5!important;padding:16px!important}
body.route-page :is(.route-detail-card,.traffic-pattern-card) .junction-panel-kicker{display:none!important}
body.route-page .route-detail-grid{gap:4px 22px!important}
body.route-page .route-detail-grid>div,body.route-page .route-detail-grid>div:nth-child(n){background:transparent!important;border:0!important;border-bottom:1px solid #dce5ed!important;border-radius:0!important;padding:10px 0!important}
body.route-page .route-detail-grid small{text-transform:none!important;letter-spacing:0!important;font-size:12px!important;margin-bottom:4px!important;color:#61758a!important}
body.route-page .route-detail-grid strong{font-size:14px!important;font-weight:600!important;color:#365269!important;line-height:1.5!important}
body.route-page .traffic-pattern-card .tc-direction-stat{background:#fff!important;border-color:#cbd9e6!important;border-radius:7px!important;padding:12px!important}
body.route-page .traffic-pattern-card .tc-direction-stat>strong{color:#285b87!important;font-size:24px!important}
body.route-page .traffic-pattern-card .tc-direction-stat>span{color:#365269!important}
body.route-page .traffic-pattern-card .tc-direction-stat>p{border-top-color:#e0e7ef!important;color:#526c82!important}
@media(max-width:500px){body.route-page .route-detail-grid{grid-template-columns:minmax(0,1fr)!important}}
/* Keep named connections readable and route facts compact. */
body.route-page .m6-bottom-grid .connecting-list{grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr))!important}
body.route-page .m6-bottom-grid .connecting-list>a:has(>span){grid-template-columns:auto minmax(0,1fr)!important;gap:8px 10px!important;padding:11px!important}
body.route-page .m6-bottom-grid .connecting-list>a>span{overflow-wrap:normal!important;word-break:normal!important}
body.route-page .m6-bottom-grid .connecting-list>a:has(>span)>b{grid-column:1!important;grid-row:1/3!important;align-self:start!important}
body.route-page .m6-bottom-grid .connecting-list>a:has(>span)>span{grid-column:2!important;grid-row:1!important;font-size:13px!important;line-height:20px!important}
body.route-page .m6-bottom-grid .connecting-list>a:has(>span)>em{grid-column:2!important;grid-row:2!important;justify-self:start!important}
body.route-page .m6-bottom-grid .connecting-list>a>em{display:inline-flex!important;align-items:center!important;justify-content:center!important;background:#edf5fc!important;color:#245d88!important;border:1px solid #a9c3d9!important;border-radius:6px!important;padding:7px 10px!important;line-height:18px!important;font-style:normal!important;font-weight:700!important;white-space:nowrap!important}
body.route-page .about-card{padding:16px!important}
body.route-page .about-card h2{margin:0 0 12px!important}
body.route-page .about-card p{margin:8px 0!important;line-height:1.6!important}
body.route-page .about-card .facts-row{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin-top:12px!important}
body.route-page .about-card .facts-row>span{display:inline-flex!important;align-items:center!important;gap:6px!important;width:auto!important;flex:0 1 auto!important;min-width:0!important;padding:8px 10px!important;margin:0!important;background:#f3f7fb!important;border:1px solid #d3e0ec!important;border-radius:6px!important}
@media(max-width:600px){body.route-page .m6-services-grid,body.route-page .approved-junctions{grid-template-columns:minmax(0,1fr)!important}}

/* Keep short supporting panels side by side; preserve the single-column phone flow. */
@media(min-width:900px){body.route-page .m6-feature-grid:has(>.upcoming-card){grid-template-columns:repeat(2,minmax(0,1fr))!important;align-items:stretch!important}}
body.route-page .route-detail-card>p{margin:8px 0 12px!important;font-size:14px!important;line-height:1.6!important}

@media(min-width:900px){body.route-page .m6-feature-grid:has(>.upcoming-card)>.m6-feature-card{align-self:stretch!important;margin:0!important;display:flex!important;flex-direction:column!important}body.route-page .m6-feature-grid:has(>.upcoming-card) .feature-link{align-self:flex-start!important;margin-top:auto!important}body.route-page .m6-feature-grid:has(>.upcoming-card) .upcoming-works-list{margin-bottom:12px!important}}

/* Service identities share aligned title/details rows; actions never squeeze the names. */
body.route-page .m6-services-grid{grid-auto-rows:1fr!important;align-items:stretch!important}
body.route-page .m6-services-grid>.m6-service-card{grid-template-columns:36px minmax(0,1fr)!important;grid-template-rows:1fr auto!important;align-items:start!important;align-self:stretch!important;gap:12px!important}
body.route-page .m6-service-card .m6-service-logo{align-self:start!important}
body.route-page .m6-service-card>div:last-child{align-self:start!important;min-width:0!important}
body.route-page .m6-service-card>div:last-child>strong{display:block!important;min-height:2.6em!important;font-size:16px!important;line-height:1.3!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
body.route-page .m6-service-card>div:last-child>span{display:block!important;min-height:2.8em!important;font-size:13px!important;line-height:1.4!important;white-space:normal!important;word-break:normal!important;overflow-wrap:break-word!important}
body.route-page .m6-services-grid>.m6-service-card:after{grid-column:1/-1!important;grid-row:2!important;justify-self:stretch!important;align-self:end!important;padding:8px 10px!important}


/* Road dashboards share one container from heading through report lists. */
body.route-page.tc-traffic-dashboard .tc-route-hero .m6-hero-inner,
body.route-page.tc-traffic-dashboard .m6-shell{box-sizing:border-box!important;width:100%!important;max-width:1500px!important;margin-inline:auto!important;padding-inline:16px!important}
body.route-page.tc-traffic-dashboard .tc-route-hero .m6-hero-inner{padding-block:16px 12px!important}
body.route-page.tc-traffic-dashboard .tc-route-identity .m6-badge{width:56px!important;height:56px!important;flex-basis:56px!important}
body.route-page.tc-traffic-dashboard .tc-global-search{padding:8px max(16px,calc((100% - 1500px)/2 + 16px)) 14px!important}
body.route-page.tc-traffic-dashboard .tc-global-search form{width:100%!important;max-width:750px!important;margin:0!important}
body.route-page.tc-traffic-dashboard .tc-global-search input{min-width:0!important;flex:1 1 auto!important;width:auto!important}
body.route-page.tc-traffic-dashboard .tc-route-hero .m6-subtitle{margin-top:8px!important}
body.route-page.tc-traffic-dashboard .tc-route-hero .m6-live-summary{margin-top:4px!important}
@media(max-width:600px){body.route-page.tc-traffic-dashboard .tc-route-identity .m6-badge{width:50px!important;height:50px!important;flex-basis:50px!important}body.route-page.tc-traffic-dashboard .tc-route-identity h1{font-size:28px!important}}

/* 25 October spoken review: readable ticker, clear actions and compact report browsing. */
body .tc-ticker-item{font-size:15px!important;line-height:1.5!important}
body .tc-ticker{min-height:36px!important}
body .tc-ticker>strong,body .tc-ticker>a{font-size:12px!important}
body.route-page.home-page-v2 .home-route-status-grid>a{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto minmax(2.8em,auto) minmax(2.8em,1fr) auto!important;gap:8px!important;align-items:start!important;height:auto!important;background:#eef5fc!important;border:1px solid #bdd0e3!important}
body.route-page.home-page-v2 .home-route-status-grid>a>small,body.route-page.home-page-v2 .home-route-status-grid>a>em{margin:0!important;line-height:1.4!important;font-size:14px!important}
body.route-page.home-page-v2 .home-route-action{align-self:end!important;margin:0!important}
body.route-page.home-page-v2 :is(.home-route-action,.utility-action,.home-feature-card>b,.home-disruption-card .tc-small-action,.tc-more-reports),
body.route-page.tc-traffic-dashboard :is(.route-row-side .tc-small-action,.tc-junction-action,#sections .travel-list em){background:#18568b!important;color:#fff!important;border:1px solid #12466f!important;border-radius:7px!important;box-shadow:none!important;font-weight:700!important;text-decoration:none!important}
body.route-page.home-page-v2 :is(.home-route-action,.utility-action,.home-feature-card>b){display:inline-flex!important;align-items:center!important;justify-content:center!important;padding:8px 12px!important;min-height:36px!important;font-size:13px!important;line-height:18px!important;width:fit-content!important}
body.route-page.home-page-v2 :is(.home-utility-strip>a,.home-feature-card){background:#eef4fb!important;border:1px solid #c0d1e2!important}
body.route-page.home-page-v2 .home-feature-card:nth-child(2),body.route-page.home-page-v2 .home-utility-strip>a:nth-child(2){background:#fff5df!important;border-color:#e4c98f!important}
body.route-page.home-page-v2 .home-feature-card:nth-child(3),body.route-page.home-page-v2 .home-utility-strip>a:nth-child(3){background:#eaf5f1!important;border-color:#b5d8ca!important}
body.route-page.home-page-v2 .home-results .tc-report{border:1px solid #b9cbdc!important;border-radius:10px!important;box-shadow:0 2px 5px #1635500b!important;background:#edf4fc!important}
body.route-page.home-page-v2 .home-results .tc-report--works{background:#fff6e4!important;border-color:#dcc498!important}
body.route-page.home-page-v2 .home-results .tc-report--closure{background:#fff0f0!important;border-color:#dfb0b0!important}
body.route-page.home-page-v2 .home-results .tc-report--incident{background:#fff3e8!important;border-color:#dfbd9d!important}
body.route-page.home-page-v2 .home-disruption-card{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;gap:12px!important;padding:16px!important;text-decoration:none!important;color:#304e66!important;border:1px solid #d9bc8b!important;border-radius:10px!important;background:#fff5e3!important;box-shadow:none!important}
body.route-page.home-page-v2 .home-disruption-card.severe{background:#fff0f0!important;border-color:#dfa8a8!important}
body.route-page.home-page-v2 .home-disruption-card strong{font-size:17px!important;line-height:1.4!important;display:block!important;margin:4px 0!important}
body.route-page.home-page-v2 .home-disruption-card p{font-size:14px!important;line-height:1.45!important;margin:5px 0!important}
body.route-page.home-page-v2 .home-disruption-icon svg{width:28px;height:28px}
body.route-page.home-page-v2 .home-disruption-end{display:flex;flex-direction:column;align-items:flex-end;justify-content:space-between;gap:12px;height:100%}
body.route-page.home-page-v2 .home-disruption-card:hover,body.route-page.home-page-v2 .home-route-status-grid>a:hover{border-color:#18568b!important;box-shadow:0 3px 10px #16355019!important}
body .tc-more-reports{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;min-height:44px!important;padding:10px 16px!important;margin:12px 0 0!important;font-size:14px!important;line-height:1.4!important;cursor:pointer}
body.route-page.tc-traffic-dashboard .tc-route-hero #hero-live-summary:has(a){display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important;max-width:780px!important;margin-top:14px!important}
body.route-page.tc-traffic-dashboard #hero-live-summary>a{display:flex;flex-direction:column;align-items:flex-start;gap:4px;padding:12px 16px;border:1px solid #ffffff40;border-radius:9px;background:#ffffff14;color:#fff;text-decoration:none}
body.route-page.tc-traffic-dashboard #hero-live-summary>a:hover{background:#ffffff24}
body.route-page.tc-traffic-dashboard #hero-live-summary>a strong{font-size:30px!important;line-height:1.05!important;letter-spacing:-.5px}
body.route-page.tc-traffic-dashboard #hero-live-summary>a span{font-size:14px!important;line-height:1.35!important;font-weight:600}
body.route-page.tc-traffic-dashboard #incidents{background:#edf4fb!important;border:1px solid #b7cde1!important}
body.route-page.tc-traffic-dashboard #roadworks{background:#fff5df!important;border:1px solid #d9bd83!important}
body.route-page.tc-traffic-dashboard .m6-right .approved-list{max-height:none!important;overflow:visible!important}
body.route-page.tc-traffic-dashboard .m6-right .approved-list .route-row{border:1.5px solid #b7c9dc!important;background:#fff!important;border-radius:9px!important;margin:0 0 14px!important;box-shadow:0 2px 5px #1635500b!important}
body.route-page.tc-traffic-dashboard .m6-right .approved-list .tc-report--closure{background:#fff0f0!important;border-color:#dfaaaa!important}
body.route-page.tc-traffic-dashboard .m6-right .approved-list .tc-report--works{background:#fffdf6!important;border-color:#ddc590!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row footer.route-row-side{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px 12px!important;align-items:center!important;grid-column:1/-1!important;grid-row:2!important;padding-top:10px!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side small{font-size:12px!important;margin:0!important;line-height:1.4!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side .tc-small-action{margin:0!important;justify-self:end!important;min-height:34px!important;padding:6px 10px!important;font-size:12px!important;line-height:20px!important}
body.route-page.tc-traffic-dashboard .tc-junction-card article .tc-junction-action{background:#18568b!important;color:#fff!important;border-color:#12466f!important}
body.route-page.tc-traffic-dashboard #sections .travel-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
body.route-page.tc-traffic-dashboard #sections .travel-list>a{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;padding:14px!important;background:#edf4fb!important;border:1px solid #b7cde1!important;border-radius:9px!important}
body.route-page.tc-traffic-dashboard #sections .travel-list b{font-size:18px!important;background:transparent!important;color:#284c69!important;padding:0!important;border:0!important}
body.route-page.tc-traffic-dashboard #sections .travel-list span{font-size:14px!important;line-height:1.4!important}
body.route-page.tc-traffic-dashboard #sections .travel-list em{margin-top:auto!important;display:inline-flex!important;padding:8px 12px!important;font-size:13px!important;font-style:normal!important}
body.route-page.tc-traffic-dashboard article[hidden],body.route-page.tc-traffic-dashboard section[hidden]{display:none!important}
body.route-page #map .tc-map-cluster-popup{display:flex!important;flex-direction:column!important;gap:6px!important;max-width:244px!important;max-height:310px!important;padding:0!important;overflow:hidden!important}
body.route-page #map .tc-map-cluster-popup>strong{font-size:14px!important;line-height:1.3!important;padding-right:18px!important}
body.route-page #map .tc-map-cluster-popup .tc-cluster-summary{font-size:11px!important;line-height:1.35!important;margin:0!important}
body.route-page #map .tc-map-cluster-list{display:block!important;flex:0 1 auto!important;min-height:0!important;max-height:202px!important;height:auto!important;overflow-y:auto!important;overflow-x:hidden!important;overscroll-behavior:contain;scrollbar-gutter:stable;margin:0!important;padding:0 4px 2px 0!important}
body.route-page #map .tc-map-cluster-item{display:block!important;max-width:100%!important;width:100%!important;min-height:0!important;height:auto!important;max-height:none!important;padding:6px 8px!important;margin:0!important;border:1px solid #c7d6e3!important;border-radius:5px!important;background:#eff5fa!important;color:#254d70!important;text-align:left!important}
body.route-page #map .tc-map-cluster-item b{display:-webkit-box!important;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden!important;font-size:12px!important;line-height:1.35!important}
body.route-page #map .tc-map-cluster-item small{display:block!important;font-size:11px!important;line-height:1.3!important;margin-top:3px!important}
body.route-page #map .tc-map-cluster-popup .tc-popup-zoom{display:block!important;width:100%!important;min-height:34px!important;padding:6px 9px!important;font-size:12px!important;line-height:1.4!important;border:0!important;border-radius:5px!important;background:#18568b!important;color:#fff!important}
body.route-page #map .tc-cluster-popup-shell .maplibregl-popup-content{max-height:340px!important;overflow:hidden!important;width:auto!important;max-width:260px!important;padding:12px!important}
body.route-page #map .leaflet-popup-content{margin:12px!important;max-width:244px!important}
body.route-page #map .tc-map-credits{padding:4px 7px;background:#ffffffed;border-radius:4px;max-width:240px;font-size:10px;line-height:1.4}
body.route-page #map .tc-map-credits summary{font-size:11px;cursor:pointer;color:#355875}
@media(min-width:901px){body.route-page.tc-traffic-dashboard .map-top-tools{display:none!important}}
@media(max-width:650px){
 body .tc-ticker-item{font-size:13px!important}
 body.route-page.home-page-v2 .home-disruption-card{grid-template-columns:30px minmax(0,1fr)!important;gap:9px!important;padding:12px!important}
 body.route-page.home-page-v2 .home-disruption-end{grid-column:2;align-items:flex-start;gap:8px;flex-direction:row;flex-wrap:wrap}
 body.route-page.tc-traffic-dashboard #hero-live-summary>a{padding:10px!important}
 body.route-page.tc-traffic-dashboard #hero-live-summary>a strong{font-size:25px!important}
 body.route-page.tc-traffic-dashboard #hero-live-summary>a span{font-size:12px!important}
 body.route-page.tc-traffic-dashboard .tc-route-hero #hero-live-summary:has(a){gap:6px!important}
 body.route-page.tc-traffic-dashboard .approved-list .route-row footer.route-row-side{grid-template-columns:auto minmax(0,1fr)!important;gap:8px!important}
 body.route-page.tc-traffic-dashboard .route-row footer.route-row-side small{text-align:right!important}
 body.route-page.tc-traffic-dashboard .route-row footer.route-row-side .tc-small-action{grid-column:1/-1!important;justify-self:start!important;min-height:36px!important}
 body.route-page.tc-traffic-dashboard #sections .travel-list{grid-template-columns:minmax(0,1fr)!important}
}
body.route-page #map .tc-map-popup:not(.tc-map-cluster-popup)>strong,body.route-page #map .tc-map-popup-head strong{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden!important;font-size:13px!important;line-height:1.35!important}
body.route-page #map .tc-map-popup-details,body.route-page #map .tc-map-popup:not(.tc-map-cluster-popup)>p{display:-webkit-box!important;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden!important;font-size:12px!important;line-height:1.4!important;margin:6px 0!important}
body.route-page #map .tc-map-popup-grid{font-size:11px!important;line-height:1.3!important;gap:5px!important}
/* Explicit component ownership beats the older homepage and junction rules. */
body.route-page.home-page-v2 #home-route-status-grid>a{display:grid!important;grid-template-rows:auto minmax(2.8em,auto) minmax(2.8em,1fr) auto!important;align-items:start!important}
body.route-page.home-page-v2 #home-route-status-grid .home-route-action{margin-top:auto!important;align-self:end!important}
body.route-page.home-page-v2 .home-utility-strip>a .utility-action{background:#18568b!important;border:1px solid #12466f!important;color:#fff!important}
body.route-page.home-page-v2 .home-utility-strip>a{background:#edf4fb!important;border:1px solid #b8cde0!important}
body.route-page.home-page-v2 .home-utility-strip>a:last-child{background:#eaf5f1!important;border-color:#b5d8ca!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card{border:1.5px solid #d9bc8b!important;border-left-width:1.5px!important;grid-template-columns:32px minmax(0,1fr) auto!important}
body.route-page.home-page-v2 #home-major-disruption .tc-highlight--congestion{background:#edf4fc!important;border-color:#adc8e1!important}
body.route-page.home-page-v2 #home-major-disruption .tc-highlight--closure{background:#fff0f0!important;border-color:#dfa8a8!important}
body.route-page.home-page-v2 #home-major-disruption .tc-highlight--incident{background:#fff4e5!important;border-color:#dfc08c!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-end .tc-small-action{background:#18568b!important;color:#fff!important;border-color:#12466f!important}
body.route-page.tc-traffic-dashboard #junctions .junction-card-link article{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:5px 10px!important;padding:12px!important}
body.route-page.tc-traffic-dashboard #junctions .junction-card-link article>strong{grid-column:1!important;grid-row:1!important}
body.route-page.tc-traffic-dashboard #junctions .junction-card-link article>span:not(.tc-junction-action){display:block!important;grid-column:1!important;grid-row:2!important;font-size:13px!important;line-height:1.4!important;margin:0!important}
body.route-page.tc-traffic-dashboard #junctions .junction-card-link article>.junction-live-state{grid-column:1/-1!important;grid-row:3!important;margin:5px 0 0!important}
body.route-page.tc-traffic-dashboard #junctions .junction-card-link article>.tc-junction-action{grid-column:2!important;grid-row:1/3!important;margin:0!important;align-self:center!important;justify-self:end!important;padding:7px 10px!important;min-height:34px!important;font-size:12px!important;background:#18568b!important;color:#fff!important}
body.route-page.tc-traffic-dashboard #sections .travel-list>a>*{text-align:left!important;width:auto!important}
body.route-page .tc-more-reports{background:#18568b!important;color:#fff!important;border:1px solid #12466f!important}
@media(max-width:650px){
 body.route-page.home-page-v2 #home-major-disruption .home-disruption-card{grid-template-columns:28px minmax(0,1fr)!important}
 body.route-page.tc-traffic-dashboard #junctions .junction-card-link article{grid-template-columns:minmax(0,1fr)!important}
 body.route-page.tc-traffic-dashboard #junctions .junction-card-link article>.tc-junction-action{grid-column:1!important;grid-row:4!important;justify-self:start!important}
}
/* Give popup measurement a stable width; line-clamped titles have no useful intrinsic width. */
body.route-page #map .leaflet-popup-content{box-sizing:border-box!important;width:220px!important;max-width:min(244px,calc(100vw - 72px))!important}
body.route-page #map .leaflet-popup-content-wrapper{width:auto!important;max-width:260px!important}
body.route-page #map .tc-map-popup{box-sizing:border-box!important;width:100%!important;min-width:0!important}
body.route-page #map .tc-cluster-popup-shell .maplibregl-popup-content{box-sizing:border-box!important;width:244px!important;max-width:min(260px,calc(100vw - 60px))!important}

/* Hero totals replace the duplicate strip below the search. */
body.route-page.tc-traffic-dashboard section.m6-summary-strip[hidden]{display:none!important}
body.route-page.tc-traffic-dashboard .tc-delay-inline{display:flex;align-items:center;gap:6px;margin:0 0 12px;padding:7px 10px;background:#e4edf6;border-radius:6px;color:#47627a;font-size:13px;line-height:1.4}
body.route-page.tc-traffic-dashboard .tc-delay-inline strong{color:#234a6b;font-size:14px}

/* Compact road references and consistent reported-section actions. */
body.route-page .m6-bottom-grid #route-connections{display:flex!important;flex-wrap:wrap!important;gap:8px!important;grid-template-columns:none!important}
body.route-page .m6-bottom-grid #route-connections>a{display:inline-flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;min-height:42px!important;padding:8px 12px!important;background:#edf4fb!important;color:#18568b!important;text-decoration:none!important}
body.route-page .m6-bottom-grid #route-connections>a>b{background:transparent!important;color:inherit!important;padding:0!important;min-width:0!important;font-size:15px!important;line-height:22px!important;border:0!important}
body.route-page .m6-bottom-grid #route-connections>a>em{font-style:normal!important;font-size:18px!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;color:inherit!important}
body.route-page .m6-bottom-grid .tc-connections-note{font-size:14px!important;line-height:1.5!important;margin:0 0 14px!important;color:#526b80!important}
body.route-page .m6-bottom-grid #route-sections>a{display:grid!important;grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto 1fr auto!important;align-items:start!important;gap:7px!important;padding:14px!important;text-decoration:none!important}
body.route-page .m6-bottom-grid #route-sections>a>.tc-section-direction{font-size:12px!important;line-height:18px!important;color:#526b80!important;font-weight:600!important}
body.route-page .m6-bottom-grid #route-sections>a>strong{font-size:17px!important;line-height:1.4!important;color:#284c69!important}
body.route-page .m6-bottom-grid #route-sections>a>.tc-small-action{background:#18568b!important;color:#fff!important;border:1px solid #12466f!important;border-radius:6px!important;display:inline-flex!important;padding:6px 10px!important;font-size:12px!important;line-height:20px!important;font-style:normal!important;margin:5px 0 0!important;justify-self:start!important;align-self:end!important}
body.route-page .m6-bottom-grid :is(#route-sections,#route-connections)>a:hover{border-color:#18568b!important;background:#e3eef9!important}
body.route-page .m6-bottom-grid :is(#route-sections,#route-connections)>a:focus-visible{outline:3px solid #18568b!important;outline-offset:3px!important}
body.route-page .m6-bottom-grid #route-connections>a{width:auto!important;max-width:100%!important;flex:0 0 auto!important;min-width:88px!important}

/* Keep motorway report counts and conditions on deliberate, aligned lines. */
body.route-page.home-page-v2 #home-route-status-grid>a>em.route-state{display:flex!important;flex-direction:column!important;gap:3px!important;font-size:14px!important;line-height:20px!important;font-style:normal!important;font-weight:600!important;min-height:43px!important}
body.route-page.home-page-v2 #home-route-status-grid .route-report-count{display:block!important;font-size:14px!important;line-height:20px!important;font-weight:700!important;color:#385269!important;white-space:nowrap!important}
body.route-page.home-page-v2 #home-route-status-grid .route-condition{display:block!important;font-size:13px!important;line-height:20px!important;font-weight:600!important;white-space:nowrap!important}
/* Keep dates in one aligned metadata block below the direction and action. */
body.route-page.tc-traffic-dashboard .approved-list .route-row footer.route-row-side{grid-template-columns:minmax(0,1fr) auto!important;gap:8px 12px!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>span{grid-column:1!important;grid-row:1!important;justify-self:start!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-small-action{grid-column:2!important;grid-row:1!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-report-dates{display:grid!important;grid-column:1/-1!important;grid-row:2!important;grid-template-columns:54px minmax(0,1fr)!important;align-items:baseline!important;gap:5px 8px!important;margin:0!important;padding:8px 0 0!important;width:100%!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-report-dates dt{font-size:12px!important;line-height:18px!important;text-transform:none!important;letter-spacing:0!important;margin:0!important;font-weight:700!important;color:#526b80!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-report-dates dd{font-size:12px!important;line-height:18px!important;margin:0!important;color:#526b80!important;overflow-wrap:normal!important}
/* A compact directory with clear, whole-card traffic links. */
body.route-page .location-directory{max-width:1120px!important;margin:24px auto!important;padding:0 18px!important}
body.route-page .location-directory>h1{font-size:30px!important;line-height:1.2!important;margin:0 0 18px!important;letter-spacing:-.5px!important}
body.route-page .location-directory>.tc-global-search{background:#eaf2fa!important;border:1px solid #bed0e1!important;border-radius:10px!important;margin:0 0 16px!important;padding:16px!important;max-width:none!important}
body.route-page .location-directory .tc-global-search form{max-width:680px!important;margin:0!important;padding:0!important}
body.route-page .location-directory .tc-global-search label{color:#385269!important;font-size:14px!important}
body.route-page .location-directory .tc-global-search input{min-height:42px!important;font-size:15px!important;padding:10px 12px!important}
body.route-page .location-directory .tc-global-search button{min-height:42px!important;padding:10px 18px!important;background:#18568b!important;color:#fff!important;font-size:14px!important;border:1px solid #12466f!important}
body.route-page .location-directory>p{font-size:14px!important;line-height:1.5!important;margin:0 0 18px!important}
body.route-page .location-directory-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:10px!important}
body.route-page .location-directory-grid>a{display:flex!important;flex-direction:row!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;min-height:66px!important;padding:14px 16px!important;background:#edf4fb!important;border:1px solid #bdd0e3!important;border-radius:9px!important;color:#385269!important;text-decoration:none!important}
body.route-page .location-directory-grid>a strong{font-size:17px!important;line-height:1.35!important}
body.route-page .location-directory-grid>a span{font-size:12px!important;font-weight:700!important;white-space:nowrap!important;color:#fff!important;background:#18568b!important;border-radius:6px!important;padding:7px 9px!important}
body.route-page .location-directory-grid>a:hover{background:#e0edf9!important;border-color:#18568b!important}
body.route-page .location-directory-grid>a:focus-visible{outline:3px solid #18568b;outline-offset:3px}
@media(max-width:760px){body.route-page .location-directory-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:520px){body.route-page .location-directory-grid{grid-template-columns:minmax(0,1fr)!important}body.route-page .location-directory>h1{font-size:26px!important}}
/* Retain the requested 10% reduction without adding a side inset. */
body{zoom:.9!important}
body.route-page-v2{zoom:.99!important}
body.junction-page-v4{zoom:.9!important}
@supports not (zoom:1){
 body{transform:scale(.9)!important;transform-origin:top left!important;width:111.111111%!important}
 body.route-page-v2{transform:scale(.99)!important;width:101.010101%!important}
 body.junction-page-v4{transform:scale(.9)!important;width:111.111111%!important}
}
/* Compensate viewport-based hero sizing so body zoom does not cancel the reduction. */
@media(min-width:901px){
 body.route-page.home-page-v2 .home-hero-photo h1{font-size:clamp(40px,3.825vw,58px)!important}
 body.route-page.home-page-v2 .home-hero-photo-inner{padding-left:4.05vw!important;padding-right:4.05vw!important}
}

/* Collision reports need immediate visual recognition. */
body.route-page.tc-traffic-dashboard .m6-right .approved-list .tc-report--collision{background:#fff1f1!important;border-color:#d98989!important}
body.route-page .approved-list .tc-report--collision .route-row-icon{background:#fbe0e0!important;color:#b52b32!important}
body.route-page .tc-report--collision .tc-report-label{background:#b52b32!important;color:#fff!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row footer.route-row-side{border-top:0!important;padding-top:0!important}
body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-report-dates{border-top:0!important;padding-top:0!important}
@media(min-width:1100px){
 body.route-page.tc-traffic-dashboard .m6-right .approved-list .route-row{grid-template-columns:32px minmax(0,1fr) 190px!important;gap:8px 12px!important;padding:12px!important}
 body.route-page.tc-traffic-dashboard .approved-list .route-row footer.route-row-side{grid-column:3!important;grid-row:1!important;grid-template-columns:minmax(0,1fr)!important;align-content:start!important;gap:9px!important;border-left:1px solid #d5dfeb!important;padding-left:12px!important}
 body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>span{grid-column:1!important;grid-row:1!important}
 body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-report-dates{grid-column:1!important;grid-row:2!important;grid-template-columns:minmax(0,1fr)!important;gap:2px!important}
 body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-report-dates dd{margin-bottom:5px!important}
 body.route-page.tc-traffic-dashboard .route-row footer.route-row-side>.tc-small-action{grid-column:1!important;grid-row:3!important;justify-self:start!important}
 body.route-page.tc-traffic-dashboard .approved-list .route-row-body>p{margin:4px 0!important}
}
/* Give each road-summary metric its own clear visual identity. */
body.route-page.tc-traffic-dashboard .m6-summary-strip{gap:10px!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article{border:1px solid #c5d6e7!important;border-radius:10px!important;background:#edf4fc!important;box-shadow:0 2px 5px #28455f0a!important;min-height:78px!important;align-items:center!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#incident-total){background:#fff1eb!important;border-color:#e1b9a9!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#works-total){background:#fff5df!important;border-color:#dfc58c!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#closure-total){background:#fff0f2!important;border-color:#dfadb6!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#max-delay){background:#eaf2fc!important;border-color:#adc6e2!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip .summary-icon{display:flex!important;align-items:center!important;justify-content:center!important;width:36px!important;height:36px!important;min-width:36px!important;padding:0!important;border-radius:10px!important;font-size:23px!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#incident-total) .summary-icon{background:#fce0d6!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#works-total) .summary-icon{background:#fce8b8!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#closure-total) .summary-icon{background:#fad9df!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip>article:has(#max-delay) .summary-icon{background:#d7e6fa!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip #incident-total{color:#a24b30!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip #works-total{color:#8a6218!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip #closure-total{color:#a32e45!important}
body.route-page.tc-traffic-dashboard .m6-summary-strip #max-delay{color:#245e94!important}

/* FAQ answers use plain rows instead of tinted cards. */
body.route-page .m6-faq .tc-faq-answer{background:#fff!important}
body.route-page .m6-faq .tc-faq-reports{gap:0!important}
body.route-page .m6-faq .tc-faq-reports li{background:transparent!important;border:0!important;border-bottom:1px solid #e1e8ef!important;border-radius:0!important;padding:10px 0!important}
body.route-page .m6-faq .tc-faq-reports li:last-child{border-bottom:0!important}
/* Keep location and traffic-directory supporting copy readable. */
body.route-page.hub-section-page .section-bottom-links>a>span{font-size:15px!important;line-height:1.5!important;color:#526b80!important}
body.route-page.hub-section-page .section-bottom-links>a>strong,body.route-page.hub-section-page .section-side-links>a>span{font-size:17px!important;line-height:1.4!important}
body.route-page.hub-section-page .junction-panel-kicker{font-size:12px!important;line-height:1.4!important}
body.route-page.hub-section-page .section-summary-strip small{font-size:14px!important;line-height:1.4!important}
body.route-page.hub-section-page .section-summary-strip span,body.route-page.hub-section-page .section-live-meta{font-size:13px!important;line-height:1.5!important}
body.route-page.hub-section-page .section-live-row p{font-size:15px!important;line-height:1.5!important}
/* Mobile menu shortcuts must shrink and wrap within the dropdown. */
@media(max-width:900px){
 body.route-page .tc-nav.menu-open .tc-nav-links{box-sizing:border-box!important;width:min(320px,calc(100vw - 24px))!important;max-width:calc(100vw - 24px)!important;right:12px!important;left:auto!important;padding:10px!important;overflow-x:hidden!important;max-height:calc(100dvh - 80px)!important}
 body.route-page .tc-nav.menu-open .tc-nav-links>a{min-width:0!important;width:100%!important;box-sizing:border-box!important;white-space:normal!important;min-height:38px!important;padding:8px 10px!important;font-size:14px!important;line-height:20px!important}
 body.route-page .tc-nav.menu-open .tc-menu-extra{box-sizing:border-box!important;width:100%!important;min-width:0!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:6px!important;margin-top:8px!important;padding-top:8px!important}
 body.route-page .tc-nav.menu-open .tc-menu-extra>a{box-sizing:border-box!important;min-width:0!important;width:100%!important;max-width:100%!important;white-space:normal!important;overflow-wrap:anywhere!important;padding:8px!important;font-size:13px!important;line-height:18px!important;min-height:38px!important}
 body.route-page .tc-nav.menu-open .tc-menu-extra>strong{min-width:0!important;white-space:normal!important}
}
/* Road shortcuts keep consistent heights and wrap between buttons. */
body.route-page .nearby-routes>a{box-sizing:border-box!important;flex:0 0 auto!important;min-width:48px!important;min-height:36px!important;height:36px!important;padding:7px 12px!important;white-space:nowrap!important;font-size:13px!important;line-height:20px!important;gap:4px!important}
body.route-page .nearby-routes{align-items:center!important;gap:7px!important}
/* Keep map attribution behind its accessible native credits toggle. */
body.route-page #map .maplibregl-ctrl-attrib.maplibregl-compact{width:26px!important;min-width:26px!important;height:26px!important;min-height:26px!important;padding:0!important;border-radius:13px!important;max-width:26px!important}
body.route-page #map .maplibregl-ctrl-attrib .maplibregl-ctrl-attrib-button{display:block!important;width:26px!important;height:26px!important}
body.route-page #map .maplibregl-ctrl-attrib .maplibregl-ctrl-attrib-inner{display:none!important}
body.route-page #map .maplibregl-ctrl-attrib.maplibregl-compact-show{width:auto!important;height:auto!important;max-width:min(350px,calc(100vw - 60px))!important;padding:5px 30px 5px 8px!important;border-radius:6px!important}
body.route-page #map .maplibregl-ctrl-attrib.maplibregl-compact-show .maplibregl-ctrl-attrib-inner{display:block!important;white-space:normal!important}

body.route-page.hub-section-page .hub-report-filters{display:flex!important;flex-wrap:wrap!important;gap:7px!important;margin:0 0 14px!important;padding:0!important}
body.route-page.hub-section-page .hub-report-filters button{min-height:38px!important;padding:8px 13px!important;border:1px solid #b5cce1!important;border-radius:7px!important;background:#fff!important;color:#285475!important;font-size:14px!important;line-height:20px!important;font-weight:700!important;cursor:pointer}
body.route-page.hub-section-page .hub-report-filters button[aria-pressed="true"]{background:#18568b!important;border-color:#12466f!important;color:#fff!important}
body.route-page.hub-section-page .hub-report-filters button:focus-visible{outline:3px solid #4e93c5;outline-offset:2px}
body.route-page.tc-traffic-dashboard .m6-main-grid:has(#incidents[hidden]):has(#roadworks[hidden]):has(#road-accidents[hidden]){grid-template-columns:minmax(0,1fr)!important}
body.route-page.tc-traffic-dashboard .m6-main-grid:has(#incidents[hidden]):has(#roadworks[hidden]):has(#road-accidents[hidden])>.m6-right{display:none!important}
body.route-page.tc-traffic-dashboard .m6-main-grid:has(#incidents[hidden]):has(#roadworks[hidden]):has(#road-accidents[hidden])>.m6-left{grid-column:1!important;grid-row:1!important;position:static!important}

body.route-page .tc-hero-clock{display:block!important;position:relative!important;z-index:2!important;grid-column:1/-1!important;margin:12px 0 0!important;font-size:13px!important;line-height:20px!important;font-weight:500!important;letter-spacing:.1px!important;color:inherit!important;opacity:.9}
body.route-page .home-hero .tc-hero-clock,body.route-page .m6-hero .tc-hero-clock,body.route-page .section-hero .tc-hero-clock{color:#e3edf6!important}

/* Clear FAQ hierarchy and prominent hero clock. */
body.route-page .m6-faq details{margin:0!important;border:0!important;border-bottom:1px solid #dce5ef!important;border-radius:0!important;background:#fff!important}
body.route-page .m6-faq details:last-child{border-bottom:0!important}
body.route-page .m6-faq details>summary{padding:20px 0!important;min-height:64px!important;font-size:18px!important;line-height:1.45!important;color:#15243a!important;background:#fff!important;gap:20px!important}
body.route-page .m6-faq summary:after{flex:0 0 34px!important;width:34px!important;height:34px!important;border:0!important;background:#eef3fc!important;color:#2348a5!important;font-size:24px!important}
body.route-page .m6-faq details[open]>summary{color:#2348a5!important}
body.route-page .m6-faq details[open]>summary:after{background:#2348a5!important;color:#fff!important}
body.route-page .m6-faq summary:focus-visible{outline:2px solid #2348a5!important;outline-offset:4px!important}
body.route-page .m6-faq .tc-faq-answer{padding:0 0 18px!important}
body.route-page .m6-faq details p,body.route-page .m6-faq .tc-faq-answer p{font-size:16px!important;line-height:1.65!important;padding:0 0 18px!important;margin:0!important;color:#42546a!important}
body.route-page .m6-faq .tc-faq-answer p{padding:0!important}
body.route-page .m6-faq .tc-faq-reports li strong{font-size:15px!important;color:#334b64!important}
body.route-page .m6-faq .tc-faq-reports li span{font-size:14px!important}
body.route-page .tc-hero-clock{display:table!important;width:auto!important;max-width:100%!important;box-sizing:border-box!important;position:relative!important;grid-column:1/-1!important;justify-self:end!important;align-self:start!important;margin:0 0 18px auto!important;padding:9px 14px!important;border:1px solid #68869e!important;border-radius:8px!important;background:#102d47!important;color:#fff!important;font-size:16px!important;font-weight:700!important;line-height:1.4!important;opacity:1!important;font-variant-numeric:tabular-nums!important;text-align:right!important}
body.route-page .home-hero .tc-hero-clock,body.route-page .m6-hero .tc-hero-clock,body.route-page .section-hero .tc-hero-clock{color:#fff!important}
@media(max-width:600px){body.route-page .m6-faq details>summary{font-size:16px!important;padding:16px 0!important;gap:12px!important}body.route-page .tc-hero-clock{font-size:14px!important;padding:8px 11px!important;margin-bottom:14px!important}}
/* Shared incident severity strip: colour is paired with a written label. */
body.route-page .tc-strip-card{overflow:hidden!important}
body.route-page .tc-status-strip{--strip-start:#255e8d;--strip-end:#173d60;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;background:linear-gradient(110deg,var(--strip-start),var(--strip-end))!important;color:#fff!important;padding:12px 16px!important;box-sizing:border-box!important;min-width:0!important;text-decoration:none!important}
body.route-page .tc-status--minor{--strip-start:#168340;--strip-end:#10592e}
body.route-page .tc-status--moderate{--strip-start:#875505;--strip-end:#684005}
body.route-page .tc-status--serious{--strip-start:#df142d;--strip-end:#c81024}
body.route-page .tc-status-kind{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:wrap!important;min-width:0!important;color:#fff!important}
body.route-page .tc-status-kind svg{width:22px!important;height:22px!important;flex:0 0 22px!important;color:#fff!important}
body.route-page .tc-status-kind strong{font-size:14px!important;font-weight:800!important;line-height:1.3!important;letter-spacing:.5px!important;text-transform:uppercase!important;color:#fff!important;margin:0!important}
body.route-page .tc-status-kind>span{font-size:13px!important;font-weight:500!important;color:#fff!important;line-height:1.4!important}
body.route-page .tc-status-delay{display:flex!important;align-items:baseline!important;gap:5px!important;flex:0 0 auto!important;color:#fff!important;font-size:12px!important;white-space:nowrap!important}
body.route-page .tc-status-delay b{font-size:28px!important;line-height:1!important;color:#fff!important;font-weight:800!important}
body.route-page .route-row.tc-strip-card{padding:0!important;grid-template-columns:minmax(0,1fr) 190px!important;gap:0!important;background:#fff!important}
body.route-page .route-row.tc-strip-card>.tc-status-strip{grid-column:1/-1!important;grid-row:1!important}
body.route-page .route-row.tc-strip-card>.route-row-icon{display:none!important}
body.route-page .route-row.tc-strip-card>.route-row-body{grid-column:1!important;grid-row:2!important;padding:15px 16px!important}
body.route-page .route-row.tc-strip-card>.route-row-side{grid-column:2!important;grid-row:2!important;padding:15px!important;margin:0!important}
body.route-page .section-live-row.tc-strip-card,body.route-page .junction-event-v4.tc-strip-card,body.route-page .home-disruption-card.tc-strip-card{padding:0!important;gap:0!important;grid-template-columns:minmax(0,1fr) auto!important;background:#fff!important}
body.route-page :is(.section-live-row,.junction-event-v4,.home-disruption-card).tc-strip-card>.tc-status-strip{grid-column:1/-1!important;grid-row:1!important}
body.route-page :is(.section-live-row,.junction-event-v4,.home-disruption-card).tc-strip-card>:is(.home-disruption-icon,.junction-event-icon,span[aria-hidden]){display:none!important}
body.route-page .section-live-row.tc-strip-card>div,body.route-page .home-disruption-card.tc-strip-card>div:not(.home-disruption-end):not(.tc-status-strip),body.route-page .junction-event-v4.tc-strip-card>.junction-event-copy{grid-column:1!important;grid-row:2!important;padding:15px 16px!important}
body.route-page .section-live-row.tc-strip-card>div>small,body.route-page .home-disruption-card.tc-strip-card .home-disruption-level,body.route-page .home-disruption-card.tc-strip-card .home-disruption-end>b,body.route-page .section-live-row.tc-strip-card>b,body.route-page .junction-event-v4.tc-strip-card .junction-event-meta>b{display:none!important}
body.route-page .home-disruption-card.tc-strip-card>.home-disruption-end,body.route-page .junction-event-v4.tc-strip-card>.junction-event-meta{grid-column:2!important;grid-row:2!important;padding:15px!important}
body.route-page :is(.card,.affected-section).tc-strip-card>.tc-status-strip{margin:-14px -14px 14px!important}
@media(max-width:1099px){body.route-page .route-row.tc-strip-card{grid-template-columns:minmax(0,1fr)!important}body.route-page .route-row.tc-strip-card>.route-row-side{grid-column:1!important;grid-row:3!important;border-left:0!important;border-top:1px solid #e1e8ef!important;margin:0 16px!important;padding:10px 0 14px!important}}
@media(max-width:600px){body.route-page .tc-status-strip{padding:11px 13px!important;gap:8px!important}body.route-page .tc-status-kind{gap:6px!important}body.route-page .tc-status-kind>span{flex-basis:100%!important;margin-left:28px!important}body.route-page .tc-status-delay b{font-size:25px!important}body.route-page .home-disruption-card.tc-strip-card{grid-template-columns:minmax(0,1fr)!important}body.route-page .home-disruption-card.tc-strip-card>.home-disruption-end{grid-column:1!important;grid-row:3!important;padding:0 16px 14px!important}}
body.route-page .tc-planned,body.route-page .tc-destinations{margin:16px 0!important;padding:20px!important;background:#fff!important;border:1px solid #cad7e2!important;border-radius:12px!important}
body.route-page .tc-planned h2,body.route-page .tc-destinations h2{margin:0 0 15px!important;font-size:22px!important;color:#203b55!important}
body.route-page .tc-planned-filters{display:flex!important;flex-wrap:wrap!important;gap:8px!important;margin:0 0 16px!important}
body.route-page .tc-planned-filters button{border:1px solid #bccfe0!important;border-radius:7px!important;background:#f1f6fb!important;color:#284e70!important;font:inherit!important;font-weight:700!important;padding:9px 14px!important;cursor:pointer!important}
body.route-page .tc-planned-filters button[aria-pressed=true]{background:#194d7a!important;border-color:#194d7a!important;color:#fff!important}
body.route-page .tc-planned-row{display:grid!important;grid-template-columns:minmax(0,1fr) 260px!important;gap:10px 20px!important;border-top:1px solid #dce5ee!important;padding:16px 0!important}
body.route-page .tc-planned-type{display:block!important;font-size:13px!important;color:#a32e45!important;font-weight:700!important;margin-bottom:5px!important}
body.route-page .tc-planned-row strong{font-size:17px!important;line-height:1.4!important;color:#263e56!important;display:block!important}
body.route-page .tc-planned-dates{font-size:14px!important;line-height:1.7!important;margin:0!important;color:#465d73!important}
body.route-page .tc-planned-row details{grid-column:1/-1!important;border:0!important;background:#fff!important;padding:0!important}
body.route-page .tc-planned-row summary{font-size:14px!important;font-weight:700!important;color:#285c86!important;cursor:pointer!important}
body.route-page .tc-planned-row details p{font-size:15px!important;line-height:1.6!important;color:#465d73!important;margin:10px 0 0!important}
body.route-page .tc-planned-note{font-size:13px!important;line-height:1.6!important;color:#5e7183!important;margin:12px 0 0!important}
body.route-page .tc-destinations ul{list-style:none!important;padding:0!important;margin:0!important}
body.route-page .tc-destinations li{display:grid!important;grid-template-columns:90px minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;padding:15px 0!important;border-top:1px solid #dce5ee!important}
body.route-page .tc-destination-junction{font-size:17px!important;font-weight:800!important;color:#255e8d!important}
body.route-page .tc-destinations strong{font-size:17px!important;color:#263e56!important}
body.route-page .tc-destinations p{font-size:15px!important;line-height:1.5!important;color:#465d73!important;margin:4px 0 0!important}
body.route-page .tc-destinations a{font-size:14px!important;font-weight:700!important;color:#245c8c!important;text-decoration:underline!important;text-underline-offset:3px!important}
@media(max-width:650px){body.route-page .tc-planned,body.route-page .tc-destinations{padding:16px!important}body.route-page .tc-planned-row{grid-template-columns:minmax(0,1fr)!important}body.route-page .tc-destinations li{grid-template-columns:65px minmax(0,1fr)!important;gap:10px!important}body.route-page .tc-destinations li>a{grid-column:2!important}body.route-page .tc-planned h2,body.route-page .tc-destinations h2{font-size:20px!important}}
/* Override the earlier dashboard's three-column incident layout. */
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card{padding:0!important;display:grid!important;grid-template-columns:minmax(0,1fr) 190px!important;gap:0!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.tc-status-strip{grid-column:1/-1!important;grid-row:1!important;margin:0!important;border:0!important;border-radius:0!important;position:static!important;box-shadow:none!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-body{grid-column:1!important;grid-row:2!important;padding:15px 16px!important;min-width:0!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-side{grid-column:2!important;grid-row:2!important;padding:15px!important;margin:0!important}
@media(max-width:1099px){body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card{grid-template-columns:minmax(0,1fr)!important}body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-side{grid-column:1!important;grid-row:3!important;border-left:0!important;border-top:1px solid #e1e8ef!important;margin:0 16px!important;padding:10px 0 14px!important}}

body.route-page .tc-road-volume{margin:16px 0!important;padding:20px!important;background:#edf4fc!important;border:1px solid #bfd1e5!important;border-radius:12px!important}
body.route-page .tc-road-volume h2{font-size:22px!important;margin:0 0 15px!important;color:#203b55!important}
body.route-page .tc-volume-heading{display:flex!important;align-items:center!important;gap:15px!important;margin-bottom:12px!important}
body.route-page .tc-volume-heading>strong{font-size:36px!important;line-height:1.1!important;color:#245b89!important}
body.route-page .tc-volume-heading>span{font-size:14px!important;line-height:1.5!important;color:#3e5770!important}
body.route-page .tc-road-volume>p{font-size:15px!important;line-height:1.6!important;color:#3e5770!important;margin:10px 0 0!important}
body.route-page .tc-road-volume .tc-volume-source{font-size:13px!important}
body.route-page .tc-volume-source a{color:#245b89!important;text-decoration:underline!important}
@media(max-width:600px){body.route-page .tc-road-volume{padding:16px!important}body.route-page .tc-volume-heading>strong{font-size:30px!important}}

body.route-page :is(#planned-closures,#traffic-volumes,#faq){scroll-margin-top:85px!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card{grid-template-columns:minmax(0,1fr)!important;padding:0!important;background:#fff!important;gap:0!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card>.tc-status-strip{grid-column:1!important;grid-row:1!important;margin:0!important;border:0!important;position:static!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card>div:not(.home-disruption-end):not(.tc-status-strip){grid-column:1!important;grid-row:2!important;padding:15px 16px!important;min-width:0!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card>.home-disruption-end{grid-column:1!important;grid-row:3!important;padding:0 16px 15px!important;align-items:flex-start!important}

body.route-page .accident-card.tc-strip-card>.tc-status-strip{margin:-16px -16px 14px!important;border:0!important}body.route-page .accident-card.tc-strip-card .accident-level,body.route-page .accident-card.tc-strip-card .accident-card-foot>b{display:none!important}
/* Load-more actions should read as buttons, not full-width section headings. */
body.route-page :is(button.tc-more-reports,button.hub-reports-more,button#planned-show-more){display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:12px!important;width:auto!important;max-width:100%!important;min-height:44px!important;justify-self:start!important;align-self:start!important;margin:14px 0 4px!important;padding:11px 18px!important;border:1px solid #12466f!important;border-radius:8px!important;background:#18568b!important;color:#fff!important;box-shadow:0 2px 3px #12334a24!important;font:inherit!important;font-size:14px!important;font-weight:700!important;line-height:1.4!important;cursor:pointer!important;text-decoration:none!important;transition:background .15s,box-shadow .15s!important}
body.route-page :is(button.tc-more-reports,button.hub-reports-more,button#planned-show-more)::after{content:''!important;display:block!important;width:8px!important;height:8px!important;flex:0 0 8px!important;border-right:2px solid currentColor!important;border-bottom:2px solid currentColor!important;transform:translateY(-2px) rotate(45deg)!important}
body.route-page :is(button.tc-more-reports,button.hub-reports-more,button#planned-show-more):hover{background:#103f69!important;box-shadow:0 3px 6px #12334a38!important}
body.route-page :is(button.tc-more-reports,button.hub-reports-more,button#planned-show-more):focus-visible{outline:3px solid #e7ad24!important;outline-offset:3px!important}
body.route-page :is(button.tc-more-reports,button.hub-reports-more,button#planned-show-more):active{box-shadow:inset 0 2px 3px #061f3b55!important}
@media(min-width:901px){
body.route-page :is(.home-hero,.m6-hero,.section-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero){position:relative!important}
body.route-page :is(.home-hero,.m6-hero,.section-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero)>.tc-hero-clock{position:absolute!important;top:10px!important;right:16px!important;margin:0!important;z-index:3!important}

}

/* A legible date/time badge with the time as the primary value. */
body.route-page .tc-hero-clock{display:inline-flex!important;align-items:center!important;gap:14px!important;padding:9px 14px!important;background:#143954!important;border:1px solid #7896ae!important;border-radius:10px!important;box-shadow:0 3px 10px #041b2b30!important;white-space:nowrap!important;text-align:left!important}
body.route-page .tc-clock-date{font-size:13px!important;line-height:1.4!important;font-weight:600!important;letter-spacing:.15px!important;color:#e2edf5!important}
body.route-page .tc-clock-time{display:block!important;border-left:1px solid #57778f!important;padding-left:14px!important;color:#ffd15a!important;font-size:24px!important;line-height:1.1!important;font-weight:800!important;font-variant-numeric:tabular-nums!important;letter-spacing:.4px!important}
@media(max-width:600px){body.route-page .tc-hero-clock{gap:10px!important;padding:8px 11px!important}body.route-page .tc-clock-date{font-size:12px!important}body.route-page .tc-clock-time{font-size:21px!important;padding-left:10px!important}}
body.route-page .tc-hero-clock{gap:20px!important;padding:11px 20px!important}
body.route-page .tc-clock-time{padding-left:20px!important}
@media(min-width:901px){body.route-page :is(.home-hero,.m6-hero,.section-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero)>.tc-hero-clock{right:32px!important}}
@media(max-width:900px){body.route-page .tc-hero-clock{display:flex!important;width:fit-content!important;max-width:calc(100% - 32px)!important;gap:14px!important;margin:0 16px 14px auto!important;padding:10px 15px!important}body.route-page .tc-clock-time{padding-left:14px!important}}
body.route-page .tc-status-delay{align-items:center!important;justify-content:flex-end!important;gap:7px!important;line-height:1!important;align-self:center!important;margin:0!important;padding:0!important}
body.route-page .tc-status-delay b{display:block!important;line-height:1!important;margin:0!important;padding:0!important}
body.route-page .tc-status-strip{width:100%!important;max-width:100%!important;min-width:0!important}
/* Coloured top edges distinguish homepage card groups. */
body.route-page.home-page-v2 :is(.home-utility-strip>a,.home-feature-card,.home-route-status-grid>a,.home-map-card,.home-incidents-card){border-top:4px solid #2875b5!important}
body.route-page.home-page-v2 :is(.home-utility-strip>a[href="/incidents/"],.home-feature-card[href="/incidents/"],.home-incidents-card){border-top-color:#c94352!important}
body.route-page.home-page-v2 .home-feature-card[href="/roadworks/"]{border-top-color:#d29a24!important}
body.route-page.home-page-v2 .home-feature-card[href="/traffic/motorway-services/"]{border-top-color:#25866b!important}
body.route-page.home-page-v2 .home-utility-strip>a[href="/major-roads/"]{border-top-color:#25866b!important}
body.route-page.home-page-v2 :is(#results>.card,#results .affected-section){border-top:4px solid #2875b5!important}
body.route-page.home-page-v2 :is(#results>.card.tc-report--works,#results .affected-section.tc-report--works){border-top-color:#d29a24!important}
body.route-page.home-page-v2 :is(#results>.card.tc-report--closure,#results .affected-section.tc-report--closure,#results>.card.tc-report--collision){border-top-color:#c94352!important}
body.route-page.home-page-v2 :is(#results>.card.tc-report--congestion,#results .affected-section.tc-report--congestion){border-top-color:#25866b!important}

/* Grouped updates use the same full status header as individual updates. */
body.route-page #results>.card.tc-grouped-report{padding:0!important;overflow:hidden!important;border-top-width:1px!important}
body.route-page #results>.card.tc-grouped-report>.tc-status-strip{margin:0!important;border-radius:0!important;width:100%!important}
body.route-page #results>.card.tc-grouped-report>h3{padding:16px 16px 0!important;margin:0 0 12px!important}
body.route-page #results>.card.tc-grouped-report>p{padding:0 16px!important;margin:0 0 14px!important}
body.route-page #results>.card.tc-grouped-report>details{margin:0 16px 16px!important}
body.route-page.home-page-v2 #results>.card.tc-strip-card,body.route-page.home-page-v2 #results .affected-section.tc-strip-card{border-top-width:1px!important}

/* Align full-width status bands with the card edges and their body colours. */
body.route-page #results :is(.card,.affected-section).tc-strip-card{padding:0!important;overflow:hidden!important}
body.route-page #results :is(.card,.affected-section).tc-strip-card>.tc-status-strip{margin:0!important;width:100%!important;max-width:100%!important;border:0!important;border-radius:0!important}
body.route-page #results :is(.card,.affected-section).tc-strip-card>h3{padding:16px 16px 0!important;margin:0 0 12px!important}
body.route-page #results :is(.card,.affected-section).tc-strip-card>p{padding:0 16px!important;margin:10px 0!important}
body.route-page #results :is(.card,.affected-section).tc-strip-card>:is(.tc-report-dates,.tc-report-footer,.tc-report-extra){margin-left:16px!important;margin-right:16px!important}
body.route-page #results :is(.card,.affected-section).tc-strip-card>.tc-report-footer{padding-bottom:14px!important}
body.route-page.home-page-v2 #results .tc-strip-card[data-severity=update]{background:#edf4fc!important;border-color:#b8cee3!important}
body.route-page.home-page-v2 #results .tc-strip-card[data-severity=minor]{background:#eef7f0!important;border-color:#b2d1bc!important}
body.route-page.home-page-v2 #results .tc-strip-card[data-severity=moderate]{background:#fff7e5!important;border-color:#ddc68c!important}
body.route-page.home-page-v2 #results .tc-strip-card[data-severity=serious]{background:#fff1f1!important;border-color:#dfa8af!important}
/* Equal-height colour bands, including cards without delay values. */
body.route-page .tc-status-strip{min-height:56px!important;height:56px!important;align-items:center!important;padding-top:10px!important;padding-bottom:10px!important}
@media(max-width:600px){body.route-page .tc-status-strip{min-height:68px!important;height:68px!important}}
body.route-page .tc-status-delay b{font-size:20px!important;font-weight:700!important}
@media(max-width:600px){body.route-page .tc-status-delay b{font-size:19px!important}}

/* Compact incident content: metadata below the text, without an empty sidebar. */
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card{grid-template-columns:minmax(0,1fr)!important;min-height:0!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-body{grid-column:1!important;grid-row:2!important;padding:10px 14px!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-body>p{margin:5px 0 0!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-side{grid-column:1!important;grid-row:3!important;display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;justify-content:flex-start!important;gap:8px 14px!important;border-left:0!important;border-top:1px solid #dfe7ed!important;margin:0 14px!important;padding:8px 0 10px!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-side>span{margin:0!important;padding:4px 7px!important;line-height:1.4!important;font-size:12px!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-report-dates{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center!important;gap:6px 14px!important;border:0!important;padding:0!important;margin:0!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-date-pair{display:flex!important;align-items:baseline!important;gap:5px!important;white-space:nowrap!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-report-dates :is(dt,dd){margin:0!important;padding:0!important;font-size:12px!important;line-height:1.5!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-report-dates dt{font-weight:700!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-small-action{margin:0 0 0 auto!important;padding:6px 10px!important;font-size:12px!important;min-height:0!important}
body.route-page .tc-status-strip{height:44px!important;min-height:44px!important;padding-top:8px!important;padding-bottom:8px!important}
@media(max-width:600px){body.route-page .tc-status-strip{height:58px!important;min-height:58px!important}body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-side{gap:7px 10px!important}body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-report-dates{gap:5px 12px!important}}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card>.route-row-side{width:auto!important;min-width:0!important;min-height:0!important;box-sizing:border-box!important}
body.route-page.tc-traffic-dashboard .approved-list .route-row.tc-strip-card .tc-report-dates{width:auto!important;min-width:0!important;flex:0 1 auto!important}

/* A concise traffic-volume panel with source methodology on About. */
body.route-page .tc-road-volume{padding:0!important;background:#fff!important;border-color:#c8d8e6!important;overflow:hidden!important}
body.route-page .tc-volume-top{display:flex!important;align-items:center!important;justify-content:space-between!important;flex-wrap:wrap!important;gap:8px 16px!important;padding:13px 18px!important;background:#edf4fb!important;border-bottom:1px solid #d8e3ee!important}
body.route-page .tc-volume-top h2{font-size:20px!important;margin:0!important}
body.route-page .tc-volume-top>span{font-size:13px!important;font-weight:600!important;color:#4c667e!important}
body.route-page .tc-volume-content{display:flex!important;align-items:center!important;gap:24px!important;padding:16px 18px!important}
body.route-page .tc-volume-heading{display:block!important;flex:0 0 auto!important;margin:0!important;min-width:160px!important}
body.route-page .tc-volume-heading>strong{display:block!important;font-size:30px!important;font-weight:750!important}
body.route-page .tc-volume-heading>span{display:block!important;font-size:14px!important;margin-top:4px!important}
body.route-page .tc-volume-context{border-left:1px solid #dce5ee!important;padding-left:24px!important;min-width:0!important}
body.route-page .tc-volume-context p{font-size:14px!important;line-height:1.5!important;color:#3e5770!important;margin:0 0 5px!important}
body.route-page .tc-volume-context small{font-size:12px!important;line-height:1.5!important;color:#62788c!important}
@media(max-width:600px){body.route-page .tc-volume-content{align-items:flex-start!important;flex-direction:column!important;gap:12px!important;padding:14px 16px!important}body.route-page .tc-volume-context{border-left:0!important;border-top:1px solid #dce5ee!important;padding:12px 0 0!important;width:100%!important}body.route-page .tc-volume-heading>strong{font-size:28px!important}body.route-page .tc-volume-top{padding:12px 16px!important}}

/* Planned closures: compact tinted rows with times directly beneath the location. */
body.route-page .tc-planned-range{font-size:14px!important;font-weight:600!important;color:#4b647c!important;margin:0 0 12px!important}
body.route-page .tc-planned-row{display:block!important;border:1px solid #e1c6ca!important;border-radius:9px!important;padding:12px 14px!important;margin:8px 0!important;background:#fff3f3!important}
body.route-page .tc-planned-row.tc-planned-partial{background:#fff9eb!important;border-color:#e6d4ab!important}
body.route-page .tc-planned-row>div{display:flex!important;align-items:baseline!important;flex-wrap:wrap!important;gap:7px 12px!important}
body.route-page .tc-planned-type{display:inline-block!important;flex:0 0 auto!important;padding:4px 7px!important;border-radius:5px!important;margin:0!important;background:#ad2738!important;color:#fff!important;font-size:12px!important;line-height:1.3!important}
body.route-page .tc-planned-partial .tc-planned-type{background:#91600c!important}
body.route-page .tc-planned-row strong{font-size:16px!important;line-height:1.4!important}
body.route-page .tc-planned-dates{margin:7px 0!important;font-size:13px!important;line-height:1.7!important}
body.route-page .tc-planned-dates>span{margin:0 5px!important;color:#6c7d8c!important}
body.route-page .tc-planned-row summary{font-size:13px!important;line-height:1.5!important}
body.route-page .tc-planned-row details p{font-size:14px!important;margin-top:8px!important}
@media(max-width:900px){
body.route-page .tc-hero-clock{padding:6px 10px!important;gap:10px!important;margin:0 16px 4px auto!important;border-radius:7px!important}
body.route-page .tc-clock-date{font-size:11px!important;line-height:1.3!important}
body.route-page .tc-clock-time{font-size:17px!important;padding-left:10px!important}
body.route-page.tc-traffic-dashboard .tc-route-hero .m6-hero-inner{padding:10px 16px!important}
body.route-page.tc-traffic-dashboard .tc-route-identity{gap:10px!important;align-items:center!important}
body.route-page.tc-traffic-dashboard .tc-route-identity .live-pill{display:none!important}
body.route-page.tc-traffic-dashboard .m6-subtitle{font-size:14px!important;line-height:1.4!important;margin:8px 0 0!important}
body.route-page.tc-traffic-dashboard .tc-global-search{padding-top:6px!important;padding-bottom:12px!important}
body.route-page.tc-traffic-dashboard .tc-global-search label{font-size:13px!important;margin-bottom:6px!important}
body.route-page.tc-traffic-dashboard .tc-global-search form{gap:8px!important}
body.route-page.tc-traffic-dashboard .tc-global-search input{font-size:15px!important;min-height:42px!important;padding:10px 12px!important}
body.route-page.tc-traffic-dashboard .tc-global-search button{font-size:14px!important;min-height:42px!important;padding:10px 16px!important}
}
@media(max-width:600px){
body.route-page .tc-status-strip{height:50px!important;min-height:50px!important;padding-top:7px!important;padding-bottom:7px!important}
body.route-page .tc-status-kind{row-gap:0!important;column-gap:6px!important}
body.route-page .tc-status-kind strong{font-size:13px!important;line-height:1.2!important}
body.route-page .tc-status-kind>span{font-size:12px!important;line-height:1.2!important;margin-left:28px!important}
}
@media(max-width:900px){
body.route-page.tc-traffic-dashboard .m6-main-grid>div.m6-left{grid-column:1!important;grid-row:1!important;order:-2!important;position:static!important}
body.route-page.tc-traffic-dashboard .m6-main-grid>div.m6-right{grid-column:1!important;grid-row:2!important;order:0!important;position:static!important}
}

/* Compact volume panel with related facts kept together. */
body.route-page .tc-volume-top{justify-content:flex-start!important;gap:8px 16px!important;padding:11px 16px!important}
body.route-page .tc-volume-top>span{padding:3px 8px!important;border:1px solid #d2dfeb!important;border-radius:5px!important;font-size:12px!important;background:#fff!important}
body.route-page .tc-volume-content{display:grid!important;grid-template-columns:max-content max-content minmax(0,1fr)!important;gap:4px 24px!important;padding:14px 16px!important;align-items:center!important}
body.route-page .tc-volume-heading{min-width:0!important;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:3px!important;grid-row:1/3!important}
body.route-page .tc-volume-heading>strong{font-size:26px!important;line-height:1.15!important}
body.route-page .tc-volume-heading>span{font-size:13px!important;margin:0!important}
body.route-page .tc-volume-context{display:contents!important}
body.route-page .tc-volume-context p:first-child{grid-column:3!important;grid-row:1!important;margin:0!important;border:0!important;padding:0!important;font-weight:600!important}
body.route-page .tc-volume-context p:nth-child(2){grid-column:2!important;grid-row:1/3!important;margin:0!important;padding:6px 24px!important;border-left:1px solid #dce5ee!important;border-right:1px solid #dce5ee!important;font-weight:600!important;max-width:240px!important}
body.route-page .tc-volume-context small{grid-column:3!important;grid-row:2!important;font-size:12px!important}
@media(max-width:700px){body.route-page .tc-volume-content{grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:8px 12px!important;padding:12px 14px!important}body.route-page .tc-volume-top{padding:10px 14px!important}body.route-page .tc-volume-top h2{font-size:18px!important}body.route-page .tc-volume-top>span{font-size:11px!important}body.route-page .tc-volume-heading{grid-row:1!important}body.route-page .tc-volume-heading>strong{font-size:24px!important}body.route-page .tc-volume-context p{font-size:13px!important}body.route-page .tc-volume-context p:nth-child(2){grid-row:1!important;padding:4px 0 4px 12px!important;border-right:0!important;font-size:12px!important}body.route-page .tc-volume-context p:first-child{grid-column:1/-1!important;grid-row:2!important;padding-top:9px!important;border-top:1px solid #dce5ee!important}body.route-page .tc-volume-context small{grid-column:1/-1!important;grid-row:3!important;font-size:11px!important}}

/* Distinct, clearly interactive FAQ rows; answers remain plain white. */
body.route-page .m6-faq details{padding:0!important}
body.route-page .m6-faq details p{margin:0!important}
body.route-page .m6-faq details,body.route-page .m6-faq details:last-child{border:1px solid #cddce9!important;border-radius:9px!important;margin:9px 0!important;overflow:hidden!important;background:#fff!important;box-shadow:0 2px 5px #173d6006!important}
body.route-page .m6-faq details>summary{display:flex!important;align-items:center!important;justify-content:space-between!important;cursor:pointer!important;list-style:none!important;min-height:54px!important;padding:13px 16px!important;font-size:16px!important;line-height:1.45!important;background:#f0f5fa!important;color:#203e59!important;gap:16px!important;transition:background .15s ease!important}
body.route-page .m6-faq summary::-webkit-details-marker{display:none!important}
body.route-page .m6-faq summary:after{content:'+'!important;display:grid!important;place-items:center!important;flex:0 0 28px!important;width:28px!important;height:28px!important;border-radius:6px!important;background:#fff!important;border:1px solid #bccfe1!important;color:#245b89!important;font-size:21px!important;font-weight:500!important;line-height:1!important}
body.route-page .m6-faq summary:hover{background:#e5eef7!important}
body.route-page .m6-faq details[open]>summary{background:#e8f1fa!important;color:#174e7c!important;border-bottom:1px solid #d4e1ed!important}
body.route-page .m6-faq details[open]>summary:after{content:'−'!important;background:#245b89!important;color:#fff!important;border-color:#245b89!important}
body.route-page .m6-faq .tc-faq-answer{padding:14px 16px!important;background:#fff!important}
body.route-page .m6-faq details>p{padding:14px 16px!important;background:#fff!important}
body.route-page .m6-faq .tc-faq-answer p{padding:0!important}
body.route-page .m6-faq details p{font-size:15px!important;line-height:1.65!important}
@media(max-width:600px){body.route-page .m6-faq details>summary{padding:12px!important;font-size:15px!important;gap:12px!important}body.route-page .m6-faq .tc-faq-answer,body.route-page .m6-faq details>p{padding:12px!important}}


/* Road conditions and accident-first incident list. */
body.route-page .tc-current-summary{background:#f0f5fa;border:1px solid #c8d9e8;border-radius:9px;padding:14px 18px;margin:0 0 16px}
body.route-page .tc-current-summary h2{font-size:18px;margin:0 0 6px;color:#23445f}
body.route-page .tc-current-summary p{font-size:15px;line-height:1.6;margin:0;color:#3e566c}
body.route-page #road-accidents .panel-head{background:#fff0f1;border-bottom:1px solid #ecd0d4}
body.route-page #road-accidents .panel-head h2{color:#922536}
body.route-page .direction-tabs{display:flex!important;flex-wrap:wrap!important;gap:8px!important}
body.route-page .direction-tabs button{border:1px solid #bdcfe0!important;background:#edf4fa!important;color:#244c6e!important;border-radius:7px!important;min-height:42px!important;padding:9px 14px!important;cursor:pointer!important}
body.route-page .direction-tabs button.selected{background:#245b89!important;border-color:#245b89!important;color:white!important;box-shadow:inset 0 -3px 0 #f3c64a!important}
body.route-page .direction-tabs button:focus-visible{outline:3px solid #f3c64a;outline-offset:2px}
body.route-page.tc-traffic-dashboard .m6-main-grid:has(#road-accidents:not([hidden]))>.m6-right{display:block!important}
@media(max-width:600px){body.route-page .tc-current-summary{padding:12px 14px}body.route-page .direction-tabs button{padding:8px 11px!important;font-size:13px!important}}

/* Current conditions: warning colours follow the actual disruption. */
body.route-page .tc-current-summary{border:1px solid #a9c4dc!important;border-top:4px solid #245b89!important;background:#eaf3fc!important;padding:15px 18px!important;box-shadow:0 3px 9px #153c5c0c!important}
body.route-page .tc-current-summary h2{display:flex!important;align-items:center!important;gap:10px!important;font-size:19px!important;margin:0 0 8px!important;color:#194c77!important}
body.route-page .tc-current-summary h2:before{content:'i';display:grid;place-items:center;width:27px;height:27px;flex:0 0 27px;background:#245b89;color:white;border-radius:50%;font-size:18px;font-weight:700}
body.route-page .tc-current-summary p{font-size:16px!important;line-height:1.55!important;color:#284b69!important;font-weight:500!important}
body.route-page .tc-current-summary[data-level="serious"]{background:#fff0f1!important;border-color:#dfb0b7!important;border-top-color:#b52d40!important}
body.route-page .tc-current-summary[data-level="serious"] h2{color:#942337!important}
body.route-page .tc-current-summary[data-level="serious"] h2:before{content:'!';background:#b52d40}
body.route-page .tc-current-summary[data-level="serious"] p{color:#6f2e39!important}
body.route-page .tc-current-summary[data-level="moderate"]{background:#fff6df!important;border-color:#e2c990!important;border-top-color:#a66b0c!important}
body.route-page .tc-current-summary[data-level="moderate"] h2{color:#795009!important}
body.route-page .tc-current-summary[data-level="moderate"] h2:before{content:'!';background:#94600a}
@media(max-width:600px){body.route-page .tc-current-summary{padding:12px 14px!important}body.route-page .tc-current-summary h2{font-size:17px!important}body.route-page .tc-current-summary p{font-size:15px!important}}

/* Keep the mobile hero clock clear of the live ticker. */
@media(max-width:900px){body.route-page :is(.home-hero,.m6-hero,.section-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero):has(>.tc-hero-clock){padding-top:10px!important}body.route-page :is(.home-hero,.m6-hero,.section-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero)>.tc-hero-clock{margin-top:0!important}}

/* Keep shared status headers isolated from homepage card body typography. */
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card{display:grid!important;grid-template-rows:auto auto auto!important;overflow:hidden!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card>.tc-status-strip{grid-area:1 / 1!important;padding:10px 14px!important;min-width:0!important;box-sizing:border-box!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card .tc-status-kind strong{color:#fff!important;font-size:13px!important;line-height:1.2!important;margin:0!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card>div:not(.tc-status-strip):not(.home-disruption-end){position:static!important;transform:none!important;grid-area:2 / 1!important;padding:12px 14px!important}
body.route-page.home-page-v2 #home-major-disruption .home-disruption-card.tc-strip-card>div:not(.tc-status-strip):not(.home-disruption-end)>strong{display:block!important;margin:0 0 6px!important;font-size:16px!important;line-height:1.4!important}
/* Status labels must retain contrast against every coloured header. */
body.route-page main .tc-strip-card .tc-status-strip .tc-status-kind>strong{color:#fff!important;margin:0!important}
body.route-page main .tc-strip-card .tc-status-strip .tc-status-kind>span,body.route-page main .tc-strip-card .tc-status-strip .tc-status-delay{color:#fff!important}
/* Keep delay figures aligned with their units and between cards. */
body.route-page .tc-status-strip .tc-status-delay{display:flex!important;align-items:baseline!important;justify-content:flex-end!important;gap:5px!important;white-space:nowrap!important;font-variant-numeric:tabular-nums!important;line-height:1.2!important}
body.route-page .tc-status-strip .tc-status-delay>b{display:inline-block!important;min-width:2.5ch!important;text-align:right!important;font-variant-numeric:tabular-nums!important;line-height:1!important;margin:0!important;padding:0!important;vertical-align:baseline!important}
/* Show the road's current conditions before navigation and totals on phones. */
@media(max-width:900px){body.route-page.tc-traffic-dashboard .m6-shell:has(>#road-current-summary){display:flex!important;flex-direction:column!important}body.route-page.tc-traffic-dashboard .m6-shell>#road-current-summary{order:-1!important;margin:12px 0 8px!important;flex:0 0 auto!important}}

/* Service pages without verified coordinates show useful access information. */
body.route-page .service-map-card.tc-service-no-map{align-self:start!important;min-height:0!important}
body.route-page .tc-service-no-map .service-map-wrap{display:none!important}
body.route-page .tc-service-access{margin:12px 16px!important;font-size:14px!important;line-height:1.6!important}
body.route-page .tc-service-operator{display:inline-flex!important;margin:0 16px 16px!important}
/* Nested search bars use their containing hero or card's existing gutters. */
body.route-page :is(.major-roads-hero,.services-index-hero,.section-hero,.m6-hero,.service-hero,.m6-info-card) .tc-global-search{padding-left:0!important;padding-right:0!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;width:100%!important}

/* Keep popup metadata aligned, including long date ranges on narrow screens. */
body.route-page #map .tc-map-popup-grid{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:0!important}
body.route-page #map .tc-map-popup-grid>div,
body.route-page #map .tc-map-popup-grid>div:only-child{display:grid!important;grid-template-columns:64px minmax(0,1fr)!important;align-items:baseline!important;justify-content:normal!important;gap:10px!important;padding:7px 9px!important;border:0!important}
body.route-page #map .tc-map-popup-grid>div+div{border-top:1px solid #edf1f4!important}
body.route-page #map .tc-map-popup-grid>div>span,
body.route-page #map .tc-map-popup-grid>div>b{margin:0!important;min-width:0!important;white-space:normal!important;text-align:left!important}

/* Service guides keep search outside their information card. */
body.route-page .tc-service-guide>.tc-global-search{width:100%!important;box-sizing:border-box!important;margin:0!important;padding:14px!important;border:1px solid #cbdbea!important;border-radius:10px!important;background:#eaf2fa!important}
body.route-page .tc-service-guide>.tc-global-search label{color:#294c69!important}
body.route-page .tc-service-guide .tc-service-meta{display:flex!important;flex-wrap:wrap!important;align-items:center!important;gap:10px!important;margin:12px 0 16px!important;font-size:16px!important}
body.route-page .tc-service-guide .tc-service-meta>a{display:inline-flex!important;padding:5px 11px!important;background:#285b88!important;color:#fff!important;border-radius:6px!important;text-decoration:none!important;font-weight:800!important}
body.route-page .tc-service-guide .tc-service-meta>span{color:#536b80!important}
body.route-page .tc-service-guide .m6-info-card>p{line-height:1.55!important}
@media(max-width:600px){body.route-page .tc-service-guide>.tc-global-search{padding:12px!important}body.route-page .tc-service-guide .m6-info-card{padding:16px!important}}

/* National roadworks search opens directly onto the map and matching works. */
body.route-page.tc-roadworks-page .section-hero{padding:24px max(16px,calc((100% - 1180px)/2))!important}
body.route-page.tc-roadworks-page .section-hero-inner{max-width:1180px;margin:0 auto}
body.route-page.tc-roadworks-page #search-form{display:flex!important;gap:10px!important;max-width:780px!important;margin:18px 0 0!important;padding:0!important;background:transparent!important}
body.route-page.tc-roadworks-page .home-search-field{flex:1;min-width:0;position:relative}
body.route-page.tc-roadworks-page #search{box-sizing:border-box;width:100%;min-height:46px;padding:12px 14px;border:1px solid #b6c9dc;border-radius:8px}
body.route-page.tc-roadworks-page #search-form>button{padding:10px 22px;background:#f4cc51;color:#173249;border:1px solid #d6ae35;border-radius:8px;font-weight:800}
body.route-page.tc-roadworks-page .home-map-led{margin-top:16px!important}
body.route-page.tc-roadworks-page #results{max-height:none!important;overflow:visible!important}
@media(max-width:900px){body.route-page.tc-roadworks-page .home-map-led{display:flex!important;flex-direction:column!important}body.route-page.tc-roadworks-page .home-map-card{order:-1!important}body.route-page.tc-roadworks-page #search-form>button{padding:10px 16px}}

/* Match roadworks hero and map/results gutters at every screen width. */
body.route-page.tc-roadworks-page .section-hero{width:100%!important;max-width:none!important;box-sizing:border-box!important;padding:24px 4.5vw!important;margin-left:0!important;margin-right:0!important}
body.route-page.tc-roadworks-page .section-hero-inner{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;box-sizing:border-box!important}
body.route-page.tc-roadworks-page main.home-shell{width:100%!important;max-width:none!important;margin:0!important;padding:14px 4.5vw 30px!important;box-sizing:border-box!important}
body.route-page.tc-roadworks-page .home-map-led{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;min-width:0!important;box-sizing:border-box!important;align-items:start!important}
body.route-page.tc-roadworks-page .home-map-led> *{min-width:0!important;width:100%!important;box-sizing:border-box!important}
body.route-page.tc-roadworks-page .home-map-card>.home-panel-head,
body.route-page.tc-roadworks-page .home-incidents-card>.home-panel-head{min-height:60px!important;box-sizing:border-box!important;align-items:center!important}
@media(max-width:900px){body.route-page.tc-roadworks-page .section-hero{padding:20px 16px!important}body.route-page.tc-roadworks-page main.home-shell{padding:12px 16px 24px!important}}

/* Compact road and impact controls above the national roadworks map. */
body.route-page.tc-roadworks-page .tc-works-controls{margin:12px 0 0;padding:14px;border:1px solid #c9d9e7;border-radius:10px;background:#fff}
body.route-page.tc-roadworks-page .tc-works-filter-row{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
body.route-page.tc-roadworks-page #roadworks-roads{margin-top:12px;padding-top:12px;border-top:1px solid #e2eaf1}
body.route-page.tc-roadworks-page .tc-works-controls button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 11px;border:1px solid #c6d7e6;border-radius:7px;background:#f0f5fa;color:#284e6b;font:inherit;font-size:13px;font-weight:700;cursor:pointer}
body.route-page.tc-roadworks-page .tc-works-controls button[aria-pressed=true]{background:#245985;border-color:#245985;color:#fff}
body.route-page.tc-roadworks-page .tc-works-controls button b{min-width:20px;text-align:center;padding:2px 5px;border-radius:4px;background:#dfE8f1;color:inherit;font-size:11px;font-variant-numeric:tabular-nums}
body.route-page.tc-roadworks-page .tc-works-controls button[aria-pressed=true] b{background:#ffffff30}
body.route-page.tc-roadworks-page .tc-works-more summary{cursor:pointer;padding:7px 10px;font-size:13px;color:#285a83;font-weight:700}
body.route-page.tc-roadworks-page .tc-works-extra{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
body.route-page.tc-roadworks-page #roadworks-schedule-note{font-size:13px;line-height:1.5;margin:12px 0 0;color:#526b80}
body.route-page.tc-roadworks-page .tc-planned-view{grid-template-columns:minmax(0,1fr)!important}
body.route-page.tc-roadworks-page [hidden]{display:none!important}
@media(max-width:600px){body.route-page.tc-roadworks-page .tc-works-controls{padding:12px}body.route-page.tc-roadworks-page .tc-works-filter-row{gap:6px}body.route-page.tc-roadworks-page .tc-works-controls button{font-size:12px;padding:7px 9px}}

/* Keep the homepage content aligned with its header on wide screens. */
body.route-page.home-page-v2 .home-hero>.home-hero-inner,
body.route-page.home-page-v2 main.home-shell{width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;box-sizing:border-box!important;padding-left:4.5vw!important;padding-right:4.5vw!important}
@media(max-width:900px){body.route-page.home-page-v2 .home-hero>.home-hero-inner,body.route-page.home-page-v2 main.home-shell{padding-left:16px!important;padding-right:16px!important}}

/* One outer gutter across public templates; inner cards retain their own padding. */
html body.route-page[class]{--tc-page-gutter:4.5vw}
html body.route-page[class] :is(main.home-shell,main.section-shell,main.m6-shell,main.junction-shell-v4,main.service-shell,main.major-roads-shell,main.location-directory,main.tc-info-shell){width:100%!important;max-width:none!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;padding-left:var(--tc-page-gutter)!important;padding-right:var(--tc-page-gutter)!important}
html body.route-page[class] :is(.home-hero,.section-hero,.m6-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero){width:100%!important;max-width:none!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;padding-left:var(--tc-page-gutter)!important;padding-right:var(--tc-page-gutter)!important}
html body.route-page[class] :is(.home-hero-inner,.section-hero-inner,.m6-hero-inner,.junction-hero-inner,.service-hero-inner,.services-index-hero-inner){width:100%!important;max-width:none!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;padding-left:0!important;padding-right:0!important}
html body.route-page[class]>.tc-global-search{width:100%!important;max-width:none!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;padding-left:var(--tc-page-gutter)!important;padding-right:var(--tc-page-gutter)!important}
html body.route-page[class] :is(.tc-nav,.tc-footer){width:100%!important;max-width:none!important;box-sizing:border-box!important;margin-left:0!important;margin-right:0!important;padding-left:var(--tc-page-gutter)!important;padding-right:var(--tc-page-gutter)!important}
html body.route-page[class] :is(.tc-info-shell,.location-directory)>.tc-global-search{width:100%!important;max-width:none!important;box-sizing:border-box!important;margin:16px 0!important;padding:12px!important;background:#eaf2fa!important;border:1px solid #cbdbea!important;border-radius:8px!important}
html body.route-page[class] :is(.tc-info-shell,.location-directory)>.tc-global-search label{color:#294c69!important}
html body.route-page[class] .tc-info-card>p{max-width:80ch}
@media(max-width:900px){html body.route-page[class]{--tc-page-gutter:16px}}

/* Reset nested hero padding with the same specificity as dashboard rules. */
html body.route-page[class] :is(.home-hero,.section-hero,.m6-hero,.tc-route-hero,.junction-hero-v4,.service-hero,.major-roads-hero,.services-index-hero) :is(.home-hero-inner,.section-hero-inner,.m6-hero-inner,.junction-hero-v4-inner,.junction-hero-inner,.service-hero-inner,.major-roads-hero-inner,.services-index-hero-inner){width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;margin-inline:0!important;padding-left:0!important;padding-right:0!important;padding-inline:0!important;box-sizing:border-box!important}
html body.route-page[class] .map-event-legend .legend-incident{background:#dc2626!important}
html body.route-page[class] .map-event-legend .legend-congestion{background:#7c3aed!important}
html body.route-page[class] .map-event-legend .legend-roadworks{background:#d99500!important}
html body.route-page[class] .map-event-legend .legend-closure{background:#1466d8!important}
html body.route-page[class] .map-event-legend .legend-cluster{background:#155e75!important}
html body.route-page[class] .map-event-legend .legend-dot{width:12px!important;height:12px!important;flex:0 0 12px!important;border:2px solid #fff!important;box-shadow:0 0 0 1px #899db0!important}

/* Empty result panels should fit their message, independently of nearby links. */
body.route-page .section-content-grid:has(#section-live-list>.empty){align-items:start!important}
body.route-page .section-live-panel:has(#section-live-list>.empty),body.route-page #section-live-list:has(>.empty){min-height:0!important;height:auto!important;align-self:start!important}

body.route-page .tc-footer .tc-tfl-credit{grid-column:1/-1;font-size:12px;line-height:1.5;color:#647a8b;margin:8px 0 0;max-width:none}

/* Mobile destination rows: do not squeeze multiword junction/status labels into a 65px rail. */
@media (max-width: 650px) {
  body.route-page .tc-destinations li {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) !important;
    align-items: start !important;
    gap: 8px !important;
    min-width: 0 !important;
  }
  body.route-page .tc-destinations li > .tc-destination-junction {
    grid-column: 1 !important;
    grid-row: auto !important;
    display: block !important;
    width: fit-content !important;
    max-width: 100% !important;
    font-size: 13px !important;
    line-height: 1.4 !important;
    overflow-wrap: anywhere !important;
  }
  body.route-page .tc-destinations li > div {
    grid-column: 1 !important;
    grid-row: auto !important;
    min-width: 0 !important;
  }
  body.route-page .tc-destinations li > a {
    grid-column: 1 !important;
    grid-row: auto !important;
    justify-self: start !important;
    min-width: 0 !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
  }
}

/* Destinations use a warm, compact guide layout rather than weather-style cards. */
html body.route-page .tc-destinations{background:#fffdf7!important;border-color:#e2dac1!important;border-top:3px solid #d5aa35!important}
html body.route-page .tc-destinations>ul{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0 24px!important}
html body.route-page .tc-destinations>ul>li{grid-template-columns:minmax(0,1fr)!important;align-content:start!important;align-items:start!important;gap:9px!important;padding:16px 0!important;border-top:1px solid #e7e0ce!important;min-width:0!important}
html body.route-page .tc-destinations .tc-destination-junction{display:inline-block!important;grid-column:1!important;grid-row:auto!important;justify-self:start!important;max-width:100%!important;box-sizing:border-box!important;border-radius:5px!important;background:#f8ebbf!important;color:#68500d!important;padding:4px 9px!important;font-size:13px!important;line-height:1.4!important;font-weight:700!important;overflow-wrap:anywhere!important}
html body.route-page .tc-destinations li>div{grid-column:1!important;grid-row:auto!important;min-width:0!important}
html body.route-page .tc-destinations strong{display:block!important;font-size:18px!important}
html body.route-page .tc-destinations p{font-size:14px!important;line-height:1.55!important;margin:6px 0 0!important;max-width:72ch!important}
@media(max-width:700px){html body.route-page .tc-destinations>ul{grid-template-columns:minmax(0,1fr)!important}}
