.has-mega-menu{
font-weight:900;
font-size:16px;
}
@media screen and (min-width: 600px){
    .has-mega-menu{
        position:static;
    }
    li.has-mega-menu .sub-menu {
        width: 100%;
        position: absolute;
        top: NNpx; /*insert the needed value*/
        z-index: 100;
        left:0px;
        right:0px;
    }
    li.has-mega-menu:hover>.sub-menu{
    /*flexbox fallback for browsers that do not support CSS GRID lyout*/
        display: flex;
        flex-wrap: wrap;
    /*CSS GRID lyout*/ 
        display: grid;
        grid-template-columns: repeat(auto-fit,minmax(100%, 1fr));   
    }
}
@media screen and (min-width: 992px){

    li.has-mega-menu:hover>.sub-menu{grid-template-columns: repeat(auto-fit,minmax(100%, 1fr));
width:950px; }
}
@media screen and (min-width: 1200px){

    li.has-mega-menu:hover>.sub-menu{grid-template-columns: repeat(auto-fit,minmax(100%, 1fr));
width:950px; }
}
.flip {
  position: relative;
	text-align: center;
}
.flip > .front > h2, .flip > .back > h2, .flip > .back > p{
	color: #3744DD !important;
	text-shadow: white 0px 0px 10px;
}
.flip > .front,
.flip > .back {
  display: block;
  transition-timing-function: cubic-bezier(0.175, 0.885, 0.32, 1.275);
  transition-duration: 1s;
  transition-property: transform, opacity;
}
.flip > .front {
  transform: rotateY(0deg);
}
.flip > .back {
  position: absolute;
  opacity: 0;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 100%;
  transform: rotateY(-180deg);
}
.flip:hover > .front {
  transform: rotateY(180deg);
}
.flip:hover > .back {
  opacity: 1;
  transform: rotateY(0deg);
}
.flip.flip-vertical > .back {
  transform: rotateX(-180deg);
}
.flip.flip-vertical:hover > .front {
  transform: rotateX(180deg);
}
.flip.flip-vertical:hover > .back {
  transform: rotateX(0deg);
}

.flip {
  position: relative;
  display: inline-block;
  margin-right: 2px;
  margin-bottom: 1em;
  width: 400px;
}
.flip > .front,
.flip > .back {
  display: block;
  color: white;
  width: inherit;
  background-size: cover !important;
  background-position: center !important;
  height: 220px;
  padding: 1em 2em;
  background: #E9D707;
  border-radius: 10px;
}
.flip > .front p,
.flip > .back p {
  font-size: 0.9125rem;
  line-height: 160%;
  color: #999;
}
li.has-mega-menu:hover>.sub-menu{
	width: 250px !important;
}