      @import url('https://fonts.googleapis.com/css2?family=Jua&display=swap');

      * {
          margin: 0;
          padding: 0;
          box-sizing: border-box;
          font-family: "Noto Sans KR", sans-serif;
      }

      body {
          background: #fff;
          color: #333;
           overflow-x: hidden;
      }





      /* ===== 이벤트 배너 ===== */
      .event-banner {
      width: 100vw;
      height: 550px;                 /* ⭐ 세로 고정 */
      margin-left: calc(50% - 50vw); /* ⭐ 전체폭 보정 */
      position: relative;
      overflow: hidden;
      background: #f5e2bf;
      aspect-ratio: 3 / 4;

      }

      /* 슬라이더 */
      .banner-slider {
      width: 100%;
      height: 100%;
      overflow: hidden;

      }

      /* 트랙 */
      .banner-track {
      display: flex;
      height: 100%;
      transition: transform 0.5s ease;
      }

      /* 슬라이드 */
      .banner-slide {
      min-width: 100%;
      height: 100%;
      pointer-events: auto;
      }

      .banner-slide img {
      width: 100%;
      height: 100%;
      object-fit: cover;   /* ⭐ 가로 확대/축소에도 꽉 */
      display: block;
      cursor: pointer;
      }

      /* 좌우 버튼 */
      .banner-nav {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      width: 20px;
      height: 46px;
      background: transparent;   /* ⭐ 박스 제거 */
      border: none;              /* ⭐ 테두리 제거 */
      box-shadow: none;
      font-size: 22px;
      color: #dcdbdb;
      cursor: pointer;
      z-index: 10;
      /* box-shadow: 0 2px 8px rgba(0,0,0,0.2);  */
      }

      .banner-nav.prev {
      left: 20px;    /* ⭐ 화면 왼쪽 끝 */
      }

      .banner-nav.next {
      right: 20px;
      }

      /* 인디케이션 */
      .banner-indicator {
      position: absolute;
      bottom: 32px;
      left: 50%;
      transform: translateX(-50%);
      display: flex;
      gap: 10px;
      z-index: 20;
      }

      .banner-indicator .dot {
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: #dcdbdb;
      cursor: pointer;
      }

      .banner-indicator .dot.active {
      background: #9a9a9a;
      }



          /* ===== 검색바 ===== */
          .main-search-bar {
              width: 100%;
              max-width: 1000px;
              margin: 70px auto;
              height: 64px;
              border: 4px solid #DCA244;
              border-radius: 999px;
              background: #fff;
              /* padding 제거 (form 내부에서 조절하는 것이 더 정확합니다) */
              overflow: hidden; /* 테두리 밖으로 내용이 나가지 않게 설정 */
          }

          /* ⭐ form 태그에 flex를 적용하여 내부 input과 button을 정렬합니다. */
          .main-search-bar form {
              display: flex;
              align-items: center;
              width: 100%;
              height: 100%;
              padding: 0 18px 0 24px; /* 기존 부모에 있던 패딩을 이쪽으로 이동 */
          }

          /* 입력창 */
          .main-search-bar input {
              flex: 1; /* 남은 공간을 모두 차지 */
              height: 100%;
              border: none;
              outline: none;
              font-size: 20px;
              color: #333;
              background: transparent;
          }

          /* 돋보기 버튼 */
          .main-search-btn {
              width: 36px;
              height: 36px;
              border: none;
              background: url("../images/icon1.png") no-repeat center;
              background-size: 24px;
              cursor: pointer;
              flex-shrink: 0; /* 버튼 크기가 줄어들지 않도록 고정 */
          }

      /* ===== 말랑이 추천 도서 ===== */
      .mallang-recommend {
      width: 100%;
      max-width: 1280px;
      border-radius: 20px;
      background: #fbfbef;
      margin: 0 auto;
      padding: 40px 48px;
      }

      .recommend-inner {
      max-width: 1280px;
      margin: 0 auto;
      display: flex;
      gap: 80px;
      align-items: flex-start;
      }

      /* 좌측 */
      .recommend-left {
      width: 300px;
      margin-top: 40px;
      }

      .recommend-left h2 {
      font-size: 30px;
      font-weight: 800;
      margin-bottom: 40px;
      }

      /* 해시태그 */
      .hashtag-list {
      display: flex;
      flex-direction: column;
      gap: 16px;
      margin-top: 50px;
      }

      .hashtag {
      padding: 14px 22px;
      border-radius: 999px;
      border: 1.5px solid #d9d9d9;
      background: #fff;
      font-size: 16px;
      cursor: pointer;
      transition: all 0.2s ease;
      }

      .hashtag.active {
      border-color: #DCA244;
      background: #fff1cc;
      font-weight: 700;
      }

      /* 우측 */
      .recommend-right {
      flex: 1;
      }

      .book-card-list {
      display: flex;
      gap: 45px;
      }

      /* 카드 */
      .book-card{
    width: 240px;

    /* transition: transform .25s ease, box-shadow .25s ease; */
  }

  .book-cover:hover{
    transform: translateY(-6px);
    box-shadow: 0 14px 32px rgba(0,0,0,0.12);
  }

  /* 책 표지 */
  .book-cover{
    width: 100%;
    border-radius: 20px;
    height: 360px;
    background: #f2f2f2;
    transition: transform .25s ease, box-shadow .25s ease;
  }

  .book-cover img{
    width: 100%;
    height: 100%;
    border-radius: 20px;

    /* object-fit: cover;   ⭐ 비율 유지 */
    display: block;
  }

  /* 책 정보 */
  .book-info{
    padding: 14px 16px 18px;
  }

  .book-title{
    font-size: 15px;
    font-weight: 600;
    line-height: 1.4;
    margin-bottom: 6px;

    /* 두 줄 말줄임 */
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
  }

  .book-author{
    font-size: 12px;
    color: #777;
  }

  /*피드(나였으면)*/
  /* ===== 피드 미리보기 ===== */
  .feed-preview {
    width: 100%;
    padding: 80px 0;
  }

  .feed-inner {
    max-width: 1280px;
    margin: 0 auto;
  }

  /* 헤더 */
  .feed-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 32px;
  }

  .feed-header h2 {
    font-size: 28px;
    font-weight: 400;
    color: #6F6F6F;
  }

  .feed-more {
    font-size: 16px;
    color: #777;
    text-decoration: none;
  }

  /* 카드 리스트 */
  .feed-card-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 28px;
  }

  /* 카드 */
  .feed-card {
    background: #eee;
    border-radius: 24px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    height: 500px;
    justify-content: space-between;
  }
  .feed-card-list > a {
  display: block;
  text-decoration: none;
  color: inherit;
}


  /* 유저 */
  .feed-user {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 20px;
  }

  .feed-user img {
    width: 36px;
    height: 36px;
    border-radius: 50%;
    object-fit: cover;
  }

  .feed-username {
    font-size: 15px;
    font-weight: 600;
    color: #555;
  }

  /* 텍스트 */
  .feed-text {
    width: 300px;

    margin: 0 auto;
    font-size: 14px;
    line-height: 1.7;
    color: #666;
    margin-bottom: 24px;

    /* 말줄임 */
    display: -webkit-box;
    -webkit-line-clamp: 4;
    -webkit-box-orient: vertical;
    line-clamp: 4;
    overflow: hidden;
  }

  /* 책 */
  .feed-book {
    display: flex;
    justify-content: center;
  }

  .feed-book img {
    width: 160px;
    border-radius: 12px;
    box-shadow: 0 6px 16px rgba(0,0,0,0.12);
  }


  /* ===== 북나라 사서들이 읽고있는 책 ===== */
  .librarian-books {
    width: 100%;
    padding: 80px 0;
  }

  .librarian-inner {
    max-width: 1280px;
    margin: 0 auto;
  }

  /* 타이틀 */
  .librarian-header h2 {
    font-size: 22px;
    font-weight: 400;
    color: #6f6f6f;
    margin-bottom: 28px;
  }

  .librarian-header .arrow {
    margin-left: 6px;
    font-size: 24px;
  }

  /* 카드 리스트 */
  .librarian-book-list {
    display: flex;
    gap: 32px;
    justify-content: center;
  }

  /* 카드 */
  .librarian-book-card {
    width: 180px;
  }

  /* 표지 */
  .librarian-book-card .book-cover {
    width: 100%;
    height: 260px;
    border-radius: 14px;
    overflow: hidden;
    background: #f2f2f2;
    transition: transform .25s ease, box-shadow .25s ease;
  }

  .librarian-book-card .book-cover:hover {
    transform: translateY(-6px);
    box-shadow: 0 14px 32px rgba(0,0,0,0.12);
  }

  .librarian-book-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
  }




  /* ===== 방금 막 들어온 책 ===== */
  .new-books {
    width: 100%;
    max-width: 1280px;
    padding: 80px 0;
    margin: 0 auto;
  }
  .new-book-link {
  display: block;
  text-decoration: none;
  color: inherit;
}

  .new-books-inner {
    max-width: 1280px;
    margin: 0 auto;
  }

  /* 타이틀 */
  .new-books-header h2 {
    font-size: 22px;
    font-weight: 400;
    color: #6f6f6f;
    margin-bottom: 28px;
  }

/* ===== 방금 막 들어온 책 (신간도서) ===== */
.new-books {
  width: 100%;
  padding: 80px 0;
}

.new-books-inner {
  max-width: 1280px;
  margin: 0 auto;
}

/* 타이틀 */
.new-books-header h2 {
  font-size: 22px;
  font-weight: 400;
  color: #6f6f6f;
  margin-bottom: 28px;
}

/* 카드 리스트 */
.new-books-list {
  display: flex;
  gap: 32px;
  justify-content: center;
}

/* 카드 */
.new-book-card {
  width: 180px;
}

/* 표지 */
.new-book-card .book-cover {
  width: 100%;
  height: 260px;
  border-radius: 14px;
  overflow: hidden;
  background: #f2f2f2;
  transition: transform .25s ease, box-shadow .25s ease;
}

.new-book-card .book-cover:hover {
  transform: translateY(-6px);
  box-shadow: 0 14px 32px rgba(0,0,0,0.12);
}

.new-book-card img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/* 정보 */
.new-book-card .book-info {
  padding: 12px 4px;
}

.new-book-card .book-title {
  font-size: 14px;
  font-weight: 600;
  margin-bottom: 4px;

  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.new-book-card .book-author {
  font-size: 12px;
  color: #777;
}

/* 링크 */
.new-book-link {
  display: block;
  text-decoration: none;
  color: inherit;
}


    a {
      color: inherit;
      text-decoration: none;
    }
