
/* =========================
   Project Solutions Hero v2
   A Version (Left aligned)
   Height cap: 680px
   ========================= */

#ps-hero-v2{
  font-family:Inter, Segoe UI, Arial, sans-serif;
}
#ps-hero-v2 *{box-sizing:border-box;}
#ps-hero-v2 img{display:block;max-width:100%;}

/* Hero shell */
#ps-hero-v2 .ps-hero{
  position:relative;
  width:100%;
  overflow:hidden;
  border-radius:12px;

  min-height:500px;
  height:min(100svh, 680px);
}

/* Background image */
#ps-hero-v2 .ps-hero__imgBox{
  position:absolute;
  inset:0;
  overflow:hidden;
}
#ps-hero-v2 .ps-hero__img{
  width:100%;
  height:100%;
  object-fit:cover;
  transform:scale(1);
  transition:transform .7s ease;
  will-change:transform;
}

/* Mature overlay（更成熟：基础暗层 + 渐变暗角） */
#ps-hero-v2 .ps-hero__overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(
      1200px 680px at 18% 50%,
      rgba(0,0,0,.38) 0%,
      rgba(0,0,0,.16) 55%,
      rgba(0,0,0,.12) 100%
    ),
    linear-gradient(
      180deg,
      rgba(0,0,0,.18) 0%,
      rgba(0,0,0,.14) 60%,
      rgba(0,0,0,.18) 100%
    );
}

/* Content wrapper */
#ps-hero-v2 .ps-hero__content{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:flex-start;
  /* 向右微移：桌面更舒展，移动端自动收回 */
  padding-left:clamp(40px, 6vw, 120px);
  padding-right:clamp(20px, 4vw, 72px);
}

/* Inner text column */
#ps-hero-v2 .ps-hero__inner{
  width:100%;
  max-width:1200px;
  transform:translateY(clamp(-52px, -4vh, -20px));
  text-align:left;
}

/* Typography */
#ps-hero-v2 .ps-hero__title{
  margin:0 0 30px 0;
  color:#fff;
  text-shadow:0 2px 4px rgba(0,0,0,.35);

  font-size:clamp(48px, 4.2vw, 64px);
  font-weight:600;
  line-height:1.12;
  letter-spacing:-0.015em;
}

#ps-hero-v2 .ps-hero__subtitle{
  margin:0 0 38px 0;
  color:#fff;
  text-shadow:0 2px 4px rgba(0,0,0,.35);

  font-size:clamp(20px, 1.6vw, 26px);
  font-weight:400;
  line-height:1.55;
  max-width:58ch;
}

/* Actions */
#ps-hero-v2 .ps-hero__actions{
  display:flex;
  gap:16px;
}

/* Button */
#ps-hero-v2 .ps-hero__btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  cursor:pointer;

  border-radius:10px;
  padding:16px 32px;
  font-size:17px;
  font-weight:600;
  line-height:1;

  background:#8B5A2B;
  color:#fff;
  transition:transform .18s ease, background-color .18s ease;
}
#ps-hero-v2 .ps-hero__btn:hover{
  transform:translateY(-1px);
  background:#7b4f26;
}

/* Desktop hover: image only */
@media (hover:hover) and (pointer:fine){
  #ps-hero-v2 .ps-hero:hover .ps-hero__img{
    transform:scale(1.08);
  }
}

/* Mobile */
@media (max-width:768px){
  #ps-hero-v2 .ps-hero{
    min-height:460px;
    height:min(100svh, 620px);
    border-radius:10px;
  }

  #ps-hero-v2 .ps-hero__inner{
    transform:none;
  }

  #ps-hero-v2 .ps-hero__title{
    margin-bottom:18px;
    font-size:clamp(34px, 7.2vw, 44px);
  }

  #ps-hero-v2 .ps-hero__subtitle{
    margin-bottom:24px;
    font-size:clamp(16px, 4.4vw, 20px);
    max-width:44ch;
  }

  #ps-hero-v2 .ps-hero__btn{
    padding:14px 24px;
    font-size:16px;
  }
}
