/* ============================
   Hero Section (Professional Orange-Navy Theme)
   ============================ */

.hero-section {
  background: linear-gradient(
    135deg,
    var(--bg-primary-light) 0%,
    var(--primary-100) 100%
  );
  color: var(--text-on-primary);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 0 0 1rem 1rem;
  position: relative;
  overflow: hidden;
  min-height: 100dvh;
}

/* Optional: subtle pattern overlay */
.hero-section::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at top right, rgba(255,255,255,0.08), transparent 60%);
  z-index: 0;
}

.hero-container {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  padding-top: 11rem;
  width: 100%;
  gap: 2rem;
  column-gap:4rem;
  position: relative;
  z-index: 1;
}

.hero-text {
  flex: 1 1 500px;
  color: var(--white);
}

.hero-text h1 {
  font-weight: 700;
  margin-bottom: 1.25rem;
  color: var(--text-on-secondary);
}

.hero-text p {
  margin-bottom: 2.5rem;
  color: var(--text-on-primary-light);
}


.hero-image {
  position: relative;
  overflow: hidden;
  width: 100%;
  max-width: 450px;      /* ✅ prevent extra-wide images */
  max-height: 65dvh;     /* ✅ limit height to viewport */
  aspect-ratio: 4 / 3;   /* ✅ maintain consistent proportions */
  border-radius: 0.5rem;
  display: flex;
  justify-content: center;  /* ✅ Center children */
  align-items: center;  /* ✅ Center children */
  box-shadow: 0 8px 20px rgba(255, 100, 20, 0.7);
}


.hero-image img {
  width: 100%;
  height: 100%;
  object-fit: contain;    /* keep aspect ratio, no crop */
  background: var(--white);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  border: 1px solid rgba(255, 255, 255, 0.4);
  transition: transform 0.4s ease, box-shadow 0.4s ease;
}

.hero-image img:hover {
  transform: scale(1.1);
}

/*
.hero-image img:hover {
  transform: scale(1.03) translateY(-5px);
} */

/* Big Desktop (≥1920px) */
@media (min-width: 1920px) {

  }

/* Laptop (≤1440px) */
@media (max-width: 1440px) {

}

/* Tablet (≤1024px) */
@media (max-width: 1024px) {

}

/* Mobile (≤768px) */
@media (max-width: 768px) {

}

/* Small Mobile (≤500px) */
@media (max-width: 500px) {

}
