:root {
   /* Palet warna e-reader */
   --ereader-default: #F5F5F5;
   /* abu-abu terang */
   --ereader-warm: #FAF3E0;
   /* krem lembut */
   --ereader-neutral: #F2F2F2;
   /* abu-abu netral */
   --ereader-sepia: #FFF8DC;
   /* cornsilk klasik */
   --ereader-dark: #000000;
   /* hitam pekat */
   --ereader-soft-dark: #121212;
   /* hitam keabu-abuan */

   /* Font */
   --ereader-font-serif: "Georgia", "Bookerly", serif;
   --ereader-font-sans: "Helvetica", "Verdana", sans-serif;
   --ereader-font-accessible: "OpenDyslexic", sans-serif;
}

.andika-regular {
   font-family: "Andika", sans-serif;
   font-weight: 400;
   font-style: normal;
   font-size: 1.1rem;
}

.andika-bold {
   font-family: "Andika", sans-serif;
   font-weight: 700;
   font-style: normal;
}

.andika-regular-italic {
   font-family: "Andika", sans-serif;
   font-weight: 400;
   font-style: italic;
}

.andika-bold-italic {
   font-family: "Andika", sans-serif;
   font-weight: 700;
   font-style: italic;
}

body {
   background-color: var(--ereader-sepia);
   /* default abu-abu terang */
   /* font-family: var(--ereader-font-sans); */
   /* nuansa buku */
   line-height: 1.5;
   /* spasi antar baris nyaman */
   margin: 1.2rem auto;
   max-width: 960px;
   /* lebar kolom mirip buku */
   padding: 0.5rem;
}

.site-header {
   position: fixed;
   top: 0;
   left: 0;
   right: 0;
   width: 100%;
   max-width: 960px;
   margin: 0 auto;
   z-index: 1000;
   background: rgba(255, 248, 220, 0.8);
   backdrop-filter: blur(10px);
   -webkit-backdrop-filter: blur(10px);
   border-bottom: 1px solid rgba(255, 255, 255, 0.3);
   padding: 1rem 1rem;
   box-sizing: border-box;
   border-bottom-left-radius: 10px;
   border-bottom-right-radius: 10px;
}

.nav-inner {
   margin-top: 3vh;
   display: flex;
   justify-content: space-between;
   align-items: center;
}

.menu-toggle {
   display: none;
   flex-direction: column;
   justify-content: center;
   align-items: center;
   gap: 5px;
   background: none;
   border: none;
   cursor: pointer;
   padding: 6px;
   z-index: 1100;
   border-radius: 6px;
   transition: background 0.2s;
}

.menu-toggle:hover {
   background: rgba(0, 0, 0, 0.06);
}

.menu-toggle span {
   display: block;
   width: 26px;
   height: 2.5px;
   background-color: #222;
   border-radius: 3px;
   transition: transform 0.35s ease, opacity 0.35s ease;
   transform-origin: center;
}

.nav-menu {
   display: flex;
   gap: 2rem;
}

.nav-menu a {
   text-decoration: none;
   color: black;
   font-weight: bold;
   font-size: 1.2rem;
   padding: 0.5rem;
   border-bottom: 2px solid transparent;
}

.nav-menu a:hover {
   color: blue;
   border-bottom: 2px solid blue;
}

@media screen and (max-width: 480px) {
   .site-header {
      max-width: 100%;
      border-radius: 0;
   }

   body {
      max-width: 100%;
   }

   .menu-toggle {
      display: flex;
   }

   /* Animasi hamburger → X */
   .menu-toggle.open span:nth-child(1) {
      transform: translateY(7.5px) rotate(45deg);
   }

   .menu-toggle.open span:nth-child(2) {
      opacity: 0;
      transform: scaleX(0);
   }

   .menu-toggle.open span:nth-child(3) {
      transform: translateY(-7.5px) rotate(-45deg);
   }

   .nav-menu {
      display: flex;
      flex-direction: column;
      gap: 0;
      position: absolute;
      top: 100%;
      left: 0;
      right: 0;
      background: rgba(255, 248, 220, 0.97);
      backdrop-filter: blur(12px);
      -webkit-backdrop-filter: blur(12px);
      border-top: 1px solid rgba(0, 0, 0, 0.08);
      border-bottom-left-radius: 12px;
      border-bottom-right-radius: 12px;
      padding: 0;
      max-height: 0;
      overflow: hidden;
      transition: max-height 0.35s ease, padding 0.3s ease;
      pointer-events: none;
   }

   .nav-menu.open {
      max-height: 300px;
      padding: 0.5rem 0;
      pointer-events: auto;
   }

   .nav-menu a {
      padding: 0.85rem 1.5rem;
      font-size: 1.1rem;
      border-bottom: 1px solid rgba(0, 0, 0, 0.06);
      display: block;
      width: 100%;
      box-sizing: border-box;
   }

   .nav-menu a:last-child {
      border-bottom: none;
   }

   .nav-menu a:hover {
      background: rgba(0, 0, 0, 0.04);
      border-bottom-color: transparent;
      color: black;
   }
}

.main {
   margin-bottom: 15vh;
   padding-top: 120px;
}

#judulutama {
   text-align: center;
   margin-bottom: 6vh;
   margin-top: 4vh;

}

#logo {
   margin: auto;
   display: block;
   width: 45%;
}


#blog-list {
   display: grid;
   grid-template-columns: repeat(2, 1fr);
   grid-gap: 2rem;
}

#blog-list a {
   color: black;
   text-decoration: none;
}

@media screen and (max-width: 480px) {
   #logo {
      width: 75%;
   }

   #blog-list {
      grid-template-columns: repeat(1, 1fr);
      padding: 1rem 2rem;
   }
}

/* From Uiverse.io by SachinKumar666 */
.card-blog {
   padding: 20px;
   display: flex;
   flex-direction: column;
   justify-content: space-between;
   align-items: left;
   /* width: 25vw; */
   height: 200px;
   background: var(--ereader-sepia);
   border-radius: 1rem;
   box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px,
      rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
   transition: all ease-in-out 0.3s;
}

.card-blog:hover {
   background-color: var(--ereader-warm);
   box-shadow: rgba(0, 0, 0, 0.09) 0px 2px 1px, rgba(0, 0, 0, 0.09) 0px 4px 2px,
      rgba(0, 0, 0, 0.09) 0px 8px 4px, rgba(0, 0, 0, 0.09) 0px 16px 8px,
      rgba(0, 0, 0, 0.09) 0px 32px 16px;
}

footer {
   display: flex;
   flex-wrap: wrap;
   justify-content: space-between;
   align-items: end;
   padding: 1rem;
   background-color: var(--ereader-sepia);
}