/* Truck News and server-rendered advert pages. Builds on styles.css tokens,
   components and breakpoints (1100px / 800px / 500px). */
.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.breadcrumb{flex-wrap:wrap}
.breadcrumb a:hover{color:var(--amber)}
nav a[aria-current=page]{color:var(--amber)}
.page-head-title{font-family:'Barlow Condensed','Arial Narrow',Impact,sans-serif;font-weight:700;letter-spacing:-.025em;line-height:1.08;font-size:60px;margin:12px 0!important;color:#fff!important;max-width:none!important}
.panel-title{font-family:inherit;font-size:1.25rem;font-weight:700;letter-spacing:0;margin:0 0 16px}
.gallery-main.no-photo{display:grid;place-items:center;min-height:320px}
.gallery-main.no-photo p{margin:0}
.related-strip{padding-bottom:60px}

/* Category label */
.news-category{display:inline-block;background:var(--amber);color:var(--ink);font-size:11px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:4px 9px;border-radius:3px;line-height:1.4}
.news-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:14px;font-size:13px;color:var(--muted)}

/* Landing page */
.news-head{padding-bottom:56px}
.news-head h1{font-size:clamp(3.6rem,7vw,6.2rem);line-height:.95;margin:16px 0 18px}
.news-head h1 em{font-style:normal;color:var(--amber)}
.news-head p{font-size:17px;max-width:640px}
.news-section>.eyebrow{margin-bottom:16px}
.news-list-top{margin-top:56px}
.news-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px}
.news-card{background:#fff;border:1px solid #e1e5e8;border-radius:var(--radius);overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;min-width:0}
.news-card:hover{transform:translateY(-4px);box-shadow:0 14px 35px #142c4410}
.news-card[hidden]{display:none}
.news-card-photo{display:block;position:relative;height:224px;background:#dde3e6;overflow:hidden}
.news-card-photo img{width:100%;height:100%;object-fit:cover;transition:transform .4s}
.news-card:hover .news-card-photo img{transform:scale(1.04)}
.news-card-body{padding:22px;display:flex;flex-direction:column;flex:1}
.news-card-body h3{font-size:21px;margin:0 0 10px;line-height:1.2}
.news-card-body h2{font-size:clamp(2.2rem,3.4vw,3.2rem);margin:0 0 14px}
.news-card-body h2 a:hover,.news-card-body h3 a:hover{color:#1175bf}
.news-card-body>p{font-size:14px;margin-bottom:20px}
.news-card-body>.button{margin-top:auto;align-self:flex-start;gap:10px}
.news-featured{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr)}
.news-featured .news-card-photo{height:auto;min-height:400px}
.news-featured .news-card-body{padding:40px;justify-content:center}
.news-featured .news-card-body>p{font-size:16px}
.news-featured .news-card-body>.button{margin-top:6px}
.news-empty{background:#fff;border-radius:10px;padding:40px 20px;text-align:center;margin:0}
.news-dcf{margin-top:48px}
.news-bottom{padding-bottom:60px}
.news-market-cta{background:var(--ink);color:#fff;border-radius:var(--radius);padding:44px 48px;display:flex;align-items:center;justify-content:space-between;gap:30px;position:relative;overflow:hidden}
.news-market-cta::after{content:'';position:absolute;left:0;right:0;bottom:0;height:4px;background:var(--amber)}
.news-market-cta h2{color:#fff;margin-bottom:8px}
.news-market-cta p{color:#aab9c6;margin:0;max-width:520px}
.news-market-cta .button{white-space:nowrap;flex-shrink:0}

/* Article page */
.article-head h1{font-size:clamp(2.8rem,5.4vw,4.6rem);max-width:920px;margin:16px 0 18px;line-height:1}
.news-category.on-dark{margin-top:20px}
.article-head .standfirst{font-size:19px;line-height:1.5;color:#d5dee6;max-width:780px}
.article-head .article-byline{font-size:13px;margin-top:20px;color:#9eb0c1}
.article-head .article-byline b{color:#fff}
.article-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:36px;align-items:start}
.article-main{min-width:0}
.article-hero{margin:0 0 24px}
.article-hero img{display:block;width:100%;aspect-ratio:1.6;object-fit:cover;border-radius:10px;background:#dae1e7}
.article-hero figcaption{font-size:12px;color:var(--muted);margin-top:10px}
.key-takeaways{background:var(--ink);color:#fff;border-radius:10px;padding:26px 30px;margin-bottom:22px;border-left:4px solid var(--amber)}
.key-takeaways .eyebrow{color:#fff;margin-bottom:14px}
.key-takeaways ul{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.key-takeaways li{position:relative;padding-left:26px;color:#dce5ec;font-size:15px}
.key-takeaways li::before{content:'✓';position:absolute;left:0;color:var(--amber);font-weight:800}
.article-body{padding:40px 44px}
.article-body>p,.article-body li{font-size:17px;line-height:1.72;color:#33414e}
.article-body>p:first-child{font-size:18px;color:var(--ink)}
.article-body h2{font-size:clamp(1.9rem,3vw,2.35rem);margin:38px 0 12px}
.article-body ul{padding-left:22px;margin:0 0 20px}
.article-body li{margin-bottom:8px}
.article-body li::marker{color:var(--amber)}
.article-body a{color:#1175bf;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.article-body a:hover{color:var(--ink)}
.news-spec-note{margin:34px 0 0;font-size:14px;line-height:1.55}
.article-sources ul{margin:0;padding-left:20px}
.article-sources li{font-size:15px;margin-bottom:8px}
.article-sources a{color:#1175bf;font-weight:600;text-decoration:underline;text-underline-offset:3px}
.article-sources span{color:var(--muted)}
.article-main .news-dcf{margin-top:0;margin-bottom:22px}
.article-aside{position:sticky;top:24px;display:grid;gap:18px;min-width:0}
.article-aside .panel{margin:0;padding:24px}
.article-aside h3{margin:6px 0 8px}
.article-aside p{font-size:14px}
.aside-market{background:#e8eef4}
.news-related{padding-bottom:40px}

@media(max-width:1100px){
  .news-grid{gap:16px}
  .news-card-body{padding:18px}
  .news-card-photo{height:195px}
  .news-featured .news-card-body{padding:30px}
  .article-layout{grid-template-columns:minmax(0,1fr) 260px;gap:24px}
  .article-body{padding:34px}
}
@media(max-width:900px){
  .article-layout{grid-template-columns:1fr}
  .article-aside{position:static;grid-template-columns:1fr 1fr}
}
@media(max-width:800px){
  .news-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .news-featured{grid-template-columns:1fr}
  .news-featured .news-card-photo{min-height:0;height:300px}
  .news-list-top{margin-top:40px}
  .news-market-cta{flex-direction:column;align-items:flex-start;padding:34px}
  .related-strip{padding-bottom:40px}
  .news-bottom{padding-bottom:40px}
}
@media(max-width:500px){
  .page-head-title{font-size:46px}
  .news-head h1{font-size:62px}
  .news-head p{font-size:15px}
  .news-grid{grid-template-columns:1fr}
  .news-card-photo{height:220px}
  .news-featured .news-card-photo{height:230px}
  .news-featured .news-card-body{padding:22px}
  .news-card-body h2{font-size:34px}
  .news-market-cta{padding:26px 22px}
  .news-market-cta .button{width:100%;white-space:normal}
  .article-head h1{font-size:42px}
  .article-head .standfirst{font-size:16px}
  .article-body{padding:22px}
  .article-body>p,.article-body li{font-size:16px}
  .article-body>p:first-child{font-size:17px}
  .key-takeaways{padding:22px}
  .article-aside{grid-template-columns:1fr}
  .news-dcf .button{width:100%}
}

/* Site pages: /trucks/, /truck-finance/, /advertise/, /about/ and sold adverts. */
a.chip{display:inline-block}
.filters-title{display:flex;justify-content:space-between;align-items:baseline;font-family:inherit;font-size:18px;font-weight:700;letter-spacing:0;margin:0 0 20px}
.filters-title a{font-size:12px;color:var(--blue)}
.filters-submit{width:100%}
.results-top select{min-height:40px}
.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:32px}
.pagination a{min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;padding:0 14px;border:1px solid var(--line);border-radius:6px;background:#fff;font-size:14px;font-weight:700}
.pagination a:hover{border-color:var(--ink)}
.pagination a.active{background:var(--ink);border-color:var(--ink);color:#fff}
.similar-trucks{padding-bottom:40px}
.finance-steps ol{padding-left:20px;margin:0 0 22px}
.finance-steps li{margin-bottom:14px;color:#33414e}
.finance-steps .button{width:100%}
.page-prose{padding-top:0}
.page-prose .article-body{max-width:860px}
.steps-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.steps-grid .panel{margin:0}
.steps-grid h3{margin:10px 0 8px}
.steps-grid p{font-size:14px;margin:0}
#advertising{scroll-margin-top:24px}
#finance{scroll-margin-top:24px}
@media(max-width:1100px){.steps-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:800px){.filters .filters-title,.filters .filters-submit{grid-column:1/-1}.filters form{display:contents}}
@media(max-width:500px){.steps-grid{grid-template-columns:1fr}.pagination a{min-width:40px;padding:0 10px}}

/* Homepage hero: keep "Trucks for sale." on one line on wide screens. */
@media(min-width:1101px){.hero h1{max-width:900px}}
.finance-hero>div>p.image-note{font-size:13px}
.finance-steps .image-note{font-size:13px;margin-top:14px}

/* Legal and contact pages. */
.legal-body h2{font-size:clamp(1.6rem,2.6vw,2rem);margin-top:32px}
.legal-body>p:first-child{font-size:15px;color:var(--muted)}
.contact-grid{margin-bottom:24px}
.contact-grid .card-type{margin-bottom:4px}
.contact-grid .text-link{display:inline-block;margin-top:14px}
.page-head+.page-prose{padding-top:40px}
@media(max-width:800px){.page-head+.page-prose{padding-top:28px}}

/* Dealers and verified badge */
.verified-badge{display:inline-flex;align-items:center;gap:4px;background:#e8f5ec;color:#1b6b35;border:1px solid #bfe2ca;border-radius:4px;font-size:11px;font-weight:800;letter-spacing:.03em;padding:3px 8px;white-space:nowrap}
.card-dealer{margin:-6px 0 14px}
.seller-contact .verified-badge{margin-bottom:10px}
.seller-contact .text-link{display:inline-block;margin-top:6px}
.dealer-head-badge{margin-top:12px!important}
.dealer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.dealer-card{background:#fff;border:1px solid #e1e5e8;border-radius:var(--radius);padding:22px;display:flex;gap:16px;align-items:flex-start;min-width:0}
.dealer-card .dealer-monogram{width:56px;height:56px;font-size:20px;flex-shrink:0;border-radius:10px}
.dealer-card-title{font-family:inherit;font-size:19px;letter-spacing:0;line-height:1.25;margin:0 0 6px}
.dealer-card-title a:hover{color:var(--blue)}
.dealer-card p{font-size:13px;margin:8px 0 10px}
.dealer-about{max-width:none;margin-bottom:30px}
@media(max-width:1100px){.dealer-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.dealer-grid{grid-template-columns:1fr}}
.dealer-about h2.panel-title{margin-top:0}

/* Dealer branding on marketplace cards, adverts and dealer pages */
.dealer-logo{display:grid;place-items:center;overflow:hidden;flex-shrink:0;border:1px solid #dce2e6;border-radius:9px;background:#fff;color:#223c51;font-weight:800}
.dealer-logo>img{display:block;width:100%;height:100%;object-fit:contain;padding:6px;box-sizing:border-box}
.dealer-logo>span{display:grid;place-items:center;width:100%;height:100%;background:#d7e1e9}
.card-dealer{display:flex;align-items:center;gap:9px;margin:-4px 0 14px;min-height:38px}
.card-dealer-logo{width:38px;height:38px;font-size:13px}
.card-dealer>div{display:flex;align-items:center;flex-wrap:wrap;gap:5px 8px;min-width:0}
.card-dealer a{font-size:12px;font-weight:800;line-height:1.25}
.seller-brand{display:flex;align-items:center;gap:13px;margin:7px 0 10px}
.seller-brand h3{margin:0 0 5px!important}
.seller-logo{width:76px;height:58px;font-size:20px}
.dealer-card-logo{width:68px;height:68px;font-size:21px}
.dealer-page-heading{display:flex;align-items:center;gap:22px;margin-top:18px}
.dealer-page-heading h1{margin:0 0 8px}
.dealer-page-logo{width:124px;height:94px;font-size:32px;border-color:#ffffff35}
@media(max-width:500px){.dealer-card-logo{width:60px;height:60px}.dealer-page-heading{align-items:flex-start;gap:14px}.dealer-page-logo{width:78px;height:64px;font-size:22px}.dealer-page-heading h1{font-size:40px}.seller-logo{width:66px;height:52px}}

/* /trucks/ extra filters */
.more-filters{margin:0 0 22px;border-top:1px solid var(--line);padding-top:14px}
.more-filters summary{cursor:pointer;font-size:14px;font-weight:700;color:var(--blue);margin-bottom:14px;list-style-position:inside}
.more-filters .field{margin-bottom:18px}
@media(max-width:800px){.filters .more-filters{grid-column:1/-1;margin:0}.filters .more-filters-body{display:grid;grid-template-columns:1fr 1fr;gap:12px 15px}.filters .more-filters .field{margin:0}}

/* Saved trucks, compare and share */
.truck-card{position:relative}
.fav-btn{position:absolute;top:12px;right:12px;z-index:2;width:40px;height:40px;border-radius:50%;border:0;background:#ffffffed;color:var(--ink);font-size:21px;line-height:1;display:grid;place-items:center;box-shadow:0 2px 8px #0c192726}
.fav-btn:hover,.fav-btn.on{color:#c2410c}
.fav-btn.inline{position:static;width:auto;height:auto;border-radius:6px;border:1px solid #cbd5dc;box-shadow:none;background:#fff;font:700 13px 'DM Sans',Arial,sans-serif;padding:10px 12px;display:inline-flex;gap:6px}
.advert-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:6px}
.share-btn{border:1px solid #cbd5dc;border-radius:6px;background:#fff;color:var(--ink);font:700 13px 'DM Sans',Arial,sans-serif;padding:10px 12px;cursor:pointer}
.share-btn:hover,.fav-btn.inline:hover{border-color:var(--ink)}
.saved-count{font-weight:800}
.saved-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:6px}
.saved-bar p{margin:0}
.saved-grid{margin-top:18px}
.saved-item{display:flex;flex-direction:column;gap:8px;min-width:0}
.saved-item .truck-card{flex:1}
.compare-pick{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:700;background:#fff;border:1px solid var(--line);border-radius:6px;padding:10px 12px;cursor:pointer}
a.button[aria-disabled=true]{opacity:.55}
.compare-wrap{overflow-x:auto;background:#fff;border:1px solid var(--line);border-radius:10px}
.compare-table{width:100%;border-collapse:collapse;min-width:620px;font-size:14px}
.compare-table th,.compare-table td{text-align:left;vertical-align:top;padding:12px 14px;border-bottom:1px solid #edf0f2}
.compare-table tbody th{color:var(--muted);font-weight:600;white-space:nowrap;width:1%}
.compare-table thead th{font-size:15px}
.compare-table thead img{display:block;width:100%;max-width:220px;aspect-ratio:1.45;object-fit:cover;border-radius:6px;margin-bottom:8px;background:#dde3e6}
.compare-table thead a span{font-weight:800}
.compare-table .muted{color:var(--muted)}
@media(max-width:800px){nav .saved-link{order:4}}
.compare-table{table-layout:fixed}
.compare-table thead th:first-child,.compare-table tbody th{width:170px}
.compare-table thead a span{display:block}
.compare-table thead .verified-badge{margin-top:8px}
.compare-table thead img{max-width:100%}

/* Footer category links (only categories with enough live stock) */
.footer-hubs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px 35px;max-width:1188px;margin:0 auto 30px;padding-bottom:28px;border-bottom:1px solid var(--line)}
.footer-hubs b{display:block;font-size:13px;margin-bottom:10px}
.footer-hubs ul{list-style:none;margin:0;padding:0}
.footer-hubs li{margin-bottom:8px}
.footer-hubs a{font-size:13px;color:var(--ink)}
.footer-hubs a:hover{color:var(--blue);text-decoration:underline}
.footer-hubs span{color:var(--muted)}
@media(max-width:800px){.footer-hubs{grid-template-columns:1fr 1fr}}
