/* Applied only inside EGA; provider controls and legal notices remain intact. */
:root { --ls-ink: #0b223a; --ls-accent: #0c6993; --ls-line: #d6e0eb; --ls-surface: #f1f5f9; }
html, body { height: auto !important; min-height: 0 !important; }
body { display: flow-root; margin: 0 !important; max-width: none !important; background: var(--ls-surface) !important; color: var(--ls-ink); font-family: "Segoe UI", system-ui, Arial, sans-serif !important; }
#screen { max-width: none !important; width: 100% !important; border: 0 !important; padding: 0 2px !important; }
button, input, select, textarea, .vehicle-title, .vehicle-title a, .vehicle-price-container .price { font-family: inherit !important; }
.search-form { margin: 0 0 24px !important; padding: 24px 20px !important; border: 1px solid var(--ls-line) !important; border-radius: 12px; background: white; box-shadow: 0 1px 3px rgb(8 26 44 / 4%); }
.search-form select, .search-sort select { border: 1px solid var(--ls-line) !important; border-radius: 6px !important; background-color: white !important; color: var(--ls-ink) !important; height: auto !important; min-height: 44px; font-size: 14px !important; }
.search-form .custom-select, .search-sort .custom-select { background-image: none !important; appearance: auto !important; padding-right: 8px !important; }
#default-search-button { background: var(--ls-accent) !important; border: 0 !important; border-radius: 8px; min-height: 48px; font-family: inherit !important; }
.search-pagination .page-link { color: var(--ls-accent); border-color: var(--ls-line); min-height: 40px; }
.search-pagination .active .page-link { background: var(--ls-ink) !important; border-color: var(--ls-ink) !important; color: white !important; }
.search-result { display: grid !important; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; margin: 24px 0 !important; }
.search-result > .search-result-vehicle-box { display: flex; flex-direction: column; width: auto !important; max-width: none !important; min-width: 0; margin: 0 !important; padding: 0 !important; border: 1px solid var(--ls-line); border-radius: 12px; overflow: hidden; background: white; box-shadow: 0 1px 3px rgb(8 26 44 / 8%), 0 8px 24px -12px rgb(8 26 44 / 18%); font-family: inherit !important; transition: border-color .18s, box-shadow .18s; }
.search-result > .search-result-vehicle-box:hover { border-color: #7ba8d6; box-shadow: 0 4px 12px rgb(8 26 44 / 12%), 0 16px 40px -16px rgb(8 26 44 / 28%); }
.search-result .search-result-vehicle-box > .vehicle-image-container { height: auto !important; min-height: 0 !important; aspect-ratio: 4 / 3; border: 0 !important; overflow: hidden; background: #eef4fb; }
.search-result .vehicle-image-wrap > img { display: block; top: 0 !important; width: 100% !important; height: 100% !important; object-fit: cover; }
.search-result .search-result-vehicle-box > .vehicle-info-container { order: 1; flex: 1; height: auto !important; margin: 0 !important; padding: 20px !important; border: 0 !important; background: white; }
.search-result .vehicle-title { margin-bottom: 0; }
.search-result .vehicle-title a { color: #475569 !important; font-size: 13px; line-height: 1.7; }
.search-result .vehicle-title a > div { white-space: normal; overflow: visible; }
.search-result .vehicle-title .brand-and-model { display: block; color: var(--ls-ink); font-size: 18px !important; font-weight: 700; line-height: 1.4; }
.search-result .vehicle-title .model-zusatz { margin: 5px 0 12px; font-size: 13px; line-height: 1.6; text-transform: none !important; }
.search-result .search-result-vehicle-box > .vehicle-info-container > .vehicle-info { height: auto !important; }
.search-result .search-result-vehicle-box > .vehicle-price-container { order: 2; padding: 14px 20px !important; border: 0 !important; border-top: 1px solid #e2e8f0 !important; background: white !important; }
.search-result .vehicle-price-container .price { display: block; padding: 0 !important; color: var(--ls-ink) !important; font-size: 24px; font-weight: 800; line-height: 1.4; letter-spacing: -.025em; }
.search-result .search-result-vehicle-box > .vehicle-price-rate-box { order: 3; display: flex; flex-wrap: wrap; align-items: baseline; justify-content: flex-end; gap: 5px; position: static !important; width: auto !important; height: auto !important; min-height: 44px; margin: 0 !important; padding: 10px 20px !important; border: 0; border-top: 1px solid #e2e8f0; border-radius: 0; box-shadow: none !important; background: #eef4fb; color: var(--ls-ink); font-family: inherit !important; }
.search-result .search-result-vehicle-box > .vehicle-price-rate-box > :is(.finanzierung,.euro,.rate) { position: static !important; padding: 0; margin: 0; color: var(--ls-ink); line-height: 1.5; letter-spacing: 0; }
.search-result .search-result-vehicle-box > .vehicle-price-rate-box > .finanzierung { flex: 1; font-size: 11px; color: #475569; }
.search-result .search-result-vehicle-box > .vehicle-price-rate-box > .rate { order: 1; font-size: 18px; font-weight: 700; }
.search-result .search-result-vehicle-box > .vehicle-price-rate-box > .euro { order: 2; font-size: 13px; }
.search-result .img-overlay { display: inline-flex; align-items: center; gap: 7px; top: 12px; left: 12px; width: auto; height: auto; padding: 5px 9px 5px 5px; border: 1px solid rgb(214 224 235 / 80%); border-radius: 8px; background: rgb(255 255 255 / 96%) !important; color: var(--ls-ink); font-family: inherit; font-size: 11px; font-weight: 600; letter-spacing: 0; }
.search-result .img-overlay > img { float: none; width: 30px !important; height: 30px !important; margin: 0; }
.search-result .img-overlay > span { padding: 0; font-size: inherit; }
.search-result .img-overlay.sold { background: var(--ls-ink) !important; color: white; }
.vehicle-details { padding: 0 8px; }
.vehicle-details > .row, .vehicle-details .images-row { width: auto !important; margin-left: 0 !important; margin-right: 0 !important; }
.vehicle-details :is(h1,h2,h3,.vehicle-prices,.btn,.ega-btn) { font-family: inherit !important; }
.vehicle-details .vehicle-page-title h1 { font-size: clamp(20px, 2.4vw, 30px); line-height: 1.4; color: var(--ls-ink); }
.vehicle-details .main-image-wrap { border-radius: 12px; overflow: hidden; }
.vehicle-details :is(.btn,.ega-btn) { border-radius: 8px; background-color: var(--ls-accent); color: white; }
a:focus-visible, button:focus-visible, select:focus-visible, input:focus-visible { outline: 3px solid var(--ls-accent) !important; outline-offset: 2px; }
@media (max-width: 991px) { .search-result { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 20px; } }
@media (max-width: 575px) { .search-form { padding: 16px 12px !important; } .search-pagination { flex-wrap: wrap; } .search-result { grid-template-columns: minmax(0, 1fr); gap: 20px; } .search-sort { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 8px; margin: 0; } .search-sort > .form-group { width: auto; max-width: none; padding: 0; margin: 0; } .search-sort > .form-group:last-child { grid-column: 1 / -1; } }
@media (prefers-reduced-motion: reduce) { .search-result > .search-result-vehicle-box { transition: none; } }
