/* ============================================
   Noto Sans KR - 전 웨이트 임포트 (Thin 100 ~ Black 900)
   ============================================ */
   @import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100;200;300;400;500;600;700;800;900&display=swap');

   /* ============================================
      기본 스타일 (Base)
      ============================================ */
   *,
   *::before,
   *::after {
     box-sizing: border-box;
   }
   
   html {
     font-size: 16px;
     -webkit-text-size-adjust: 100%;
   }
   
   body {
     margin: 0;
     padding: 0;
     font-family: 'Noto Sans KR', -apple-system, BlinkMacSystemFont, sans-serif;
     font-weight: 400;
     line-height: 1.5;
     color: #333;
   }
   
   a {
     text-decoration: none;
     color: inherit;
   }
   
   ul {
     list-style: none;
     padding: 0;
     margin: 0;
   }
   
   img {
     max-width: 100%;
     height: auto;
     vertical-align: middle;
   }
   
   /* ============================================
      래퍼 (전역 컨테이너, 최대 1080px 기준)
      ============================================ */
   .wrapper {
     max-width: 1080px;
     margin: 0 auto;
     padding-left: 1rem;
     padding-right: 1rem;
   }
   
   /* ============================================
      Header & GNB (Sticky & Hamburger)
      ============================================ */
   #header {
     position: sticky;
     top: 0;
     width: 100%;
     height: 70px;
     background: rgba(255, 255, 255, 0.98);
     border-bottom: 1px solid #eee;
     z-index: 1000;
     display: flex;
     align-items: center;
   }
   
   .header-inner {
     display: flex;
     justify-content: space-between;
     align-items: center;
     height: 100%;
   }
   
   .logo a {
     font-weight: 900;
     font-size: 1.4rem;
     color: #2d5a27; /* 농가 느낌의 초록색 */
   }
   
   /* 햄버거 버튼 */
   .btn-menu {
     width: 28px;
     height: 20px;
     display: flex;
     flex-direction: column;
     justify-content: space-between;
     cursor: pointer;
     z-index: 1001;
   }
   
   .btn-menu .line {
     width: 100%;
     height: 3px;
     background: #333;
     transition: 0.3s;
   }
   
   /* 슬라이드 메뉴창 */
   #gnb {
     position: fixed;
     top: 0;
     right: -280px;
     width: 280px;
     height: 100vh;
     background: #fff;
     box-shadow: -5px 0 15px rgba(0,0,0,0.1);
     transition: 0.3s ease-in-out;
     padding: 100px 30px;
   }
   
   #gnb.active {
     right: 0;
   }
   
   #gnb ul li {
     margin-bottom: 1.5rem;
   }
   
   #gnb ul li a {
     font-size: 1.1rem;
     font-weight: 500;
   }
   
   /* ============================================
      PC - 1080px 미만
      ============================================ */
   @media (max-width: 1079px) {
     /* 앞으로 PC 구간 스타일은 이 블록 안에만 추가 */
   }
   
   /* ============================================
      태블릿 - 768px 미만
      ============================================ */
   @media (max-width: 767px) {
     /* 앞으로 태블릿 구간 스타일은 이 블록 안에만 추가 */
     #gnb {
       width: 70%;
     }
   }
   
   /* ============================================
      모바일 - 480px 미만
      ============================================ */
   @media (max-width: 479px) {
     /* 앞으로 모바일 구간 스타일은 이 블록 안에만 추가 */
     .logo a {
       font-size: 1.1rem;
     }
   }