html{
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  height: 100%;
  overflow-x: hidden;
  width: 100%;
}

body{
  background-color: white;
  height: 100vh;
  font-family: Poppins, sans-serif;
  color: black;
  overflow-x: hidden;
  width: 100%;
  margin: 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 60px;
  /*padding: 50px;*/
  
}
/*----------- nav ------------*/

.menu-item{
  color: white;
  background-color: #c1272d;
  border: 4px solid black;
  width: 70%;
  padding: 12px 0;
  /*font-size: 1rem;
  font-weight: bolder;*/
  transform: translate(-8px, -8px);
  filter: drop-shadow(8px 8px black);
}

.menu-item:hover{
  transform: translate(0px, -0px);
  filter: drop-shadow(0px 0px);
}

.offscreen-menu{
  background-color: white;
  color: black;
  height: 100vh;
  width: 100%;
  max-width: 450px;
  position: fixed;
  top: 0;
  right: -455px;
  border-left: 4px solid #c1272d;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  text-align: center;
  /*font-size: 2rem;*/
  /*font-weight: bolder;*/
  transition: right .3s ease;
  gap: 1%;
  z-index: 1;
}

.offscreen-menu::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;  
  height: 100%;
  width: 4px;  
  background-color: black;  
}
.offscreen-menu::after {
  content: "";
  position: absolute;
  top: 0;
  left: -8px;  
  height: 100%;
  width: 4px;  
  background-color: black;  
}

.offscreen-menu.active{
  right: 0px;
}

.menu-btn {
  display: flex;
  flex-direction: column; /* Stack the buttons vertically */
  align-items: center;
  width: 100%;
  gap: 1%; /* Add spacing between each button */
}

.menu-icons{
  display: flex;
  flex-direction: row;
  gap: 10%;
  margin-left: -16px;
}

nav{
  display: flex;
  padding: 1rem;
  background-color: #c1272d;
  border-bottom: 4px solid black;
}

.ham-menu{
  width: 40px;
  height: 50px; 
  margin-left: auto;
  position: relative;
  margin-right: 20px;
  cursor: pointer;
}

.ham-menu span{
  height: 4px;
  width: 100%;
  background-color: white;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  
}

.ham-menu span:nth-child(1){
  top: 35%;
  transition: .3s ease;
  z-index: 2;
}
.ham-menu span:nth-child(2){
  top: 65%;
  transition: .3s ease;
  z-index: 2;
}

.ham-menu span:nth-child(3){
  top: 35%;
  transition: .3s ease;
  border: 4px solid black;
  z-index: 1;
}
.ham-menu span:nth-child(4){
  top: 65%;
  transition: .3s ease;
  border: 4px solid black;
   z-index: 1;
}

.ham-menu.active span:nth-child(1){
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: .3 ease;
}
.ham-menu.active span:nth-child(2){
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  transition: .3 ease;
}

.ham-menu.active span:nth-child(3){
  top: 50%;
  transform: translate(-50%, -50%) rotate(45deg);
  transition: .3 ease;
}
.ham-menu.active span:nth-child(4){
  top: 50%;
  transform: translate(-50%, -50%) rotate(-45deg);
  transition: .3 ease;
}

.logo-menu{
  height: 60px;
}


/*----------- end of nav ------------*/

/*
*{
  border: 1px solid #c1272d;
}
*/

/*----------- Linktree ------------*/

.btn-container{
  display: grid;
  margin: 40px 0 300px 0;
  gap: 1em;
}

.btn{
  justify-self: center;
  align-self: center;
  width: 65%;
  margin: 12px;
  background-color: #c1272d;
  border: 4px solid black;
  transform: translate(-8px, -8px);
  filter: drop-shadow(8px 8px black);
  cursor: pointer;
}

.btn:hover{
  transform: translate(0, 0);
  filter: drop-shadow(0px 0px black);
}



#btn-1{
  grid-row-start: 1;
  grid-row-end: 1;
}

#btn-2{
  grid-row-start: 2;
  grid-row-end: 2;
}

#btn-3{
  grid-row-start: 3;
  grid-row-end: 3;
}


.home-img{
  height: 120px;
  width: 120px;
  display: block;
  margin-left: auto;
  margin-right: auto;
  padding-top: 80px;
  padding-bottom: 24px;
}


/*----------- Linktree End ------------*/


/*
.img{
  height: 80px;
  width: 80px;
  border-radius: 40px;
  align-self: center;
  background-color: black;
  margin-left: auto;
  margin-right: auto;
  margin-top: 20px;
}*/
/*
h1{
  
  text-align: center;
}

h3{
  text-align: center;
}
*/
#caption{
  text-align: center;
}

a{
  text-decoration: none;
  color: white;
  cursor: pointer;
}

.strong{
  font-family: "ff-brokenscript-bc-web", sans-serif;                                               
}

/* Gallery */
.ilst{
    width: 100%;
    margin-bottom: 2em;
}

.ilst:hover{
  transform: scale(1.1);
  transition: transform 0.5s ease;
}

.gallery {
    columns: 300px;
}

/*footer*/

footer{
  display: flex;
  flex-direction: column;
  padding: 20px;
  gap: 20px;
  background-color: #c1272d;
  margin-bottom: 0;
  color: white;
  border-top: 4px solid black;
  text-align: center;
}

footer h1{
  text-align: left;
}

.footer-c2a{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding: 0 12px 12px 12px;
}


footer .btn{
  background-color: white;
  color: black;
  width: 360px;
}

.icons{
  display: flex;
  flex-direction: row;
  gap: 8vw;
  justify-content: center;
  align-items: center;
}

.fa{
  padding: 20px;
  font-size: 20px !important;
  text-align: center;
  text-decoration: none;
  margin: 5px 2px;
  border: 4px solid black;
  border-radius: 50%;
  width: 17px;
  background-color: white;
  color: black;
  transform: translate(-8px, -8px);
  filter: drop-shadow(8px 8px);
  cursor: pointer;
}

.fa:hover{
  transform: translate(0, 0);
  filter: drop-shadow(0px 0px);
}

.fa-behance{
 padding-left: -px; 
}

footer p{
  color: white;
}


/*home*/

/*hero start*/
.hero {
  height: 90vh;
  margin-top: 0;
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  align-items: center;
  gap: 60px;
  padding: 0 8%;
}

.hero-txt {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: center;
  gap: 2px;
}

.hero-img-cont {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  width: 32vw;
  height: 32vw;
  max-height: 320px;
  max-width: 320px;
  aspect-ratio: 1 / 1;
  border: 4px solid black;
  border-radius: 50%;
  background-color: white;
  transform: translate(-16px, -16px);
  filter: drop-shadow(16px 16px black);
  margin: 0 8vw 0 0;
}

.hero-img-cont:hover{
  transform: translate(0px, 0px);
  filter: drop-shadow(0px 0px black);
}


.hero-img{
  width: 100%;
  margin: 0;
  
}

.hero-header{
  margin: 0;
  font-size: 6em;
  text-align: left;
}

.hero-tagline{
  margin: 0;
  font-size: 3em;
  font-weight: 200;
}
/*hero end*/
/*about*/

.about{
  width: 70vw;
  align-self: center;
  justify-self: center;
  margin-bottom: 20px;
  align-items: center;
  justify-content: center;
}

.about-txt{
  width: 70vw;
  font-size: 24px;
}

.about-btns{
  display: flex;
  flex-direction: row;
  width: 70%;
  align-items: center;
  justify-content: center;
  padding-left: 240px;
  padding-right: 240px;
}


/*about end*/
/*brands*/
.brands-container{
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  gap: 10%;
  padding: 0 10%;
  margin: 40px 0;
}

.brands{
  display: flex;
  height: 120px;
  width: 120px;
  align-items: center;
  justify-content: center;
 
}

.brand-logo{
  width: 100%;
   -webkit-filter: grayscale(100%); /* Safari 6.0 - 9.0 */
    filter: grayscale(100%);
  opacity: .3;
  transition: 0.5s ease;
}

.brand-logo:hover{
  filter: grayscale(0%);
  opacity: 1;
}


/*brands*/
.home-item{
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 40px;
  margin-top: 80px;
  
}

/* home gallery */
.home-gallery{
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center ;
  margin-bottom: 24px;
}

.home-gallery .ilst{
  height: 200px;
  width: auto;
  margin: 8px;
  align-items: center;
  columns: 100px;
}

.home-item .btn{
  /*max-width: 40% !important;*/
  width: 36%;
  text-align: center;
}

/* home gallery end */

/*home case study start */

.case-container{
  display: flex;
  flex-direction: row;
  width: 70vw;
  gap: 40px;
  justify-items: start;
  padding: 20px;
  background-color: white;
  cursor: pointer;
  transition: filter 0.2s;
  
  
}

.case-container:hover{
  outline: 4pt solid black;
  /*filter: drop-shadow(0 8px 8px lightGray);*/
}

.img-case-container{
  /* background-image: url('https://cdn.glitch.global/af5ef899-75df-45df-8858-9e27757b286d/RED.svg?v=1730977741571');
  background-repeat: no-repeat;
  background-size: 66%;
  background-position: center; */
  background-color: #03002D;
  width: 200px !important;
  height: 200px !important;
  flex-shrink: 0;
  display: inline-block;
  overflow: hidden;
  
  display: flex;
  justify-content: center;
  align-items: center;
  
}

.img-case{
  height: 100%;
}

.txt-case{
  color: black;
}

/*home case study end */

/* home hustles */

.hustle-gallery{
  display: flex;
  flex-direction: row;
  
  margin-bottom: 40px;
  gap: 20px;
}

.hustle-card{
  display: flex;
  flex-direction: column;
  justify-items: center;
  align-content: center;
  
  background-color: white;
  width: 200px;
  padding: 16px;
  cursor: pointer;
  transition: filter 0.2s;
  color: black;
}

.hustle-card:hover{
  outline: 4pt solid black;
  /*filter: drop-shadow(0 8px 8px lightGray);*/
}

.img-hustle{
  display: flex;
  flex-direction: column;
  height: 200px;
  width: 200px;
}

.huste-img{
  width: 100%;
  align-self: center;
}

/* home hustles end*/

/* home end */
/* contact */


.container{
  display: flex;
  flex-direction: column;
  width: 80vw;
  padding: 5% 10%; 
}

form h1{
  font-size: 3em;
}

#status-message-container{
  padding: 0 12%;
  margin-top: -60px;
  font-weight: 600;
  font-size: 32;
  
}

input{
  border: none;
  border-bottom: 2pt solid black;
  padding: 2px 1px;
}

#message{
  border: none;
  border-bottom: 2pt solid black;
  padding: 2px 1px;
}

#submit{
  width: 120px;
  margin-top: 40px;
  justify-self: right;
  align-self: flex-end;
  text-align: center;
  font-size: 1.5em;
  font-weight: 600;
  background-color: #c1272d;
  border: 4px solid black;
  padding: 8px 12px 8px 12px;
  color: white;
  transform: translate(-8px, -8px); 
  cursor: pointer;
  box-shadow: 8px 8px black;
}

#submit:hover{
  transform: translate(0px, 0px);
   box-shadow: 0px 0px black;
}

.contact-mail{
  padding-left: 10%;
  color: black;
}

.contact-mail strong{
  color: #c1272d;
  cursor: pointer;
}

.contact-mail strong:hover{
  
  text-decoration: underline;
}

/* Cases Page */

.case-stack{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 80%;
  align-self: center;
  margin: auto;
  gap: 40px;
}




/*responsive*/
@media only screen and (max-width: 600px) {
  main{
    padding: 10px;
  }
  
  .hero {
    flex-direction: column;
    gap: 0px;
    justify-items: space-around;
    align-content: center;
    padding: 10px 20px;
  }
  
  .hero-header{
  font-size: 4em;
  text-align: center;
}

.hero-tagline{
  font-size: 2em;
  text-align: center;
}
  
  .hero-img-cont{
    margin: 100px 0 0 0;
    padding-top: 60px;
    height: 240px;
    width: 240px;
    max-height: 180px;
    aspect-ratio: 1 / 1 !important;
  }

  .about-txt{
    font-size: 16px;
  }

  .about-btns{
    flex-direction: column;
    padding-left: 0;
    padding-right: 0;
    width: 100%;
  }

  .home-item .btn{
    width: 70% !important;
    max-width: none;
  }
  
  .case-container{
    flex-direction: column;
    gap: 2px;
  }

  .home-gallery{
    width: 100%;
    justify-content: flex-start;
    align-items: flex-start;
    padding: 0 20px;

    overflow-x: scroll;
    scroll-behavior: smooth;
    scroll-snap-type: x mandatory;
    -webkit-overflow-scrolling: touch; /* for smoother scrolling on iOS */
    cursor: grab;
  }

  .hustle-gallery{
    flex-direction: column;
  }
}