/* Veículos — v3.223: busca simples + busca avançada sob demanda.
   Mantém os componentes estruturais de Imóveis e usa apenas complementos do módulo. */
.spb-vehicle-search-shell{width:100%;margin:0 0 18px;padding:0 0 24px;border-bottom:1px solid #d8d8d8;box-sizing:border-box}
.spb-vehicle-search-scope{display:flex;align-items:center;flex-wrap:wrap;gap:10px 22px;margin:0 0 14px;font-size:16px;line-height:1.35;color:#222}
.spb-vehicle-search-scope>span{font-weight:500}
.spb-vehicle-search-scope label{display:inline-flex;align-items:center;gap:8px;margin:0;cursor:pointer;font-weight:400}
.spb-vehicle-search-scope input[type="radio"]{width:18px;height:18px;margin:0;accent-color:var(--spb-secondary,var(--secondary,var(--spb-primary,#1d4ed8)));cursor:pointer}
.spb-vehicle-simple-search{display:grid;grid-template-columns:minmax(0,675px) auto;align-items:stretch;gap:18px;max-width:920px}
.spb-vehicle-simple-input{position:relative;display:flex;width:100%;height:58px;border:1px solid #cfcfcf;border-right:3px solid var(--spb-secondary,var(--secondary,var(--spb-primary,#1d4ed8)));background:#fff;box-sizing:border-box}
.spb-vehicle-simple-input input{width:100%;height:100%;min-width:0;padding:0 68px 0 14px;border:0!important;outline:0!important;box-shadow:none!important;background:transparent!important;color:#333;font:inherit;font-size:16px}
.spb-vehicle-simple-input input::placeholder{color:#6f6f6f;opacity:1}
.spb-vehicle-simple-submit{position:absolute;top:0;right:0;width:62px;height:100%;padding:0;border:0!important;background:transparent!important;color:var(--spb-secondary,var(--secondary,var(--spb-primary,#1d4ed8)))!important;font-size:29px;line-height:1;cursor:pointer}
.spb-vehicle-simple-submit:hover,.spb-vehicle-simple-submit:focus{background:#fafafa!important}
.spb-vehicle-advanced-toggle{display:inline-flex;align-items:center;justify-content:flex-start;gap:9px;min-width:170px;height:58px;padding:0 4px;border:0;background:transparent;color:#333;font:inherit;font-size:16px;cursor:pointer;white-space:nowrap}
.spb-vehicle-advanced-toggle i{color:var(--spb-secondary,var(--secondary,var(--spb-primary,#1d4ed8)));font-size:24px;transition:transform .18s ease}
.spb-vehicle-advanced-toggle.is-open i{transform:rotate(180deg)}
.spb-vehicle-advanced-panel{margin-top:18px;padding-top:18px;border-top:1px solid #ececec}
.spb-vehicle-advanced-panel[hidden]{display:none!important}
.spb-vehicle-advanced-panel.is-open{display:grid!important}
@media(max-width:780px){
 .spb-vehicle-simple-search{grid-template-columns:1fr;gap:8px}
 .spb-vehicle-advanced-toggle{height:42px;min-width:0;padding:0;justify-content:flex-start}
}
@media(max-width:520px){
 .spb-vehicle-search-scope{gap:8px 14px;font-size:15px}
 .spb-vehicle-search-scope>span{flex-basis:100%}
 .spb-vehicle-simple-input{height:52px}
 .spb-vehicle-simple-input input{padding-left:12px;font-size:15px}
 .spb-vehicle-simple-submit{width:54px;font-size:25px}
}

/* Veículos — v3.222: listagem pública usa exatamente a estrutura-base de Imóveis.
   Reforços abaixo são escopados para Veículos porque imoveis-006.css é carregado
   depois e possui regras !important próprias para os campos de Imóveis. */
html body.pc .spb-properties-wrap.spb-vehicle-results{width:calc(100% - 30px)!important;max-width:1170px!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
html body.pc .spb-properties-wrap.spb-vehicle-results .spb-properties-layout{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:30px!important;align-items:start!important}
html body.pc .spb-properties-wrap.spb-vehicle-results .spb-properties-layout>section{min-width:0!important}
html body.pc .spb-properties-wrap.spb-vehicle-results .spb-vehicle-unified-sidebar{display:grid!important;width:300px!important;max-width:300px!important;min-width:0!important;gap:24px!important;align-self:start!important;margin:0!important}
html body.pc .spb-property-filter.spb-vehicle-filter{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:12px!important;width:100%!important;max-width:1170px!important;align-items:end!important;box-sizing:border-box!important}
html body.pc .spb-property-filter.spb-vehicle-filter>select,
html body.pc .spb-property-filter.spb-vehicle-filter>input:not([type="radio"]),
html body.pc .spb-property-filter.spb-vehicle-filter>button{grid-column:auto!important;min-width:0!important;width:100%!important;height:46px!important;min-height:46px!important;max-height:46px!important;box-sizing:border-box!important}
html body.pc .spb-property-filter.spb-vehicle-filter>.spb-vehicle-below-fipe{grid-column:auto!important;width:100%!important;height:46px!important;min-height:46px!important;box-sizing:border-box!important}
html body.pc .spb-properties-wrap.spb-vehicle-results .spb-properties-results-head{min-width:0!important}
@media(max-width:1120px){
 html body.pc .spb-properties-wrap.spb-vehicle-results .spb-properties-layout{grid-template-columns:1fr!important}
 html body.pc .spb-properties-wrap.spb-vehicle-results .spb-vehicle-unified-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))!important;width:100%!important;max-width:none!important;margin:24px 0 0!important}
 html body.pc .spb-property-filter.spb-vehicle-filter{grid-template-columns:repeat(3,minmax(0,1fr))!important}
}
@media(max-width:780px){
 html body.pc .spb-properties-wrap.spb-vehicle-results .spb-vehicle-unified-sidebar{grid-template-columns:1fr!important;max-width:420px!important;margin:24px auto 0!important}
 html body.pc .spb-property-filter.spb-vehicle-filter{grid-template-columns:repeat(2,minmax(0,1fr))!important}
 html body.pc .spb-property-filter.spb-vehicle-filter>button{grid-column:1/-1!important}
}
@media(max-width:640px){
 html body.pc .spb-properties-wrap.spb-vehicle-results{width:auto!important;margin-left:15px!important;margin-right:15px!important;padding-left:0!important;padding-right:0!important}
 html body.pc .spb-property-filter.spb-vehicle-filter{grid-template-columns:1fr!important}
 html body.pc .spb-property-filter.spb-vehicle-filter>*{grid-column:1!important}
}

/* Veículos — Fase 6: área pública alinhada ao padrão visual de Imóveis. */
.spb-vehicle-filter{grid-template-columns:repeat(5,minmax(0,1fr));align-items:end}
.spb-vehicle-filter .spb-vehicle-filter-wide{grid-column:span 2}
.spb-vehicle-filter .spb-vehicle-below-fipe{display:flex;align-items:center;justify-content:center;min-height:52px;border:1px solid #d8d8d8;background:#fff;padding:8px 12px;gap:10px}
.spb-vehicle-filter .spb-vehicle-below-fipe input{position:absolute;opacity:0;pointer-events:none}
.spb-vehicle-filter .spb-vehicle-below-fipe span{display:flex;align-items:center;gap:9px;font-size:15px;line-height:1.25;cursor:pointer}
.spb-vehicle-filter .spb-vehicle-below-fipe span:before{content:"";width:40px;height:22px;border-radius:20px;background:#9b9b9b;box-shadow:inset 0 0 0 1px rgba(0,0,0,.06);transition:.18s ease}
.spb-vehicle-filter .spb-vehicle-below-fipe span:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.24);transform:translateX(-19px);transition:.18s ease}
.spb-vehicle-filter .spb-vehicle-below-fipe input:checked+span:before{background:var(--spb-primary,#1d4ed8)}
.spb-vehicle-filter .spb-vehicle-below-fipe input:checked+span:after{transform:translateX(-1px)}
.spb-vehicle-filter .spb-vehicle-below-fipe{position:relative}
.spb-vehicle-filter button[type="submit"]{min-height:52px}
.spb-vehicle-results .spb-property-row-facts{display:flex;flex-wrap:wrap;gap:7px 14px}
.spb-vehicle-results .spb-property-row-facts span{white-space:nowrap}
.spb-vehicle-badge-fipe{display:inline-flex;align-items:center;width:max-content;max-width:100%;padding:3px 9px;margin:0 0 5px;background:var(--spb-primary,#1d4ed8);color:#fff;font-size:12px;font-weight:800;line-height:1.2;text-transform:uppercase}
.spb-vehicle-dealers{align-self:start}
.spb-vehicle-dealers h3{margin:0;padding:16px 17px 12px;border-bottom:3px solid var(--spb-primary,#1d4ed8);font-size:19px;line-height:1.2;color:var(--spb-primary,#1d4ed8)}
.spb-vehicle-dealers-list{display:block}
.spb-vehicle-dealers-list a{display:block;padding:10px 14px;border-bottom:1px solid #ddd;color:#555;text-decoration:none;font-size:15px;line-height:1.25}
.spb-vehicle-dealers-list a:hover,.spb-vehicle-dealers-list a:focus{color:var(--spb-primary,#1d4ed8);background:#fafafa}
.spb-vehicle-dealers-cta{display:block;margin:14px;padding:11px 14px;text-align:center;background:var(--spb-primary,#1d4ed8);color:#fff!important;text-decoration:none!important;font-weight:700}
.spb-vehicle-media-slider .spb-vehicle-gallery-main{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:420px;background:#f4f4f4;overflow:hidden}
.spb-vehicle-media-slider .spb-vehicle-gallery-main>a{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:420px}
.spb-vehicle-media-slider .spb-vehicle-gallery-main img{display:block;width:100%;height:min(610px,62vw);max-height:610px;object-fit:contain;background:#f4f4f4}
.spb-vehicle-gallery-arrow{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:46px;height:58px;border:0;background:rgba(255,255,255,.88);color:#222;font-size:21px;cursor:pointer}
.spb-vehicle-gallery-arrow.is-prev{left:0}.spb-vehicle-gallery-arrow.is-next{right:0}
.spb-vehicle-media-thumbs{display:flex;gap:10px;overflow-x:auto;padding:12px 0 2px;scrollbar-width:thin}
.spb-vehicle-media-thumbs button{flex:0 0 92px;width:92px;height:68px;padding:0;border:2px solid transparent;background:#fff;cursor:pointer;overflow:hidden}
.spb-vehicle-media-thumbs button.is-active{border-color:var(--spb-primary,#1d4ed8)}
.spb-vehicle-media-thumbs img{width:100%;height:100%;object-fit:cover;display:block}
.spb-vehicle-detail-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid #ddd;border-left:1px solid #ddd;margin-top:14px}
.spb-vehicle-detail-facts>div{min-height:48px;display:flex;align-items:center;padding:10px 12px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;font-size:14px;line-height:1.3}
.spb-vehicle-detail-facts strong{font-weight:700}
.spb-vehicle-contact-card .spb-property-company-actions a,.spb-vehicle-contact-card .spb-property-company-actions button{display:flex;align-items:center;justify-content:center;width:100%;height:36px;margin:0 0 9px;padding:0 14px;border:0;background:var(--spb-primary,#1d4ed8);color:#fff;text-decoration:none;font-size:14px;font-weight:700;line-height:36px;box-sizing:border-box}
.spb-vehicle-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.spb-vehicle-related-grid .spb-property-related-card{min-width:0}
.spb-vehicle-empty{padding:28px 0;color:#666}
.spb-vehicle-list-price{display:block;margin-top:7px;font-size:22px;line-height:1.1;font-weight:800;color:#222}
.spb-vehicle-list-company{display:block;margin-top:5px;color:#777}
@media(max-width:1180px){.spb-vehicle-filter{grid-template-columns:repeat(3,minmax(0,1fr))}.spb-vehicle-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.spb-vehicle-filter{grid-template-columns:repeat(2,minmax(0,1fr))}.spb-vehicle-filter .spb-vehicle-filter-wide{grid-column:span 1}.spb-vehicle-detail-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.spb-vehicle-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.spb-vehicle-filter{grid-template-columns:1fr}.spb-vehicle-filter>*{grid-column:1!important}.spb-vehicle-filter .spb-vehicle-below-fipe{justify-content:flex-start}.spb-vehicle-media-slider .spb-vehicle-gallery-main,.spb-vehicle-media-slider .spb-vehicle-gallery-main>a{min-height:260px}.spb-vehicle-media-slider .spb-vehicle-gallery-main img{height:70vw;max-height:390px}.spb-vehicle-gallery-arrow{width:38px;height:48px}.spb-vehicle-media-thumbs button{flex-basis:76px;width:76px;height:58px}.spb-vehicle-detail-facts{grid-template-columns:1fr}.spb-vehicle-related-grid{grid-template-columns:1fr}}
.spb-vehicle-unified-sidebar{display:flex;flex-direction:column;gap:20px;align-self:start}
.spb-vehicle-unified-sidebar .spb-vehicle-dealers{width:100%;margin:0;box-sizing:border-box}
.spb-vehicle-unified-sidebar .spb-property-promo-symbols{display:flex;align-items:center;justify-content:center;gap:16px}
html body.pc .spb-property-filter.spb-vehicle-filter.spb-vehicle-advanced-panel[hidden]{display:none!important}
html body.pc .spb-property-filter.spb-vehicle-filter.spb-vehicle-advanced-panel.is-open{display:grid!important}
