/* Compact catalogue views. Full data stays in the existing vehicle dialog. */
.zed-price-compact{display:none}
.catalog-section .car{position:relative}
.catalog-section .car .car-photo{position:static}
.catalog-section .car-photo::after{content:"";position:absolute;inset:0;z-index:2;cursor:pointer}
.catalog-section .car:focus-within{outline:2px solid var(--text,#f3f4f5);outline-offset:3px}
.catalog-section .car-photo img,.catalog-gallery .gallery-photo img{object-fit:contain!important;object-position:center}
.catalog-mobile-disclosure{margin:0 0 18px;border-bottom:1px solid var(--line,#30363c);color:var(--muted,#acb4bf)}
.catalog-mobile-disclosure>summary,.mobile-vehicle-specs>summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;padding:10px 0;list-style:none;cursor:pointer;font:600 13px/1.5 Manrope,Arial,sans-serif;color:var(--text,#f3f4f5)}
.catalog-mobile-disclosure>summary::-webkit-details-marker,.mobile-vehicle-specs>summary::-webkit-details-marker{display:none}
.catalog-mobile-disclosure>summary::after,.mobile-vehicle-specs>summary::after{content:"+";font-size:20px;font-weight:400;line-height:1}
.catalog-mobile-disclosure[open]>summary::after,.mobile-vehicle-specs[open]>summary::after{content:"−"}
.catalog-mobile-disclosure>summary:focus-visible,.mobile-vehicle-specs>summary:focus-visible{outline:2px solid var(--text,#f3f4f5);outline-offset:3px}
.catalog-mobile-disclosure .catalog-lead,.catalog-mobile-disclosure .catalog-service-link,.catalog-mobile-disclosure .catalog-rates-note{font-size:13px;line-height:1.65;margin:0 0 12px}
.catalog-mobile-disclosure .catalog-service-link a{text-decoration:underline;text-underline-offset:3px}
.catalog-filter-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:10px;background:var(--red,#d84250);font-size:11px;font-weight:600;color:#fff}
.mobile-filter-reset{display:inline-flex;align-items:center;min-height:44px;padding:7px 0;border:0;background:transparent;color:var(--muted,#acb4bf);font-size:13px;margin-bottom:12px}
.mobile-filter-reset:hover{color:var(--red,#d84250)}
.mobile-vehicle-specs{border-block:1px solid var(--line,#30363c);margin-bottom:20px}
.mobile-vehicle-specs .detail-specs{margin-bottom:12px}

@media(min-width:1024px){.vehicle-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}

@media(max-width:1023px){
  .catalog-main{padding-top:20px}
  .catalog-heading{gap:10px;margin-bottom:18px}
  .catalog-heading h1{font-size:clamp(21px,3.2vw,27px);line-height:1.35;letter-spacing:-.035em}
  .catalog-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-bottom:0}
  .catalog-tabs [role=tab]{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:2px;min-height:56px;padding:8px 0 11px;font-size:16px;line-height:1.35}
  .catalog-tabs [role=tab] span{font-size:11px;margin:0;line-height:1.4}
  .catalog-wrap{width:calc(100% - 32px)}
  .catalog-sidebar{display:none}
  .catalog-layout{display:block}
  .catalog-results{min-width:0}
  .results-toolbar{display:block;min-height:44px;margin-bottom:16px}
  .results-tools{display:flex;width:100%;justify-content:space-between;gap:12px;align-items:center}
  .mobile-filter{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 12px;border:1px solid var(--line);border-radius:5px;background:transparent;font-size:13px}
  .sort-field{margin-left:auto;min-width:0;max-width:65%}
  .sort-picker{width:205px;max-width:100%}
  .sort-trigger{min-height:44px;font-size:12px;padding:10px 12px;gap:8px}
  .sort-trigger>span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .sort-menu{max-width:min(280px,calc(100vw - 32px))}
  .sort-option{min-height:44px;display:flex;align-items:center;font-size:13px}
  .vehicle-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px 10px}
  .vehicle-card{min-width:0;border-radius:6px}
  .vehicle-photo{aspect-ratio:1.35;background:#1a1e22}
  .vehicle-photo img{object-fit:contain!important;object-position:center}
  .vehicle-content{padding:9px 8px 11px}
  .vehicle-heading{font-size:13px;line-height:1.35;min-height:2.7em;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .vehicle-trim,.vehicle-specs,.vehicle-price-label,.vehicle-price-alt,.vehicle-bottom,.vehicle-photo .photo-count{display:none}
  .vehicle-price{padding:0;border:0;margin-top:8px}
  .vehicle-price strong{margin:0;font-size:14px;line-height:1.4;letter-spacing:-.02em;white-space:nowrap}
  .vehicle-price strong:has(.zed-price-compact)>.zed-price-full,.catalog-section .car-price strong:has(.zed-price-compact)>.zed-price-full{display:none}
  .zed-price-compact{display:inline}
  .vehicle-photo .photo-error{font-size:10px;line-height:1.4;padding:6px;text-align:center}
  .vehicle-dialog{width:calc(100vw - 20px);max-height:calc(100svh - 20px);padding:18px 14px;border-radius:8px}
  .detail-layout{grid-template-columns:1fr;gap:20px;padding-top:36px}
  .detail-photo{aspect-ratio:1.4}
  .detail-info h2{font-size:22px;line-height:1.35}
  .detail-gallery-nav button,.dialog-close{width:44px;height:44px;min-width:44px}
  .detail-thumbnails button{height:54px;min-width:74px}
  .detail-thumbnails{gap:10px}
  .detail-request>a{max-width:none;min-height:46px}
  .detail-price strong{font-size:27px}
  .detail-specs>div{font-size:13px;gap:12px;grid-template-columns:1fr 1fr}
  .detail-status{font-size:13px}
  .filters-dialog{width:min(440px,calc(100vw - 20px));max-height:calc(100svh - 20px);padding:22px 18px}
  .filters-dialog select,.filters-dialog input{font-size:16px;min-height:46px}
  .filters-dialog .filter-field,.filters-dialog .filter-range legend{font-size:13px}
  .filters-dialog .search-button{position:sticky;bottom:-1px;min-height:48px;background:var(--bg);z-index:1}
  .catalog-more{margin-top:24px;gap:9px}
  .catalog-load-more{min-height:46px;width:min(100%,320px)}
  .catalog-more-status{font-size:12px}
  .catalog-help{margin-top:24px;padding-block:24px;gap:16px;align-items:flex-start;flex-direction:column}
  .catalog-help h2{font-size:18px;line-height:1.5}
  .catalog-help p{font-size:13px}
  .catalog-mobile-disclosure .catalog-guidance{display:block;margin:0;padding:0;border:0}
  .catalog-mobile-disclosure .catalog-guidance>div{margin-bottom:18px}
  .catalog-mobile-disclosure .catalog-guidance h2{font-size:16px;line-height:1.5;margin-bottom:10px}
  .catalog-mobile-disclosure .catalog-guidance p,.catalog-mobile-disclosure .catalog-questions summary{font-size:13px}
  .catalog-mobile-disclosure .catalog-guidance-links a{display:inline-flex;align-items:center;min-height:44px}
  .catalog-section .cars{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
  .catalog-section .car-photo{aspect-ratio:1.35;background:#1a1e22}
  .catalog-section .car-body{padding:9px 8px 11px}
  .catalog-section .car h3{font-family:Manrope,Arial,sans-serif;font-weight:600;font-size:13px;line-height:1.35;min-height:2.7em;overflow-wrap:anywhere;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .catalog-section .car-source,.catalog-section .car-edition,.catalog-section .car-specs,.catalog-section .car-price>span{display:none}
  .catalog-section .car-price{margin-top:8px;padding:0;border:0}
  .catalog-section .car-price strong{font-size:14px;line-height:1.4;margin:0;letter-spacing:-.02em}
  .catalog-section .catalog-footer{gap:18px;margin-top:24px}
  .catalog-section .platforms{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;width:100%}
  .catalog-section .platform{min-width:0;min-height:44px;display:flex;justify-content:center}
  .catalog-section .platform img{max-width:100%;height:24px;object-fit:contain}
  .catalog-section .platform:first-child span{display:none}
  .catalog-section .platform:first-child img{width:28px;height:28px}
  .catalog-gallery .gallery-cards{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
  .catalog-gallery .gallery-photo{aspect-ratio:1.35}
  .catalog-gallery .gallery-caption{min-height:0;padding:8px}
  .catalog-gallery .gallery-car h3{font-size:13px;line-height:1.35;white-space:normal}
  .catalog-gallery .gallery-edition,.catalog-gallery .gallery-specs,.catalog-gallery .gallery-badge,.catalog-gallery .gallery-price>span{display:none}
  .catalog-gallery .gallery-price{border:0;padding:0;margin-top:8px}
  .catalog-gallery .gallery-price strong{font-size:14px}
}

@media(max-width:599px){
  .catalog-wrap{width:calc(100% - 24px)}
  .catalog-heading h1{font-size:21px}
  .catalog-tabs [role=tab]{font-size:15px}
  .vehicle-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px 7px}
  .vehicle-content{padding:8px 6px 10px}
  .vehicle-heading{font-size:12px;line-height:1.35;min-height:2.7em}
  .vehicle-price strong{font-size:12px}
  .catalog-section .wrap{width:calc(100% - 24px)}
  .catalog-section .cars{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .catalog-section .car:nth-child(n+4){display:none}
  .catalog-section .car-body{padding:8px 6px 10px}
  .catalog-section .car h3{font-size:12px;min-height:2.7em}
  .catalog-section .car-price strong{font-size:12px}
  .catalog-section .catalog-footer{align-items:stretch;flex-direction:column}
  .catalog-section .catalog-footer>.action{width:100%;max-width:none;min-width:0;min-height:46px;font-size:13px}
  .catalog-section .platforms{gap:16px}
  .catalog-gallery .gallery-cards{grid-template-columns:repeat(3,minmax(0,1fr));gap:7px}
  .catalog-gallery .gallery-slot:nth-child(n+4){display:none}
  .catalog-gallery .gallery-caption{padding:8px 6px}
  .catalog-gallery .gallery-car h3,.catalog-gallery .gallery-price strong{font-size:12px}
}

@media(max-width:359px){
  .vehicle-heading,.catalog-section .car h3{font-size:11px}
  .vehicle-price strong,.catalog-section .car-price strong{font-size:11px;letter-spacing:-.03em}
  .catalog-tabs [role=tab]{font-size:14px}
  .mobile-filter{padding-inline:10px;font-size:12px}
  .sort-trigger{padding-inline:9px;font-size:11px}
}

@media(prefers-reduced-motion:reduce){.catalog-section .car,.vehicle-card{transition:none}}
