.listing-hero { padding: 68px 0 58px; border-bottom: 1px solid var(--line); background: linear-gradient(180deg, rgba(16,29,35,.95), rgba(8,16,20,.88)); }
.listing-hero__grid { display: grid; grid-template-columns: minmax(0,1.4fr) minmax(280px,.55fr); gap: 60px; align-items: end; }
.listing-hero h1 { margin: 16px 0 12px; font-family: var(--display); font-size: clamp(3.8rem,7vw,7rem); line-height: .88; text-transform: uppercase; }
.listing-hero h1 span { display: inline-grid; place-items: center; width: 68px; height: 68px; margin-right: 15px; border: 1px solid rgba(255,208,0,.28); border-radius: 15px; color: var(--yellow); font-size: 1rem; vertical-align: middle; }
.listing-hero p { max-width: 780px; color: #cbd4d6; }
.listing-hero__stat { padding: 20px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.025); }
.listing-hero__stat small { color: var(--muted); font-size: .65rem; letter-spacing: .1em; }
.listing-hero__stat strong { display: block; margin: 4px 0; color: var(--yellow); font-family: var(--display); font-size: 3.2rem; line-height: 1; }
.listing-hero__stat span { color: #aab6ba; font-size: .78rem; }
.listing-hero--search h1 { margin-bottom: 28px; }
.search-large { display: grid; grid-template-columns: minmax(0,1fr) auto; gap: 10px; max-width: 880px; }
.search-large input { min-width: 0; padding: 14px 16px; border: 1px solid var(--line); border-radius: 11px; outline: 0; background: rgba(255,255,255,.03); color: var(--ink); }
.search-large input:focus { border-color: rgba(255,208,0,.4); }

.listing-section { padding: 66px 0 86px; }
.listing-head { margin-bottom: 26px; }
.listing-head > span { color: var(--yellow); font-family: var(--display); font-size: .72rem; font-weight: 900; letter-spacing: .12em; }
.listing-cards { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; }
.listing-card { min-height: 270px; display: flex; flex-direction: column; padding: 22px; border: 1px solid var(--line); border-radius: 15px; background: rgba(255,255,255,.024); transition: .2s ease; }
.listing-card:hover { transform: translateY(-2px); border-color: rgba(255,208,0,.32); }
.listing-card__meta { display: flex; justify-content: space-between; gap: 15px; color: #87959a; font-size: .68rem; text-transform: uppercase; }
.listing-card h3 { margin: 36px 0 10px; font-family: var(--display); font-size: clamp(1.7rem,3vw,2.7rem); line-height: .98; text-transform: uppercase; }
.listing-card p { margin: 0; color: var(--muted); font-size: .84rem; }
.listing-card > strong { margin-top: auto; padding-top: 25px; color: var(--yellow); font-size: .74rem; text-transform: uppercase; }
.empty-state { padding: 46px; border: 1px dashed var(--line-strong); border-radius: 16px; text-align: center; background: rgba(255,255,255,.018); }
.empty-state > span { color: var(--yellow); font-family: var(--display); font-size: 2rem; font-weight: 900; }
.empty-state h3 { margin: 8px 0; font-family: var(--display); font-size: 1.7rem; text-transform: uppercase; }
.empty-state p { margin: 0; color: var(--muted); }

@media (max-width: 850px) {
    .listing-hero__grid { grid-template-columns: 1fr; }
    .listing-cards { grid-template-columns: 1fr; }
}
@media (max-width: 600px) {
    .search-large { grid-template-columns: 1fr; }
    .listing-hero h1 span { width: 52px; height: 52px; }
}
