.sc-favorites-page { background:#f7f9fb; }
.sc-favorites-hero { padding:58px 0 68px; color:#fff; }
.sc-favorites-hero .breadcrumb { --bs-breadcrumb-divider:"›"; margin:0; }
.sc-favorites-hero .breadcrumb-item,
.sc-favorites-hero .breadcrumb-item a,
.sc-favorites-hero .breadcrumb-item + .breadcrumb-item::before { color:rgba(255,255,255,.72) !important; text-decoration:none !important; font-size:11px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; }
.sc-favorites-hero .breadcrumb-item.active { color:#fff !important; }
.sc-page-eyebrow { display:block; margin-bottom:8px; color:#C7A04A; font-size:11px; font-weight:800; letter-spacing:.13em; }
.sc-favorites-hero h1 { margin:0 0 12px; color:#fff !important; font-family:Poppins,sans-serif !important; font-size:40px; line-height:1.13; font-weight:700; }
.sc-favorites-hero p { max-width:720px; margin:0; color:rgba(255,255,255,.86); font-size:15px; line-height:1.75; }
.sc-favorites-count-card { min-width:190px; padding:22px 25px; background:#fff; color:#27313a; box-shadow:0 15px 38px rgba(15,49,82,.18); display:grid; grid-template-columns:38px auto; grid-template-rows:auto auto; column-gap:13px; align-items:center; }
.sc-favorites-count-card i { grid-row:1/3; display:flex; width:38px; height:38px; align-items:center; justify-content:center; border-radius:50%; background:rgba(11,98,92,.1); color:#0B625C; font-size:17px; }
.sc-favorites-count-card strong { font-size:27px; line-height:1; color:#0B625C; }
.sc-favorites-count-card span { color:#75808a; font-size:10px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; }
.sc-favorites-content { padding:52px 0 76px; }
.sc-favorites-toolbar { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:26px; }
.sc-favorites-toolbar > div { display:flex; flex-direction:column; gap:3px; }
.sc-favorites-toolbar > div > span { color:#0B625C; font-size:10px; font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.sc-favorites-toolbar strong { color:#2d3238; font-size:22px; font-weight:600; }
.sc-favorites-toolbar .btn { border-radius:2px; padding:12px 18px; font-size:12px; font-weight:700; }
.sc-favorites-grid { align-items:stretch; }
.sc-favorites-grid[hidden] { display:none !important; }

.sc-favorites-page .property-card { display:flex; flex-direction:column; min-width:0; min-height:100%; overflow:hidden; border:1px solid #e2e6e9 !important; background:#fff; box-shadow:0 4px 14px rgba(31,43,54,.035); transition:opacity .18s ease,transform .18s ease,box-shadow .22s ease,border-color .22s ease; }
.sc-favorites-page .property-card:hover { transform:translateY(-3px); border-color:#d3dde6 !important; box-shadow:0 14px 32px rgba(11,98,92,.1) !important; }
.sc-favorites-page .property-card.is-removing { opacity:0; transform:scale(.985); }
.sc-favorites-page .property-card a,
.sc-favorites-page .property-card a:hover { text-decoration:none !important; }

.sc-favorites-page .property-media { position:relative; width:100%; height:auto; aspect-ratio:4 / 3; overflow:hidden; background:#d8dde0; }
.sc-favorites-page .property-media > a { display:block; width:100%; height:100%; }
.sc-favorites-page .property-media img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.sc-favorites-page .property-card:hover .property-media img { transform:scale(1.035); }
.sc-favorites-page .property-badges { position:absolute; top:16px; left:16px; display:flex; flex-wrap:wrap; gap:8px; z-index:2; }
.sc-favorites-page .status-badge,
.sc-favorites-page .featured-badge,
.sc-favorites-page .reference-badge { display:inline-flex; align-items:center; justify-content:center; min-height:30px; padding:6px 11px; font-size:11px; font-weight:700; line-height:1; letter-spacing:.02em; }
.sc-favorites-page .status-badge { background:#43cb83 !important; color:#fff !important; }
.sc-favorites-page .status-badge.rent { background:#0B625C !important; }
.sc-favorites-page .featured-badge { background:#fff !important; color:#0B625C !important; }
.sc-favorites-page .favorite-button { position:absolute; top:16px; right:16px; display:flex; width:40px; height:40px; align-items:center; justify-content:center; border:0; border-radius:50%; background:rgba(255,255,255,.96); color:#0B625C !important; box-shadow:0 8px 24px rgba(15,49,82,.15); z-index:2; }
.sc-favorites-page .favorite-button.active { color:#0B625C !important; }
.sc-favorites-page .reference-badge { position:absolute; left:16px; bottom:16px; background:rgba(11,98,92,.92) !important; color:#fff !important; z-index:2; }

.sc-favorites-page .property-content { display:flex; flex-direction:column; gap:16px; padding:22px 22px 20px; }
.sc-favorites-page .property-type-row { display:flex; align-items:center; justify-content:space-between; gap:14px; font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em; color:#0B625C !important; }
.sc-favorites-page .property-type-row span:last-child { color:#8a949d !important; text-align:right; }
.sc-favorites-page .property-content h3 { margin:0; color:#2d3238 !important; font-family:Poppins,sans-serif !important; font-size:28px !important; line-height:1.2 !important; font-weight:600 !important; }
.sc-favorites-page .property-content h3:hover { color:#0B625C !important; }
.sc-favorites-page .property-location { margin:0; color:#78828a !important; font-size:14px; line-height:1.7; }
.sc-favorites-page .property-location i { margin-right:7px; color:#0B625C !important; }
.sc-favorites-page .property-specs { display:flex; flex-wrap:wrap; gap:16px 18px; padding-top:14px; border-top:1px solid #edf1f4; color:#5f6972; font-size:13px; }
.sc-favorites-page .property-specs span { display:inline-flex; align-items:center; gap:7px; }
.sc-favorites-page .property-specs i { color:#0B625C !important; }
.sc-favorites-page .property-footer { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; padding-top:16px; border-top:1px solid #edf1f4; }
.sc-favorites-page .property-price strong { color:#1e2932; font-size:30px; line-height:1.1; font-weight:700; }
.sc-favorites-page .property-agent { display:flex; align-items:center; gap:12px; min-width:0; }
.sc-favorites-page .property-agent > span { display:flex; flex:0 0 auto; width:40px; height:40px; align-items:center; justify-content:center; border-radius:50%; background:#0B625C !important; color:#fff !important; font-size:13px; font-weight:700; }
.sc-favorites-page .property-agent small { display:block; margin-bottom:2px; color:#98a1a9; font-size:11px; line-height:1.4; }
.sc-favorites-page .property-agent strong { display:block; color:#2f3740; font-size:14px; line-height:1.35; font-weight:600; }

.sc-favorites-empty { max-width:680px; margin:28px auto 0; padding:64px 35px; text-align:center; background:#fff; border:1px solid #e3e8ed; box-shadow:0 12px 34px rgba(31,43,54,.05); }
.sc-favorites-empty[hidden] { display:none !important; }
.sc-empty-icon { display:flex; width:72px; height:72px; margin:0 auto 22px; border-radius:50%; align-items:center; justify-content:center; background:#F1F6F5; color:#0B625C; font-size:29px; }
.sc-favorites-empty h2 { margin:0 0 10px; color:#27313a; font-family:Poppins,sans-serif !important; font-size:25px; font-weight:600; }
.sc-favorites-empty p { max-width:520px; margin:0 auto 24px; color:#727c85; line-height:1.8; }
.sc-favorites-empty .btn { border:0; border-radius:2px; padding:13px 20px; font-size:12px; font-weight:700; }

@media (max-width:1199px) {
  .sc-favorites-page .property-content h3 { font-size:24px !important; }
}
@media (max-width:767px) {
    .sc-favorites-hero { padding:42px 0 50px; }
    .sc-favorites-hero h1 { font-size:32px; }
    .sc-favorites-count-card { min-width:100%; }
    .sc-favorites-toolbar { align-items:flex-start; flex-direction:column; }
    .sc-favorites-content { padding:38px 0 56px; }
    .sc-favorites-page .property-content { padding:18px 18px 18px; }
    .sc-favorites-page .property-content h3 { font-size:22px !important; }
    .sc-favorites-page .property-footer { flex-direction:column; align-items:flex-start; }
    .sc-favorites-page .property-price strong { font-size:26px; }
}

.sc-favorites-grid > [class*="col-"] { display:flex; }
.sc-favorites-grid > [class*="col-"] > .property-card { width:100%; height:100%; }


/* SC-V2-011E — Favorites card hierarchy:
   advisor first, price below; readable corporate typography. */

.sc-favorites-page .property-content {
    gap: 13px !important;
    padding: 19px 19px 18px !important;
}

.sc-favorites-page .property-type-row {
    font-size: 10px !important;
    letter-spacing: .07em !important;
}

.sc-favorites-page .property-content h3 {
    font-size: 18px !important;
    line-height: 1.30 !important;
    font-weight: 600 !important;
    letter-spacing: -.01em !important;
}

.sc-favorites-page .property-location {
    font-size: 12px !important;
    line-height: 1.55 !important;
}

.sc-favorites-page .property-specs {
    font-size: 11px !important;
    gap: 12px 15px !important;
    padding-top: 12px !important;
}

.sc-favorites-page .property-footer {
    display: flex !important;
    flex-direction: column !important;
    align-items: stretch !important;
    gap: 12px !important;
    padding-top: 14px !important;
    border-top: 1px solid #edf1f4 !important;
}

/* Advisor block MUST appear above the price. */
.sc-favorites-page .property-agent {
    order: 1 !important;
    display: flex !important;
    align-items: center !important;
    gap: 11px !important;
    width: 100% !important;
    min-width: 0 !important;
}

.sc-favorites-page .property-agent > span {
    width: 36px !important;
    height: 36px !important;
    font-size: 11px !important;
    flex: 0 0 36px !important;
}

.sc-favorites-page .property-agent small {
    display: block !important;
    margin-bottom: 2px !important;
    font-size: 10px !important;
    line-height: 1.35 !important;
    color: #87919a !important;
}

.sc-favorites-page .property-agent strong {
    display: block !important;
    font-size: 12px !important;
    line-height: 1.38 !important;
    font-weight: 600 !important;
    color: #2f3740 !important;
}

/* Price is a separate, strong line BELOW the advisor. */
.sc-favorites-page .property-price {
    order: 2 !important;
    width: 100% !important;
    padding-top: 12px !important;
    border-top: 1px solid #edf1f4 !important;
}

.sc-favorites-page .property-price strong {
    display: block !important;
    font-size: 24px !important;
    line-height: 1.12 !important;
    font-weight: 700 !important;
    color: #1e2932 !important;
}

/* Keep badges compact but clearly readable. */
.sc-favorites-page .status-badge,
.sc-favorites-page .featured-badge,
.sc-favorites-page .reference-badge {
    font-size: 9px !important;
    min-height: 27px !important;
    padding: 5px 9px !important;
}

@media (max-width: 767px) {
    .sc-favorites-page .property-content h3 {
        font-size: 17px !important;
    }
    .sc-favorites-page .property-price strong {
        font-size: 22px !important;
    }
}
