:root {
  font-synthesis: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;

  --color-purple: rgb(107,72,237);
  --color-bg: rgb(16,16,16);
  --color-green: rgb(183,231,5);
  --color-white: rgb(253,253,253);
}

* {
  box-sizing: border-box;
}

body {
  background: var(--color-bg);
  color: var(--color-white);
}

@font-face {
  font-family: 'Satoshi';
  src: url("../fonts/Satoshi-Regular.otf") format("opentype");
}

.secondary-font {
  font-family: 'Bricolage Grotesque', sans-serif !important;
  font-variation-settings: "wdth" 100;
}

.primary-font {
  font-family: 'Satoshi', sans-serif;
  line-height: 1.5;
  letter-spacing: 1px;
}

button, #menuBtn {
  cursor: pointer;
}

h1 {
  color: var(--color-white);
  font-weight: 700;
}

section {
  width: 100%;
}

.section-padding {
  padding-inline: 10%;
}




/* hero section */
.hero-section{
  height: 80vh;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  overflow: hidden;
  gap: 20px;
  position: relative;
}

.arrow {
  position: absolute;
  top: -200px;
  left: -200px;
}

.arrow-2 {
  position: absolute;
  bottom: -300px;
  right: -80px;
}

.hero-text {
  font-size: 90px !important;
}

.grow::before {
  content: "";
  width: 250px;
  height: 100px;
  background: var(--color-green);
  position: absolute;
  left: 40px;
  z-index: -1;
  transform: rotate(-5deg);
}

.cta {
  height: 70px;
  width: 200px;
  justify-content: center;
}


/* community  grid section */
.csm-card {
  overflow: hidden;
  position: relative;
}

.stack-img {
  scale: 1.3;
}

.cyber-img {
  left: -40px;
  top: -10px;
}

.cloud-img {
  top: -20px;
  right: -30px;
  transform: rotate(10deg);
}

.ui-image {
  
  top: -40px;
  right: -40px;
  transform: rotate(7deg);
}



/* form contianers */
.form-container {
  width: 100%;
  height: 100svh;
}






/* login form */
.glass-effect {
  background: rgba(255, 255, 255, 0.02);
  border-top: 1px solid  rgba(255, 255, 255, 0.2);
  border-left: 1px solid rgba(255, 255, 255, 0.15);
  border-bottom: 1px solid rgba(255, 255, 255, 0.01);
  border-right: 1px solid rgba(255, 255, 255, 0.02);
  backdrop-filter: blur(20px);
}

input, textarea {
  border: 1px solid rgba(255, 255, 255, 0.2);
  background: none;
}

.back {
  top: 50px;
  right: 50px;
}




/* members */
.mem

.member-card {
  padding: 20px;
}




/* events  */




/* responsive style for smaller screens */
@media (max-width: 700px) {
  .section-padding, 
  #members-container
  {
    padding-inline: 5%;
  }

  .hero-section {
    height: 100vh;

  }

  .hero-text {
    text-align: start;
    font-size: 72px !important;
    line-height: 90px !important;
  }

  .main-text {
    padding-block: 19rem;
  }

  .hero-text span:last-child::before {
    scale: .8;
    left: -20px;
  }

  #menu {
    position: absolute;
    top: 80px;
    width: 100%;
    height: 560px;
    left: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    background: var(--color-bg);
    height: 320px;
    z-index: 1000;
    padding-top: 2rem;
    transition: .3s ease-in-out;
    gap: 24px;
  }

  .arrow {
    width: 500px;
    scale: .4;
    transform: rotate(40deg);
    top: -260px;
    left: -180px;
  }

  .arrow-2 {
    width: 500px;
    scale: .4;
    right: -180px;
    bottom: -240px;
    transform: rotate(-10deg);
  }

  /* grid */
  .cyber-text {
    margin-top: 120px;
  }

  .resource-body-text {
    width: 100%;
  }

  #backBtn {
    top: 20px;
    right: 20px;
  }

  .event-section  {
    width: auto;
    height: auto;
  }

  #event-arrow1-svg {
    scale: .4;
    left: -220px;
    top: -240px;
    transform: rotate(20deg);
  }

  #event-arrow2-svg {
    scale: .4;
    top: 370px;
    right: -220px;;
  }

  .event-container > .primary-font{
    width: auto;
  }

  .form-container {
    padding: 5%;
  }

  #signupForm {
    height: auto;
  }

  .main-form {
    margin-top: 100px;
  }

} 

@media (min-width: 720px) and (max-width: 1080px) {
  .hero-text {
    font-size: 80px;
  }

  .arrow {
    width: 500px;
    transform: rotate(10deg);
  }

  .arrow-2 {
    width: 500px;
    bottom: -180px;
  }
}