/* V5.0 FINAL THEME LOCK — header / hero / catalog / detail. Loaded last. */
:root{
  --ph50-blue:#073d80;
  --ph50-blue-deep:#052c61;
  --ph50-blue-ink:#122b50;
  --ph50-gold:#d3a126;
  --ph50-gold-light:#f1c85e;
  --ph50-red:#d51f28;
  --ph50-cream:#fffaf1;
  --ph50-text:#1d2f49;
  --ph50-muted:#66758c;
}

/* --- Font/brand hard lock: prevent old spacing rules from splitting Vietnamese text --- */
body.ph39-site,body.ph39-catalog,body.ph39-detail{
  font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
  color:var(--ph50-text)!important;
  font-kerning:normal!important;
  text-rendering:optimizeLegibility!important;
}
body.ph39-site *,body.ph39-catalog *,body.ph39-detail *{
  word-spacing:normal;
}
body.ph39-site .ph43-brand-copy b,body.ph39-catalog .ph43-brand-copy b,body.ph39-detail .ph43-brand-copy b{
  display:block!important;
  white-space:nowrap!important;
  letter-spacing:0!important;
  word-spacing:0!important;
  font-family:Georgia,"Times New Roman",serif!important;
  font-weight:800!important;
  font-size:22px!important;
  line-height:1.04!important;
  color:#c59018!important;
  text-shadow:none!important;
  font-kerning:normal!important;
}
body.ph39-site .ph43-brand-copy small,body.ph39-catalog .ph43-brand-copy small,body.ph39-detail .ph43-brand-copy small{
  display:block!important;
  white-space:nowrap!important;
  letter-spacing:1.45px!important;
  word-spacing:0!important;
  font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
  font-size:10px!important;
  line-height:1.2!important;
  font-weight:900!important;
  color:#a87308!important;
}

/* --- One consistent header on home, catalog and detail --- */
body.ph39-site .ph39-header,body.ph39-catalog .ph39-header,body.ph39-detail .ph39-header{
  position:sticky!important;
  top:0!important;
  z-index:300!important;
  background:#fff!important;
  border-bottom:1px solid #e6ebf2!important;
  box-shadow:0 7px 24px rgba(17,45,83,.08)!important;
}
body.ph39-site .ph39-nav,body.ph39-catalog .ph39-nav,body.ph39-detail .ph39-nav{
  min-height:78px!important;
  width:min(1220px,calc(100% - 40px))!important;
  margin:0 auto!important;
  display:grid!important;
  grid-template-columns:minmax(245px,auto) minmax(0,1fr) auto auto auto!important;
  gap:18px!important;
  align-items:center!important;
}
body.ph39-site .ph39-brand,body.ph39-catalog .ph39-brand,body.ph39-detail .ph39-brand{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:240px!important;
  color:inherit!important;
  text-decoration:none!important;
  background:transparent!important;
  padding:0!important;
}
body.ph39-site .ph39-brand img,body.ph39-catalog .ph39-brand img,body.ph39-detail .ph39-brand img{
  width:54px!important;
  height:54px!important;
  flex:0 0 54px!important;
  object-fit:contain!important;
  background:transparent!important;
  box-shadow:none!important;
}
body.ph39-site .ph43-brand-copy,body.ph39-catalog .ph43-brand-copy,body.ph39-detail .ph43-brand-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:3px!important;
  min-width:0!important;
}
body.ph39-site .ph39-menu,body.ph39-catalog .ph39-menu,body.ph39-detail .ph39-menu{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:26px!important;
  position:static!important;
  inset:auto!important;
  padding:0!important;
  margin:0!important;
  background:transparent!important;
  box-shadow:none!important;
  border:0!important;
}
body.ph39-site .ph39-menu a,body.ph39-catalog .ph39-menu a,body.ph39-detail .ph39-menu a{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  min-height:78px!important;
  padding:0!important;
  color:#1b2f4e!important;
  opacity:1!important;
  font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
  font-size:14px!important;
  line-height:1!important;
  font-weight:800!important;
  letter-spacing:0!important;
  text-shadow:none!important;
  text-decoration:none!important;
  white-space:nowrap!important;
}
body.ph39-site .ph39-menu a:hover,body.ph39-site .ph39-menu a.active,
body.ph39-catalog .ph39-menu a:hover,body.ph39-catalog .ph39-menu a.active,
body.ph39-detail .ph39-menu a:hover,body.ph39-detail .ph39-menu a.active{
  color:#bd870b!important;
}
body.ph39-site .ph39-menu a:hover:after,body.ph39-site .ph39-menu a.active:after,
body.ph39-catalog .ph39-menu a:hover:after,body.ph39-catalog .ph39-menu a.active:after,
body.ph39-detail .ph39-menu a:hover:after,body.ph39-detail .ph39-menu a.active:after{
  content:""!important;
  position:absolute!important;
  left:0!important;right:0!important;bottom:0!important;height:3px!important;
  border-radius:99px 99px 0 0!important;
  background:var(--ph50-gold)!important;
}
body.ph39-site .ph39-hotline,body.ph39-catalog .ph39-hotline,body.ph39-detail .ph39-hotline{
  min-width:160px!important;
  min-height:52px!important;
  padding:8px 14px!important;
  border-radius:14px!important;
  background:linear-gradient(145deg,#0c55ad,#073875)!important;
  border:1px solid #d6aa31!important;
  box-shadow:0 10px 24px rgba(6,57,120,.16)!important;
}
body.ph39-site .ph40-admin-entry,body.ph39-catalog .ph40-admin-entry,body.ph39-detail .ph40-admin-entry{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:48px!important;padding:0 18px!important;border-radius:13px!important;
  background:linear-gradient(145deg,#efc23c,#c99716)!important;color:#0d3264!important;
  font-weight:900!important;text-decoration:none!important;box-shadow:0 10px 22px rgba(177,127,11,.17)!important;
}

/* --- Home hero: one-line desktop title, locked service/search sizing --- */
body.ph39-site .ph39-hero{
  min-height:640px!important;
  padding:38px 0 34px!important;
  overflow:hidden!important;
}
body.ph39-site .ph39-hero-center{
  width:min(1180px,calc(100% - 48px))!important;
  max-width:none!important;
  padding-top:36px!important;
  margin:0 auto!important;
  text-align:left!important;
}
body.ph39-site .ph46-home-hero-title{
  display:flex!important;
  flex-direction:row!important;
  align-items:baseline!important;
  gap:15px!important;
  flex-wrap:nowrap!important;
  width:auto!important;
  max-width:900px!important;
  margin:0!important;
  line-height:1!important;
}
body.ph39-site .ph46-home-hero-title span,body.ph39-site .ph46-home-hero-title strong{
  display:inline!important;
  white-space:nowrap!important;
  letter-spacing:-1.15px!important;
  word-spacing:0!important;
  font-size:54px!important;
  line-height:1.02!important;
  font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;
  font-weight:900!important;
}
body.ph39-site .ph46-home-hero-title span{color:#f2bf3c!important}
body.ph39-site .ph46-home-hero-title strong{color:#fff!important}
body.ph39-site .ph39-services{
  width:min(1180px,calc(100% - 48px))!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  margin:20px auto 0!important;
}
body.ph39-site .ph39-service-card{
  width:100%!important;
  min-width:0!important;
  height:112px!important;
  min-height:112px!important;
  max-height:112px!important;
  box-sizing:border-box!important;
  grid-template-columns:58px minmax(0,1fr) 20px!important;
  overflow:visible!important;
}
body.ph39-site .ph39-service-card b{font-size:16px!important;line-height:1.2!important;color:#fff!important}
body.ph39-site .ph39-service-card small{font-size:12px!important;line-height:1.35!important;color:#e9f1ff!important}
body.ph39-site .ph39-search{
  width:min(1180px,calc(100% - 48px))!important;
  grid-template-columns:1.1fr 1.15fr 1fr 1fr 1fr .82fr!important;
  gap:10px!important;
  padding:14px!important;
  margin:18px auto 0!important;
  box-sizing:border-box!important;
}
body.ph39-site .ph39-search label{min-width:0!important;overflow:hidden!important}
body.ph39-site .ph39-search input,body.ph39-site .ph39-search select{min-width:0!important;width:100%!important}

/* --- Catalog: remove duplicate selection layer, compact filter --- */
body.ph39-catalog .ph47-filter-card{padding:14px 16px!important;border-radius:18px!important}
body.ph39-catalog .ph47-tab-row{display:none!important}
body.ph39-catalog .ph48-catalog-order{
  margin:0 0 12px!important;
  gap:10px!important;
}
body.ph39-catalog .ph48-catalog-order a,body.ph39-catalog .ph48-catalog-order button{
  min-height:50px!important;
  font-size:14px!important;
  padding:8px 12px!important;
}
body.ph39-catalog[data-catalog-mode="rent"] .ph48-catalog-order a:first-child,
body.ph39-catalog[data-catalog-mode="sale"] .ph48-catalog-order a:last-child{
  box-shadow:0 12px 28px rgba(9,56,120,.18),inset 0 0 0 2px rgba(255,255,255,.16)!important;
}
body.ph39-catalog .ph47-filter-grid{gap:9px!important}
body.ph39-catalog .ph47-filter-grid label{padding:9px 12px!important;min-height:52px!important}
body.ph39-catalog .ph47-filter-grid .search-btn{min-height:54px!important;font-size:17px!important}
body.ph39-catalog .ph47-categories{margin-top:10px!important}
body.ph39-catalog .ph47-categories button{padding:10px 6px!important;gap:5px!important;font-size:12px!important}
body.ph39-catalog .ph47-categories i{width:36px!important;height:36px!important;font-size:17px!important}
body.ph39-catalog[data-catalog-mode="rent"] #catalogSaleSection,
body.ph39-catalog[data-catalog-mode="sale"] #catalogRentSection{display:none!important}
body.ph39-catalog[data-catalog-mode="rent"] #catalogRentSection,
body.ph39-catalog[data-catalog-mode="sale"] #catalogSaleSection{display:block!important}
body.ph39-catalog[data-catalog-mode="rent"] .ph47-content-main,
body.ph39-catalog[data-catalog-mode="sale"] .ph47-content-main{display:block!important}

/* --- Detail page: same header/brand and readable hero --- */
body.ph39-detail .property-detail-hero{padding-top:38px!important}
body.ph39-detail .detail-breadcrumb{
  color:#fff!important;background:rgba(4,40,84,.62)!important;border-color:rgba(244,198,79,.38)!important;
  box-shadow:0 10px 24px rgba(0,0,0,.12)!important;
}
body.ph39-detail .detail-breadcrumb a,body.ph39-detail .detail-breadcrumb span,body.ph39-detail .detail-breadcrumb b{color:#fff!important;opacity:1!important}
body.ph39-detail .detail-title-row h1{font-family:"Segoe UI",Tahoma,Arial,sans-serif!important;letter-spacing:0!important;word-spacing:0!important;color:#fff!important}
body.ph39-detail .detail-title-row p{color:#f2f6ff!important}

/* --- About / vision: isolate copy from decorative gold rings/lines --- */
body.ph39-site .ph39-about-grid article{
  min-height:248px!important;
  padding:24px!important;
  grid-template-columns:96px minmax(0,1fr)!important;
  align-items:center!important;
}
body.ph39-site .ph39-about-grid article>div:last-child{
  position:relative!important;
  z-index:4!important;
  padding:18px 20px!important;
  border-radius:15px!important;
  background:linear-gradient(90deg,rgba(3,38,79,.92),rgba(4,50,99,.76))!important;
  border:1px solid rgba(242,200,94,.18)!important;
  box-shadow:0 12px 28px rgba(0,0,0,.14)!important;
  backdrop-filter:blur(3px)!important;
}
body.ph39-site .ph39-about-grid h2{margin:0 0 9px!important;font-size:27px!important;line-height:1.1!important;color:#ffd66f!important;letter-spacing:0!important}
body.ph39-site .ph39-about-grid p{margin:0!important;font-size:15px!important;line-height:1.62!important;color:#fff!important;text-shadow:0 2px 7px rgba(0,0,0,.28)!important}
body.ph39-site .ph39-about-icon{position:relative!important;z-index:5!important}

@media(max-width:1180px){
  body.ph39-site .ph39-nav,body.ph39-catalog .ph39-nav,body.ph39-detail .ph39-nav{grid-template-columns:auto 1fr auto auto!important;width:calc(100% - 28px)!important}
  body.ph39-site .ph39-menu,body.ph39-catalog .ph39-menu,body.ph39-detail .ph39-menu{gap:16px!important}
  body.ph39-site .ph39-menu a,body.ph39-catalog .ph39-menu a,body.ph39-detail .ph39-menu a{font-size:13px!important}
  body.ph39-site .ph46-home-hero-title span,body.ph39-site .ph46-home-hero-title strong{font-size:46px!important}
}
@media(max-width:920px){
  body.ph39-site .ph39-menu,body.ph39-catalog .ph39-menu,body.ph39-detail .ph39-menu{display:none!important}
  body.ph39-site.ph39-menu-open .ph39-menu,body.ph39-catalog.ph39-menu-open .ph39-menu,body.ph39-detail.ph39-menu-open .ph39-menu{
    display:flex!important;position:absolute!important;top:78px!important;left:14px!important;right:14px!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;background:#fff!important;border-radius:14px!important;padding:8px 16px!important;box-shadow:0 18px 40px rgba(17,45,83,.17)!important;
  }
  body.ph39-site.ph39-menu-open .ph39-menu a,body.ph39-catalog.ph39-menu-open .ph39-menu a,body.ph39-detail.ph39-menu-open .ph39-menu a{min-height:45px!important;border-bottom:1px solid #edf0f5!important}
  body.ph39-site .ph39-nav,body.ph39-catalog .ph39-nav,body.ph39-detail .ph39-nav{grid-template-columns:1fr auto auto!important}
  body.ph39-site .ph46-home-hero-title{flex-wrap:wrap!important;gap:4px 10px!important}
  body.ph39-site .ph46-home-hero-title span,body.ph39-site .ph46-home-hero-title strong{font-size:42px!important}
  body.ph39-site .ph39-services{grid-template-columns:1fr!important}
  body.ph39-site .ph39-service-card{height:auto!important;min-height:96px!important;max-height:none!important}
  body.ph39-site .ph39-search{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  body.ph39-site .ph39-about-grid article{grid-template-columns:1fr!important}
}
@media(max-width:600px){
  body.ph39-site .ph39-brand,body.ph39-catalog .ph39-brand,body.ph39-detail .ph39-brand{min-width:0!important}
  body.ph39-site .ph43-brand-copy,body.ph39-catalog .ph43-brand-copy,body.ph39-detail .ph43-brand-copy{display:none!important}
  body.ph39-site .ph39-hotline small,body.ph39-catalog .ph39-hotline small,body.ph39-detail .ph39-hotline small{display:none!important}
  body.ph39-site .ph39-hotline,body.ph39-catalog .ph39-hotline,body.ph39-detail .ph39-hotline{min-width:48px!important;width:48px!important;padding:0!important;justify-content:center!important}
  body.ph39-site .ph40-admin-entry,body.ph39-catalog .ph40-admin-entry,body.ph39-detail .ph40-admin-entry{display:none!important}
  body.ph39-site .ph46-home-hero-title{display:block!important}
  body.ph39-site .ph46-home-hero-title span,body.ph39-site .ph46-home-hero-title strong{display:block!important;font-size:35px!important;white-space:normal!important}
  body.ph39-site .ph39-search{grid-template-columns:1fr!important}
  body.ph39-catalog .ph48-catalog-order{grid-template-columns:1fr!important}
}

/* Vietnamese typography safety net across final theme */
body.ph39-site h1,body.ph39-site h2,body.ph39-site h3,
body.ph39-catalog h1,body.ph39-catalog h2,body.ph39-catalog h3,
body.ph39-detail h1,body.ph39-detail h2,body.ph39-detail h3{
  word-spacing:0!important;
  font-kerning:normal!important;
  text-rendering:optimizeLegibility!important;
}
