/* EPICORE R45 — ANIMATED CIRCLE POSITION FIX
   Built from stable R44.
   Keeps R44 text spacing/alignment and moves only the connected-business visual.
*/

@media (min-width:1080px){

  /* HOME: fit the complete animated circle inside the compact R44 hero */
  body.next-site .next-home-hero .epv3-map,
  body.next-site .next-home-hero .epv3-map.epv3-map-standard,
  body.next-site .next-home-hero .epv3-map.epv3-map-compact,
  body.next-site .next-home-hero .epv3-map.epv3-map-mini{
    top:51% !important;
    width:min(600px,43vw) !important;
  }

  /* INNER PAGES: smaller + lower so Customers/top arc is fully visible */
  body.next-site .next-inner-hero .epv3-map,
  body.next-site .next-inner-hero .epv3-map.epv3-map-standard{
    top:52% !important;
    width:min(500px,38vw) !important;
  }

  body.next-site .next-inner-hero .epv3-map.epv3-map-compact{
    top:52% !important;
    width:min(430px,34vw) !important;
  }

  body.next-site .next-inner-hero .epv3-map.epv3-map-mini{
    top:52% !important;
    width:min(325px,27vw) !important;
  }

  /* Explore uses its own hero class. Apply the same safe visual position. */
  body.next-site .explore-hero .epv3-map,
  body.next-site .explore-hero .epv3-map.epv3-map-standard{
    top:52% !important;
    width:min(500px,38vw) !important;
  }

  body.next-site .explore-hero .epv3-map.epv3-map-compact{
    top:52% !important;
    width:min(430px,34vw) !important;
  }

  /* Keep enough vertical room for the bottom caption without restoring the old wasted space */
  body.next-site .next-inner-hero{
    min-height:455px !important;
    height:455px !important;
  }

  body.next-site .next-inner-hero .next-inner-content{
    height:455px !important;
  }
}

/* Medium desktop / laptop */
@media (min-width:901px) and (max-width:1079px){
  body.next-site .next-home-hero .epv3-map{
    top:52% !important;
    width:min(560px,46vw) !important;
  }

  body.next-site .next-inner-hero .epv3-map,
  body.next-site .explore-hero .epv3-map{
    top:52% !important;
    width:min(470px,42vw) !important;
  }
}

/* Mobile/tablet: don't push the graphic upward */
@media (max-width:900px){
  body.next-site .epv3-map{
    top:50% !important;
  }
}
