@import url('https://fonts.googleapis.com/css?family=Montserrat:100,100i,200,200i,300,300i,400,400i,500,500i,600,600i,700,700i,800,800i,900,900i');

* {
	box-sizing: border-box;
    margin: 0;
    padding: 0;
	font-family: 'Montserrat', sans-serif;
  -webkit-user-select: none;
  user-select: none;
  text-transform: uppercase;
}

html, body {
  max-width: 100%;
  overflow-x: hidden;
  }

body {
  background: #000000;
	-webkit-transition: all 300ms linear;
	transition: all 300ms linear;
	font-family: 'Montserrat', sans-serif;
	font-size: 2em;
  width: 100vw;
  overflow: hidden;
}

nav {
  height: 3em;
	background: none;
  position: fixed;
  width: 100%;
  z-index: 5;
  display: flex;
  justify-content: space-between;
}

.hide {
  visibility: none;
}


.logo {
  height: 2em;
  width: 2em;
  background-image: url("img/creature_cult_logo_crop.png");
  background-size: 80%;
  background-repeat: no-repeat;
  background-position: center;
}

.cc { 
  display: flex;
  align-items: center;
	padding: 0.5em;
}

.cc a {
	text-decoration: none;
  color: #7c0000;
  transition: color 0.5s ease-in-out;
}

.cult-hidden {
  display: none;
}

.cc-span {
	text-decoration: none;
	color: #c6c6c6;
  transition: color 0.5s ease-in-out;
}

.cc a:hover {
	color: #c6c6c6;
}

.cc a .cc-span:hover {
	color: #7c0000;
}

.navcon {
  display: flex;
  align-items: center;
  font-size: 0.5em;
}

.navlist {
  display: flex;
  list-style: none;
}

.nav-item {
  color: #e6e6e6;
  margin-right: 2em;
}

.nav-link {
  color: #e6e6e6;
  text-decoration: none;
  transition: color 0.5s ease-in-out;
}

.nav-link:hover {
  color: #7c0000;
}










.redd-wrap {
  background-color: #000000;
  height: 100vh;
	width: 100%;
	align-items: center;
	justify-content: center;
}

.redd{
  display: flex;
	text-align: center;
	width: 100vw;
  height: 100vh;
	background-color: #000000;
  align-items: center;
  justify-content: center;
}

.redd-text h2{
	text-transform: uppercase;
	font-size: 4em;
    color: #7c0000;
	padding: 1em;
  pointer-events: none;
}



.scroll-container {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  bottom: 4em;
  stroke:#c6c6c6;
  transition: stroke 0.5s ease-in-out;
}

.scroll-container:hover {
  stroke: #7c0000;
}

/* Scroll icon */
.scroll {
	width: 1em;
  z-index: 2;
}
.scroll_arrow {
	display: block;
	height: 0.5em;
	animation: downarrow 2.5s infinite;
}
@keyframes downarrow {
	0% {
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
		opacity: 0;
	}
	50% {
		-webkit-transform: translate(0, 10px);
		transform: translate(0, 10px);
		opacity: 0.5;
	}
	100% {
		-webkit-transform: translate(0, 0);
		transform: translate(0, 0);
		opacity: 0;
	}
}



/******** HEX GRIDS VVVVVV *******/


#hexGrid {
  display: flex;
  flex-wrap: wrap;
  width: 90%;
  margin: 0 auto;
  overflow: hidden;
  font-family: sans-serif;
  list-style-type: none;
}

#hexGrid {
  overflow: visible;
}

.hex {
  position: relative;
  visibility:hidden;
  outline:1px solid transparent; /* fix for jagged edges in FF on hover transition */
  transition: all 0.5s;
  backface-visibility: hidden;
  will-change: transform;
  transition: all 0.5s;
}
.hex::after{
  content:'';
  display:block;
  padding-bottom: 86.602%;  /* =  100 / tan(60) * 1.5 */
}
.hexIn{
  position: absolute;
  width:96%;
  padding-bottom: 110.851%; /* =  width / sin(60) */
  margin: 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);
    transition: all 0.5s;
}
.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;
}

.hex h1, .hex p {
  width: 100%;
  padding: 5%;
  box-sizing:border-box;
  font-weight: 300;
  opacity: 0;
}

.hex-text {
  width: 100%;
  height: 100%;
  text-align: center;
  display: flex;
  align-items: center;
  pointer-events: none;
}

#hex-title {
  color: #e6e6e6;
  text-transform: uppercase;
  text-align: center;
  font-size: 1.8vw;
  z-index: 1;
  padding: 0;
  pointer-events: none;
}

.hex h1:before, .hex h1:after {
  display: inline-block;
  margin: 0 0.25em;
  width: 0.125em;
  height: 0.03em;
  background: #ff0000;
  content: '';
  vertical-align: middle;
  transition: all 0.3s;
  text-align:center;
}

#hex-subtext {
	font-size: 1.5vw;
	line-height: 1.4em;
	text-align: center;
	text-transform: uppercase;   
  pointer-events: none
}

.img {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-position: center center;
  background-size: cover;
  overflow: hidden;
  -webkit-clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
  clip-path: polygon(50% 0%, 100% 25%, 100% 75%, 50% 100%, 0% 75%, 0% 25%);
}

.img:before, .img:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: '';
  opacity: 0;
  transition: opacity 0.5s;
}

.img:before {
  background: rgba(73, 0, 0, 0.884)
}

.img:after {
  background: linear-gradient(to top, transparent, rgba(0, 0, 0, 0.733), transparent);
}

/*** HOVER EFFECT  **********************************************************************/



.hexLink:hover h1, .hexLink:focus h1,
.hexLink:hover p, .hexLink:focus p{
opacity:1;
transition: 0.8s;
}


.hexIn:hover .img:before,
.hexIn:hover .img:after,
.hexIn:hover .hexLink {
  opacity: 1;
}



/***************************************
 /* The Modal (background) */
 .modal {
  display: none; /* Hidden by default */
  position: fixed; /* Stay in place */
  z-index: 6; /* Sit on top */
  /*padding-top: 2vh; /* Location of the box */
  left: 0;
  top: 0;
  width: 100%; /* Full width */
  height: 100%; /* Full height */
  overflow: auto; /* Enable scroll if needed */
  background-color: rgb(56, 3, 3); /* Fallback color */
  background-color: rgba(0, 0, 0, 0.829); /* Black w/ opacity */
}

/* Modal Content */
.modal-content {
  position: relative;
  background-color: #0f0f11;
  margin: auto;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
  width: 80%;
  border: 1px solid #888;
  box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
  -webkit-animation-name: animatetop;
  -webkit-animation-duration: 0.4s;
  animation-name: animatetop;
  animation-duration: 0.4s;
}

/* Add Animation */
@-webkit-keyframes animatetop {
  from {top:-300px; opacity:0}
  to {top:0; opacity:1}
}

@keyframes animatetop {
  from {top:-300px; opacity:0}
  to {top:0; opacity:1}
}

/* The Close Button */
.close {
  color: #e6e6e6;
  float: right;
  font-size: 28px;
  font-weight: bold;
  padding-right: 0.2em;
}

.close:hover,
.close:focus {
  color: #ff0000;
  text-decoration: none;
  cursor: pointer;
}

.modal-header {
  height: 1em;
  background-color: #000000;
}

.art-text {
  text-align: center;
  padding: 0.5em;
  -webkit-user-select: none;
  user-select: none;
}

.art-text h2 {
  display: block;
  color: #e6e6e6;
  text-transform: uppercase;
  font-size: 1.8vw;
  z-index: 1;
  pointer-events: none;
}

.art-text h2:before, .art-text h2:after {
  display: inline-block;
  margin: 0 0.25em;
  width: 0.2em;
  height: 0.1em;
  background: #ff0000;
  content: '';
  vertical-align: middle;
  transition: all 0.3s;
  text-align: center;
}

.art-text p {
  pointer-events: none;
  text-transform: uppercase;
}

.info {
  color: #cfcfcf;
  font-style: italic;
  font-size: 0.8em;
  font-weight: 200;
}

.cta { 
  justify-content: center;
  display: none;
}

.cta button {
  text-transform: uppercase;
  padding: 0.2em;
  background-color: #7c0000;
  width: 200px;
}




.cta-button {
  border: 1px solid #000;
  border-radius: 4px;
  box-shadow: #080808 4px 4px 0 0,#000 4px 4px 0 1px;
  color: #e6e6e6;
  cursor: pointer;
  display: inline-block;
  font-size: 14px;
  font-weight: 600;
  overflow: visible;
  text-align: center;
  touch-action: manipulation;
  -webkit-user-select: none;
  user-select: none;
  vertical-align: middle;
  white-space: nowrap;
}

.cta-button:focus {
  text-decoration: none;
}

.cta-button:hover {
  text-decoration: none;
  transform: scale(1.015) perspective(1px);
  background-color: #8a0101;
}

.cta-button:active {
  box-shadow: rgba(0, 0, 0, .125) 0 3px 5px inset;
  outline: 0;
  color: #000000;
}

.cta-button:not([disabled]):active {
  box-shadow: #e6e6e6 2px 2px 0 0, #000 2px 2px 0 1px;
  transform: translate(2px, 2px);
}

@media (min-width: 768px) {
  .cta-button {
    padding: 12px 50px;
  }
}






.grid {
  overflow: visible;
  background: rgb(0,0,0);
  background: linear-gradient(180deg, rgba(0,0,0,1) 0%, rgba(33,0,0,1) 100%);
  padding-bottom: 4em;
}














.modal-body {
  display: flex;
  flex-direction: column;
  flex-basis: 100%;
  flex: 1;
  padding-top: 0.5em;
  padding-left: 0.7em;
  justify-content: center;
}

.modal-footer {
  background-color: #000000;
  height: 1em;
}

.modal-image {
  justify-content: center;
  width: 100%;
}

.modal-image .pt {
  max-width: 50vw;
  height: auto;
  max-height: 78vh;
}

.modal-image .ls {
  max-width: 75vw;
  height: auto;
  max-height: 78vh;
}

.col{ 
  height: auto; 
  background-color: #0f0f11; 
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  width: 100%;
} 

.col:nth-child(2){ 
  background-color: #0f0f11; 
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  width: 100%;
  height: auto;
} 

.grad {
  background: rgb(33,0,0);
  background: linear-gradient(180deg, rgba(33,0,0,1) 0%, rgba(79,0,0,1) 50%, rgba(0,0,0,1) 100%);
}

.about {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}

.about {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100vh;
}

.about a {
  text-decoration: none;
}

.about-container {
  display: flex;
  align-items: center;
  justify-content: center;
}

.text-container {
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center; /* Ensure text is centered */
}

.about p {
  text-transform: uppercase;
  font-size: 1em;
  font-weight: 500;
  max-width: 70%;
  color: #c6c6c6;
  padding: 1em;
  pointer-events: none;
}

.quote {
  color: #6d6d6d;
  font-weight: 300;
  font-size: 0.75em;
  font-style: italic;
  margin-top: 1.5em;
  margin-bottom: 1.5em;
}

.about h4 {
  text-transform: uppercase;
  color: #c6c6c6;
  font-size: 1em;
  padding-top: 1em;
  pointer-events: none;
}

.sp-logo-container {
  display: flex;
  flex-direction: row; /* Stack logos vertically */
  justify-content: center;
  align-items: center;
  gap: 7vw; /* Adjust space between logos */
  margin-top: 1.5em; /* Space between h4 and logos */
  flex-wrap: wrap; /* Allow items to wrap */
}

.sp-logo {
  width: auto; /* Adjust width as needed */
  height: 2em; /* Set a fixed height */
  object-fit: contain; /* Ensure logos fit within the set dimensions */
  margin-top: 25px;
}

.ssp-logo {
  width: 8em; /* Adjust width as needed */
  height: auto; /* Set a fixed height */
  object-fit: contain; /* Ensure logos fit within the set dimensions */
}

  .contact {
    display: flex;
    flex-direction: column; /* Arrange items vertically */
    align-items: center;
    justify-content: center;
    height: 100vh;
    width: auto;
    color: #c6c6c6;
  }
  
    .contact h2{
      text-transform: uppercase;
      font-size: 4em;
      color: #c6c6c6;
      padding: 1em;
      pointer-events: none;
    }


    .contact-container {
      display: flex;
      flex-direction: row;
      justify-content: center;
      align-items: center;
      gap: 7vw; /* Adjust space between logos */
      margin-top: 2.5em; /* Space between h4 and logos */
      flex-wrap: wrap; /* Allow items to wrap */
      padding-left: 2em;
      padding-right: 2em;
    }
    
    .contact-logo {
      width: auto; /* Adjust width as needed */
      height: 4em; /* Set a fixed height */
      object-fit: contain; /* Ensure logos fit within the set dimensions */
    }

    #kick {
      filter: saturate(0%); /* Default filter (no change) */
      transition: filter 0.3s ease-in-out; /* Smooth transition for the filter effect */
    }

      #kick:hover {
        filter: none;  /* Example filter to change color invert(52%) sepia(92%) saturate(1905%) hue-rotate(95deg) brightness(92%) contrast(95%); */
      }

      #twitch {
        filter: saturate(0%); /* Default filter (no change) */
        transition: filter 0.3s ease-in-out; /* Smooth transition for the filter effect */
      }
  
        #twitch:hover {
          filter: none;  /* Example filter to change color invert(52%) sepia(92%) saturate(1905%) hue-rotate(95deg) brightness(92%) contrast(95%); */
        }

        #insta {
          filter: saturate(0%); /* Default filter (no change) */
          transition: filter 0.3s ease-in-out; /* Smooth transition for the filter effect */
        }
    
          #insta:hover {
            filter: none;  /* Example filter to change color invert(52%) sepia(92%) saturate(1905%) hue-rotate(95deg) brightness(92%) contrast(95%); */
          }
        
          #twitter path {
            fill: #c6c6c6; /* Default fill color */
            transition: fill 0.3s ease-in-out; /* Smooth transition for the fill effect */
          }
          
          #twitter:hover path {
            fill: #000000; /* Change to the desired color on hover (example: Twitter blue) */
          }

          #email{
            fill: #c6c6c6; /* Default fill color */
            transition: fill 0.3s ease-in-out; /* Smooth transition for the filter effect */
          }

          #email:hover {
            fill: #8a0101; /* Default fill color */
          }
      
          




.creature img {
  position: absolute;
  height: 50vw;
  width: 50vw;
  right: 0;
  bottom: -326vh;
  opacity: 20%;
  background: none;
  pointer-events: none
}

.footer {
  font-size: 0.4em;
  font-weight: 400;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  height: 5vh;
  color: #6d6d6d;
  background: none;
  overflow: hidden;
}

.footer-text {
  display: block;
}

.footer-text p {
  line-height: 1.8em;
}
























/*** HEXAGON SIZING AND EVEN ROW INDENTATION *****************************************************************/
@media (min-width:1201px) { /* <- 5-4  hexagons per row */
	#hexGrid{
	  padding-bottom: 4.4%
	}
	.hex {
		width: 25%; /* = 100 / 4 */
	  }
	  .hex:nth-child(7n+5){ /* first hexagon of even rows */
		margin-left:12.5%;  /* = width of .hex / 2  to indent even rows */
	  }
  }
  
  @media (max-width: 1200px) and (min-width:901px) { /* <- 4-3  hexagons per row */
	#hexGrid{
	  padding-bottom: 5.5%;
	  font-size: 13px;
	}
	.hex {
	  width: 25%; /* = 100 / 4 */
	}
	.hex:nth-child(7n+5){ /* first hexagon of even rows */
	  margin-left:12.5%;  /* = 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%;
	  font-size: 14px;
    margin-bottom: 60px;
	}
	.hex {
	  width: 33.333%; /* = 100 / 3 */
	}
	.hex:nth-child(5n+4){ /* first hexagon of even rows */
	  margin-left:16.666%;  /* = width of .hex / 2  to indent even rows */
	}
  }

  @media (max-width: 900px) { 
    .redd-text h2 {
      font-size: 15vw;
    }

    .navcon {
      visibility: hidden;
    }
  
    }

    @media (max-width: 768px) {
      .sp-logo-container {
        flex-direction: column; /* Stack logos vertically */
        gap: 2em; /* Adjust space between logos for vertical stacking */
        margin-top: 2em;
      }
      
      .sp-logo, .ssp-logo {
        width: 100%; /* Ensure logos take full width in vertical layout */
        max-width: 200px; /* Adjust max width as needed */
        height: auto; /* Maintain aspect ratio */
        margin-top: 0px;
      }
  
      .contact-container {
        
        gap: 2em; /* Adjust space between logos for vertical stacking */
        margin-top: 1em;
      }
      
      .contact-logo {
        width: 100%; /* Ensure logos take full width in vertical layout */
        max-width: 100px; /* Adjust max width as needed */
        height: auto; /* Maintain aspect ratio */
        margin-top: 0px;
        padding: 0.5em;
      }
  
      .about {
        height: auto;
      }
  
      .about p {
        font-size: 0.75em;
        max-width: 75%;
      }
  

  
      .about h4 {
        font-size: 0.75em;
      }
  
      #kick {
        filter: none; /* Default filter (no change) */
      }
  
  
        #twitch {
          filter: none; /* Default filter (no change) */
        }
    
          #insta {
            filter: none; /* Default filter (no change) */
          }
            
            #twitter path {
              fill: #c6c6c6; /* Change to the desired color on hover (example: Twitter blue) */
            }
  
            #email {
              fill: #8a0101; /* Default fill color */
            }

    }
    
  
  @media (max-width: 600px) { /* <- 2-1  hexagons per row */
	#hexGrid{
	  padding-bottom: 11.2%;
	  font-size: 12px;
	}
	.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 */
	}

	#hex-title {
		font-size: 4vw;
	}
	#hex-subtext {
		font-size: 2.5vw;
	}

	.header-wrapper {
		align-items: center;
		justify-content: center;
	}

  .redd-text h2 {
		font-size: 20vw;
    padding-left: 0;
    padding-right: 0;
    padding-top: 1em;
    padding-bottom: 1em;
	}

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

  .contact-container {
    flex-direction: column;
    gap: 0.5em; /* Adjust space between logos for vertical stacking */
    margin-top: 5em;
    margin-bottom: 2em;
  }

  } 
  




 