/* Bencefalo v44 — true edge-to-background Hero blend */

.hero{
  position:relative!important;
  overflow:clip!important;
  isolation:isolate!important;
}

.hero-copy{
  position:relative!important;
  z-index:5!important;
}

.hero-visual{
  position:absolute!important;
  z-index:1!important;
  top:-7%!important;
  right:-5vw!important;
  bottom:-7%!important;
  left:41%!important;
  min-height:0!important;
  margin:0!important;
  overflow:visible!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  pointer-events:none!important;
}

.hero-visual:before{
  content:""!important;
  position:absolute!important;
  inset:4% 2% 5% 5%!important;
  z-index:0!important;
  border-radius:50%!important;
  background:radial-gradient(ellipse at 60% 44%,rgba(113,53,187,.34) 0%,rgba(74,31,122,.20) 34%,rgba(31,15,54,.08) 58%,transparent 78%)!important;
  filter:blur(40px)!important;
}

.hero-photo-img{
  position:absolute!important;
  z-index:1!important;
  inset:-3% -1% -4% -4%!important;
  width:105%!important;
  height:109%!important;
  object-fit:cover!important;
  object-position:55% 43%!important;
  border:0!important;
  border-radius:0!important;
  background:transparent!important;
  box-shadow:none!important;
  filter:saturate(.88) contrast(1.03) brightness(.78)!important;

  -webkit-mask-image:radial-gradient(ellipse 54% 66% at 58% 48%,#000 0%,#000 50%,rgba(0,0,0,.93) 58%,rgba(0,0,0,.68) 68%,rgba(0,0,0,.38) 76%,rgba(0,0,0,.14) 83%,transparent 90%)!important;
  mask-image:radial-gradient(ellipse 54% 66% at 58% 48%,#000 0%,#000 50%,rgba(0,0,0,.93) 58%,rgba(0,0,0,.68) 68%,rgba(0,0,0,.38) 76%,rgba(0,0,0,.14) 83%,transparent 90%)!important;
}

.hero-photo-fade{
  position:absolute!important;
  z-index:2!important;
  inset:-4% -2% -5% -5%!important;
  border:0!important;
  border-radius:0!important;
  pointer-events:none!important;
  background:
    radial-gradient(ellipse at 62% 44%,transparent 0%,transparent 43%,rgba(4,3,12,.10) 61%,rgba(4,3,12,.44) 78%,rgba(4,3,12,.90) 100%),
    linear-gradient(90deg,#02040c 0%,rgba(2,4,12,.82) 11%,rgba(2,4,12,.30) 24%,transparent 42%,transparent 74%,rgba(2,4,12,.24) 88%,#02040c 100%),
    linear-gradient(180deg,#02040c 0%,rgba(2,4,12,.34) 9%,transparent 22%,transparent 76%,rgba(2,4,12,.38) 91%,#02040c 100%)!important;
}

.hero-glyph{
  z-index:4!important;
}

/* Remove any legacy second-image rules from prior versions. */
.hero-photo-ambient{
  display:none!important;
}

@media(max-width:980px){
  .hero{
    overflow:clip!important;
  }
  .hero-visual{
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    min-height:550px!important;
    margin:0 -20px -12px!important;
  }
  .hero-photo-img{
    inset:-2% -5% -4% -5%!important;
    width:110%!important;
    height:108%!important;
    object-position:52% 40%!important;
    -webkit-mask-image:
      linear-gradient(to right,transparent 0%,rgba(0,0,0,.28) 9%,#000 22%,#000 78%,rgba(0,0,0,.28) 91%,transparent 100%),
      linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.25) 8%,#000 20%,#000 78%,rgba(0,0,0,.28) 91%,transparent 100%);
    -webkit-mask-composite:source-in;
    mask-image:
      linear-gradient(to right,transparent 0%,rgba(0,0,0,.28) 9%,#000 22%,#000 78%,rgba(0,0,0,.28) 91%,transparent 100%),
      linear-gradient(to bottom,transparent 0%,rgba(0,0,0,.25) 8%,#000 20%,#000 78%,rgba(0,0,0,.28) 91%,transparent 100%);
    mask-composite:intersect;
  }
  .hero-photo-fade{
    inset:-3% -5% -5% -5%!important;
    background:
      radial-gradient(ellipse at 50% 44%,transparent 0%,transparent 48%,rgba(2,4,12,.14) 66%,rgba(2,4,12,.72) 90%,#02040c 100%),
      linear-gradient(180deg,#02040c 0%,transparent 16%,transparent 72%,#02040c 100%)!important;
  }
}

@media(max-width:620px){
  .hero-visual{
    min-height:470px!important;
    margin-top:8px!important;
  }
  .hero-photo-img{
    inset:-1% -7% -3% -7%!important;
    width:114%!important;
    height:104%!important;
    object-position:52% 39%!important;
  }
}