/* ── Reset ── */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
body{font-family:'Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif;background:#fff;color:#333;display:flex;min-height:100vh;}

/* ── Sidebar ── */
.sidebar{position:fixed;top:0;left:0;bottom:0;width:280px;background:#fff;border-right:1px solid #ebebeb;display:flex;flex-direction:column;padding:36px 40px;z-index:200;overflow-y:auto;transition:transform .3s;}
.logo{display:block;margin-bottom:40px;text-decoration:none;}
.logo img{width:150px;height:auto;display:block;}
nav{flex:1;}
nav ul{list-style:none;}
.nav-item{margin-bottom:6px;}
.nav-link{display:block;font-size:22px;color:#212121;padding:4px 0;text-decoration:none;font-weight:400;transition:color .15s;}
.nav-link:hover{color:#111;font-weight:700;}
.nav-item>.nav-link.active{color:#c6c6c6;font-weight:400;}
.nav-sub{padding-left:14px;margin-top:4px;margin-bottom:6px;}
.nav-sub .nav-link{font-size:18px;color:#212121;}
.nav-sub .nav-link:hover{color:#111;font-weight:700;}
.nav-sub .nav-link.active{color:#c6c6c6;font-weight:400;}
.nav-divider{border:none;border-top:1px solid #e8e8e8;margin:18px 0 14px;}
.sns{display:flex;gap:14px;align-items:center;}
.sns a{color:#666;display:inline-flex;transition:color .15s;}
.sns a:hover{color:#111;}

/* ── Main wrap ── */
.main-wrap{margin-left:280px;flex:1;display:flex;flex-direction:column;min-height:100vh;align-items:center;}

/* ── Content ── */
.content{flex:1;padding:56px 56px 64px;max-width:900px;width:100%;}
footer{width:100%;background:#252525;padding:28px 56px 24px;text-align:center;}

/* ── 회사소개 ── */
.intro-card{background:#1d2d44;border-radius:8px;padding:40px 46px;margin-bottom:24px;}
.intro-title{font-size:19px;font-weight:700;color:#c9a940;margin-bottom:24px;}
.intro-card p{font-size:14px;line-height:1.9;color:#c8d0db;margin-bottom:14px;}
.intro-card p:last-child{margin-bottom:0;}
.info-card{background:#fff;border:1px solid #e8e8e8;border-left:4px solid #f5c800;border-radius:4px;padding:22px 28px;margin-bottom:14px;}
.info-card h3{font-size:15px;font-weight:700;color:#111;margin-bottom:10px;}
.info-card p{font-size:13px;line-height:1.8;color:#555;}
.platform-list{font-size:13px;color:#777;line-height:2;}
.platform-list a{color:#777;text-decoration:none;}
.platform-list a:hover{color:#333;text-decoration:underline;}
.platform-list span{margin:0 5px;color:#ccc;}

/* ── 작품소개 Swiper ── */
.dalbit-outer-container{width:100%;position:relative;background:#fff;min-height:calc(100vh - 80px);display:flex;flex-direction:column;justify-content:center;padding:40px 100px;}
.dalbit-main-content{width:100%;max-width:1000px;margin:0 auto;position:relative;}
.swiper{width:100%;overflow:hidden!important;padding-top:30px!important;padding-bottom:60px!important;}
.swiper-pagination{bottom:0!important;}
.slide-content{display:flex;flex-direction:row;align-items:stretch;gap:40px;width:100%;}
.work-poster{width:240px;height:336px;object-fit:cover;object-position:top!important;border-radius:8px;box-shadow:0 10px 25px rgba(0,0,0,.15);flex-shrink:0;}
.work-poster-placeholder{width:240px;height:336px;background:#f5f5f5;border-radius:8px;border:1px solid #eaeaea;display:flex;align-items:center;justify-content:center;color:#999;font-size:13px;flex-shrink:0;}
.work-info{display:flex;flex-direction:column;flex:1;min-width:0;}
.work-title{font-family:'Noto Serif KR',serif;font-size:26px;font-weight:700;color:#111;margin-bottom:14px;line-height:1.3;word-break:keep-all;}
.work-synopsis{font-size:15px;line-height:1.7;color:#444;margin-bottom:24px;white-space:pre-wrap;word-break:keep-all;}
.work-keywords{margin-top:auto;font-size:13px;line-height:1.6;color:#4a7ab5;margin-bottom:14px;white-space:pre-wrap;word-break:keep-all;}
.platform-wrap{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:10px;}
.p-btn{padding:8px 14px;border-radius:6px;font-size:12px;font-weight:700;text-decoration:none!important;color:#fff!important;transition:opacity .2s;white-space:nowrap;}
.p-btn:hover{opacity:.8;}
.aladin{background:#1b4d98}.ridi{background:#1f8ce6}.series{background:#00c73c}
.kakao{background:#ffcd00;color:#3c1e1e!important}.kyobo{background:#52b332}
.yes24{background:#243d83}.bomtoon{background:#ff3b5c}.bookcube{background:#f06000}.joara{background:#2f3438}
.swiper-button-next,.swiper-button-prev{position:absolute!important;color:#222!important;top:50%!important;transform:translateY(-50%)!important;width:44px!important;height:44px!important;z-index:999!important;}
.swiper-button-next:after,.swiper-button-prev:after{font-size:28px!important;font-weight:bold;}
.swiper-button-prev{left:20px!important}.swiper-button-next{right:20px!important}

/* ── 취향매칭·라이브러리 ── */
.quiz-back{font-size:13px;color:#888;margin-bottom:16px;cursor:pointer;text-decoration:none;display:inline-block;}
.quiz-back:hover{color:#333;}

/* ── CONTACT ── */
.contact-header{margin-bottom:28px;}
.contact-header h2{font-size:28px;font-weight:700;color:#111;margin-bottom:8px;}
.contact-header p{font-size:14px;color:#666;}
.contact-section{border:1px solid #e8e8e8;border-left:4px solid #f5c800;border-radius:4px;padding:28px 32px;margin-bottom:16px;}
.contact-section h3{font-size:16px;font-weight:700;color:#111;margin-bottom:14px;}
.contact-section p{font-size:14px;line-height:1.8;color:#555;margin-bottom:8px;}
.contact-section p:last-child{margin-bottom:0;}
.contact-btn{display:inline-block;background:#1d2d44;color:#fff!important;text-decoration:none;padding:11px 24px;border-radius:4px;font-size:13px;font-weight:600;margin-top:10px;transition:background .15s;}
.contact-btn:hover{background:#2a4060;}
.tugoan-box{background:#f9f5eb;border-radius:6px;padding:24px;margin-bottom:16px;}
.tugoan-row{display:flex;gap:8px;align-items:flex-start;margin-bottom:8px;font-size:13px;}
.tugoan-label{background:#111;color:#fff;border-radius:3px;padding:2px 8px;font-size:12px;white-space:nowrap;margin-top:2px;}
.tugoan-val{color:#555;line-height:1.6;}
.tugoan-val a{color:#1d2d44;}

/* ── Footer ── */
.footer-nav{list-style:none;display:flex;justify-content:center;gap:24px;margin-bottom:16px;}
.footer-nav a{color:#bbb;text-decoration:none;font-size:13px;}
.footer-nav a:hover{color:#fff;}
.footer-info{font-size:12px;color:#777;margin-bottom:6px;}
.footer-copy{font-size:11px;color:#555;}

/* ── 모바일 상단 바 ── */
.mobile-topbar{display:none;position:fixed;top:0;left:0;right:0;height:56px;background:#fff;border-bottom:1px solid #ebebeb;align-items:center;justify-content:space-between;padding:0 20px;z-index:300;}
.mobile-topbar img{height:36px;width:auto;}
.hamburger{background:none;border:none;cursor:pointer;padding:8px;display:flex;flex-direction:column;gap:5px;}
.hamburger span{display:block;width:22px;height:2px;background:#333;border-radius:2px;transition:all .3s;}
.sidebar-overlay{display:none;position:fixed;inset:0;background:rgba(0,0,0,.4);z-index:190;}
.sidebar-overlay.visible{display:block;}

/* ── 모바일 반응형 ── */
@media(max-width:768px){
  body{overflow-x:hidden;}
  .mobile-topbar{display:flex;}
  .sidebar{top:56px;transform:translateX(-100%);}
  .sidebar.open{transform:translateX(0);}
  .main-wrap{margin-left:0;padding-top:56px;align-items:stretch;overflow-x:hidden;}
  .content{padding:28px 20px 48px;}
  footer{padding:24px 20px 20px!important;}

  /* 작품소개 모바일 */
  .dalbit-outer-container{
    padding:16px!important;
    min-height:auto!important;
  }
  .dalbit-main-content{
    max-width:100%!important;
    width:100%!important;
  }
  .swiper-button-prev,.swiper-button-next{display:none!important;}
  .swiper{
    padding-top:10px!important;
    padding-bottom:44px!important;
    width:100%!important;
    overflow:hidden!important;
  }
  .swiper-slide{width:100%!important;}
  .slide-content{
    flex-direction:column!important;
    align-items:center!important;
    gap:16px!important;
    width:100%!important;
  }
  .work-poster{
    width:clamp(110px,38vw,160px)!important;
    height:auto!important;
    aspect-ratio:5/7;
    flex-shrink:0;
  }
  .work-poster-placeholder{
    width:clamp(110px,38vw,160px)!important;
    height:auto!important;
    aspect-ratio:5/7;
  }
  .work-info{
    width:100%!important;
    flex:unset!important;
    min-width:0!important;
  }
  .work-title{
    font-size:clamp(17px,5vw,22px)!important;
    margin-bottom:8px;
    line-height:1.4;
    text-align:center;
  }
  .work-synopsis{
    font-size:clamp(13px,3.8vw,16px)!important;
    line-height:1.8;
    margin-bottom:14px;
    text-align:left;
    white-space:pre-wrap;
    word-break:keep-all;
    overflow-wrap:break-word;
  }
  .work-keywords{
    font-size:clamp(11px,3vw,14px)!important;
    margin-bottom:10px;
    text-align:left;
    white-space:normal;
    word-break:keep-all;
    overflow-wrap:break-word;
    line-height:1.8;
  }
  .platform-wrap{
    justify-content:center!important;
    gap:6px;
    flex-wrap:wrap;
  }
  .p-btn{
    padding:6px 10px;
    font-size:clamp(10px,2.8vw,13px)!important;
  }

  /* 기타 */
  .nav-link{font-size:18px;}
  .nav-sub .nav-link{font-size:15px;}
  .footer-nav{gap:16px;}
  .intro-card{padding:28px 24px;}
  .contact-section{padding:20px 18px;}
}
