:root {
   --color-primary: #60BC55;
   --color-secondary: #DFFFDB;
   --color-tertiary: #000000;
   --color-white: #ffffff;
   --padding: 2rem;
   --padding-left: 4rem;
   --padding-right: 4rem;
   --padding-top: 1.5rem;
   --padding-bottom: 1.5rem;
   --margin: 2rem;
   --margin-left: 4rem;
   --margin-right: 4rem;
   --margin-top: 1.5rem;
   --margin-bottom: 1.5rem;
}

.hidden {
   display: none;
}

/* desktop condition */
@media (min-width: 768px) {
   .menu-mobile {
      display: none;
   }

   .menu-icon-mobile {
      display: none;
   }

   body {
      overflow: auto;
   }
}

.spacing-icon-right {
   width: 8rem;
   height: 8rem;
   background: var(--color-primary);
   margin-left: auto;
   border-top-left-radius: 6rem;
   border-bottom-left-radius: 2rem;
   box-sizing: border-box;
}

.spacing-icon-left {
   width: 8rem;
   height: 8rem;
   background: var(--color-primary);
   margin-right: auto;
   border-top-right-radius: 6rem;
   border-bottom-right-radius: 2rem;
   box-sizing: border-box;
}

.spacing-section-top {
   margin-top: 4rem;
}

.spacing-section-bottom {
   margin-bottom: 4rem;
}

.spacing-item-row-1 {
   margin-top: 1rem;
   margin-bottom: 1rem;
}

.spacing-item-row-2 {
   margin-top: 2rem;
   margin-bottom: 2rem;
}

.spacing-item-row-3 {
   margin-top: 3rem;
   margin-bottom: 3rem;
}

.row-horizonal {
   display: flex;
   flex-direction: row;
   justify-content: space-between;
}

.row-vertikal {
   display: flex;
   flex-direction: column;

}

.icon-fharhan {
   width: 2rem;
   height: 2rem;
   border-radius: 0.4rem;
   background: var(--color-primary);
   margin-right: 0.5rem;
}

* {
   font-family: "Poppins", sans-serif;
   font-style: normal;
   font-weight: 400;
}




* {
   box-sizing: border-box;
   margin: 0;
   padding: 0;
}

nav {
   /* background-color: red; */
   width: 100%;
   display: flex;
   justify-content: space-between;
   padding-left: var(--padding-left);
   padding-right: var(--padding-right);
   padding-top: var(--padding-top);
   padding-bottom: var(--padding-bottom);
   box-sizing: border-box;
}

nav .profile {
   display: flex;
   align-items: center;
}

nav .profile .profile-icon {
   width: 2rem;
   height: 2rem;
   border-radius: 0.1rem;
   background: var(--color-primary);
}

nav .profile .profile-text {
   margin-left: 0.5rem;
}

nav .menu a {
   margin-left: 0.5rem;
   text-decoration: none;
   color: var(--color-tertiary);
}

nav .menu i {
   margin-left: 2rem;
   color: var(--color-tertiary);
}


/* my information */
section.my-information {
   margin-left: var(--margin-left);
   margin-right: var(--margin-right);
   margin-top: var(--margin-top);
   margin-bottom: var(--margin-bottom);
}

section.my-information h2 {
   font-size: 2rem;
   font-weight: 600;
   color: var(--color-tertiary);
   text-align: center;
   font-size: 4rem;
   font-weight: 400;
}

section.my-information h2 span {
   color: var(--color-primary);
   font-weight: 700;
}

section.my-information article {
   display: flex;
   align-items: center;
   justify-content: center;
}

section.my-information p {
   font-size: 1.2rem;
   font-weight: 400;
   color: var(--color-tertiary);
   text-align: center;
   width: 50rem;
}

/* my tech stack */
section.my-tech-stack {
   margin-left: var(--margin-left);
   margin-right: var(--margin-right);

   background-color: var(--color-secondary);
   padding-top: 2rem;
   padding-bottom: 2rem;
   padding-left: 20rem;
   padding-right: 20rem;
   border-radius: 0.8rem;
   box-sizing: border-box;

   box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);

}

section.my-tech-stack h2 {
   font-size: 2rem;
   font-weight: 600;
   color: var(--color-tertiary);
   text-align: center;
}

section.my-tech-stack h2 span {
   color: var(--color-primary);
   font-weight: 700;
}

section.my-tech-stack article {
   font-size: 1.2rem;
   font-weight: 400;
   color: var(--color-tertiary);
}

section.my-tech-stack .tech-stack-item {
   display: flex;
}

section.my-tech-stack .tech-stack-item .text h3 {
   font-weight: 700;
   color: var(--color-tertiary);
}

/* my journey */
section.my-journey {
   margin-left: var(--margin-left);
   margin-right: var(--margin-right);
   margin-top: var(--margin-top);
   margin-bottom: var(--margin-bottom);
   display: flex;
   flex-direction: row;
   justify-content: space-between;
}

section.my-journey .my-journey-image {
   width: 50%;
   height: 100%;
   display: flex;
   justify-content: flex-end;
}

section.my-journey .my-journey-image img {
   width: 80%;
   height: 100%;
}

section.my-journey .my-journey-text {
   width: 50%;
   height: 100%;
   padding-left: 2rem;
   box-sizing: border-box;
}

section.my-journey .my-journey-text .my-journey-icon {
   font-size: 2rem;
   font-weight: 600;
   color: var(--color-primary);
}

section.my-journey .my-journey-text .my-journey-item {
   display: flex;
}


section.my-portofolio {
   margin-left: var(--margin-left);
   margin-right: var(--margin-right);
   margin-top: var(--margin-top);
   margin-bottom: var(--margin-bottom);
}

section.my-portofolio article {
   display: flex;
   justify-content: space-around
}

section.my-portofolio h2 {
   font-size: 2rem;
   font-weight: 600;
   color: var(--color-tertiary);
   text-align: center;
}


section.my-portofolio .portofolio-item {
   display: flex;
}

section.my-portofolio .portofolio-item .portofolio-content {
   margin-left: 1rem;
}


section.my-portofolio .portofolio-item .portofolio-item-icon {
   width: 2rem;
   height: 2rem;
   border-radius: 0.4rem;
   background: var(--color-primary);
   margin-right: 0.5rem;
}

section.my-portofolio .portofolio-item .portofolio-content .portofolio-item-image {
   margin-top: 1rem;
}

section.my-portofolio .portofolio-item .portofolio-content .portofolio-item-image img {
   width: 10rem;
   height: 10rem;
}



footer {
   background-color: var(--color-primary);
   padding-top: 2rem;
   padding-bottom: 2rem;
   padding-left: 20rem;
   padding-right: 20rem;
   box-sizing: border-box;
   display: flex;
   justify-content: center
}



@media (max-width: 768px) {
   nav .menu {
      display: none;
   }

   nav .menu-icon-mobile {
      display: block;
   }

   nav {
      padding-left: 1rem;
      padding-right: 1rem;
      box-sizing: border-box;
   }



   nav .profile .profile-text h1 {
      font-size: 1rem;
      color: var(--color-tertiary);
   }

   nav .profile .profile-icon {
      width: 2rem;
      height: 2rem;
      background-color: var(--color-primary);
   }

   .menu-mobile {
      background-color: white;
      width: 100%;
      height: 100%;
      position: fixed;
      top: 10;
      left: 0;
      z-index: 100;
      flex-direction: column;
      padding: 1rem;
      display: none;
   }

   .menu-mobile .menu-mobile-item {
      padding-top: 1rem;
      padding-bottom: 1rem;
   }

   .menu-mobile .menu-mobile-item a {
      text-decoration: none;
      color: var(--color-tertiary);
   }

   /* my information */
   section.my-information {
      margin-left: 1rem;
      margin-right: 1rem;
   }

   section.my-information h2 {
      font-size: 1.5rem;
      font-weight: 600;
      color: var(--color-tertiary);
      text-align: left;
   }
 
   section.my-information article  {
      margin-top: 1rem;
      margin-bottom: 1rem;
   }

   section.my-information p {
      text-align: left;
      font-size: 0.8rem;
   }

   section.my-information p b {
      font-weight: 600;
      color: var(--color-tertiary);
   }

   .spacing-icon-right {
      width: 4rem;
      height: 4rem;
      background: var(--color-primary);
      margin-left: auto;
      border-top-left-radius: 6rem;
      border-bottom-left-radius: 2rem;
      box-sizing: border-box;
   }
   
   .spacing-icon-left {
      width: 4rem;
      height: 4rem;
      background: var(--color-primary);
      margin-right: auto;
      border-top-right-radius: 6rem;
      border-bottom-right-radius: 2rem;
      box-sizing: border-box;
   }

 
   section.my-tech-stack {
      
      background-color: var(--color-secondary);
      padding-top: 2rem;
      padding-bottom: 2rem;
      padding-left: 2.4rem;
      padding-right: 2.4rem;
      border-radius: 0.8rem;
      box-sizing: border-box;
      box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
      width: 90%;
      margin-top: 2rem;
      margin-bottom: 2rem;
      margin-left: 1rem;
      margin-right: 1rem;
   
   }

   section.my-tech-stack h2 {
      font-size: 1rem;
      font-weight: 600;
      color: var(--color-tertiary);
      text-align: center;
   }
   
   section.my-tech-stack h2 span {
      color: var(--color-primary);
      font-weight: 700;
   }
   
   section.my-tech-stack article {
      font-size: 0.6rem;
      font-weight: 400;
      color: var(--color-tertiary);
   }

   .icon-fharhan {
      width: 1rem;
      height: 1rem;
      border-radius: 0.4rem;
      background: var(--color-primary);
      margin-right: 0.5rem;
   }

   .spacing-section-bottom {
      margin-bottom: 0rem;
   }

   /* my journey */
section.my-journey {
   display: block;
   margin: 0;
   padding: 0.2rem;
   box-sizing: border-box;
}

section.my-journey .my-journey-text h2 {
   font-size: 1rem;
   font-weight: 600;
   color: var(--color-tertiary);
   margin-top: 1.4rem;
}

section.my-journey .my-journey-image {
   width: 100%;
   height: 100%;
   display: flex;
   justify-content: flex-end;
   margin-top: 2rem;
   margin-bottom: 2rem;
}

section.my-journey .my-journey-image img {
   width: 100%;
   height: 100%;
}

section.my-journey .my-journey-text {
   width: 100%;
   height: 100%;
   box-sizing: border-box;
}

section.my-journey .my-journey-text .my-journey-icon {
   font-size: 2rem;
   font-weight: 600;
   color: var(--color-primary);
}

section.my-journey .my-journey-text .my-journey-item {
   display: flex;
   
}


section.my-portofolio {
   margin-top: 2rem;
   margin-bottom: 2rem;
   margin-left: 1rem;
   margin-right: 1rem;
}

section.my-portofolio article {
   display: block;
}

section.my-portofolio h2 {
   font-size: 2rem;
   font-weight: 600;
   color: var(--color-tertiary);
   text-align: center;
}


section.my-portofolio .portofolio-item {
   display: flex;
   justify-content: center;
}

section.my-portofolio .portofolio-item .portofolio-content {
   margin-left: 1rem;
}


section.my-portofolio .portofolio-item .portofolio-item-icon {
   width: 2rem;
   height: 2rem;
   border-radius: 0.4rem;
   background: var(--color-primary);
   margin-right: 0.5rem;
}

section.my-portofolio .portofolio-item .portofolio-content .portofolio-item-image {
   margin-top: 1rem;
}

section.my-portofolio .portofolio-item .portofolio-content .portofolio-item-image img {
   width: 10rem;
   height: 10rem;
}



footer {
   margin-top: 2rem;
   padding-left: 1rem;
   padding-right: 1rem;
   box-sizing: border-box;
   text-align: center;
}

   


}