/* HarishProperties.ca — Release 7 / Sprint 8.1
   Strong compact 3D homepage correction. */

/* Desktop hero is intentionally much shorter and more editorial. */
.hp-hero-3d{
  min-height:600px!important;
  height:clamp(600px,69vh,680px)!important;
  max-height:680px!important;
  overflow:hidden!important;
  perspective:1700px;
  isolation:isolate;
  background-size:cover!important;
  background-position:68% center!important;
}
.hp-hero-3d::before{
  content:"";position:absolute;inset:0;z-index:1;pointer-events:none;
  background:
    radial-gradient(circle at 77% 38%,rgba(255,255,255,.13),transparent 19%),
    linear-gradient(98deg,rgba(3,15,49,.97) 0%,rgba(5,24,76,.84) 38%,rgba(6,18,51,.27) 68%,rgba(6,18,51,.06) 100%);
}
.hp-hero-3d::after{
  content:"";position:absolute;z-index:1;pointer-events:none;
  width:34vw;height:34vw;right:-10vw;top:-15vw;border-radius:50%;
  border:1px solid rgba(255,255,255,.11);
  box-shadow:0 0 0 42px rgba(111,58,156,.035),0 0 0 84px rgba(249,94,40,.018);
}
.hp-hero-3d .hero-grid{
  min-height:600px!important;
  height:100%!important;
  max-height:680px!important;
  transform-style:preserve-3d;
  position:relative;z-index:2;
  align-items:start!important;
}
.hp-hero-3d .hero-copy{
  padding-top:30px!important;
  padding-bottom:22px!important;
  max-width:730px!important;
  transform:translateZ(42px);
  transition:transform .24s ease-out;
}
.hp-hero-3d .eyebrow{margin-bottom:14px!important}
.hp-hero-3d h1{
  font-size:clamp(3.4rem,5.15vw,5.4rem)!important;
  line-height:.91!important;
  letter-spacing:-.055em!important;
  margin-bottom:14px!important;
  max-width:700px!important;
}
.hp-hero-3d .hero-copy>p{
  font-size:clamp(.98rem,1.08vw,1.12rem)!important;
  line-height:1.48!important;
  margin-bottom:17px!important;
  max-width:600px!important;
}
.hp-hero-3d .hero-actions{margin-bottom:14px!important;gap:10px!important}
.hp-hero-3d .hero-actions .btn{min-height:48px!important;padding:0 24px!important}
.hp-hero-3d .review{margin-bottom:14px!important;padding:10px 16px!important}
.hp-hero-3d .hero-search-dock{
  max-width:690px!important;
  padding:10px!important;
  transform:translateZ(58px);
  box-shadow:0 25px 65px rgba(0,0,0,.30)!important;
}
.hp-hero-3d .hero-search-main{min-height:68px!important}
.hp-hero-3d .hero-search-main input{min-height:64px!important}
.hp-hero-3d .hero-search-main button{min-height:54px!important}
.hp-hero-3d .hero-search-chips{padding-top:9px!important;gap:7px!important}
.hp-hero-3d .hero-search-chips a{padding:8px 12px!important;font-size:.78rem!important}

/* Stronger portrait presentation: larger face, raised position, dimensional plate. */
.hp-hero-3d .hero-person{
  width:min(430px,27vw)!important;
  right:5.3%!important;
  bottom:-30px!important;
  z-index:4!important;
  transform-style:preserve-3d;
  transform:translate3d(var(--hp-person-x,0),var(--hp-person-y,0),115px) rotateY(var(--hp-person-ry,0deg)) scale(1.035)!important;
  transform-origin:50% 100%;
  transition:transform .32s cubic-bezier(.2,.8,.2,1),filter .32s ease!important;
}
.hp-hero-3d .hero-person::before{
  content:"";position:absolute;left:9%;right:2%;bottom:4%;height:79%;z-index:-1;
  border-radius:46% 46% 24% 24%;
  background:linear-gradient(145deg,rgba(255,255,255,.16),rgba(111,58,156,.055));
  border:1px solid rgba(255,255,255,.18);
  transform:translateZ(-38px) rotateY(-6deg);
  box-shadow:0 42px 90px rgba(0,0,0,.38),inset 0 1px 0 rgba(255,255,255,.12);
  backdrop-filter:blur(5px);
}
.hp-hero-3d .hero-person img{
  max-height:605px!important;
  filter:drop-shadow(0 30px 38px rgba(0,0,0,.42)) drop-shadow(0 0 1px rgba(255,255,255,.45))!important;
}
.hp-hero-3d:hover .hero-person{filter:saturate(1.035) contrast(1.02)}

/* Clearer homepage hierarchy. */
.trust-strip{position:relative;z-index:6;margin-top:0!important}
.hp-own-listings{padding-top:48px!important;padding-bottom:62px!important}
.signal-strip{padding-top:18px!important;padding-bottom:58px!important}
.market-lens-section{padding-top:64px!important}

@media(max-width:1180px){
  .hp-hero-3d{height:650px!important;min-height:650px!important}
  .hp-hero-3d .hero-grid{height:650px!important;min-height:650px!important}
  .hp-hero-3d .hero-person{width:min(410px,33vw)!important;right:1%!important}
  .hp-hero-3d h1{font-size:clamp(3.25rem,6vw,4.9rem)!important}
}
@media(max-width:880px){
  .hp-hero-3d{height:700px!important;min-height:700px!important;max-height:none!important}
  .hp-hero-3d .hero-grid{height:700px!important;min-height:700px!important;max-height:none!important}
  .hp-hero-3d .hero-copy{max-width:80%!important;padding-top:26px!important}
  .hp-hero-3d .hero-person{width:47%!important;right:-7%!important;bottom:-18px!important;opacity:.9}
  .hp-hero-3d h1{font-size:clamp(3rem,9vw,4.45rem)!important}
}
@media(max-width:680px){
  .hp-hero-3d{height:auto!important;min-height:720px!important;max-height:none!important;background-position:70% center!important}
  .hp-hero-3d .hero-grid{height:auto!important;min-height:720px!important;max-height:none!important}
  .hp-hero-3d .hero-copy{max-width:100%!important;padding-top:22px!important;padding-bottom:210px!important}
  .hp-hero-3d h1{font-size:clamp(2.65rem,12.5vw,3.75rem)!important}
  .hp-hero-3d .hero-person{width:72%!important;right:-20%!important;bottom:-10px!important;opacity:.64;transform:translate3d(0,0,0)!important}
  .hp-hero-3d .hero-person::before{display:none}
  .hp-hero-3d .hero-search-dock{transform:none;padding:8px!important}
}
@media(prefers-reduced-motion:reduce){
  .hp-hero-3d .hero-copy,.hp-hero-3d .hero-person{transform:none!important;transition:none!important}
}
