/* Public header, catalogue menus and city picker. Independent from portal navigation. */
.marketplace-header{position:relative;z-index:31;background:#22282b;color:#fff}
.header-utility{background:var(--brand-primary);font-size:12px}
.utility-row{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:30px}
.header-utility a:hover{color:#f5d68b}
.header-utility .country-menu summary{padding:6px 0}
.header-utility .country-menu>div{color:var(--ink);z-index:60}
.header-main{display:flex;align-items:center;justify-content:space-between;gap:32px;min-height:75px}
.header-main .site-brand{color:#fff}
.header-main .site-brand small{color:#b7c7bc}
.header-search{display:flex;align-items:stretch;flex:1;max-width:450px;min-width:0;background:#fff;border-radius:4px;overflow:hidden;height: 40px}
.header-search input{border:0;border-radius:0;flex:1;padding-inline:16px}
.header-search button{border:0;background:#fff;color:var(--ink);padding:10px 15px;font-size:12px;font-weight:650}
.header-search:focus-within{outline:3px solid var(--gold);outline-offset:3px}
.header-partner{height: 35px; border-color:#b5cbbd;background:var(--brand-primary);color:#fff;flex-shrink:0}
.header-partner:hover{color:#fff;background:var(--brand-primary)}
.header-nav-bar{position:sticky;top:0;z-index:30;background:var(--brand-primary);border-top:1px solid #fff}
.header-nav-bar.is-stuck{box-shadow:0 4px 16px #10271d33}
.nav-container{ height: 60px; position:relative;display:grid;align-items:center;gap:8px}
.nav-brand{grid-column:1;grid-row:1;justify-self:start}
.nav-brand .dj-logo{width:55px;height:40px;padding: 4px}
.public-enhanced .header-nav-bar:not(.is-stuck) .nav-brand{visibility:hidden}
.header-nav-bar .site-navigation{grid-column:2;grid-row:1}
.nav-actions{grid-column:3;grid-row:1;justify-self:end;display:flex;align-items:center;gap:10px;min-width:0;max-width:100%}
.nav-account{display:inline-flex;align-items:center;justify-content:center;gap:7px;flex-shrink:0;min-height:35px;padding:6px 10px;border:1px solid #b5cbbd;border-radius:4px;color:#fff;font-size:12px;font-weight:600;white-space:nowrap}
.nav-account:hover,.nav-account:focus-visible{background:var(--brand-primary-hover);color:#ffa000}
.nav-account:focus-visible{outline:2px solid #ffa000;outline-offset:3px}
.header-nav-bar .city-picker{grid-column:3;grid-row:1;justify-self:end;min-width:0;max-width:100%;font-size:12px;font-weight:600}
html{scroll-padding-top:90px}
.marketplace-header .site-navigation{min-height:61px;gap:0;justify-content:center}
.marketplace-header .site-navigation>a:not(.button),.mega-menu>summary{padding:20px 28px;}
.marketplace-header .site-navigation>a[aria-current]{color:#fff}
.header-disclosure summary{cursor:pointer;list-style:none}
.header-disclosure summary::-webkit-details-marker{display:none}
.mega-menu>summary{display:flex;gap:5px;align-items:center}

.mega-panel{position:absolute;left:0;right:0;top:100%;z-index:40;background:var(--brand-primary);border-top:3px solid #082e22;border-radius: 0 0 8px 8px;padding:15px;box-shadow:0 20px 35px #132a3333;max-height:65vh;overflow:auto;overscroll-behavior:contain}
.mega-heading{display:flex;justify-content:space-between;gap:20px;font-size:14px;margin-bottom:10px}
.mega-heading>span{font-size:12px;color:#c3d6c8}
.brand-menu-grid{display:grid;grid-template-columns:repeat(8,minmax(0,1fr));gap:12px}
.brand-menu-grid>a{display:flex;flex-direction:column;align-items:center;justify-content:flex-start;gap:5px;text-align:center;border-radius:8px;min-width:0;overflow-wrap:anywhere;font-size:13px}
.brand-menu-grid>a:hover,.brand-menu-grid>a:focus-visible{background:var(--brand-primary-hover);color:#fff}
.brand-menu-grid img{width:60px;height:45px;object-fit:contain;background:#fff;border-radius:4px;padding:2px}
.brand-monogram{display:grid;place-items:center;width:64px;height:44px;background:#245f48;border:1px solid #598773;border-radius:6px;font-size:25px;color:#f7d88e}
/* Keep a labelled placeholder while the bounded logo queue loads each image. */
.brand-image-slot{display:grid;place-items:center;min-height:49px}
.brand-image-slot img[hidden],.brand-image-placeholder{display:none}
.public-enhanced .brand-image-placeholder:not([hidden]){display:grid}
.rental-menu-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}
.rental-menu-grid h2{font:600 14px/1.5 "Segoe UI",Arial,sans-serif;color:#ffa000;letter-spacing:0;margin:0 0 15px;text-shadow: 2px 2px 2px rgba(0, 0, 0, 1.5);}
.rental-menu-grid a{display:flex;align-items:center;gap:12px;padding:7px;border-radius:6px;font-size:13px;text-shadow: 2px 2px 2px rgba(0, 0, 0, 1.5);}
.rental-menu-grid a:hover{background:var(--brand-primary-hover);color:#fff}
.nav-option-icon{display:grid;place-items:center;background:#fae8b9;color:#8c6520;width:36px;height:36px;border-radius:10px;font-size:21px;flex-shrink:0}
.all-rentals-link{margin-top:12px;color:#f5d68b}
.menu-empty{font-size:13px;color:#d4e1d7;margin:10px 0}
.marketplace-header .buy-car-button{background:#FFA000;color:#193e2c;border:0;margin:10px 24px;padding:11px 20px}
.marketplace-header .buy-car-button[aria-current]{background:#FFA000;color:#193e2c;}
.city-picker{margin:0}
.city-picker>summary{display:flex;align-items:center;justify-content:center;gap:12px;border:1px solid #b5cbbd;border-radius:4px;padding:6px 6px;min-width:170px;overflow-wrap:anywhere}
.city-panel{background:#f5f8f6;color:var(--ink);padding:0;font-size:14px}
.city-picker>.city-panel{position:absolute;right:0;top:100%;width:min(1120px,100%);box-shadow:0 15px 35px #132a3333;max-height:75vh;overflow:auto;border-radius:18px}
.city-panel-heading{position:sticky;top:0;z-index:3;display:flex;align-items:center;gap:18px;padding:10px 25px;background:linear-gradient(110deg,var(--brand-primary) 5%,var(--brand-primary) 65%,#466333);color:#fff;overflow:hidden}
.city-panel-heading::after{content:"";position:absolute;right:-45px;bottom:-100px;width:200px;height:200px;border-radius:50%;background:#ffffff10;pointer-events:none}
.city-country-icon{display:grid;place-items:center;flex:0 0 45px;width:45px;height:45px;border-radius:10px;background:#fff;color:var(--brand-primary);font-size:25px}
.city-country-copy{min-width:0;flex:1}
.city-panel-heading h2{font-size:27px;line-height:1.25;color:#fff;margin:0 0 0px;overflow-wrap:anywhere}
.city-panel-heading p{font-size:14px;color:#d3e2d9;margin:0;line-height:1.5}
.city-close{display:none;align-self:flex-start;position:relative;z-index:1;background:#fff;color:#152c22;border:0;border-radius:50%;width:38px;height:38px;min-height:38px;padding:0;font-size:20px;line-height:1;flex:0 0 38px;cursor:pointer}
.city-panel-body{padding:26px 32px 20px}
.city-search-label{position:relative;display:block;margin-bottom:28px}
.city-search-label>.dj-icon{position:absolute;top:50%;left:20px;transform:translateY(-50%);color:#70857a;font-size:18px;pointer-events:none}
.city-search-label .city-search-input{width:100%;min-height:49px;padding:0px 15px 0px 50px;border:1px solid #a6c3b1;border-radius:8px;background:#fff;color:var(--ink);font-size:16px}
.city-search-label .city-search-input:focus{outline:3px solid var(--brand-primary-focus);outline-offset:1px;border-color:var(--brand-primary)}
.city-section-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}
.city-section-heading h3{display:flex;align-items:center;gap:12px;font-size:18px;line-height:1.4;letter-spacing:.03em;text-transform:uppercase;margin:0;color:#203e31}
.city-section-heading p{font-size:12px;color:#6d7f75;margin:0;text-align:right}
.city-top-section .city-section-heading .dj-icon{color:#ffbd00}
.city-top-grid,.city-choice-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.city-top-section{margin-bottom:28px}
.city-featured{display:block;position:relative;isolation:isolate;min-width:0;aspect-ratio:1.75;border-radius:13px;overflow:hidden;background:var(--brand-primary);box-shadow:0 9px 18px #163d2414;color:#fff}
.city-featured::after{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(transparent 25%,#052c20dc)}
.city-choice-image{display:block;width:100%;height:100%;object-fit:cover}
.city-featured strong{position:absolute;bottom:18px;left:18px;right:14px;z-index:1;font-size:18px;line-height:1.3;overflow-wrap:anywhere;color:#fff}
.city-featured-check{display:none;position:absolute;right:12px;top:12px;z-index:1;width:33px;height:33px;place-items:center;border-radius:50%;background:#fff;color:var(--brand-primary)}
.city-featured[aria-current] .city-featured-check{display:grid}
.city-featured:hover::after{background:linear-gradient(#052c2010,#052c20ee)}
.city-featured:focus-visible,.city-choice:focus-visible,.city-all:focus-visible,.city-close:focus-visible{outline:3px solid #df9d10;outline-offset:3px}
.city-all-section{padding:24px;border:1px solid #dce5df;border-radius:20px;background:#fff}
.city-choice-list{gap:10px}
.city-choice{display:flex;align-items:center;gap:12px;padding:16px 14px;min-height:88px;border:1px solid #e0e8e2;border-radius:15px;color:#244333;text-align:left;overflow-wrap:anywhere}
.city-choice-copy{flex:1;min-width:0}
.city-choice strong{display:block;font-size:14px;line-height:1.4}
.city-choice small{display:block;font-size:11px;font-weight:400;color:#73867c;margin-top:10px;line-height:1.4}
.city-choice:hover,.city-choice[aria-current]{border-color:var(--brand-primary);background:#edf6f0;color:#244333}
.city-pin{display:grid;place-items:center;flex:0 0 36px;width:36px;height:40px;background:#e9f3ed;color:var(--brand-primary);border-radius:10px;font-size:18px}
.city-choice-arrow{color:#929d96;font-size:12px}
.city-choice-check{display:none;color:#178350}
.city-choice[aria-current] .city-choice-check{display:block}
.city-choice[aria-current] .city-choice-arrow{display:none}
.city-all{display:flex;align-items:center;justify-content:center;gap:10px;width:fit-content;max-width:100%;margin:18px auto 0;color:var(--brand-primary);font-size:13px;text-align:center;text-decoration:underline;text-underline-offset:4px}
.city-search-status{font-size:13px;color:#6d7f75;margin:16px 0 0}
.city-search-status:empty{display:none}
.city-panel [hidden]{display:none!important}
.home-city-image{display:block;width:64px;height:52px;object-fit:cover;border-radius:6px;flex-shrink:0}
@media(max-width:480px){.city-grid a:has(.home-city-image){flex-wrap:wrap}.home-city-image{width:100%;height:100px}}
.city-choice[hidden]{display:none}
/* Native dialog supplies focus containment and makes the background inert. */
.city-dialog{padding:0;border:0;border-radius:15px;width:min(1300px,calc(100% - 32px));max-width:70vw;max-height:85vh;max-height:85dvh;overflow:auto;overscroll-behavior:contain;color:var(--ink);box-shadow:0 25px 90px #0005}
.city-dialog::backdrop{backdrop-filter: blur(10px);background:#10271dcc}
/* Animate each modal opening without delaying native focus or dismissal. */
.city-dialog[open]{animation:city-dialog-enter 260ms cubic-bezier(.22,1,.36,1)}
.city-dialog[open]::backdrop{animation:city-backdrop-enter 220ms ease-out}
@keyframes city-dialog-enter{
 from{opacity:0;transform:translateY(16px) scale(.98)}
 to{opacity:1;transform:translateY(0) scale(1)}
}
@keyframes city-backdrop-enter{from{opacity:0}to{opacity:1}}
.city-dialog[open].is-closing{animation:city-dialog-exit 180ms ease-in forwards}
.city-dialog[open].is-closing::backdrop{animation:city-backdrop-exit 180ms ease-in forwards}
@keyframes city-dialog-exit{
 from{opacity:1;transform:translateY(0) scale(1)}
 to{opacity:0;transform:translateY(12px) scale(.98)}
}
@keyframes city-backdrop-exit{from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){
 .city-dialog[open],.city-dialog[open]::backdrop,
 .city-dialog[open].is-closing,.city-dialog[open].is-closing::backdrop{animation:none}
}
.city-dialog .city-close{display:block}
/* Remove the native gutter entirely so the city panel reaches both rounded edges. */
.city-dialog,.city-picker>.city-panel{scrollbar-width:none;scrollbar-gutter:auto}
.city-dialog::-webkit-scrollbar,.city-picker>.city-panel::-webkit-scrollbar{display:none;width:0;height:0}
@media(forced-colors:active){
 .city-dialog,.city-picker>.city-panel{scrollbar-width:auto}
 .city-dialog::-webkit-scrollbar,.city-picker>.city-panel::-webkit-scrollbar{display:block;width:6px;height:6px}
}
html.city-modal-open{overflow:hidden}
@media(max-width:1100px){
 .nav-account span{display:none}.nav-account{width:35px;padding:6px}.nav-actions{gap:8px}
 .nav-actions .city-picker>summary{min-width:0}
 .header-main{gap:20px}.header-main .site-brand{font-size:17px}.header-partner{padding:11px;font-size:12px}
 .marketplace-header .site-navigation>a:not(.button),.mega-menu>summary{padding-inline:18px;}
 .brand-menu-grid{grid-template-columns:repeat(7,minmax(0,1fr))}.city-picker>summary{min-width:140px;padding-inline:12px}
 .marketplace-header .buy-car-button{margin-inline:12px}
}
@media(max-width:760px){
 .utility-row{font-size:10px;gap:8px}.header-utility .country-menu summary{gap:6px}.header-utility .country-menu>div{position:absolute;min-width:220px}
 .header-main{padding-block:14px;flex-wrap:wrap;gap:12px}.header-main .site-brand{font-size:17px}.header-main .site-brand small{font-size:6px}
 .header-partner{display:none}.header-search{flex-basis:100%;max-width:none;height:44px;order:3}
 .header-search input{width:0;min-width:0;font-size:14px;padding-inline:12px}
 /* Let the expanded navigation occupy its own row instead of spilling from a fixed-height grid. */
 .nav-container{grid-template-columns:32px minmax(0,1fr) auto;gap:6px;height:auto;min-height:60px}
 .nav-brand .dj-logo{width:32px;height:32px;padding:2px}
 .nav-actions{grid-column:2;justify-self:center;gap:6px}
 .public-enhanced .marketplace-header .menu-toggle{grid-column:3;grid-row:1;justify-self:end;margin:0;background:transparent;border-color:#a5b9ae;color:#fff;min-height:35px}
 .header-nav-bar .site-navigation{grid-column:1/-1;grid-row:2;padding:8px 0 12px;align-items:stretch;gap:4px;flex-direction:column;flex-wrap:nowrap;min-height:0;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow:auto;overscroll-behavior:contain}
 .header-nav-bar .site-navigation>a,.header-nav-bar .mega-menu>summary{justify-content:flex-start;text-align:left;gap:10px;border-radius:6px}
 .header-nav-bar .site-navigation>*{flex-shrink:0}
 .header-nav-bar:not(.is-stuck) .site-navigation{max-height:calc(100vh - 230px);max-height:calc(100dvh - 230px)}
 /* Keep the active category control visible while long catalogues scroll below it. */
 .header-nav-bar .mega-menu[open]>summary{position:sticky;top:0;z-index:2;background:var(--brand-primary-hover)}
 .header-nav-bar .mega-panel{max-height:200px;max-height:min(30dvh,220px);overflow-y:auto;overscroll-behavior:contain;border:1px solid #ffffff24;border-radius:8px;margin:4px 0 8px}
 .header-nav-bar .brand-menu-grid>a{gap:6px;padding:8px 2px;font-size:11px}
 .header-nav-bar .brand-menu-grid img,.header-nav-bar .brand-monogram{width:56px;height:40px}
 .public-enhanced .header-nav-bar:not(.is-stuck) .nav-brand{visibility:visible}
 .header-nav-bar .city-picker{grid-column:2;justify-self:center;margin:0;padding-block:8px}
 .header-nav-bar .city-picker>summary{min-width:0;min-height:35px;padding:6px;gap:5px;font-size:11px}
 .header-nav-bar .site-navigation>a:not(.button),.header-nav-bar .mega-menu>summary{padding:14px 16px;min-height:48px}
 .header-nav-bar .mega-menu>summary>span:last-child{margin-left:auto}

 .mega-panel{position:static;border-top:0;max-height:55vh;padding:16px 10px;box-shadow:none}
 .mega-heading{flex-direction:column;gap:4px}.brand-menu-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
 .rental-menu-grid{grid-template-columns:1fr;gap:22px}.rental-menu-grid section{min-width:0}.rental-menu-grid a{padding:6px;font-size:13px}
 .marketplace-header .buy-car-button{margin:8px 0}.city-picker{margin:4px 0}.city-picker>summary{max-width:none}
 .city-picker>.city-panel{position:absolute;left:0;right:0;width:100%;padding:0;max-height:calc(100vh - 80px);max-height:calc(100dvh - 80px);overflow:auto;box-shadow:0 15px 35px #132a3333}
 .city-panel-heading{padding:20px 16px;gap:12px}.city-panel-heading h2{font-size:21px}.city-panel-heading p{font-size:12px}.city-country-icon{flex-basis:42px;width:42px;height:46px;border-radius:12px;font-size:21px}.city-panel-body{padding:20px 16px}.city-all-section{padding:16px}.city-section-heading{align-items:flex-start}.city-section-heading p{max-width:48%}.city-top-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.city-featured strong{left:12px;bottom:12px;font-size:16px}.city-top-section{margin-bottom:22px}
 .city-choice-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.city-choice{padding:12px;gap:10px}
}

/* Local flag artwork keeps the country selector consistent across operating systems. */
.country-menu .country-flag{display:block;width:32px;height:22px;object-fit:contain;flex:0 0 32px;border-radius:2px;box-shadow:0 0 0 1px #0002}


@media(min-width:761px) and (max-width:1050px){.city-choice-list{grid-template-columns:repeat(2,minmax(0,1fr))}.city-top-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:480px){.city-dialog{width:calc(100% - 16px);border-radius:18px}.city-choice-list{grid-template-columns:1fr}.city-country-icon{display:none}.city-section-heading h3{font-size:15px;gap:8px}.city-section-heading p{font-size:11px}.city-panel-body{padding:18px 12px}.city-all-section{padding:14px}.city-featured{aspect-ratio:1.3}.city-featured strong{font-size:14px}.city-search-label{margin-bottom:22px}.city-featured-check{width:28px;height:28px;top:8px;right:8px}}
/* Main navigation hover/focus matches the gold top-line reference without moving content. */
.header-nav-bar .site-navigation>a:hover,
.header-nav-bar .site-navigation>a:focus-visible,
.header-nav-bar .mega-menu>summary:hover,
.header-nav-bar .mega-menu>summary:focus-visible,
.header-nav-bar .mega-menu[open]>summary{
 background:var(--brand-primary-hover);color:#ffa000;box-shadow:inset 0 3px 0 #ffa000;text-shadow:none; height: 60px;
}
/* Mobile rows retain their touch-target size when hovered or expanded. */
@media(max-width:760px){
 .header-nav-bar .site-navigation>a:hover,
 .header-nav-bar .site-navigation>a:focus-visible,
 .header-nav-bar .mega-menu>summary:hover,
 .header-nav-bar .mega-menu>summary:focus-visible,
 .header-nav-bar .mega-menu[open]>summary{height:auto}
}
/* Swipeable galleries for publication-approved vehicle photos. */
.vehicle-gallery{position:relative;overflow:hidden;background:#eaf0e3}
.vehicle-photo-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}
.vehicle-photo-track::-webkit-scrollbar{display:none}
.vehicle-photo-track>img{flex:0 0 100%;width:100%;min-width:0;height:220px;object-fit:cover;scroll-snap-align:start}
.vehicle-photo-controls{position:absolute;left:8px;right:8px;top:50%;transform:translateY(-50%);display:flex;align-items:center;justify-content:space-between;pointer-events:none}
.vehicle-photo-controls>span{display:none}
.vehicle-photo-controls button{display:grid;place-items:center;width:36px;height:36px;padding:0;border:1px solid #dce5df;background:rgba(255,255,255,.94);border-radius:50%;box-shadow:0 2px 8px #163b3526;color:#0F4229;font-size:18px;line-height:1;cursor:pointer;pointer-events:auto}
.vehicle-photo-controls button:hover{background:#0F4229;color:#fff;border-color:#0F4229}
.vehicle-photo-controls button:focus-visible,.vehicle-photo-track:focus-visible{outline:3px solid #bdce78;outline-offset:-3px}
/* Wide browse cards: image, specifications and pricing mirror the supplied layout. */
.vehicle-content h3 a{color:inherit;text-decoration:none}.vehicle-model{font-size:13px;color:#61746d;margin:12px 0}
.vehicle-feature-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:16px 0}.vehicle-feature-chips li{display:flex;align-items:center;gap:7px;background:#f5f8f6;border:1px solid #e0e7e3;border-radius:24px;padding:7px 10px;font-size:12px;line-height:1.5}.vehicle-feature-chips .dj-icon{color:#0F4229}
.vehicle-card-offer{padding:20px;display:flex;flex-direction:column;gap:12px}.vehicle-card-offer .card-price{border:0;padding:0;margin:0;display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.vehicle-card-offer .card-price strong{font-size:25px}.vehicle-card-offer>.muted{font-size:12px;margin:0}.vehicle-card-actions{margin-top:auto;padding-top:20px;display:flex;justify-content:flex-end}
.results-panel .vehicle-grid{grid-template-columns:minmax(0,1fr)}
.results-panel .vehicle-card{display:grid;grid-template-columns:minmax(190px,32%) minmax(0,1fr) minmax(180px,25%);gap:18px;padding:16px;border-radius:20px;background:#fff;box-shadow:0 8px 28px #163b350a;align-items:stretch}
.results-panel .vehicle-gallery{border-radius:14px;align-self:start;min-width:0}.results-panel .vehicle-content{padding:4px 0;min-width:0}.results-panel .vehicle-content h3{font-size:22px;margin:0 0 12px;overflow-wrap:anywhere}.results-panel .vehicle-card-offer{border-left:1px dashed #dce5df;padding:4px 0 4px 16px;min-width:0}.results-panel .vehicle-photo-track>img{height:220px}.results-panel .vehicle-visual{height:220px}.results-panel .vehicle-card-actions .button{white-space:normal}
@media(max-width:1150px){.results-panel .vehicle-card{grid-template-columns:minmax(170px,38%) minmax(0,1fr)}.results-panel .vehicle-card-offer{grid-column:1/-1;border-left:0;border-top:1px solid #e0e7e3;padding:16px 0 0;flex-direction:row;align-items:center;flex-wrap:wrap}.results-panel .vehicle-card-actions{margin:0 0 0 auto;padding:0}}
@media(max-width:550px){.results-panel .vehicle-card{grid-template-columns:minmax(0,1fr);gap:14px;padding:12px}.results-panel .vehicle-card-offer{grid-column:auto}.results-panel .vehicle-content{padding:4px 6px}.results-panel .vehicle-photo-track>img{height:210px}.results-panel .vehicle-card-actions{width:100%;margin:4px 0 0}.results-panel .vehicle-card-actions .button{width:100%;justify-content:center}}
/* Promoted results use their own contained, swipeable vertical-card row. */
.promoted-container{min-width:0;border:1px solid #dce5d7;border-radius:22px;padding:22px;background:#eff2e8;margin-bottom:28px}
.promoted-container>header{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px}.promoted-container h2{margin:0}.promoted-container .eyebrow{font-size:10px;margin:0 0 5px}
.promoted-controls{display:flex;gap:8px}.promoted-controls button{width:44px;height:44px;border:1px solid #c6d8cc;border-radius:50%;background:#fff;color:#0F4229;cursor:pointer}
.promoted-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 2px 14px;min-width:0}
.promoted-container .promoted-track .vehicle-card{display:flex;flex-direction:column;flex:0 0 315px;max-width:100%;padding:0;gap:0;border-radius:18px;scroll-snap-align:start;overflow:hidden}
.promoted-container .promoted-track .vehicle-gallery{width:100%;border-radius:0;position:relative}.promoted-container .promoted-track .vehicle-photo-track>img{height:220px}.promoted-container .promoted-track .vehicle-content{padding:18px 18px 0}.promoted-container .promoted-track .vehicle-content h3{font-size:20px;line-height:1.4}.promoted-container .promoted-track .vehicle-card-offer{margin-top:auto;display:flex;flex-direction:column;align-items:stretch;border:0;padding:18px;gap:10px}.promoted-container .promoted-track .card-price{border-top:1px solid #e3e9e4;padding-top:15px}.promoted-container .promoted-track .vehicle-card-actions{margin:0;padding-top:8px;width:100%}.promoted-container .promoted-track .vehicle-card-actions .button{width:100%;justify-content:center}
.promoted-controls button:focus-visible,.promoted-track:focus-visible{outline:3px solid #b6ce6a;outline-offset:2px}
@media(max-width:550px){.promoted-container{padding:14px}.promoted-container .promoted-track .vehicle-card{flex-basis:280px}.promoted-container h2{font-size:21px}}

/* Promoted inventory spans the page container before the filter/results columns. */
.promoted-full-width{margin-top:32px;margin-bottom:0;box-sizing:border-box}.promoted-full-width+.browse-layout{padding-top:32px}
/* Approval and paid promotion badges remain legible over vehicle photographs. */
.vehicle-trust-badges{position:absolute;top:12px;left:12px;right:12px;z-index:1;display:flex;flex-wrap:wrap;gap:6px;pointer-events:none}
.vehicle-trust-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 9px;border-radius:20px;font-size:11px;font-weight:700;line-height:1.4;box-shadow:0 2px 8px #0002}
.vehicle-trust-promoted{background:#fff0c2;color:#5a3b00;border:1px solid #ebd28c}
.vehicle-trust-verified{background:#0f4229;color:#fff;border:1px solid #d3e7da}
/* Vehicle detail gallery and information cards share the listing theme. */
.detail-grid>div{min-width:0}.detail-gallery{border-radius:20px;border:1px solid #dce6df}.detail-gallery .vehicle-photo-track>img{height:420px;object-fit:contain;background:#edf3ed}.detail-photo-caption{font-size:12px;color:#60766b;margin:12px 0 24px}.detail-grid .detail-section{border:1px solid #dce6df;border-radius:20px;padding:24px;background:#fff;margin-top:24px}.detail-summary{border-radius:20px;box-shadow:0 8px 28px #163b350a}.detail-summary>.button{width:100%;justify-content:center;margin-top:12px}
@media(max-width:600px){.detail-gallery .vehicle-photo-track>img{height:280px}.detail-grid .detail-section{padding:18px}.detail-heading h1{font-size:32px;overflow-wrap:anywhere}}
.detail-photo-thumbnails{display:flex;gap:10px;overflow-x:auto;padding:12px 3px 5px;max-width:100%}.detail-photo-thumbnails a{display:block;flex:0 0 88px;border:2px solid #d5e4dc;border-radius:10px;overflow:hidden;background:#edf3ed}.detail-photo-thumbnails img{display:block;width:100%;height:64px;object-fit:cover}.detail-photo-thumbnails a:hover,.detail-photo-thumbnails a:focus-visible{border-color:#0f4229;outline:2px solid #b6ce6a;outline-offset:1px}
