* {
    margin: 0;
    padding: 0;
}
body {
    background: #222222;
}

hr {
  margin-left: auto;
  margin-right: auto;
}

#hexGrid {
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  margin: 0 auto;
  overflow: hidden;
  font-size: 15px;
  list-style-type: none;
}

#hexGrid a {
  color: #fff;
}

.hex {
  position: relative;
  visibility:hidden;
  outline:1px solid transparent; /* fix for jagged edges in FF on hover transition */
}
.hex::after{
  content:'';
  display:block;
  padding-bottom: 86.602%;  /* =  100 / tan(60) * 1.5 */
}
.hexIn{
  cursor: pointer;
  position: absolute;
  width:96%;
  padding-bottom: 110.851%; /* =  width / sin(60) */
  margin:0 2%;
  overflow: hidden;
  visibility: hidden;
  outline:1px solid transparent; /* fix for jagged edges in FF on hover transition */
  -webkit-transform: rotate3d(0,0,1,-60deg) skewY(30deg);
      -ms-transform: rotate3d(0,0,1,-60deg) skewY(30deg);
          transform: rotate3d(0,0,1,-60deg) skewY(30deg);
}
.hexIn * {
  position: absolute;
  visibility: visible;
  outline:1px solid transparent; /* fix for jagged edges in FF on hover transition */
}
.hexLink {
    display:block;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    overflow: hidden;
    -webkit-transform: skewY(-30deg) rotate3d(0,0,1,60deg);
        -ms-transform: skewY(-30deg) rotate3d(0,0,1,60deg);
            transform: skewY(-30deg) rotate3d(0,0,1,60deg);
}

/*** HEX CONTENT **********************************************************************/
.hex-img {
  left: -100%;
  right: -100%;
  width: auto;
  height: 100%;
  margin: 0 auto;
  -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
  -ms-filter: grayscale(100%);
    filter: grayscale(100%);
  -webkit-transform: rotate3d(0,0,0,0deg);
      -ms-transform: rotate3d(0,0,0,0deg);
          transform: rotate3d(0,0,0,0deg);
}

.hex-hive {
  left: -100%;
  right: -100%;
  width: auto;
  height: 100%;
  margin: 0 auto;
  -webkit-filter: grayscale(0%); /* Safari 6.0 - 9.0 */
    filter: grayscale(0%);
}

.bookmark {
  cursor: pointer;
  position: relative;
  z-index: 100;
  top: 77%;
  right: 12%;
  overflow: hidden;
}

.bookmark img {
  cursor: pointer;
  width: 50px;
  height: 50px;
}

@keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Firefox < 16 */
@-moz-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Safari, Chrome and Opera > 12.1 */
@-webkit-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Internet Explorer */
@-ms-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

/* Opera < 12.1 */
@-o-keyframes fadein {
    from { opacity: 0; }
    to   { opacity: 1; }
}

.hex h1, .hex p {
  width: 100%;
  padding: 5%;
  margin-bottom: 0px;
  box-sizing:border-box;
  font-weight: 300;
  -webkit-transition:  -webkit-transform .3s ease-out, opacity .3s ease-out;
          transition:          transform .3s ease-out, opacity .3s ease-out;
}
.hex h1  {
  bottom: 50%;
  padding-top:50%;
  font-size: 1.5em;
  z-index: 1;
  -webkit-transform:translate3d(0,-100%,0);
      -ms-transform:translate3d(0,-100%,0);
          transform:translate3d(0,-100%,0);
}
.hex h1::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 45%;
  width: 10%;
  text-align: center;
  border-bottom: 1px solid #fff;
}
.hex p {
  top: 50%;
  line-height: 18px;
  padding-bottom:50%;
  -webkit-transform:translate3d(0,100%,0);
      -ms-transform:translate3d(0,100%,0);
          transform:translate3d(0,100%,0);
}


/*** HOVER EFFECT  **********************************************************************/
.hexLink:hover h1, .bookmark, .hexLink:focus h1,
.hexLink:hover p, .hexLink:focus p{
  -webkit-transform:translate3d(0,0,0);
      -ms-transform:translate3d(0,0,0);
          transform:translate3d(0,0,0);
}



.modal-header {
  color: #fff;
}

.modal-body img {
  display: block;
  margin: 0 auto 10px auto;
  max-width: 100%;
  -webkit-filter: drop-shadow(2px 2px 2px #222222);
  filter: drop-shadow(2px 2px 2px #222222);
}

.modal-body ul {
  margin: 5px;
}

.modal-body figcaption {
  text-align: center;
  padding-bottom: 20px;
  font-size: 20px;
  font-weight: bold;
}

.render-icon {
  z-index: 10;
  position: absolute;
  top: 25px;
  left: 20px;
  width: 40px;
  height: 35px;
}

.render-domain {
  z-index: 11;
  position: absolute;
  color: #fff;
  text-shadow: 2px 2px #222222;
  font-size: 40px;
  top: 15px;
  left: 75px;
  text-transform: uppercase;
}

.domain-img {
  width: 70px;
  height: 70px;
}

.digibee-animation {
  z-index: 9;
  position: absolute;
}


/*** HEXAGON SIZING AND EVEN ROW INDENTATION *****************************************************************/
@media (min-width:1201px) { /* <- 5-4  hexagons per row */
  #hexGrid{
    padding-bottom: 4.4%
  }

  .hex {
    width: 16.66%; /* = 100 / 5 */
  }
  .hex:nth-child(11n+7){ /* first hexagon of even rows */
    margin-left:8.33%;  /* = width of .hex / 2  to indent even rows */
  }
}

@media (max-width: 1200px) and (min-width:901px) { /* <- 4-3  hexagons per row */
  .hex h1 {
      font-size: 1.1em;
    }

  .hex p {
    font-size: 12px;
    line-height: 14px;
  }
  .bookmark {
  top: 75%;
  right: 13.5%;
}

.bookmark img {
  width: 40px;
  height: 40px;
}

  #hexGrid{
    padding-bottom: 5.5%
  }
  .hex {
    width: 16.66%; /* = 100 / 5 */
  }
  .hex:nth-child(11n+7){ /* first hexagon of even rows */
    margin-left:8.33%;  /* = width of .hex / 2  to indent even rows */
  }
}

@media (max-width: 900px) and (min-width:601px) { /* <- 3-2  hexagons per row */
  #hexGrid{
    padding-bottom: 7.4%
  }
  .hex h1 {
      font-size: 1.1em;
    }

    .hex p {
    font-size: 12px;
    line-height: 14px;
  }

  .hex {
    width: 33.33%; /* = 100 / 3 */
  }
  .hex:nth-child(5n+4){ /* first hexagon of even rows */
    margin-left:16.66%;  /* = width of .hex / 2  to indent even rows */
  }

  .bookmark {
  top: 77%;
  right: 12%;
}

.bookmark img {
  width: 40px;
  height: 40px;
}
}

@media (max-width: 600px) { /* <- 2-1  hexagons per row */
  
  .hex h1 {
      font-size: 1.1em;
    }

  .hex p {
    font-size: 12px;
    line-height: 14px;
  }
  #hexGrid{
    padding-bottom: 11.2%
  }
  .hex {
    width: 50%; /* = 100 / 3 */
  }
  .hex:nth-child(3n+3){ /* first hexagon of even rows */
    margin-left:25%;  /* = width of .hex / 2  to indent even rows */
  }

  .bookmark {
  top: 78%;
  right: 12.5%;
}

.bookmark img {
  width: 38px;
  height: 38px;
}

}
}

@media (max-width: 400px) {
    #hexGrid {
        font-size: 13px;
    }

    .hex h1 {
      font-size: 1.2em;
    }

    .hex p {
    font-size: 12px;
    }
    .render-icon {
      width: 25px;
      height: 22px;
      top: 20px;
      left: 18px;
      
    }
    .render-domain {
      font-size: 18px;
      top:20px;
      left: 48px;
    } 

    .modal-title {
    font-size: 18px;
}

    .modal-body figcaption {
    font-size: 14px;
}

.render-domain {
  font-size: 18px;
}

}