:root{--ink:#111315;--muted:#6f7479;--line:#e8e4de;--soft:#f7f5f1;--paper:#fff;--accent:#b99663;--accent2:#8d6d43;--dark:#121518;--radius:22px;--shadow:0 18px 50px rgba(27,24,20,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,system-ui,-apple-system,sans-serif;color:var(--ink);background:#fff;line-height:1.6}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}.aph-container{width:min(1180px,calc(100% - 34px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.94);backdrop-filter:blur(18px);border-bottom:1px solid rgba(0,0,0,.05)}.header-inner{height:74px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:10px;min-width:max-content}.brand img{height:44px;max-width:205px;object-fit:contain}.brand-mark{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:var(--dark);color:white;font-weight:800;font-size:.84rem;letter-spacing:.06em}.brand-text{font-weight:800;letter-spacing:-.02em}.main-nav{display:flex;gap:24px;margin-left:auto}.main-nav a{font-size:.9rem;font-weight:600;color:#3f4246}.main-nav a:hover{color:var(--accent2)}.header-actions{display:flex;align-items:center;gap:12px}.lang-switch{display:flex;border:1px solid var(--line);border-radius:999px;padding:3px}.lang-switch a{font-size:.68rem;font-weight:800;padding:6px 8px;border-radius:999px;color:#7a7d80}.lang-switch a.active{background:var(--dark);color:white}.icon-btn{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line)}.icon-btn.wa{color:#178b4c}.menu-toggle{display:none;border:0;background:transparent;font-size:1.6rem;padding:4px}.hero{position:relative;min-height:650px;background:linear-gradient(135deg,#172126,#2d3231 52%,#735d42);display:flex;align-items:center;color:white;overflow:hidden}.hero:after{content:"";position:absolute;inset:auto -8% -28% auto;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(185,150,99,.35),transparent 65%)}.hero-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.38),rgba(0,0,0,.08))}.hero-content{position:relative;z-index:2;padding:80px 0 66px}.hero-copy{max-width:760px}.eyebrow{display:inline-block;font-size:.72rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.hero h1,.section h2,.sell-strip h2,.final-cta h2{font-family:"Playfair Display",Georgia,serif;letter-spacing:-.025em}.hero h1{font-size:clamp(2.65rem,7vw,5.6rem);line-height:.98;margin:0 0 22px;max-width:930px}.hero-copy p{font-size:1.08rem;color:rgba(255,255,255,.76);max-width:650px}.search-panel{margin-top:48px;background:white;color:var(--ink);border-radius:24px;padding:16px;box-shadow:0 24px 60px rgba(0,0,0,.22)}.search-tabs{
display:inline-flex;align-items:center;gap:4px;margin-bottom:16px;padding:4px;
border:1px solid rgba(255,255,255,.34);border-radius:14px;
background:rgba(255,255,255,.12);box-shadow:0 8px 22px rgba(0,0,0,.12);
backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)
}
.search-tabs label{margin:0;cursor:pointer}
.search-tabs input{position:absolute;opacity:0;pointer-events:none}
.search-tabs span{
display:block;min-width:102px;padding:10px 18px;border:1px solid transparent;
border-radius:10px;font-size:.82rem;line-height:1.2;font-weight:800;text-align:center;
background:rgba(255,255,255,.9);color:#303638;cursor:pointer;
transition:background .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease
}
.search-tabs label:hover span{background:#fff;border-color:rgba(0,0,0,.08)}
.search-tabs input:checked+span{
background:#202629;color:#fff;border-color:#202629;
box-shadow:0 5px 14px rgba(0,0,0,.18)
}
.search-tabs input:focus-visible+span{outline:2px solid #c89b62;outline-offset:2px}.search-grid{display:grid;grid-template-columns:1.45fr 1fr 1fr .72fr .72fr auto;gap:8px;align-items:end}.field label{display:block;font-size:.67rem;color:#858585;font-weight:700;text-transform:uppercase;letter-spacing:.04em;margin:0 0 5px 3px}.field input,.field select{width:100%;border:1px solid var(--line);border-radius:13px;background:#fff;padding:11px 12px;min-height:46px;font:inherit;font-size:.84rem}.search-btn{height:46px;border:0;border-radius:13px;background:var(--accent);color:white;padding:0 18px;font-weight:800;display:flex;gap:8px;align-items:center;justify-content:center}.section{padding:88px 0}.section.soft{background:var(--soft)}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:30px;gap:24px}.section-head h2{font-size:clamp(2rem,4vw,3.35rem);margin:0 0 8px;line-height:1.08}.section-head p{margin:0;color:var(--muted);max-width:620px}.result-count{width:52px;height:52px;border-radius:50%;background:var(--dark);color:#fff;display:grid;place-items:center;font-weight:800}.property-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.property-card{border:1px solid var(--line);border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 8px 28px rgba(40,32,22,.045);transition:transform .2s,box-shadow .2s}.property-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.property-media{position:relative;aspect-ratio:1.42/1;background:#efefec;overflow:hidden}.property-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.property-card:hover .property-media img{transform:scale(1.035)}.property-placeholder{height:100%;display:grid;place-items:center;font-size:3rem;color:#bbb}.property-type{position:absolute;top:12px;left:12px;padding:7px 10px;border-radius:999px;background:rgba(17,19,21,.84);backdrop-filter:blur(8px);color:white;font-size:.68rem;font-weight:800}.property-body{padding:18px}.property-location{font-size:.74rem;color:#7d7f82;margin-bottom:6px}.property-body h3{font-size:1.08rem;line-height:1.35;margin:0 0 14px;min-height:2.7em}.property-meta{display:flex;gap:14px;color:#5e6266;font-size:.78rem;padding-bottom:15px;border-bottom:1px solid var(--line)}.property-bottom{display:flex;justify-content:space-between;align-items:end;padding-top:14px;gap:8px}.property-bottom strong{font-size:1.12rem}.property-bottom span{font-size:.68rem;color:#888}.card-wa{margin-top:14px;display:flex;align-items:center;justify-content:center;gap:7px;border:1px solid #dce9e1;color:#23734a;border-radius:11px;padding:8px;font-size:.76rem;font-weight:700}.category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.category-card{position:relative;background:#fff;border:1px solid var(--line);border-radius:18px;padding:22px;min-height:190px;display:flex;flex-direction:column;transition:.2s}.category-card:hover{transform:translateY(-3px);border-color:#d7c4a7}.category-icon{width:44px;height:44px;border-radius:13px;background:#f3eee6;color:var(--accent2);display:grid;place-items:center;font-size:1.15rem;margin-bottom:22px}.category-card strong{font-size:1.02rem}.category-card>span:not(.category-icon){font-size:.76rem;color:var(--muted);margin-top:7px}.category-card .arrow{position:absolute;right:17px;top:17px;color:#999}.area-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.area-card{position:relative;min-height:270px;border-radius:22px;overflow:hidden;background-image:var(--area-bg,linear-gradient(135deg,#475557,#8d7658));background-size:cover;background-position:center;color:#fff;display:flex;align-items:end;justify-content:space-between;padding:22px}.area-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.68))}.area-card>div:not(.area-shade),.area-card>i{position:relative;z-index:2}.area-card span{font-family:"Playfair Display",serif;font-size:1.55rem;display:block}.area-card small{display:block;opacity:.75;max-width:260px;margin-top:4px}.area-card>i{width:38px;height:38px;border-radius:50%;border:1px solid rgba(255,255,255,.4);display:grid;place-items:center}.dark-section{background:var(--dark);color:white}.dark-section .section-head p,.dark-section .text-block{color:#aeb3b7}.info-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.info-card{background:#fff;border:1px solid var(--line);border-radius:18px;padding:25px}.dark-section .info-card{background:#1b1f22;border-color:#2b3034}.info-icon{font-size:1.5rem;color:var(--accent)}.info-card h3{font-size:1.02rem;margin:16px 0 8px}.info-card p{font-size:.82rem;color:var(--muted);margin:0}.dark-section .info-card p{color:#aeb3b7}.text-block{max-width:760px;color:var(--muted)}.sell-strip{background:linear-gradient(135deg,#a78458,#6f5739);color:#fff;padding:66px 0}.sell-inner{display:flex;justify-content:space-between;align-items:center;gap:36px}.sell-strip h2{font-size:clamp(2rem,4vw,3.4rem);margin:0 0 7px}.sell-strip p{margin:0;color:rgba(255,255,255,.78)}.primary-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:13px 19px;border-radius:12px;background:var(--accent);color:white;font-size:.85rem;font-weight:800}.primary-btn.light{background:white;color:#6e5435}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.content-card{border-radius:18px;background:white;border:1px solid var(--line);overflow:hidden}.content-card>img{width:100%;aspect-ratio:1.7/1;object-fit:cover}.content-card-body{padding:22px}.content-card h3{font-size:1.05rem;margin:0 0 6px}.content-card small{color:#9a7b55}.content-card p{font-size:.82rem;color:var(--muted)}.content-card a{font-size:.78rem;font-weight:800;color:var(--accent2)}.quote{font-size:1.8rem;color:var(--accent);display:block;margin-bottom:8px}.testimonial-grid .content-card{background:#faf8f4}.final-cta{padding:92px 0;background:#111416;color:white;text-align:center}.final-cta-inner{max-width:820px}.final-cta h2{font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.06;margin:0 0 16px}.final-cta p{color:#aeb3b7;max-width:660px;margin:0 auto 28px}.empty-state{padding:40px;border:1px dashed #d9d5ce;border-radius:18px;text-align:center;color:var(--muted)}footer{background:#0b0d0e;color:#d9dcde;padding:62px 0 20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1.5fr 1fr;gap:45px}.footer-brand{color:white;margin-bottom:16px}.footer-grid p{font-size:.8rem;color:#92989b;max-width:350px}.footer-grid h3{font-size:.8rem;text-transform:uppercase;letter-spacing:.12em;color:white;margin:0 0 14px}.footer-grid>div>a,.footer-grid>div>span{display:block;font-size:.8rem;color:#9da2a5;margin:8px 0}.socials{display:flex;gap:8px;margin-top:18px}.socials a{width:34px;height:34px;border-radius:50%;border:1px solid #2e3336;display:grid!important;place-items:center}.footer-langs{display:flex;gap:6px;flex-wrap:wrap}.footer-langs a{padding:6px 8px;border:1px solid #2d3235;border-radius:8px;font-size:.7rem}.footer-langs a.active{background:white;color:#111}.footer-bottom{margin-top:44px;padding-top:18px;border-top:1px solid #22272a;display:flex;justify-content:space-between;color:#666d71;font-size:.7rem}.floating-wa{position:fixed;right:20px;bottom:20px;width:52px;height:52px;border-radius:50%;background:#20a45a;color:white;display:grid;place-items:center;font-size:1.35rem;box-shadow:0 10px 25px rgba(0,0,0,.18);z-index:40}
@media(max-width:1020px){.main-nav{display:none}.menu-toggle{display:block;margin-left:auto}.header-actions{margin-left:0}.main-nav.open{position:absolute;display:flex;flex-direction:column;top:74px;left:0;right:0;background:white;padding:18px 22px;border-bottom:1px solid var(--line);gap:14px}.search-grid{grid-template-columns:repeat(2,1fr)}.search-grid .wide{grid-column:span 2}.search-btn{grid-column:span 2}.property-grid{grid-template-columns:repeat(2,1fr)}.category-grid{grid-template-columns:repeat(2,1fr)}.info-grid{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:720px){.aph-container{width:min(100% - 22px,1180px)}.header-inner{height:66px;gap:12px}.brand-text{display:none}.brand img{height:38px;max-width:150px}.lang-switch a{padding:5px 6px}.hero{min-height:0}.hero-content{padding:60px 0 42px}.hero h1{font-size:2.75rem}.hero-copy p{font-size:.95rem}.search-panel{margin-top:30px;padding:12px;border-radius:18px}.search-grid{grid-template-columns:1fr}.search-grid .wide,.search-btn{grid-column:auto}.section{padding:62px 0}.section-head{margin-bottom:22px}.property-grid,.category-grid,.area-grid,.info-grid,.content-grid{grid-template-columns:1fr}.property-media{aspect-ratio:1.5/1}.area-card{min-height:230px}.sell-inner{flex-direction:column;align-items:flex-start}.footer-grid{grid-template-columns:1fr;gap:24px}.footer-bottom{flex-direction:column;gap:6px}.header-actions .icon-btn{display:none}}
.home-main{display:flex;flex-direction:column}.section-style-soft{background:var(--soft)}.section-style-dark:not(.hero){background:var(--dark);color:#fff}.section-style-dark:not(.hero) .section-head p,.section-style-dark:not(.hero) .text-block{color:#aeb3b7}.section-style-accent{background:#f1e6d6}.section-style-light{background:#fff}

/* ETAP 4.1 brand media fitting */
.brand img{width:auto!important;height:auto!important;max-width:205px!important;max-height:44px!important;object-fit:contain!important;object-position:left center}
.footer-brand img{width:auto!important;height:auto!important;max-width:220px!important;max-height:56px!important;object-fit:contain!important}
@media(max-width:720px){.brand img{max-width:150px!important;max-height:38px!important}.footer-brand img{max-width:190px!important;max-height:50px!important}}


/* ETAP 5.3 — Premium Wide Layout
   One global content width for header, home sections, listings and footer.
   Desktop: 1400px; ultra-wide displays: up to 1500px.
   Tablet/mobile keep safe gutters so nothing touches the screen edges. */
:root{
  --aph-container:1400px;
  --aph-container-ultra:1500px;
  --aph-page-gutter:48px;
}
.aph-container{
  width:min(var(--aph-container),calc(100% - var(--aph-page-gutter)))!important;
  margin-left:auto!important;
  margin-right:auto!important;
}

/* Let the wider canvas breathe without making individual text lines too long. */
.header-inner{gap:30px}
.main-nav{gap:28px}
.hero-copy{max-width:820px}
.hero h1{max-width:1040px}
.hero-copy p{max-width:720px}
.section-head p{max-width:720px}
.text-block{max-width:860px}
.final-cta-inner{max-width:900px}
.final-cta p{max-width:720px}

/* Slightly more generous desktop grids on the wider canvas. */
@media(min-width:1280px){
  .property-grid{gap:26px}
  .category-grid{gap:18px}
  .area-grid{gap:20px}
  .info-grid{gap:18px}
  .content-grid{gap:22px}
  .footer-grid{gap:58px}
}

/* On very large displays allow a little more width, but never full bleed. */
@media(min-width:1800px){
  .aph-container{
    width:min(var(--aph-container-ultra),calc(100% - 64px))!important;
  }
}

/* Keep medium screens balanced. */
@media(max-width:1279px){
  :root{--aph-page-gutter:36px}
}
@media(max-width:1020px){
  :root{--aph-page-gutter:30px}
  .header-inner{gap:18px}
}

/* Preserve the existing compact mobile rhythm. */
@media(max-width:720px){
  .aph-container{
    width:calc(100% - 22px)!important;
  }
}

/* ETAP 6 card detail links */
.property-media-link{display:block;width:100%;height:100%}.property-body h3 a{color:inherit}.property-body h3 a:hover{color:var(--accent2)}


/* ETAP 6.1 — home property cards visibly open detail pages */
.property-media-link{position:relative;cursor:pointer}
.property-open-icon{position:absolute;right:12px;bottom:12px;width:39px;height:39px;border-radius:50%;background:rgba(255,255,255,.94);color:#15191b;display:grid;place-items:center;box-shadow:0 6px 18px rgba(0,0,0,.12);opacity:0;transform:translateY(5px);transition:.2s}
.property-card:hover .property-open-icon{opacity:1;transform:none}
.property-location a{color:inherit}
.property-location a:hover,.property-price-link:hover{color:var(--accent2)}
.property-price-link{color:inherit}

/* v16.3.4 PageSpeed/accessibility: local system font path avoids render-blocking webfont fetch. */
html,body,button,input,select,textarea{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif}
/* Improve muted text contrast without changing the visual language. */
:root{--muted:#5f666a}

/* STEP 2.4.1 — mobile search tab spacing fix */
@media (max-width:720px){
  .search-tabs{display:flex;width:100%;gap:2px;padding:3px;}
  .search-tabs label{flex:1 1 0;min-width:0;}
  .search-tabs span{min-width:0;width:100%;padding:9px 5px;font-size:.74rem;white-space:nowrap;}
}
@media (max-width:390px){
  .search-tabs span{padding:8px 3px;font-size:.70rem;letter-spacing:-.01em;}
}

/* STEP 2.5 - four home search tabs */
@media(max-width:720px){.search-tabs span{padding:8px 2px;font-size:.66rem;letter-spacing:-.02em}}
@media(max-width:390px){.search-tabs span{font-size:.61rem;padding:8px 1px}}

/* APH v2.5.2 - browser favorites */
.favorites-header-link{display:inline-flex;align-items:center;gap:6px;text-decoration:none;color:#172033;font-size:13px;font-weight:700;white-space:nowrap}.favorites-header-link i{color:#d92735;font-size:18px}.favorites-count{min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:#d92735;color:#fff;display:inline-flex;align-items:center;justify-content:center;font-size:11px}.listing-card-media,.property-media{position:relative}.favorite-toggle{position:absolute;z-index:12;top:12px;right:12px;width:40px;height:40px;border:1px solid rgba(255,255,255,.72);border-radius:50%;background:rgba(255,255,255,.94);box-shadow:0 5px 18px rgba(0,0,0,.16);display:flex;align-items:center;justify-content:center;color:#283044;font-size:20px;cursor:pointer;transition:.18s ease}.favorite-toggle:hover{transform:scale(1.06)}.favorite-toggle.is-favorite{background:#d92735;color:#fff;border-color:#d92735}.favorites-hero{padding:56px 0 34px;background:linear-gradient(135deg,#f8f9fb,#fff)}.favorites-hero span{font-size:12px;letter-spacing:.14em;font-weight:800;color:#8b6d3b}.favorites-hero h1{margin:8px 0 8px;font-size:clamp(30px,4vw,48px)}.favorites-hero h1 i{color:#d92735}.favorites-hero h1 small{font-size:.55em;color:#6c7484}.favorites-hero p{max-width:700px;color:#687083}.favorites-section{padding:36px 0 70px}.favorites-toolbar{display:flex;justify-content:flex-end;margin-bottom:18px}.favorites-clear{border:1px solid #d9dde5;background:#fff;border-radius:10px;padding:10px 14px;font-weight:700;cursor:pointer}.favorites-empty{text-align:center;padding:70px 20px;border:1px dashed #d9dde5;border-radius:18px;background:#fafbfc}.favorites-empty>i{font-size:48px;color:#c9ced8}.favorites-empty h2{margin:14px 0 24px}.favorites-contact{position:sticky;bottom:18px;z-index:20;margin-top:28px;text-align:center}.favorites-wa{display:inline-flex;align-items:center;gap:9px;padding:14px 22px;border-radius:999px;background:#1fa855;color:#fff!important;text-decoration:none;font-weight:800;box-shadow:0 10px 30px rgba(31,168,85,.28)}.favorite-result-card{background:#fff;border:1px solid #e6e9ef;border-radius:16px;overflow:hidden;box-shadow:0 8px 26px rgba(26,35,52,.07);position:relative}.favorite-result-media{display:block;height:230px;background:#eef1f5}.favorite-result-media img{width:100%;height:100%;object-fit:cover}.favorite-result-body{padding:17px}.favorite-result-location{font-size:13px;color:#737c8d}.favorite-result-body h2{font-size:18px;line-height:1.35;margin:8px 0 15px}.favorite-result-body h2 a{color:#172033;text-decoration:none}.favorite-result-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;padding-top:12px;border-top:1px solid #edf0f4}.favorite-result-bottom strong{font-size:18px}.favorite-result-bottom small{color:#7a8291}.favorite-result-open{display:inline-flex;gap:6px;margin-top:14px;text-decoration:none;font-weight:700;color:#8a6a35}@media(max-width:900px){.favorites-header-label{display:none}.favorites-header-link{order:2}.favorite-toggle{width:38px;height:38px}.favorites-hero{padding:38px 0 25px}}

/* APH v2.5.3 - favorite heart collision-safe positioning */
/* Heart owns the top-right corner. Any top-right project label sits immediately to its left. */
.listing-card-media>.favorite-toggle,
.property-media>.favorite-toggle{
  top:12px!important;
  right:12px!important;
  left:auto!important;
  bottom:auto!important;
  z-index:20!important;
}
.listing-card-media>.project-badge{
  top:12px!important;
  right:62px!important;
  left:auto!important;
  bottom:auto!important;
  z-index:10!important;
  max-width:calc(100% - 86px);
  white-space:nowrap;
}
@media(max-width:650px){
  .listing-card-media>.favorite-toggle,
  .property-media>.favorite-toggle{top:10px!important;right:10px!important}
  .listing-card-media>.project-badge{top:10px!important;right:58px!important;max-width:calc(100% - 80px)}
}

/* v2.5.7.1 Global breadcrumb */
.aph-global-breadcrumb-wrap{background:#fff;border-bottom:1px solid rgba(15,23,42,.08)}
.aph-global-breadcrumb{min-height:44px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:13px;color:#64748b}
.aph-global-breadcrumb a{color:#475569;text-decoration:none;font-weight:600}
.aph-global-breadcrumb a:hover{color:#0f172a}
.aph-global-breadcrumb i{font-size:10px;color:#94a3b8}
.aph-global-breadcrumb [aria-current="page"]{color:#0f172a;font-weight:700;max-width:min(620px,70vw);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:767px){.aph-global-breadcrumb{min-height:40px;font-size:12px;gap:6px}.aph-global-breadcrumb [aria-current="page"]{max-width:55vw}}

/* APH v2.5.7.2 — breadcrumb lives inside every public hero */
.aph-global-breadcrumb-wrap{display:none!important}
.aph-hero-breadcrumb{display:flex;align-items:center;gap:9px;flex-wrap:wrap;width:max-content;max-width:100%;margin:0 0 18px;padding:9px 14px;border:1px solid rgba(255,255,255,.18);border-radius:14px;background:rgba(15,23,30,.34);box-shadow:0 8px 24px rgba(0,0,0,.08);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);font-size:12px;line-height:1.2;color:rgba(255,255,255,.78)}
.aph-hero-breadcrumb a{display:inline-flex;align-items:center;gap:7px;color:rgba(255,255,255,.88)!important;text-decoration:none;font-weight:650}
.aph-hero-breadcrumb a:hover{color:#fff!important}
.aph-hero-breadcrumb>i{font-size:9px;color:rgba(255,255,255,.5)}
.aph-hero-breadcrumb [aria-current="page"]{color:#fff;font-weight:700;max-width:min(520px,55vw);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aph-hero-breadcrumb .bi-house-door-fill{font-size:13px;color:#fff}
/* Light heroes keep the same shape with a dark readable pill, matching the dark hero treatment. */
.detail-head .aph-hero-breadcrumb,.favorites-hero .aph-hero-breadcrumb{background:rgba(19,29,33,.90);border-color:rgba(19,29,33,.12)}
@media(max-width:767px){.aph-hero-breadcrumb{gap:6px;margin-bottom:14px;padding:8px 11px;border-radius:11px;font-size:11px}.aph-hero-breadcrumb [aria-current="page"]{max-width:48vw}}

/* APH v2.6.0 — homepage visual refresh inspired by the supplied reference.
   Homepage-only overrides: no data, routes, filters or property-card markup changed. */
.home-main{background:#f6f8fa}
.home-main .hero{min-height:520px;background:linear-gradient(125deg,#0b3552 0%,#0e4b69 45%,#176d86 100%);align-items:center}
.home-main .hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 82% 22%,rgba(255,255,255,.14),transparent 34%),linear-gradient(180deg,rgba(4,28,44,.02),rgba(4,28,44,.18));pointer-events:none}
.home-main .hero:after{width:520px;height:520px;right:-8%;bottom:-55%;background:radial-gradient(circle,rgba(197,151,72,.30),transparent 66%)}
.home-main .hero-overlay{background:linear-gradient(90deg,rgba(4,25,39,.68) 0%,rgba(4,35,51,.34) 52%,rgba(4,35,51,.08) 100%)}
.home-main .hero-content{padding:56px 0 34px}
.home-main .hero-copy{max-width:690px}
.home-main .hero .eyebrow{color:#e0b463;margin-bottom:8px}
.home-main .hero h1{font-size:clamp(2.8rem,5.4vw,4.8rem);line-height:1.01;max-width:760px;margin-bottom:14px;text-shadow:0 3px 18px rgba(0,0,0,.16)}
.home-main .hero-copy p{font-size:.98rem;max-width:620px;color:rgba(255,255,255,.86)}
.home-main .search-panel{margin-top:30px;padding:12px 14px 14px;border-radius:12px;box-shadow:0 16px 38px rgba(5,28,43,.24);border:1px solid rgba(255,255,255,.65)}
.home-main .search-tabs{margin:-1px 0 10px;padding:0;gap:2px;border:0;background:transparent;box-shadow:none;backdrop-filter:none}
.home-main .search-tabs span{min-width:92px;padding:8px 14px;border-radius:7px;background:#f1f4f6;color:#34404a;font-size:.75rem}
.home-main .search-tabs input:checked+span{background:#123b56;border-color:#123b56;color:#fff;box-shadow:none}
.home-main .field label{font-size:.61rem;color:#7a8791;letter-spacing:.03em;margin-bottom:3px}
.home-main .field input,.home-main .field select{min-height:42px;padding:9px 10px;border-radius:8px;border-color:#dce3e8;background:#fbfcfd;font-size:.78rem}
.home-main .search-btn{height:42px;border-radius:8px;background:#b8893d;padding:0 20px;box-shadow:0 7px 16px rgba(184,137,61,.18)}
.home-main .search-btn:hover{background:#9d722f}

/* More compact rhythm, while keeping the established listing cards untouched. */
.home-main .section{padding:58px 0}
.home-main .section-head{margin-bottom:22px}
.home-main .section-head h2{font-size:clamp(1.65rem,3vw,2.55rem);color:#132c42}
.home-main .section-head p{font-size:.86rem}
.home-main .section-head .eyebrow{color:#b17e31}
.home-main #featured{background:#fff}
.home-main #featured+.section{background:#f6f8fa}
.home-main .section-style-light{background:#fff}
.home-main .section-style-soft{background:#f3f6f8}
.home-main .section-style-accent{background:#f7f1e6}
.home-main .section-style-dark:not(.hero){background:#0e3148;color:#fff}
.home-main .section-style-dark:not(.hero) .section-head h2{color:#fff}
.home-main .section-style-dark:not(.hero) .info-card{background:rgba(255,255,255,.07);border-color:rgba(255,255,255,.13)}
.home-main .section-style-dark:not(.hero) .info-icon{color:#e2b565}
.home-main .category-card,.home-main .info-card,.home-main .content-card{border-radius:12px;box-shadow:0 6px 20px rgba(15,43,63,.045)}
.home-main .category-icon{background:#f7f0e4;color:#a9782d}
.home-main .info-grid{gap:10px}
.home-main .info-card{padding:20px;border-color:#e5eaee}
.home-main .info-icon{color:#b17e31}

/* Project / lifestyle section gets the navy-gold visual language from the reference. */
.home-main .project-card{border-radius:14px;box-shadow:0 8px 24px rgba(13,42,61,.07)}
.home-main .project-card-media{min-height:210px}
.home-main .project-card-body h2{color:#132c42}
.home-main .section-link{color:#9c702d;font-weight:800}
.home-main .sell-strip{background:linear-gradient(120deg,#103a55 0%,#174e6c 58%,#a77936 145%);padding:50px 0}
.home-main .sell-strip .eyebrow{color:#efc879}
.home-main .primary-btn{background:#b8893d;border-radius:9px}
.home-main .primary-btn.light{background:#fff;color:#17364c}
.home-main .final-cta{padding:70px 0;background:linear-gradient(130deg,#0b2638,#123d57)}
.home-main .final-cta .eyebrow{color:#e0b463}

/* Popular areas: wider, image-led compact tiles similar to the reference. */
.home-main #areas{background:#f6f8fa}
.home-main #areas .area-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}
.home-main #areas .area-card{min-height:205px;border-radius:12px;padding:14px;box-shadow:0 7px 20px rgba(11,39,57,.09)}
.home-main #areas .area-card span{font-family:Inter,ui-sans-serif,sans-serif;font-size:1rem;font-weight:800}
.home-main #areas .area-card small{font-size:.68rem;line-height:1.35;max-height:2.7em;overflow:hidden}
.home-main #areas .area-card>i{width:31px;height:31px;font-size:.78rem}
.home-main #areas .area-shade{background:linear-gradient(180deg,rgba(5,25,38,.02),rgba(5,25,38,.76))}

/* Keep the listing/filter card system exactly as built; only spacing around grids changes. */
.home-main .property-grid{gap:18px}
.home-main .property-card,.home-main .listing-card{box-shadow:0 7px 22px rgba(15,43,63,.06)}

@media(max-width:1100px){
  .home-main #areas .area-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .home-main .hero{min-height:500px}
  .home-main .search-grid{grid-template-columns:1.25fr 1fr 1fr 1fr}
  .home-main .search-btn{grid-column:auto}
}
@media(max-width:720px){
  .home-main .hero{min-height:0}
  .home-main .hero-content{padding:44px 0 28px}
  .home-main .hero h1{font-size:2.55rem}
  .home-main .search-panel{margin-top:24px;padding:10px;border-radius:11px}
  .home-main .search-tabs{display:grid;grid-template-columns:repeat(2,1fr);width:100%;gap:5px}
  .home-main .search-tabs span{min-width:0;padding:8px 6px}
  .home-main .section{padding:46px 0}
  .home-main #areas .area-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-main #areas .area-card{min-height:175px}
}
@media(max-width:430px){.home-main #areas .area-grid{grid-template-columns:1fr 1fr}.home-main #areas .area-card{min-height:155px;padding:11px}}

/* v2.6.1 — homepage project showcase replacing the old project card grid */
.project-showcase-section{padding:18px 0 34px;background:#f6f8fa}
.project-showcase{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.9fr);min-height:330px;border:1px solid #e4e9ed;border-radius:14px;overflow:hidden;background:#fff;box-shadow:0 10px 28px rgba(9,43,64,.07)}
.project-showcase-visual{position:relative;min-height:330px;background-image:linear-gradient(90deg,rgba(5,38,59,.94) 0%,rgba(7,50,73,.76) 45%,rgba(8,50,72,.25) 100%),var(--showcase-image,linear-gradient(135deg,#0d3a57,#176b82));background-size:cover;background-position:center;display:flex;align-items:flex-end}
.project-showcase-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(4,27,42,.02),rgba(4,27,42,.14));pointer-events:none}
.project-showcase-copy{position:relative;z-index:1;padding:38px;max-width:650px;color:#fff}
.project-showcase-copy .eyebrow{color:#e2b45e;margin-bottom:8px}
.project-showcase-copy h2{font-family:"Playfair Display",Georgia,serif;font-size:clamp(2rem,3.6vw,3.25rem);line-height:1.05;margin:0 0 14px;color:#fff;max-width:590px}
.project-showcase-copy p{margin:0 0 22px;color:rgba(255,255,255,.86);max-width:560px;font-size:.94rem}
.project-showcase-btn{display:inline-flex;align-items:center;gap:10px;background:#d4a64d;color:#102f43;padding:12px 18px;border-radius:8px;font-size:.82rem;font-weight:800;box-shadow:0 8px 20px rgba(0,0,0,.13)}
.project-showcase-btn:hover{transform:translateY(-1px);background:#e0b45e}
.project-showcase-features{display:flex;flex-direction:column;justify-content:center;padding:20px 24px;background:linear-gradient(145deg,#fff,#f7f8f8)}
.project-showcase-feature{display:grid;grid-template-columns:48px 1fr;gap:13px;align-items:center;padding:15px 0;border-bottom:1px solid #e7ebee}
.project-showcase-feature:last-child{border-bottom:0}
.project-showcase-icon{width:44px;height:44px;border-radius:9px;background:#fff8eb;border:1px solid #eeddbb;display:grid;place-items:center;color:#bd8730;font-size:1.15rem}
.project-showcase-feature h3{margin:0 0 3px;font-size:.9rem;color:#102f43}
.project-showcase-feature p{margin:0;color:#6c7881;font-size:.74rem;line-height:1.45}
@media(max-width:860px){.project-showcase{grid-template-columns:1fr}.project-showcase-visual{min-height:300px}.project-showcase-features{padding:10px 22px}.project-showcase-copy{padding:30px 24px}}
@media(max-width:560px){.project-showcase-section{padding:12px 0 26px}.project-showcase{border-radius:11px}.project-showcase-visual{min-height:310px}.project-showcase-copy h2{font-size:2rem}.project-showcase-feature{grid-template-columns:42px 1fr}.project-showcase-icon{width:40px;height:40px}}

/* APH v2.6.4 — admin-managed homepage imagery + mobile search hardening */
.home-main .hero{background-image:linear-gradient(125deg,rgba(5,34,52,.82),rgba(10,78,101,.62)),var(--home-hero-image,linear-gradient(125deg,#0b3552,#176d86));background-size:cover;background-position:center}
@media(max-width:720px){
  .home-main .search-panel{width:100%;max-width:100%;overflow:hidden;margin-left:0;margin-right:0}
  .home-main .search-grid{display:grid;grid-template-columns:minmax(0,1fr)!important;gap:8px;width:100%}
  .home-main .search-grid .field,.home-main .search-grid .wide,.home-main .search-btn{grid-column:1!important;min-width:0;width:100%}
  .home-main .field input,.home-main .field select{min-width:0;max-width:100%;width:100%}
  .home-main .search-tabs{grid-template-columns:repeat(2,minmax(0,1fr));overflow:visible}
  .home-main .search-tabs label,.home-main .search-tabs span{min-width:0;width:100%}
}
@media(max-width:380px){.home-main .search-tabs{grid-template-columns:1fr}}

.listing-card-description{margin:0 0 12px;color:var(--muted,#6f7477);font-size:.76rem;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden;min-height:3.42em}
@media(max-width:700px){.listing-card-description{-webkit-line-clamp:2;min-height:2.28em}}

/* APH V13.4 - project listing short description */
.listing-card-short-description{margin:.45rem 0 .8rem;color:var(--aph-text-muted,#667085);font-size:.92rem;line-height:1.5;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}
@media(max-width:700px){.listing-card-short-description{-webkit-line-clamp:2}}

/* APH V13.5 - property card description readability */
.listing-card-description{font-size:1rem;line-height:1.58;color:#4f5963;min-height:4.74em}
@media(max-width:700px){.listing-card-description{font-size:.98rem;line-height:1.55;min-height:3.1em}}

/* V13.13.21 — homepage room/bath filters */
@media(min-width:1101px){.home-main .search-grid{grid-template-columns:minmax(190px,1.3fr) repeat(7,minmax(112px,.72fr)) auto}}
@media(min-width:721px) and (max-width:1100px){.home-main .search-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.home-main .search-grid .wide{grid-column:span 2}.home-main .search-btn{grid-column:auto}}

/* APH v7.6 request confirmation fallback */
.aph-request-confirm-toast{position:fixed;left:50%;bottom:28px;z-index:10200;transform:translate(-50%,22px);opacity:0;width:min(560px,calc(100vw - 28px));display:grid;grid-template-columns:auto 1fr auto;gap:11px;align-items:center;padding:15px 16px;border-radius:14px;background:#fff;box-shadow:0 18px 55px rgba(0,0,0,.22);font-weight:800;font-size:14px;line-height:1.45;transition:.25s ease;border:1px solid #dce7e4}.aph-request-confirm-toast.show{transform:translate(-50%,0);opacity:1}.aph-request-confirm-toast.is-success{color:#17653d;border-color:#b9dec9}.aph-request-confirm-toast.is-error{color:#8d2727;border-color:#edcaca}.aph-request-confirm-toast button{border:0;background:transparent;color:inherit;cursor:pointer;padding:4px}

/* APH v8.6.5 homepage project showcase links */
.project-showcase-feature-link{position:relative;text-decoration:none;color:inherit;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease}
.project-showcase-feature-link:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(22,35,42,.10)}
.project-showcase-card-arrow{margin-left:auto;align-self:center;font-size:1.05rem;opacity:.62;transition:transform .18s ease,opacity .18s ease}
.project-showcase-feature-link:hover .project-showcase-card-arrow{transform:translate(2px,-2px);opacity:1}
/* APH footer logo card - append to END of existing assets/frontend.css */
#footer a.footer-brand {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: fit-content !important;
  max-width: 100% !important;
  padding: 12px 16px !important;
  border: 1px solid #c8a568 !important;
  border-radius: 14px !important;
  background: #f8f5ed !important;
  box-shadow: 0 5px 20px rgba(0,0,0,.18) !important;
}
#footer a.footer-brand img {
  display: block !important;
  max-width: min(220px, 100%) !important;
  max-height: 65px !important;
  width: auto !important;
  height: auto !important;
  object-fit: contain !important;
}
@media (max-width: 720px) {
  #footer a.footer-brand { padding: 10px 12px !important; }
  #footer a.footer-brand img { max-width: 190px !important; max-height: 55px !important; }
}