.busca-hero{
    background: linear-gradient(180deg,#0b5ed7 0%,#0a58ca 100%);
}
.results-grid{
    display: grid;
    grid-template-columns: 1fr;
    gap: .75rem;
}
@media (min-width: 720px){
    .results-grid{
        grid-template-columns: 1fr 1fr;
    }
}
@media (min-width: 1100px){
    .results-grid{
        grid-template-columns: 1fr 1fr 1fr;
    }
}
/* melhora placeholders */
.placeholder {
    height: 1.25rem;
}
.placeholder.col-6 {
    width: 50%;
}
.placeholder.col-4 {
    width: 33%;
}

/* ===========================
   Autocomplete – visual autoral
   (Compatível com Google Places – não esconda .pac-logo)
   =========================== */

/* Paleta via CSS vars para trocar fácil */
:root {
    --ac-bg: #ffffff;
    --ac-text: #0f172a;
    --ac-muted: #64748b;
    --ac-accent: #0b5ed7;
    --ac-border: rgba(2, 6, 23, .08);
    --ac-shadow: 0 10px 30px rgba(2, 6, 23, .15);
    --ac-hover: rgba(11, 94, 215, .10);
    --ac-focus: rgba(11, 94, 215, .18);
}

@media (prefers-color-scheme: dark) {
    :root {
        --ac-bg: #0b1220;
        --ac-text: #e5e7eb;
        --ac-muted: #94a3b8;
        --ac-accent: #60a5fa;
        --ac-border: rgba(148, 163, 184, .2);
        --ac-shadow: 0 10px 30px rgba(0, 0, 0, .45);
        --ac-hover: rgba(96, 165, 250, .12);
        --ac-focus: rgba(96, 165, 250, .2);
    }
}

.pac-container {
    border-radius: 10px;
    box-shadow: 0 10px 24px rgba(0,0,0,.12);
    overflow: hidden;
    font: 14px/1.3 system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

/* Itens */
.pac-item {
    padding: 10px 12px;
}
.pac-item:hover {
    background: #f7f9fc;
}
.pac-container.pac-logo.hdpi::after {
    display: none;
}
.pac-item:hover {
    background: var(--ac-hover) !important;
}

.pac-item-selected,
.pac-item:focus {
    background: var(--ac-focus) !important;
}

/* Remove linhas padrão do Google entre itens */
.pac-item + .pac-item {
    border-top: none !important;
}

/* Ícone padrão do Google – pode esconder para usar um bullet minimalista */
.pac-icon {
    display: none !important;
}

/* Pontinho de localização minimalista (substitui o ícone) */
.pac-item::before {
    content: "";
    width: 9px;
    height: 9px;
    border-radius: 50%;
    background: var(--ac-accent);
    box-shadow: 0 0 0 3px color-mix(in srgb, var(--ac-accent) 22%, transparent);
    margin-left: 4px;
}

/* Texto principal (consulta) */
.pac-item-query {
    color: var(--ac-text) !important;
    font-weight: 600;
    letter-spacing: .1px;
}

/* Destaque do trecho coincidente (já vem com .pac-matched) */
.pac-matched {
    color: var(--ac-accent) !important;
}

/* Linha secundária (estado/país etc.) – o Google inclui como outro span */
.pac-item > span:last-child {
    color: var(--ac-muted) !important;
    font-size: 12.5px !important;
    justify-self: end;
}

/* Espaço interno do container que às vezes vira separador */
.pac-container:empty {
    display: none !important;
}

/* Rodapé/branding do Google – NÃO esconda. 
   Você pode posicionar com margem para não “apertar” o conteúdo */
.pac-logo {
    padding-bottom: 6px !important;
}

/* Scrollbar suave (WebKit) */
.pac-container::-webkit-scrollbar {
    width: 10px;
}
.pac-container::-webkit-scrollbar-track {
    background: transparent;
}
.pac-container::-webkit-scrollbar-thumb {
    background: color-mix(in srgb, var(--ac-text) 12%, transparent);
    border-radius: 999px;
}

/* Pequena animação de entrada */
@keyframes ac-fade-in {
    from {
        opacity: 0;
        transform: translateY(4px);
    }
    to   {
        opacity: 1;
        transform: translateY(0);
    }
}

/* Opcional: estado do input com foco para “casar” com o dropdown */
input#origin:focus, input#destination:focus {
    outline: none;
    box-shadow: 0 0 0 4px var(--ac-focus);
    border-color: var(--ac-accent);
}
