/* ================================
   iSection Hero – Modern Clean
================================ */

.isx-hero{
  position: relative;
  isolation: isolate;
  overflow: hidden;
  padding-block: clamp(72px, 8vw, 110px);
  padding-bottom: clamp(100px, 10vw, 160px);

  /* Modern soft background */
  background:
    radial-gradient(900px 420px at var(--gx, 20%) var(--gy, 15%),
      rgba(var(--primary-color-rgb), .12),
      transparent 60%
    ),
    radial-gradient(700px 380px at var(--hx, 85%) var(--hy, 75%),
      rgba(var(--primary-color-rgb), .08),
      transparent 60%
    ),
    linear-gradient(
      180deg,
      #ffffff 0%,
      rgba(255,255,255,.96) 60%,
      rgba(255,255,255,0) 100%
    );
}

/* Noise – very subtle */
.isx-hero::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  pointer-events:none;
  opacity:.05;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='2'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E");
}

/* Fade melt into next section */
.isx-hero::after{
  content:"";
  position:absolute;
  left:0; right:0;
  bottom:-1px;
  height: clamp(80px, 9vw, 150px);
  z-index:2;
  pointer-events:none;
  background: linear-gradient(
    to bottom,
    rgba(255,255,255,0),
    rgba(255,255,255,1)
  );
}

/* Container */
.isx-hero__container{
  position: relative;
  z-index:1;
  width: min(1120px, 92%);
  margin-inline: auto;

  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: clamp(24px, 5vw, 60px);
  align-items: center;
}

/* Content */
.isx-hero__badge{
  display:inline-flex;
  gap:10px;
  padding:10px 16px;
  border-radius:999px;
  background:rgba(255,255,255,.85);
  border:1px solid rgba(var(--primary-color-rgb),.2);
  font-size:14px;
  font-weight:600;
  color:var(--primary-color);
}

.isx-hero__title{
  margin:18px 0 12px;
  font-size:clamp(40px,6vw,64px);
  font-weight:850;
  line-height:1.05;
  letter-spacing:-.02em;
  color:var(--primary-color-dark-soft);
}

.isx-hero__text{
  max-width:60ch;
  font-size:clamp(16px,2vw,18px);
  line-height:1.75;
  color:rgba(var(--primary-color-dark-rgb),.7);
}

/* Actions */
.isx-hero__actions{
  margin-top:24px;
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}

.isx-hero__btn{
  padding:12px 18px;
  border-radius:14px;
  font-size:15px;
  font-weight:700;
  text-decoration:none;
  transition:.2s ease;
}

.isx-hero__btn--primary{
  background:var(--bouncing-blob-green-color);
  color:var(--primary-color-dark-soft);
}

.isx-hero__btn--secondary{
  background:#fff;
  border:1px solid rgba(var(--primary-color-rgb),.25);
  color:var(--primary-color);
}

/* Media */
.isx-hero__media{
  display:flex;
  justify-content:center;
}

.isx-hero__image{
  max-width:620px;
  width:100%;
  filter: drop-shadow(0 22px 40px rgba(var(--primary-color-dark-rgb),.18));
  animation:isxFloatImage 6s ease-in-out infinite;
}

/* Float */
@keyframes isxFloatImage{
  0%{transform:translateY(0)}
  50%{transform:translateY(-12px)}
  100%{transform:translateY(0)}
}

/* Responsive */
@media (max-width:768px){
  .isx-hero__container{
    grid-template-columns:1fr;
    text-align:center;
  }
  .isx-hero__actions{justify-content:center}
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce){
  .isx-hero__image{animation:none}
}