/* Shared homepage and agent listing section presentation. */
.listings-controls { display: flex; justify-content: flex-end; align-items: center; gap: .75rem; }
.listings-controls[hidden] { display: none !important; }
.listings-controls > span { margin-right: auto; color: #65636c; font-size: .875rem; }
.listings-controls button { width: 44px; height: 44px; border: 1px solid #b69c56; border-radius: 50%; background: #fff; color: #292830; font-size: 1.4rem; }
.listings-controls button:disabled { opacity: .35; }
.listings-controls button:focus-visible { outline: 2px solid #8a6a2c; outline-offset: 3px; }
@media (min-width: 768px) { .listings-controls { display: none; } }

.listings-header { display: none; }
@media (max-width: 767.98px) {
    .listings-section > .container { max-width: none; padding-inline: 0; }
    .listings-section > .container > .row { margin-inline: 0; margin-bottom: 0 !important; }
    .listings-section > .container > .row > * { padding-inline: 0; }
    .listings-header { display: block; padding: 0 28px 28px; }
    .listings-eyebrow { display: flex; align-items: center; gap: 12px; color: #C49742; font-size: 11px; font-weight: 600; letter-spacing: 3.2px; text-transform: uppercase; }
    .listings-eyebrow::before { content: ''; width: 34px; height: 1px; background: currentColor; }
    .listings-header h2 { font-family: var(--bs-font-serif, Georgia, serif); font-size: var(--sabiz-heading-section-size, 32px); font-weight: 400; line-height: var(--sabiz-heading-line-height, 1.15); letter-spacing: var(--sabiz-heading-letter-spacing, -.02em); margin: 18px 0 24px; }
    .listings-toolbar { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
    .listings-toolbar > a { color: #8a6a2c; text-underline-offset: 5px; text-decoration: underline; }
    .listings-controls { flex-shrink: 0; gap: 10px; }
    .listings-controls button { width: 54px; height: 54px; cursor: pointer; }
    .listings-controls button:hover:not(:disabled) { background: #C49742; color: #0A0A0A; }
}

@media(min-width:768px){
 .listings-header{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px 40px;align-items:end;margin-bottom:36px;}
 .listings-eyebrow{grid-column:1/-1;color:#99752e;text-transform:uppercase;font-size:11px;letter-spacing:3px;font-weight:600;}
 .listings-header h2{font-family:var(--bs-font-serif,Georgia,serif);font-size:clamp(30px,3vw,46px);font-weight:400;line-height:1.15;max-width:650px;margin:0;}
 .listings-toolbar a{color:#806020;text-decoration:underline;text-underline-offset:5px;white-space:nowrap;}
}
