.vehicle-detail-page {
    margin: 0 auto;
    padding: 35px 5% 110px;
	max-width: 1300px;
}

.vehicle-breadcrumb {
        display: flex;
    gap: 10px;
    margin-bottom: 24px;
    color: #888;
    font-size: 12px;
    z-index: 9;
}

.vehicle-breadcrumb a { color: #ccc; text-decoration: none; }
.vehicle-breadcrumb a:hover { color: var(--yellow); }

.vehicle-hero {
display: grid;
    grid-template-columns: minmax(0, 2fr) minmax(0, 1fr);
    gap: 28px;
    align-items: start;
    background: #1b1b1b;
    padding: 20px;
}

.vehicle-gallery { min-width: 0; }
.vehicle-gallery-stage { position: relative; overflow: hidden; background: #080808; }
.vehicle-gallery-track { display: flex; transition: transform .55s cubic-bezier(.2, .65, .3, 1); }
.vehicle-gallery-slide { flex: 0 0 100%; margin: 0; /*aspect-ratio: 16 / 10;*/ }
.vehicle-gallery-open { width: 100%; height: 100%; display: block; padding: 0; border: 0; background: #080808; cursor: zoom-in; }
.vehicle-gallery-open img { width: 100%; height: 100%; display: block; object-fit: cover; transition: transform .4s ease; }
.vehicle-gallery-open:hover img,
.vehicle-gallery-open:focus-visible img { transform: scale(1.015); }

.vehicle-gallery-arrow {
    position: absolute;
    top: 50%;
    z-index: 2;
    width: 52px;
    height: 52px;
    border: 1px solid rgba(255, 255, 255, .45);
    border-radius: 50%;
    background: rgba(0, 0, 0, .62);
    color: #fff;
    cursor: pointer;
    font-size: 20px;
    transform: translateY(-50%);
    transition: background .2s ease, color .2s ease, border-color .2s ease;
}

.vehicle-gallery-arrow:hover { border-color: var(--yellow); background: var(--yellow); color: #111; }
.vehicle-gallery-prev { left: 20px; }
.vehicle-gallery-next { right: 20px; }

.vehicle-gallery-counter {
    position: absolute;
    right: 18px;
    bottom: 18px;
    padding: 9px 13px;
    background: rgba(0, 0, 0, .7);
    color: #fff;
    font-size: 12px;
    letter-spacing: .08em;
}

.vehicle-gallery-thumbnails {
    display: flex;
    gap: 8px;
    margin-top: 9px;
    padding-bottom: 5px;
    overflow-x: auto;
    scrollbar-width: thin;
}

.vehicle-gallery-thumbnail {
    flex: 0 0 105px;
    height: 72px;
    padding: 0;
    border: 2px solid transparent;
    background: #222;
    cursor: pointer;
    opacity: .58;
    transition: opacity .2s ease, border-color .2s ease;
}

.vehicle-gallery-thumbnail img { width: 100%; height: 100%; display: block; object-fit: cover; }
.vehicle-gallery-thumbnail:hover,
.vehicle-gallery-thumbnail.is-active { border-color: var(--yellow); opacity: 1; }
.vehicle-gallery-empty { min-height: 500px; display: grid; place-items: center; background: #222; color: #aaa; }

.vehicle-summary {

}

.vehicle-summary-kicker,
.vehicle-section-heading > p,
.vehicle-contact-intro > p {
    margin: 0 0 13px;
    color: var(--yellow);
    font-size: 10px;
    font-weight: 700;
    letter-spacing: .18em;
    text-transform: uppercase;
}

.vehicle-summary h2 { margin: 0; font-size: 1rem; font-weight: 400; line-height: 1.05; font-family: inherit;;}
.big-price { margin: 30px 0 4px; color: var(--yellow); font-size: clamp(2rem, 3vw, 3rem); font-weight: 700; }
.vehicle-price-note { margin: 0 0 32px; color: #888; font-size: 11px; }

.vehicle-highlights { display: grid; grid-template-columns: 1fr 1fr; /*border-top: 1px solid #383838; border-left: 1px solid #383838;*/ }
.vehicle-highlights div { min-width: 0; padding: 18px 14px; /*border-right: 1px solid #383838; border-bottom: 1px solid #383838;*/ }
.vehicle-highlights span { display: block; margin-bottom: 6px; color: #888; font-size: 10px; text-transform: uppercase; }
.vehicle-highlights strong { display: block; overflow-wrap: anywhere; font-size: 14px; }

.vehicle-summary-actions { display: grid; gap: 9px; margin-top: 28px; }
.vehicle-primary-action,
.whatsapp {  display: flex; min-height: 52px; align-items: center; justify-content: center; padding: 12px 18px; color: #111; font-size: 12px;  font-weight: 700; letter-spacing: .05em; text-transform: uppercase; text-decoration: none;  }
.vehicle-primary-action { background: var(--yellow); }
.whatsapp { background: #25d366; }
.vehicle-primary-action:hover,
.whatsapp:hover { filter: brightness(1.08); }
.vehicle-external-link { display: inline-block; margin-top: 22px; color: #ccc; font-size: 12px; text-decoration: none; }
.vehicle-external-link:hover { color: var(--yellow); }

.vehicle-section { margin-top: 40px; background: #181818; }
.vehicle-section-heading { display: grid;
/*    border-top: 1px solid #333;
    text-align: center;*/
    gap: 10px;
    padding: 20px; }
.vehicle-section-heading > p { margin: 0; }
.vehicle-section-heading h2 { margin: 0; font-size: 1rem; font-weight: 400; }

.vehicle-facts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; /*border-top: 1px solid #373737; border-left: 1px solid #373737; */}
.vehicle-facts div { min-height: 85px; padding: 23px; /*border-right: 1px solid #373737; border-bottom: 1px solid #373737; */  }
.vehicle-facts dt { color: #898989; font-size: 11px; letter-spacing: .04em; text-transform: uppercase; }
.vehicle-facts dd { margin: 16px 0 0; color: #fff; font-size: 1.05rem; font-weight: 600; }
.vehicle-environment .vehicle-facts div { background: #1d211b; }

.equipment ul { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; margin: 0; padding: 1px; list-style: none; }
.equipment li { position: relative;
    min-height: 50px;
    padding: 10px 20px 10px 45px;
    color: #ccc;
    font-size: 1em;}
.equipment li::before { content: "✓"; position: absolute; left: 20px; color: var(--yellow); font-weight: 700; }

.vehicle-description-copy { font-size: 0.9rem; color: #c7c7c7; padding: 20px;}

.vehicle-contact {    display: grid;
    grid-template-columns: .8fr 1.2fr;
    gap: 50px;
    margin-top: 60px;
    padding: 50px;
    background: #1b1b1b;
    border-top: 4px solid var(--yellow);}
.vehicle-contact-intro h2 {     margin: 0 0 20px;
    font-size: 1.5rem; }
.vehicle-contact-intro span { color: #aaa; line-height: 1.65; }
.vehicle-contact form { display: grid; /*grid-template-columns: 1fr 1fr;*/ gap: 12px; }
.vehicle-contact input,
.vehicle-contact textarea { width: 100%;
    min-height: 40px;
    padding: 12px;
    border: 1px solid #444;
    border-radius: 0;
    background: #242424; color: #fff; font: inherit; }
.vehicle-contact textarea { grid-column: 1 / -1; min-height: 145px; resize: vertical; }
.vehicle-contact button { grid-column: 1 / -1; min-height: 55px; border: 0; background: var(--yellow); color: #111; cursor: pointer; font-weight: 700; text-transform: uppercase; }

.vehicle-lightbox {
    position: fixed;
    inset: 0;
    z-index: 11000;
    display: grid;
    grid-template-columns: 82px minmax(0, 1fr) 82px;
    align-items: center;
    padding: 32px;
    background: rgba(0, 0, 0, .96);
    color: #fff;
}

.vehicle-lightbox[hidden] { display: none; }
body.vehicle-lightbox-open { overflow: hidden; }

.vehicle-lightbox figure { min-width: 0; margin: 0; text-align: center; }
.vehicle-lightbox figure img { width: 100%; height: min(82vh, 980px); display: block; object-fit: contain; user-select: none; }
.vehicle-lightbox figcaption { display: flex; justify-content: space-between; gap: 25px; padding: 15px 5px 0; color: #ccc; font-size: 13px; text-align: left; }
.vehicle-lightbox-counter { color: #888; white-space: nowrap; }

.vehicle-lightbox-close,
.vehicle-lightbox-arrow {
    width: 56px;
    height: 56px;
    border: 1px solid #555;
    border-radius: 50%;
    background: rgba(0, 0, 0, .5);
    color: #fff;
    cursor: pointer;
    font-size: 22px;
    transition: background .2s ease, border-color .2s ease, color .2s ease;
}

.vehicle-lightbox-close:hover,
.vehicle-lightbox-arrow:hover { border-color: var(--yellow); background: var(--yellow); color: #111; }
.vehicle-lightbox-arrow { justify-self: center; }
.vehicle-lightbox-close { position: absolute; top: 22px; right: 22px; z-index: 2; font-size: 31px; }

@media (max-width: 1050px) {
    .vehicle-hero { grid-template-columns: 1fr; }
    .vehicle-summary { position: static; }
    .vehicle-facts { grid-template-columns: repeat(3, 1fr); }
}

@media (max-width: 760px) {
    .vehicle-detail-page { width: min(100% - 28px, 1480px); padding-top: 20px; }
    .vehicle-gallery-slide { aspect-ratio: 4 / 3; }
    .vehicle-gallery-arrow { width: 44px; height: 44px; }
    .vehicle-gallery-prev { left: 10px; }
    .vehicle-gallery-next { right: 10px; }
    .vehicle-section-heading { grid-template-columns: 1fr; gap: 8px; }
    .vehicle-facts { grid-template-columns: 1fr 1fr; }
    .equipment ul { grid-template-columns: 1fr 1fr; }
    .vehicle-contact { grid-template-columns: 1fr; }
    .vehicle-lightbox { grid-template-columns: 52px minmax(0, 1fr) 52px; padding: 18px 5px; }
    .vehicle-lightbox-arrow { width: 43px; height: 43px; }
}

@media (max-width: 480px) {
    .vehicle-summary { padding: 27px 20px; }
    .vehicle-highlights { grid-template-columns: 1fr; }
    .vehicle-facts { grid-template-columns: 1fr; }
    .vehicle-facts div { min-height: auto; }
    .equipment ul { grid-template-columns: 1fr; }
    .vehicle-contact { padding: 30px 20px; }
    .vehicle-contact form { grid-template-columns: 1fr; }
    .vehicle-contact textarea,
    .vehicle-contact button { grid-column: auto; }
    .vehicle-lightbox { grid-template-columns: 1fr 1fr; align-content: center; gap: 14px; padding: 65px 14px 22px; }
    .vehicle-lightbox figure { grid-column: 1 / -1; grid-row: 1; }
    .vehicle-lightbox figure img { height: 70vh; }
    .vehicle-lightbox-prev { grid-column: 1; grid-row: 2; }
    .vehicle-lightbox-next { grid-column: 2; grid-row: 2; }
    .vehicle-lightbox figcaption { flex-direction: column; gap: 5px; }
}

@media (prefers-reduced-motion: reduce) {
    .vehicle-gallery-track { transition: none; }
}
