/* LeaseKern native website components. No external fonts or framework. */
.lkp {
    --lkp-primary:#12372a;
    --lkp-primary-text:#fff;
    --lkp-accent:#f97316;
    --lkp-accent-text:#0b241b;
    --lkp-ink:#111827;
    --lkp-muted:#5f6b63;
    --lkp-line:#dde5dc;
    --lkp-paper:#f7f8f5;
    color:var(--lkp-ink);
    font-family:Aptos,"Segoe UI",system-ui,sans-serif;
    line-height:1.6;
    text-align:left;
    width:100%;
    box-sizing:border-box
}
.lkp-stock,.lkp-detail {
    margin-block-end:clamp(2rem,5vw,4.5rem)
}

.lkp *,.lkp *::before,.lkp *::after {
    box-sizing:border-box
}
.lkp h2,.lkp h3,.lkp p {
    margin:0 0 1rem
}
.lkp h2,.lkp h3,.lkp .lkp-price,.lkp-heading-price strong {
    font-family:Bahnschrift,"DIN Alternate","Aptos Display","Segoe UI",sans-serif
}
.lkp h2 {
    font-size:clamp(1.5rem,3vw,2.4rem);
    line-height:1.15;
    letter-spacing:-.035em
}
.lkp h3 {
    font-size:1.25rem;
    line-height:1.25
}
.lkp a {
    color:inherit;
    text-underline-offset:4px
}
.lkp :is(a,button,input,select,textarea,summary):focus-visible {
    outline:3px solid #54713a;
    outline-offset:3px
}
.lkp .lkp-eyebrow {
    font-size:.75rem;
    font-weight:700;
    letter-spacing:.13em;
    text-transform:uppercase;
    margin-bottom:.6rem
}
.lkp-intro {
    padding:clamp(1.25rem,3vw,2rem);
    background:var(--lkp-paper);
    border:1px solid var(--lkp-line);
    color:var(--lkp-primary);
    border-radius:8px;
    margin-bottom:1.5rem
}
.lkp-intro p:last-child {
    margin:0;
    max-width:680px
}
.lkp label {
    display:block;
    font-size:.875rem;
    font-weight:600;
    line-height:1.5
}
.lkp :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]),select,textarea) {
    display:block;
    width:100%;
    min-height:46px;
    margin-top:6px;
    padding:10px 12px;
    border:1px solid #87988b;
    border-radius:5px;
    background:#fff;
    color:#20382f;
    font:inherit;
    line-height:1.35;
    box-shadow:none
}
.lkp select {
    padding-right:30px
}
.lkp :is(input,textarea)::placeholder {
    color:#637168;
    opacity:1
}
.lkp-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:1rem;
    min-height:46px;
    padding:11px 18px;
    background:var(--lkp-accent);
    color:var(--lkp-accent-text);
    border:1px solid transparent;
    border-radius:8px;
    cursor:pointer;
    font:inherit;
    font-size:.9rem;
    font-weight:750;
    line-height:1.4
}
.lkp-button:hover {
    filter:brightness(.94)
}
.lkp-button:disabled {
    opacity:.65;
    cursor:wait
}
.lkp .lkp-button {
    background:var(--lkp-accent)!important;
    color:var(--lkp-accent-text)!important;
    border:1px solid var(--lkp-accent)!important;
    border-radius:8px!important;
    font-weight:750
}
.lkp-filters {
    background:#fff;
    padding:1.25rem;
    border:1px solid var(--lkp-line);
    border-radius:9px;
    box-shadow:0 10px 28px rgb(18 55 42 / .07)
}
.lkp-filter-primary,.lkp-filter-main,.lkp-filter-grid,.lkp-form-grid {
    display:grid;
    gap:1rem
}
.lkp-filter-primary { align-items:end; gap:.9rem }
.lkp-filter-primary>*,.lkp-filter-grid>*,.lkp-range-fields>* { min-width:0 }
.lkp-filter-primary>.lkp-filter-range,.lkp-filter-primary>.lkp-filter-choices,.lkp-filter-primary>.lkp-button { grid-column:1/-1 }
.lkp-filter-primary .lkp-button { width:100% }
.lkp-filter-range,.lkp-filter-choices {
    min-width:0;
    margin:0;
    padding:0;
    border:0
}
.lkp-filter-range>legend,.lkp-filter-choices>legend {
    padding:0;
    margin-bottom:.35rem;
    color:var(--lkp-primary);
    font-size:.9rem;
    font-weight:700
}
.lkp-range-fields {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.65rem
}
.lkp-range-fields label { font-size:.77rem; color:var(--lkp-muted) }
.lkp .lkp-range-fields input { min-width:0; margin-top:.25rem; padding-inline:.6rem; font-size:.9rem }
.lkp-choice-list {
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.45rem
}
.lkp .lkp-choice {
    display:flex;
    align-items:center;
    gap:.45rem;
    min-width:0;
    min-height:38px;
    margin:0;
    padding:.35rem .55rem;
    border:1px solid var(--lkp-line);
    border-radius:6px;
    background:#fff;
    color:var(--lkp-primary);
    font-size:.78rem;
    font-weight:600;
    cursor:pointer;
    overflow-wrap:anywhere
}
.lkp .lkp-choice:has(input:checked) { border-color:var(--lkp-primary); background:#eaf0e9 }
.lkp .lkp-choice input[type=radio] { flex:none; width:15px; height:15px; margin:0; accent-color:var(--lkp-primary) }
.lkp-filter-stack { display:grid; gap:1rem }
.lkp-filter-more { margin-top:1rem; border-top:1px solid var(--lkp-line) }
.lkp-filter-more summary { display:flex; align-items:center; justify-content:space-between; padding:.9rem 0; color:var(--lkp-primary); font-size:.9rem }
.lkp-filter-more summary::after { content:'+'; font-size:1.2rem; line-height:1 }
.lkp-filter-more[open] summary::after { content:'−' }
.lkp-filter-groups { display:grid; gap:1rem; padding:0 0 1rem }
.lkp-filter-groups fieldset { min-width:0; margin:0; padding:1rem; border:1px solid var(--lkp-line); border-radius:7px; background:var(--lkp-paper) }
.lkp-filter-groups legend { padding:0 .3rem; color:var(--lkp-primary); font-size:.8rem; font-weight:700; letter-spacing:.04em; text-transform:uppercase }
.lkp-filter-groups .lkp-filter-range,.lkp-filter-groups .lkp-filter-choices { padding:0; border:0; background:transparent; border-radius:0 }
.lkp-filter-groups .lkp-filter-range>legend,.lkp-filter-groups .lkp-filter-choices>legend { padding:0; font-size:.85rem; letter-spacing:0; text-transform:none }
.lkp-filter-actions { display:flex; align-items:center; justify-content:space-between; gap:1rem; padding-top:1rem; border-top:1px solid var(--lkp-line); font-size:.85rem }
.lkp-filter-main {
    align-items:end
}
.lkp details {
    margin-top:1rem
}
.lkp summary {
    cursor:pointer;
    padding:.5rem 0;
    font-weight:600
}
.lkp-filter-grid {
    padding-top:1rem
}
.lkp-results-toolbar {
    display:flex;
    align-items:center;
    justify-content:space-between;
    flex-wrap:wrap;
    gap:.75rem 1.25rem;
    margin:0 0 1rem;
    padding:.8rem 1rem;
    border:1px solid var(--lkp-line);
    border-radius:8px;
    background:var(--lkp-paper)
}
.lkp-results-overview {
    display:flex;
    align-items:center;
    flex:1 1 210px;
    flex-wrap:wrap;
    gap:.15rem 1rem;
    min-width:0;
    font-size:.875rem
}
.lkp-results-overview p { margin:0; white-space:nowrap }
.lkp-results-links { display:flex; align-items:center; flex-wrap:wrap; gap:.25rem .9rem; font-size:.8rem }
.lkp-results-links a { color:var(--lkp-primary); text-decoration:underline; text-underline-offset:3px }
.lkp .lkp-share-button { padding:0; border:0; background:none; color:var(--lkp-primary); font:inherit; font-weight:700; text-decoration:underline; text-underline-offset:4px; cursor:pointer }
.lkp-results-controls { display:flex; align-items:end; flex-wrap:wrap; gap:.55rem; margin:0; min-width:0 }
.lkp-results-controls label { flex:none; width:170px; min-width:0; color:var(--lkp-muted); font-size:.75rem; font-weight:700 }
.lkp-results-controls label:first-of-type { width:195px }
.lkp-results-controls select { min-height:38px; margin-top:.2rem; padding-block:.35rem; font-size:.875rem }
.lkp .lkp-results-apply { min-height:40px; padding:.45rem .85rem; background:#fff!important; color:var(--lkp-primary)!important; border-color:var(--lkp-primary)!important }
.lkp-share-feedback:empty { display:none }
.lkp-share-feedback { margin:0 0 .75rem; color:var(--lkp-primary); font-size:.85rem }
.lkp-stock-layout {
    display:grid;
    gap:1.5rem
}
.lkp-stock-sidebar,.lkp-stock-results {
    min-width:0
}
.lkp-grid {
    display:grid;
    gap:1.5rem
}
.lkp-card {
    border:1px solid var(--lkp-line);
    border-radius:10px;
    overflow:hidden;
    background:#fff;
    min-width:0;
    display:flex;
    flex-direction:column;
    container-type:inline-size;
    box-shadow:0 2px 10px rgb(18 55 42 / .05);
    transition:box-shadow .2s ease,transform .2s ease
}
.lkp-card:hover {
    box-shadow:0 12px 28px rgb(18 55 42 / .13);
    transform:translateY(-2px)
}
.lkp-card-image {
    display:grid;
    place-items:center;
    aspect-ratio:1.52;
    background:#edf0e9;
    color:#526057;
    text-decoration:none;
    overflow:hidden
}
.lkp-card-image img {
    width:100%;
    height:100%;
    object-fit:cover
}
.lkp-card-body {
    padding:1.25rem;
    display:flex;
    flex-direction:column;
    flex:1;
    min-width:0
}
.lkp-card h3 a {
    color:var(--lkp-primary)!important;
    text-decoration:none
}
.lkp-card-trim {
    color:var(--lkp-muted);
    font-size:.875rem;
    line-height:1.5;
    overflow-wrap:anywhere
}
.lkp-specs {
    padding:0;
    margin:0 0 1rem;
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:.7rem 1rem;
    list-style:none;
    font-size:.825rem;
    color:var(--lkp-ink)
}
.lkp-specs li {
    min-width:0;
    overflow-wrap:anywhere
}
.lkp-specs span,.lkp-monthly>span {
    display:block;
    color:var(--lkp-muted);
    font-size:.7rem;
    line-height:1.35
}
.lkp-card-location {
    display:flex;
    align-items:baseline;
    gap:.35rem;
    margin:0;
    color:var(--lkp-primary);
    font-size:.825rem;
    font-weight:600;
    overflow-wrap:anywhere
}
.lkp-card-location span {
    font-size:1rem;
    line-height:1
}
.lkp .lkp-price {
    font-size:1.55rem;
    font-weight:650;
    letter-spacing:-.03em;
    line-height:1.15;
    margin-bottom:.7rem
}
.lkp-price small {
    display:block;
    margin-top:.35rem;
    color:var(--lkp-muted);
    font-size:.725rem;
    font-weight:400;
    letter-spacing:0
}
.lkp-monthly {
    margin-bottom:1rem;
    font-size:.875rem
}
.lkp-monthly strong {
    font-size:1.15rem;
    letter-spacing:-.02em
}
.lkp-monthly b {
    font-size:.75rem;
    font-weight:500
}
.lkp-card-link {
    display:flex;
    justify-content:space-between;
    align-items:center;
    min-height:44px;
    padding:.7rem 1rem;
    background:var(--lkp-accent);
    color:var(--lkp-accent-text)!important;
    border-radius:8px;
    font-size:.9rem;
    font-weight:750;
    text-decoration:none
}
.lkp-card-price { margin:0 0 1rem }
.lkp-card-price>span { display:block; margin-bottom:5px; color:var(--lkp-muted); font-size:.75rem }
.lkp-card-price strong { display:block; min-height:31px; font:650 1.55rem/1.25 Bahnschrift,"Segoe UI",sans-serif; letter-spacing:-.03em }
.lkp-card-price strong small { font:400 .8rem/1.4 Aptos,"Segoe UI",sans-serif; letter-spacing:0; white-space:nowrap }
.lkp-card-price strong.lkp-card-price-unavailable { font-size:1.125rem; letter-spacing:0 }
.lkp-card-link:hover {
    filter:brightness(.94)
}
.lkp-pagination {
    display:flex;
    justify-content:center;
    align-items:center;
    gap:1rem;
    margin:2rem 0;
    flex-wrap:wrap
}
.lkp-pagination a {
    padding:10px
}
/* Vehicle detail: the host theme owns the outer container width. */
.lkp-detail-topbar { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:.75rem; padding:1.25rem 0; border-bottom:1px solid var(--lkp-line); margin-bottom:1.5rem }
.lkp-breadcrumb { display:flex; flex-wrap:wrap; gap:.65rem; font-size:.8rem; overflow-wrap:anywhere }
.lkp-breadcrumb a { font-weight:650 }
.lkp-detail-share { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem }
.lkp-detail-share .lkp-share-feedback { margin:0 }
.lkp-detail-grid { display:grid; grid-template-areas:'heading' 'media' 'purchase' 'details'; gap:1.5rem; align-items:start }
.lkp-vehicle-heading { grid-area:heading; min-width:0 }
.lkp-vehicle-heading :is(h1,h2) { color:var(--lkp-primary); font-family:Bahnschrift,"DIN Alternate","Aptos Display","Segoe UI",sans-serif; font-size:clamp(1.8rem,3vw,2.5rem); font-weight:700; line-height:1.12; letter-spacing:-.035em; margin:0 0 .65rem; overflow-wrap:anywhere }
.lkp-vehicle-heading .lkp-eyebrow { color:var(--lkp-muted); font-size:.65rem }
.lkp-subtitle { color:var(--lkp-muted); margin:0; font-size:.95rem }
.lkp-detail-media { grid-area:media; min-width:0 }
.lkp-detail-content { grid-area:details; min-width:0 }
.lkp-gallery { margin:0 0 1rem }
.lkp-gallery-stage { overflow:hidden; border-radius:8px; background:var(--lkp-paper) }
.lkp-gallery-slide { display:block }
.lkp-gallery-slide img { display:block; width:100%; height:auto; aspect-ratio:1.5; object-fit:contain; border-radius:0 }
.lkp-gallery [hidden] { display:none!important }
.lkp-gallery-controls { display:flex; gap:.5rem; align-items:center; margin-top:.65rem; font-size:.8rem }
.lkp-gallery button { font:inherit; background:#fff; color:var(--lkp-primary); border:1px solid var(--lkp-line); border-radius:5px; min-width:44px; min-height:44px; padding:.4rem .7rem; cursor:pointer }
.lkp-gallery button:hover { background:var(--lkp-paper); border-color:var(--lkp-primary) }
.lkp-gallery-controls [data-gallery-enlarge] { margin-left:auto; font-size:.75rem; font-weight:650 }
.lkp-gallery-controls [data-gallery-count] { min-width:3rem; text-align:center; font-variant-numeric:tabular-nums }
.lkp-gallery-thumbs { display:flex; gap:.6rem; overflow-x:auto; padding:6px 3px }
.lkp-gallery-thumbs button { flex:0 0 90px; padding:3px; overflow:hidden }
.lkp-gallery-thumbs img { display:block; width:100%; height:58px; object-fit:cover }
.lkp-gallery-thumbs button[aria-pressed=true] { border:2px solid var(--lkp-primary); padding:2px }
.lkp-photo-dialog { width:min(1100px,95vw); max-width:95vw; max-height:94dvh; margin:auto; border:0; padding:1rem; background:#fff; color:var(--lkp-primary); border-radius:8px }
.lkp-photo-dialog::backdrop { background:rgb(7 31 23 / .9) }
.lkp-photo-dialog form { display:flex; justify-content:flex-end; margin:0 0 .5rem }
.lkp-photo-dialog>img { display:block; width:100%; height:min(68dvh,720px); object-fit:contain }
.lkp-photo-navigation { display:flex; justify-content:center; align-items:center; gap:1rem; margin-top:.5rem }
.lkp-empty-photo { aspect-ratio:1.5; display:grid; place-items:center; background:var(--lkp-paper) }
.lkp-quick-facts { padding:1.25rem 0; border-bottom:1px solid var(--lkp-line) }
.lkp-quick-facts ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; list-style:none; padding:0; margin:0 }
.lkp-quick-facts li span { display:block; color:var(--lkp-muted); font-size:.72rem }
.lkp-quick-facts li strong { display:block; color:var(--lkp-primary); font-size:.9rem; overflow-wrap:anywhere }
.lkp-detail-nav { display:flex; flex-wrap:wrap; gap:.3rem 1.5rem; border-bottom:2px solid var(--lkp-line) }
.lkp-detail-nav a { padding:.8rem 0; text-decoration:none; font-size:.875rem; font-weight:650; border-bottom:2px solid transparent; margin-bottom:-2px }
.lkp-detail-nav a:hover,.lkp-detail-nav a:focus-visible { color:var(--lkp-primary); border-bottom-color:var(--lkp-accent) }
/* Real tabs enhance the existing anchors; without JavaScript every section remains readable. */
[data-lkp-tabs] .lkp-detail-nav a[aria-selected=true] { color:var(--lkp-primary); border-bottom-color:var(--lkp-accent) }
[data-lkp-tabs] .lkp-detail-section[hidden] { display:none!important }
[data-lkp-tabs] .lkp-detail-section:focus-visible { outline:3px solid #54713a; outline-offset:3px }
@media print {
    [data-lkp-tabs] .lkp-detail-nav { display:none }
    [data-lkp-tabs] .lkp-detail-section[hidden] { display:block!important }
}
.lkp-detail-section { padding:2rem 0; border-bottom:1px solid var(--lkp-line); scroll-margin-top:100px }
.lkp-detail-section>h2 { color:var(--lkp-primary); font-size:1.5rem }
.lkp-detail-section .lkp-eyebrow { font-size:.65rem; color:var(--lkp-muted) }
.lkp-facts { margin:1rem 0 0 }
.lkp-facts>div { display:grid; grid-template-columns:1fr 1fr; gap:1rem; padding:.7rem .65rem; font-size:.875rem }
.lkp-facts>div:nth-child(odd) { background:var(--lkp-paper) }
.lkp-facts dt { color:var(--lkp-muted) }
.lkp-facts dd { margin:0; font-weight:600; overflow-wrap:anywhere }
.lkp-options { list-style:none; padding:0; margin:0; column-gap:1.5rem }
.lkp-options li { break-inside:avoid; padding:.4rem 0 .4rem 1.3rem; position:relative; font-size:.875rem }
.lkp-options li::before { content:'✓'; position:absolute; left:0; color:var(--lkp-primary); font-weight:700 }
.lkp-video-link { margin-top:1.5rem }
.lkp-description { overflow-wrap:anywhere }
.lkp-back-link { display:inline-block; margin-top:1.5rem; font-weight:650; font-size:.875rem }
.lkp-purchase { grid-area:purchase; background:var(--lkp-paper); border:1px solid var(--lkp-line); border-top:3px solid var(--lkp-primary); padding:clamp(1.25rem,2.5vw,1.75rem); border-radius:8px; min-width:0 }
.lkp-purchase-price { display:grid; gap:.25rem; padding-bottom:1.25rem; margin-bottom:1.25rem; border-bottom:1px solid var(--lkp-line) }
.lkp-purchase-price span { font-size:.8rem; color:var(--lkp-muted) }
.lkp-purchase-price strong { color:var(--lkp-primary); font-family:Bahnschrift,"Segoe UI",sans-serif; font-size:2.15rem; line-height:1.2; letter-spacing:-.04em }
.lkp-purchase-price strong small { font-family:inherit; font-size:1rem; letter-spacing:0; font-weight:500; white-space:nowrap }
.lkp-purchase-price strong.lkp-price-pending { font-size:1.5rem }
.lkp-purchase-price .lkp-quote-basis { margin:.5rem 0 0; font-size:.78rem; color:var(--lkp-muted); line-height:1.6 }
.lkp-purchase-meta { margin:0 0 1.25rem; font-size:.8rem }
.lkp-purchase-meta div { display:flex; flex-wrap:wrap; justify-content:space-between; gap:.25rem 1rem; padding:.3rem 0 }
.lkp-purchase-meta dt { color:var(--lkp-muted) }
.lkp-purchase-meta dd { margin:0; font-weight:600 }
.lkp-purchase .lkp-purchase-note { font-size:.72rem; color:var(--lkp-muted); line-height:1.65; margin:1rem 0 0 }
.lkp-request { margin-top:1.25rem }
.lkp-request summary { display:flex; justify-content:space-between; align-items:center; gap:.5rem; list-style:none; cursor:pointer; padding:1rem; border-radius:5px; background:var(--lkp-accent); color:var(--lkp-accent-text); font-weight:700; font-size:.9rem }
.lkp-request summary::-webkit-details-marker { display:none }
.lkp-request[open] summary span { transform:rotate(90deg) }
.lkp-request .lkp-lead { margin-top:1rem; padding-top:0; border-top:0 }
.lkp-finance-intro { font-size:.9rem }
.lkp .lkp-muted {
    color:var(--lkp-muted);
    font-size:.8rem
}
.lkp-finance {
    font-size:.875rem
}
.lkp-finance form {
    display:grid;
    gap:1rem
}
.lkp-finance form h3,.lkp-finance form>p {
    margin:0
}
.lkp-calculator {
    border-top:1px solid var(--lkp-line);
    padding-top:1.5rem;
    margin-top:1.5rem
}
.lkp-lead {
    margin-top:2rem;
    padding-top:1.5rem;
    border-top:1px solid var(--lkp-line)
}
.lkp-calculation-result:empty {
    display:none
}
.lkp-calculation-result {
    background:var(--lkp-accent);
    color:var(--lkp-accent-text);
    padding:1rem;
    border-radius:5px
}
.lkp-calculation-result strong {
    font-size:1.5rem;
    line-height:1.2;
    display:block;
    margin-bottom:.6rem
}
.lkp-calculation-result p {
    font-size:.8rem;
    margin-bottom:.5rem
}
.lkp-calculation-result .lkp-muted {
    color:inherit
}
.lkp .lkp-consent {
    display:flex;
    align-items:start;
    gap:10px;
    font-weight:400;
    font-size:.75rem
}
.lkp-consent input {
    flex:none;
    width:18px;
    height:18px;
    margin-top:3px;
    accent-color:var(--lkp-primary)
}
.lkp-honey {
    position:absolute;
    left:-10000px;
    width:1px;
    height:1px;
    overflow:hidden
}
.lkp-feedback:empty {
    display:none
}
.lkp-feedback {
    padding:1rem;
    background:#e9efe2;
    color:#20382f;
    border-radius:5px;
    overflow-wrap:anywhere
}
.lkp-notice {
    padding:1.5rem;
    background:var(--lkp-paper);
    border:1px solid var(--lkp-line);
    margin:1rem 0
}

.lkp {
    font-family:Aptos,"Segoe UI",system-ui,sans-serif;
    font-size:16px;
    font-weight:400;
    container-type:inline-size
}

@container(max-width:620px) {
.lkp-results-toolbar { padding:.85rem }
.lkp-results-overview { flex-basis:100%; justify-content:space-between }
.lkp-results-controls { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); width:100% }
.lkp-results-controls label,.lkp-results-controls label:first-of-type { width:auto }
.lkp .lkp-results-apply { grid-column:1/-1; width:100% }
}

@container(min-width:560px) {
.lkp-filter-primary,.lkp-filter-main,.lkp-filter-grid,.lkp-form-grid {
    grid-template-columns:repeat(2,minmax(0,1fr))
}
.lkp-options {
    columns:2
}
.lkp-quick-facts ul {
    grid-template-columns:repeat(4,minmax(0,1fr))
}

}

@container(min-width:680px) {
    .lkp-card {
    display:grid;
    grid-template-columns:minmax(230px,39%) minmax(0,1fr)
}
.lkp-card-image {
    min-height:100%;
    aspect-ratio:auto
}
.lkp-card-body {
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(150px,.56fr);
    align-items:start;
    gap:1.25rem
}
.lkp-card-offer {
    align-self:stretch;
    display:flex;
    flex-direction:column;
    min-width:0;
    padding-inline-start:1.25rem;
    border-inline-start:1px solid var(--lkp-line)
}
.lkp-card-offer .lkp-card-link {
    margin-top:auto
}
}

@container(min-width:960px) {
.lkp-stock-layout {
    grid-template-columns:minmax(230px,280px) minmax(0,1fr);
    align-items:start
}
.lkp-stock-sidebar {
    position:sticky;
    top:1.5rem
}
.lkp-filter-main {
    grid-template-columns:1fr
}
.lkp-filter-primary { grid-template-columns:1fr }
.lkp-filter-grid {
    grid-template-columns:1fr
}
.lkp-detail-grid {
    grid-template-columns:minmax(0,1.55fr) minmax(340px,1fr); grid-template-areas:"media heading" "media purchase" "details purchase"; grid-template-rows:auto auto 1fr; column-gap:2.25rem
}

}

@media(prefers-reduced-motion:reduce) {
    .lkp * {
    scroll-behavior:auto
}

}


/* The two request routes share one referral context and existing form styling. */
.lkp-request-choices{padding:24px;margin-bottom:28px;background:#f1f5f2;border:1px solid #dce5df;border-radius:12px}
.lkp-request-choices h2{font-size:clamp(1.3rem,2.3vw,1.8rem);margin:0 0 8px}
.lkp-request-choices p{margin:0 0 18px;max-width:65ch}
.lkp-request-actions{display:flex;flex-wrap:wrap;gap:12px}
.lkp .lkp-button-outline{background:transparent;color:var(--lkp-primary);border:1px solid var(--lkp-primary)}
.lkp-external-request{max-width:900px;margin:0 auto;padding:32px 0 56px}
.lkp-external-intro{margin-bottom:28px;max-width:70ch}
.lkp-external-intro h2{font-size:clamp(1.5rem,3vw,2.25rem);line-height:1.2}
.lkp-external-request .lkp-finance{padding:clamp(20px,4vw,36px);border:1px solid #dce5df;border-radius:16px;background:#fff}
.lkp-external-request fieldset{border:0;padding:0;margin:0 0 28px;min-width:0}
.lkp-external-request legend{font-weight:700;font-size:1.15rem;margin-bottom:16px}
.lkp-external-request input,.lkp-external-request select{max-width:100%}
.lkp-external-request a,.lkp-request-actions a{overflow-wrap:anywhere}
@media(max-width:540px){.lkp-request-actions{flex-direction:column}.lkp-request-actions a{text-align:center}.lkp-external-request{padding:20px 0 36px}}

/* Vehicle finance panel: native terms, explicit euro amounts and optional trade-in. */
.lkp [hidden] { display:none!important }
.lkp .lkp-detail-calculator { margin:0; padding:0; border:0; gap:1.4rem }
.lkp-detail-calculator .lkp-purchase-meta { margin:0 }
.lkp-detail-calculator .lkp-acquisition { padding-top:0; padding-bottom:.5rem; font-size:1rem }
.lkp-detail-calculator .lkp-acquisition dt { color:var(--lkp-primary); font-weight:700 }
.lkp-detail-calculator .lkp-acquisition dd { color:var(--lkp-primary); font-weight:700 }
.lkp-term-choice { border:0; padding:0; margin:0; min-width:0 }
.lkp-term-choice legend { padding:0; margin-bottom:.65rem; color:var(--lkp-primary); font-weight:700; font-size:.9rem }
.lkp-term-options { display:flex; border:1px solid var(--lkp-line); border-radius:5px; background:#fff; overflow:visible }
.lkp .lkp-term-options label { position:relative; flex:1; min-width:0; margin:0; text-align:center; cursor:pointer }
.lkp-term-options label+label { border-left:1px solid var(--lkp-line) }
.lkp-term-options input { position:absolute; width:1px; height:1px; margin:0; padding:0; border:0; clip-path:inset(50%); overflow:hidden }
.lkp-term-options span { display:grid; place-items:center; min-height:46px; padding:.55rem .2rem; color:var(--lkp-primary); font-size:1rem; font-weight:500 }
.lkp-term-options label:first-child span { border-radius:4px 0 0 4px }
.lkp-term-options label:last-child span { border-radius:0 4px 4px 0 }
.lkp-term-options input:checked+span { background:var(--lkp-primary); color:var(--lkp-primary-text); font-weight:700 }
.lkp-term-options input:focus-visible+span { outline:3px solid #54713a; outline-offset:3px; position:relative; z-index:1 }
.lkp-amount-row { display:grid; grid-template-columns:minmax(0,1fr) minmax(120px,46%); align-items:center; gap:.75rem }
.lkp .lkp-amount-row label { color:var(--lkp-primary); font-weight:700; font-size:.9rem }
.lkp-field-title { display:flex; align-items:center; gap:.4rem; min-width:0 }
.lkp-euro-input { position:relative; min-width:0 }
.lkp-euro-input>span { position:absolute; left:.85rem; top:50%; transform:translateY(-50%); color:var(--lkp-muted); pointer-events:none }
.lkp .lkp-euro-input input { margin:0; padding-left:2rem; text-align:right; font-size:1rem; font-weight:400; border-color:var(--lkp-line) }
.lkp .lkp-euro-input input:hover { border-color:#87988b }
.lkp .lkp-loan-help { font-size:.75rem; margin-top:-.85rem; line-height:1.5 }
.lkp-calculator-help { position:relative; flex:none }
.lkp-calculator-help summary { display:grid; place-items:center; width:24px; height:24px; border:1px solid currentColor; border-radius:50%; font-size:.7rem; font-weight:700; line-height:1; color:var(--lkp-primary); cursor:pointer; list-style:none }
.lkp-calculator-help summary::-webkit-details-marker { display:none }
.lkp-calculator-help[open] p { position:absolute; z-index:5; width:220px; max-width:65vw; left:-70px; top:1.65rem; margin:0; padding:.85rem; border:1px solid var(--lkp-line); border-radius:5px; background:#fff; color:var(--lkp-ink); box-shadow:0 4px 16px rgb(18 55 42 / .12); font-size:.8rem; font-weight:400; line-height:1.5 }
.lkp-trade-in { border:1px solid var(--lkp-line); border-radius:5px; background:#fff }
.lkp .lkp-trade-switch { display:flex; align-items:center; gap:.6rem; min-height:62px; padding:.75rem 1rem; cursor:pointer; color:var(--lkp-primary); font-weight:500 }
.lkp-trade-switch svg { flex:none; width:21px; height:21px }
.lkp-trade-switch>span:first-of-type { flex:1; font-size:.85rem }
.lkp-trade-switch input { position:absolute; width:1px; height:1px; margin:0; padding:0; border:0; clip-path:inset(50%); overflow:hidden }
.lkp-switch-track { flex:none; width:42px; height:26px; padding:3px; border-radius:20px; background:#b4beb7; transition:background .15s }
.lkp-switch-track::after { content:""; display:block; width:20px; height:20px; background:#fff; border-radius:50%; transition:transform .15s }
.lkp-trade-switch input:checked+.lkp-switch-track { background:var(--lkp-primary) }
.lkp-trade-switch input:checked+.lkp-switch-track::after { transform:translateX(16px) }
.lkp-trade-switch input:focus-visible+.lkp-switch-track { outline:3px solid #54713a; outline-offset:3px }
.lkp-trade-panel { padding:.25rem 1rem 1rem }
.lkp-trade-panel .lkp-muted { margin:.6rem 0 0; font-size:.75rem }
.lkp-detail-calculator .lkp-purchase-price { padding:1.15rem 0 0; margin:0; border:0; border-top:1px solid var(--lkp-line) }
.lkp .lkp-detail-calculator .lkp-calculation-result { padding:0; background:none; color:var(--lkp-muted); font-size:.75rem }
.lkp-detail-calculator .lkp-calculation-result p { margin:0; font-size:inherit }
@media (prefers-reduced-motion:reduce) { .lkp-switch-track,.lkp-switch-track::after { transition:none } }
