/* style.css */
* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  
}

/* body{
  display: none;
} */

@font-face {
      font-family: 'storemedtegn'; /*a name to be used later*/
      src: url(fonts/StoreBokstaverMedTallOgTegn40ls-Regular.otf) ; /*URL to font*/
}

@font-face {
      font-family: 'storemedallebokstaver'; /*a name to be used later*/
      src: url(fonts/StoreBokstaverMedTegnTekstUnder-Regular.woff2) ; /*URL to font*/
    }

@font-face {
    font-family: 'overskrifter'; /*a name to be used later*/
    src: url(fonts/FineschmekkaFontFerdy-Regular.otf) ; /*URL to font*/

}


@font-face {
    font-family: 'handskrift'; /*a name to be used later*/
    src: url(fonts/SmaBokstaverFerd-Regular.otf) ; /*URL to font*/
}

@font-face {
    font-family: 'plussOgMinus'; /*a name to be used later*/
    src: url(fonts/ComicRelief-Regular.ttf) ; /*URL to font*/
}

body {
  font-family: 'handskrift', sans-serif;
  margin: 0;
  padding: 0;
  background-color: #f3ede1;
  font-weight: 100;
}

h1, h3, h4, h5, h6 {
  font-family: 'overskrifter', sans-serif;
  font-weight: 500;
}

h3, h4, h5, h6 {
  font-family: 'storemedtegn','storemedallebokstaver',  sans-serif;
  font-weight: 500;
  font-size: 5rem;
  padding-bottom: 2vh;
}

.product-page {
  display: flex;
  flex-wrap: wrap;
  height: 150vh;
  width: 100vw;
  background-color: #f3ede1;
}


/* Image gallery */
.image-gallery {
  position: relative;
  flex: 1 1 50%;
  width: 35vw;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 90vh;
  padding-left: 5vw;
  padding-right: 5vw;
  margin-top: 5vh;
  overflow: hidden;
}

.image-gallery img {
  width: auto;
  height: 100vh;
  object-fit: cover;
  padding-top: 5vh;
}

.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background-color: rgba(0, 0, 0, 0);
  border: none;
  font-size: 2rem;
  padding: 10px;
  cursor: pointer;
  color: black;
}

.arrow.left { left: 22%; }
.arrow.right { right: 22%; }

/* Product info */
.product-info {
  flex: 1 1 40%;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 50vw;
  padding-right: 5vw;
  transform: translate(-10%);
  text-align: center;
}

.product-info h3{
  font-size: 7rem;
  line-height: 0.3;
}

.product-title {
  font-size: 7rem;
  margin-bottom: 20px;
}

.product-description {
  font-size: 3rem;
  line-height: 1.5;
  margin-bottom: 20px;
  line-height: 60%;
  text-align: center;
}

#sold_out{
  display: block;
  background-color: gray;
  color: white;
  padding: 15px;
  border: none;
  font-size: 1rem;
  cursor: pointer;
  width: 60%;
  margin-left: 20%;
  transition: background 0.3s;
  font-family: 'storemedtegn','storemedallebokstaver';
  font-weight: 500;
  font-size: 6rem;
  height: 6vh;
  overflow: hidden;
  border-radius: 10px;
}

#sold_out p {
    position: relative;
    top: -40px;
}

#add_to_cart {
  background-color: #107F5D;
  color: white;
  padding: 15px;
  border: none;
  font-size: 1rem;
  cursor: pointer;
  width: 60%;
  margin-left: 20%;
  transition: background 0.3s;
  font-family: 'storemedtegn','storemedallebokstaver';
  font-weight: 500;
  font-size: 6rem;
  height: 6vh;
  overflow: hidden;
  border-radius: 10px;
  display: none;
}
#add_to_cart p {
    position: relative;
    top: -40px;
}

#add_to_cart:hover {
  background-color: #0a533d;
}

.more-info {
    height: 30vh; /* Adjust based on content */
    width: 100vw;
}
.more-info h3 {
    font-size: 8rem;
    padding: 5vh 5vw 2vh 5vw;
}
.more-info p {
    font-size: 3rem;
    padding: 0 5vw 5vh 5vw;
    line-height: 0.7;
}







#navbar {
    position: sticky;   /* sticks when scrolling */
    top: 0;             /* stick to top */
    z-index: 1000;      /* make sure it’s above other content */
    background: #6d746e;
    box-shadow: 0 2px 6px rgba(0,0,0,0.1);
    padding: 10px 40px;

    display: flex;
    justify-content: center; /* center items horizontally */
    align-items: center;
    font-family: 'overskrifter';
    font-weight: 500;
    height: 12vh;
    
}

#navbar img {
    height: 14vh; /* Adjust based on your design */
    transform: translateY(11%);
}

#cart{
    position: absolute;
    right: 5vw;
}

#cart img {
    height: 7vh;
}

#dropdown {
    position: absolute;
    right: 0;
    top: 12vh;
    height: 100vh;
    width: 100vw;
    background-color: rgba(10, 10, 10, 0.7);
    color: whitesmoke;

    font-size: 3rem;
    padding-left: 5vw;
    overflow-y: scroll;
    display: none;
      /* Hidden by default */
}

#dropdown_return {
    position: absolute;
    width: 70vw;
    height: 100vh;
    left: 0;
    top: 0;
}

#dropdown_content {
    position: absolute;
    width: 30vw;
    right: 0;
    top: 0;
    height: 100vh;
    padding: 20px;
    background-color: rgba(10,10,10,0.9);
    overflow-y: scroll;
}

#dropdown_content h3 {
    font-weight: 500;
    width: 100%;
    text-align: center;
}

#checkout_button {
    background-color: #4f5b52;
    color: white;
    border: none;
    padding: 10px 20px;
    font-size: 5rem;
    cursor: pointer;
    font-family: 'storemedtegn', 'storemedallebokstaver',sans-serif;
    font-weight: 500;
    font-weight: 500;
    margin-top: 20px;
    border-radius: 10px;
    width: 15vw;
    height: 5vh;
    margin-top: 5vh;
    transform: translateX(50%);
}

#checkout_button p {
    transform: translateY(-50%);
    
}

.cart-item {
    border-bottom: 1px solid #ccc;
    padding: 10px 0;
    font-family: 'storemedtegn','storemedallebokstaver', sans-serif;
    font-weight: 500;
    font-size: 6rem;
    margin-left: 1vw;
    display: grid;
    grid-template-columns: 7fr  1fr 1fr 1fr 1fr 1fr 1fr;
}

.item-name {
    grid-column: 1/8;
}

.amount_button {
    display: inline-block;
    width: 2rem;
    height: 2rem;
    text-align: center;
    cursor: pointer;
    font-size: 2rem;
    user-select: none; /* Prevent text selection */  
    font-family: 'plussOgMinus', sans-serif ;
    margin-top: 3vh;
}

.amount_button p {
    transform: translateY(-5%);
}


.item-details {
    font-size: 5rem;
    padding-left: 5vw;
    line-height: 0.3;
    padding-right: 3vw;
}

#top_stripe {
    width: 100vw;
    height: 3vh;
    background-color: #4f5b52;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
    font-family: 'storemedtegn','storemedallebokstaver', sans-serif;
    font-weight: 500;
    font-size: 4rem;
}

#top_stripe p {
    transform: translateY(-20%);
}





.size-options {
  display: flex;
  gap: 10px;
  margin: 20px 0;
  justify-content: center;
  font-family: 'storemedtegn','storemedallebokstaver', sans-serif;
  font-size: 7rem;
  font-weight: 100;
}
.size-block {
  width: 5vh;
  height: 5vh;
  display: flex;
  align-items: center;
  justify-content: center;
  border: 2px solid #ccc;
  border-radius: 6px;
  cursor: pointer;
  user-select: none;
  transition: 0.2s;
}

.size-block p {
    transform: translateY(-20%);
}
.size-block:hover {
  border-color: #888;
}
.size-block.selected {
  border-color: #107F5D;
  background-color: #107F5D;
  color: white;
}


#authForm {
    padding-top: 2vh;
    display: grid;
    grid-template-columns: 1fr 1fr;
    grid-template-rows: 1fr 1fr;
    gap: 1vw;
    margin-right: 5vw;
}

#status {
    font-family: 'plussOgMinus', sans-serif;
    font-weight: 500;
    font-size: 1rem;
    color: #f3ede1;
    padding-top: 15vh;
}

#logoutBtn p{
    transform: translateY(-50%);
}
#logoutBtn {
    margin-top: 2vh;
}

#userdiv{
    padding-left: 2vw;
}

#userdiv button {
    background-color: #4f5b52;
    color: white;
    border: none;
    padding: 10px 20px;
    font-size: 4rem;
    cursor: pointer;
    font-family: 'storemedtegn', sans-serif;
    font-weight: 500;
    border-radius: 10px;
    height: 4vh;
}

#userdiv button p{
    transform: translateY(-50%);
}




#takk{
  font-family: 'overskrifter'; 
  width: 100vw;
  height: 70vh;
  display: flex;
  align-items: center;
  justify-content: center; 
  font-size: 10rem;     
}





/* Mobile layout */
@media (max-width: 900px) {
  .product-page {
    flex-direction: column;
    flex-wrap: nowrap;
    padding-right: 5vw;
    width: 100vw;
    height: auto;
  }

  .product-info {
    width: 100vw;
    padding: 0 5vw 5vw 5vw;
    transform: translate(0);
  }

  .image-gallery {
    width: 100vw;
    min-height: 70vh;
  }

  .image-gallery img {
    width: 100vw;
    height: auto;
  }

  .arrow.left { left: 1%; }
    .arrow.right { right: 5%; }

  .add-to-cart {
    margin: 15px 0;
  }

  .product-description {
    padding-right: 0;
  }
  .product-title {
    font-size: 25vw;
    margin-bottom: 5vw;
    margin-top: 3vh;
    text-align: center;
  }

  .product-info {
    padding: 5vw;
    width: 100%;
  }

  .add-to-cart {
    width: 90vw;
  }

  .more-info{
    height: auto;
  }


  #dropdown_content {
        width: 100vw;
    }

    #checkout_button {
        width: 90vw;
    }
    #dropdown_return {
        display: none;
    }


    .cart-item {
        grid-template-columns: 8fr  1fr 1fr 1fr 1fr 1fr 1fr;
    }

    .item-name {
        grid-column: 1/8;
    }

    #checkout_button  {
        transform: translateX(0%);
    }
    #takk{
      font-family: 'overskrifter'; 
      width: 100vw;
      height: 70vh;
      display: flex;
      align-items: center;
      justify-content: center; 
      font-size: 2rem;     
    }
}