/* home pública mobile. não depende das regras desktop. */
@media (max-width: 1023px) {
    .public-home { background:var(--surface); }
    .home-desktop { width:100%; margin:0 auto; padding:16px; display:grid; gap:22px; }
    .home-desktop-hero { display:grid; gap:22px; }
    .home-desktop-search { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; padding:14px; border:1px solid var(--line); border-radius:7px; background:#fff; }
    .home-desktop-search-query { grid-column:1/-1; min-width:0; min-height:46px; display:flex; align-items:center; gap:10px; padding:0 12px; border:1px solid var(--line); border-radius:6px; }
    .home-desktop-search-icon { width:19px; height:19px; flex:0 0 19px; color:var(--muted); }
    .home-desktop-search-icon svg { width:100%; height:100%; fill:none; stroke:currentColor; stroke-width:2; }
    .home-desktop-search input,.home-desktop-search select { width:100%; min-width:0; min-height:44px; padding:0 10px; border:1px solid var(--line); border-radius:6px; background:#fff; color:var(--ink); font:inherit; }
    .home-desktop-search-query input { min-height:auto; padding:0; border:0; outline:0; }
    .home-desktop-search select { grid-column:1/-1; }
    .home-desktop-search button { grid-column:1/-1; min-height:46px; border:0; border-radius:6px; background:var(--brand); color:#fff; font:inherit; font-weight:900; }
    .home-desktop-section-heading,.home-desktop-section-header { display:flex; align-items:flex-end; justify-content:space-between; gap:12px; }
    .home-desktop-section-heading h2,.home-desktop-section-header h2 { margin:0; font-size:17px; font-weight:900; }
    .home-desktop-section-heading span,.home-desktop-section-header span,.home-desktop-section-header a { color:var(--muted); font-size:11px; font-weight:800; }
    .home-desktop-listing-arrows { display:none; }
    [data-home-listing-carousel] .home-desktop-carousel-item:nth-child(n+7) { display:none; }
    [data-home-listing-carousel="featured"] .home-desktop-carousel-item:nth-child(n+5) { display:none; }
    .home-desktop-banner { display:grid; gap:12px; }
    .home-desktop-banner-frame { position:relative; overflow:hidden; aspect-ratio:16/7; min-height:150px; border:1px solid var(--line); border-radius:7px; background:#fff; }
    .home-desktop-banner-frame a { width:100%; height:100%; display:block; }
    .home-desktop-banner-frame img { width:100%; height:100%; display:block; object-fit:cover; }
    .home-desktop-banner-dots { position:absolute; left:50%; bottom:10px; display:flex; gap:6px; transform:translateX(-50%); }
    .home-desktop-banner-dots button { width:8px; height:8px; padding:0; border:0; border-radius:50%; background:rgb(255 255 255 / 75%); }
    .home-desktop-banner-dots button.is-active { width:26px; border-radius:4px; background:#fff; }
    .home-desktop-feedback { padding:12px 14px; border:1px solid #fecaca; border-radius:6px; background:#fff1f2; color:#991b1b; }
    .home-desktop-dual-grid { display:grid; grid-template-columns:1fr; gap:16px; }
    .home-desktop-listing-panel { min-width:0; display:grid; gap:13px; padding:13px; border:1px solid var(--line); border-radius:7px; background:#fff; }
    .home-desktop-listing-grid,.home-desktop-listing-grid--compact { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; }
    .home-desktop-listing-section { display:grid; gap:14px; }
    .home-desktop-empty { grid-column:1/-1; margin:0; color:var(--muted); font-size:12px; }
    .home-desktop-listing-grid .public-listing-card { min-width:0; overflow:hidden; display:block; border:1px solid var(--green); border-radius:7px; background:#fff; }
    .home-desktop-listing-grid .public-listing-media { position:relative; aspect-ratio:4/3; background:#dfe5e9; }
    .home-desktop-listing-grid .public-listing-media img,.home-desktop-listing-grid .public-listing-no-image { width:100%; height:100%; display:grid; place-items:center; object-fit:cover; }
    .home-desktop-listing-grid .public-featured-badge { position:absolute; top:8px; left:8px; padding:4px 8px; border-radius:99px; background:var(--green); color:#fff; font-size:9px; font-weight:900; }
    .home-desktop-listing-grid .public-listing-body { min-width:0; padding:10px; display:grid; gap:3px!important; }
    .home-desktop-listing-grid .public-listing-body h3 { min-width:0; min-height:0!important; margin:0!important; display:-webkit-box; overflow:hidden; color:var(--deep); font-size:12px; line-height:1.25!important; text-overflow:clip; white-space:normal; overflow-wrap:anywhere; -webkit-box-orient:vertical; -webkit-line-clamp:2; }
    .home-desktop-listing-grid .public-listing-price { min-width:0; margin-top:2px!important; margin-bottom:5px!important; overflow-wrap:anywhere; font-size:16px; line-height:1.12!important; }
    .home-desktop-listing-grid .public-listing-location { min-width:0; margin:0; overflow:hidden; color:var(--deep); font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
    .home-desktop-listing-grid .public-listing-specs,.home-desktop-listing-grid .public-listing-link { display:none; }
    .home-desktop-listing-grid .public-listing-metrics { display:flex!important; align-items:center!important; justify-content:space-between!important; gap:6px!important; margin-top:9px!important; color:var(--muted)!important; font-size:10px!important; }
    .home-desktop-listing-grid .public-listing-metric { min-width:0; display:inline-flex!important; align-items:center!important; gap:3px!important; }
    .home-desktop-listing-grid .public-listing-metric svg { width:14px!important; height:14px!important; flex:0 0 14px!important; fill:none!important; stroke:currentColor!important; }
}

@media (max-width: 1023px) {
    .home-desktop-search select { appearance:none; padding-right:38px; background-image:linear-gradient(45deg,transparent 50%,#667085 50%),linear-gradient(135deg,#667085 50%,transparent 50%); background-position:calc(100% - 18px) 19px,calc(100% - 13px) 19px; background-size:5px 5px,5px 5px; background-repeat:no-repeat; }
    .home-desktop-listing-grid .public-listing-metric { min-width:0; min-height:26px; display:inline-flex!important; flex-direction:row!important; align-items:center!important; gap:4px!important; border-radius:5px; background:#f2f4f7; padding:0 6px; color:#344054!important; line-height:1!important; white-space:nowrap; }
    .home-desktop-listing-grid .public-listing-metric:last-child { color:#16794b!important; }
    .home-desktop-listing-grid .public-listing-metric svg { width:14px!important; height:14px!important; flex:0 0 14px!important; fill:none!important; stroke:currentColor!important; stroke-width:1.6!important; }
}

@media (max-width: 420px) {
    .home-desktop { padding:12px; }
    .home-desktop-listing-grid,.home-desktop-listing-grid--compact { gap:8px; }
    .home-desktop-listing-panel { padding:10px; }
    .home-desktop-section-heading { align-items:center; flex-direction:row; justify-content:space-between; gap:8px; }
    .home-desktop-section-heading h2 { min-width:0; }
    .home-desktop-section-heading span { flex:0 0 auto; text-align:right; white-space:nowrap; }
}
