/* =========================================================
   GLOBAL HERO — RESET (Perfect Working Version)
   ========================================================= */

.page-hero {
  position: relative;
  width: 100%;
  text-align: center;
  overflow: hidden;
  background: var(--blue); /* fallback under image */
  padding-top: 10px;
}

/* Responsive hero image — controlled height with clamp */
.page-hero img {
  width: 100%;
  height: clamp(260px, 30vw, 310px);
  object-fit: cover;
  display: block;
}


/* Overlay gradient */
.page-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;

  background: linear-gradient(
      180deg,
      rgba(10,26,51,0.25) 0%,
      rgba(10,26,51,0.55) 40%,
      rgba(10,26,51,0.88) 100%
  );
  pointer-events: none;
}

/* Text wrapper */
.page-hero .hero-inner {
  position: absolute;
  bottom: 12%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;

  width: 100%;
  max-width: 900px;
  padding: 15px 20px;
}

.page-hero h1 {
  font-size: clamp(38px, 5.6vw, 60px);
  font-weight: 800;
  color: #fff;
  margin-bottom: 12px;
}

.page-hero p {
  font-size: 1.18rem;
  line-height: 1.7;
  color: rgba(255,255,255,0.92);
  max-width: 760px;
  margin: 0 auto;
}

/* ============================================
   MOBILE TIGHT HERO (smaller spacing, cleaner)
   ============================================ */
@media (max-width: 680px) {

  /* pull text wrapper slightly lower + reduce padding */
  .page-hero .hero-inner {
    bottom: 8%;         /* was 12% */
    padding: 6px 14px;  /* was 15px 20px */
  }

  /* smaller title margin + slightly smaller top clamp */
  .page-hero h1 {
    margin-bottom: 6px;                /* tighter space */
    font-size: clamp(32px, 7vw, 46px); /* slightly smaller on mobile */
  }

  /* keep the paragraph visible, just tighten it */
  .page-hero p {
    font-size: 1rem;       /* was 1.18rem */
    line-height: 1.5;      /* was 1.7 */
    margin-top: 6px;
  }
}
