/* Stock surfaces retain the shared shop identity while making vehicles easy to compare. */
.stock-page, .vehicle-page { background: #f4f0e8; color: #211e18; }
.stock-page main, .vehicle-page main { line-height: 1.75; }
.stock-page main { padding-top: 24px; }
.stock-page .stock-heading { background: #211e18; color: #fffdf8; border-radius: 0; }
.stock-page .stock-heading h1 { font-size: clamp(1.7rem, 3vw, 2.35rem); line-height: 1.4; }
.stock-page .stock-heading p { color: #e4ddd1; font-size: 0.95rem; }
.stock-page .stock-summary { margin: 1.25rem 0 1.75rem; padding: 1rem 0; border-block: 1px solid #d7cebf; }
.stock-page .stock-summary summary { cursor: pointer; font-weight: 700; font-size: 1rem; }
.stock-page .stock-summary p { font-size: .95rem; margin-top: .75rem; max-width: 75ch; }
.stock-page .stock-feature-link { margin: 1.25rem 0 0; font-weight: 700; }
.stock-feature-link a { text-decoration: underline; text-underline-offset: .25em; }
.stock-sold { border-top: 1px solid #cfc4b4; padding-top: 2.5rem; margin-top: 3rem; }
.stock-sold > h3 { font-size: 1.4rem; font-weight: 800; }
.stock-sold > p { margin: .5rem 0 1.25rem; font-size: .95rem; color: #5d5549; }
.stock-sold [data-sold="true"] img { filter: grayscale(.65); }
.stock-page main .text-slate-400, .vehicle-page main .text-slate-400 { color: #6c6255; }
.stock-page main .bg-slate-900 .text-slate-400, .vehicle-page main .bg-slate-900 .text-slate-400 { color: #ded7cd; }
.stock-page main .text-xs, .vehicle-page main .text-xs { font-size: .875rem; }
.vehicle-page main > section, .vehicle-page main > div { max-width: 1120px; }
.vehicle-page main article { box-shadow: none; border: 1px solid #d5ccbd; border-radius: 14px; }
.vehicle-page main h1 { font-size: clamp(1.45rem, 2.2vw, 1.9rem); line-height: 1.5; }
.vehicle-page main h2 { font-size: 1.3rem; line-height: 1.5; }
.vehicle-price { background: #211e18; color: #fffdf8; padding: 1.35rem; margin: .25rem 0 1.4rem; border-radius: 12px; }
.vehicle-price__total span { display: block; font-size: .95rem; font-weight: 700; }
.vehicle-price__total strong { display: block; font-size: clamp(2.4rem, 4vw, 3.35rem); line-height: 1.2; letter-spacing: -.025em; font-variant-numeric: tabular-nums; }
.vehicle-price__base { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: space-between; gap: .5rem; padding-top: 1rem; margin-top: 1rem; border-top: 1px solid #665d51; }
.vehicle-price__base span, .vehicle-price__note, .vehicle-price del { color: #e1d8c9; font-size: .875rem; }
.vehicle-price__base strong { font-size: 1.25rem; font-variant-numeric: tabular-nums; }
.vehicle-price__note { margin-top: .5rem; }
.vehicle-gallery-open { display: block; position: relative; width: 100%; border: 0; border-radius: 12px; overflow: hidden; padding: 0; cursor: zoom-in; background: #eee8df; }
.vehicle-gallery-open img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
.vehicle-gallery-open__label { position: absolute; bottom: 12px; right: 12px; border-radius: 6px; padding: 6px 10px; color: #fff; background: #211e18; font-size: .875rem; font-weight: 700; }
.gallery-status { margin-top: .75rem; font-size: .9rem; color: #5d5549; }
.vehicle-gallery-thumbs { display: flex; gap: 8px; overflow-x: auto; padding: 7px 3px; scroll-padding-inline: 3px; }
.vehicle-gallery-thumbs .gallery-thumb { display: block; padding: 0; width: 86px; min-width: 86px; border: 3px solid transparent; border-radius: 8px; background: transparent; cursor: pointer; overflow: hidden; }
.vehicle-gallery-thumbs .gallery-thumb[aria-pressed="true"] { border-color: #a61624; }
.vehicle-gallery-thumbs img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 3; object-fit: cover; }
#vLightbox { width: min(94vw, 1300px); max-width: none; max-height: 95dvh; padding: 20px; border: 0; border-radius: 12px; color: #fff; background: #211e18; }
#vLightbox::backdrop { background: rgba(10, 8, 5, .88); }
#vLightbox img { display: block; width: 100%; max-height: 76dvh; object-fit: contain; }
#vLightbox form { display: flex; justify-content: flex-end; margin-bottom: 12px; }
.vehicle-lightbox-close { padding: 10px 18px; min-height: 44px; border-radius: 6px; background: #fffdf8; color: #211e18; font-size: 1rem; font-weight: 700; cursor: pointer; }
#lightbox-status { text-align: center; padding-top: 10px; font-size: .95rem; }
.vehicle-page #inquiry { border: 1px solid #c5b9a5; box-shadow: none; }
.vehicle-page #inquiry label, .vehicle-page #inquiry legend { font-size: .95rem; letter-spacing: 0; color: #3d362c; }
.vehicle-page #inquiry input:not([type="radio"]):not([type="hidden"]), .vehicle-page #inquiry textarea { font-size: 1rem; background: #fffdf8; }
.vehicle-page #inquiry input::placeholder, .vehicle-page #inquiry textarea::placeholder { color: #736a5e; opacity: 1; }
.vehicle-page #inquiry input[type="radio"]:focus-visible + span { outline: 3px solid #9a6e24; outline-offset: 3px; }
.vehicle-page #inquiry input[type="radio"]:checked + span { background: #f9e7e7; color: #8b1020; border-color: #a61624; }
.vehicle-page #inquiry .contact-method-label { font-weight: 800; margin-bottom: .5rem; }
.field-hint { margin-top: .5rem; font-size: .875rem; color: #615749; }
.vehicle-page a[href*="lin.ee"] { background-color: #087d36 !important; color: #fff !important; }
.vehicle-page .vehicle-quick { min-height: 64px; }
.vehicle-page .vehicle-quick a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 4px; min-height: 64px; font-size: .875rem; padding: 8px 4px; }
.vehicle-page .vehicle-quick i { margin: 0; }
@media (min-width: 1024px) { .vehicle-gallery-thumbs { display: grid; grid-template-columns: repeat(5, 1fr); } .vehicle-gallery-thumbs .gallery-thumb { width: 100%; min-width: 0; } }
@media (max-width: 639px) { .stock-page main { padding-top: 0; } .vehicle-page main > section { padding-inline: 12px; } .vehicle-page main article > .grid > div { padding: 18px; } #vLightbox { padding: 12px; } }
