@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
/* =============================================================
   NEOPHARM base.css — shared header / footer / reset
   Extracted from per-page inline <style> blocks to remove
   duplication. Loaded BEFORE ds-theme.css, which still
   provides the v2 editorial overrides (!important).
   ============================================================= */
*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:var(--font);color:var(--text);background:var(--bg);font-size:15px;line-height:1.8;letter-spacing:-.02em;-webkit-font-smoothing:antialiased;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{max-width:100%;display:block}
.container{max-width:var(--container);margin:0 auto;padding:0 var(--side)}

/* HEADER */
.hd{position:fixed;top:0;left:0;right:0;height:72px;z-index:200;background:rgba(247,247,245,.96);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.06);transition:.3s}
.hd-inner{max-width:1440px;margin:0 auto;height:100%;display:flex;align-items:center;justify-content:space-between;padding:0 48px}
.hd-logo img{height:22px}
.hd-logo .logo-w{display:none}
.hd-nav{display:flex;gap:48px;height:100%}
.hd-nav-item{position:relative;height:100%;display:flex;align-items:center}
.hd-nav-link{font-family:'Pretendard','Pretendard','Noto Sans KR',sans-serif;font-size:13px;font-weight:500;letter-spacing:.04em;color:#161616;transition:.2s;position:relative;display:flex;align-items:center;justify-content:center;min-width:72px;height:100%}
.hd-nav-link .en,.hd-nav-link .ko{transition:opacity .25s;white-space:nowrap}
.hd-nav-link .en{opacity:1}
.hd-nav-link .ko{position:absolute;font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:12px;font-weight:400;letter-spacing:0;color:#5c636a;opacity:0;pointer-events:none}
.hd-nav-item:hover .hd-nav-link .en{opacity:0}
.hd-nav-item:hover .hd-nav-link .ko{opacity:1}
.hd-nav-link:hover,.hd-nav-link.active{color:#c2372d}
.hd-mega{position:absolute;top:72px;left:50%;transform:translateX(-50%) translateY(6px);min-width:180px;padding:14px 0;background:#fff;border:1px solid #e0e0dc;box-shadow:0 16px 48px rgba(0,0,0,.08);opacity:0;pointer-events:none;transition:.22s;z-index:300}
.hd-nav-item:hover .hd-mega{opacity:1;pointer-events:auto;transform:translateX(-50%) translateY(0)}
.hd-mega a{display:block;padding:9px 24px;font-size:14px;color:#5c636a;white-space:nowrap;transition:.15s}
.hd-mega a:hover{color:#c2372d;background:#fafafa}
.hd-right{display:flex;align-items:center;gap:20px}
.hd-right a{font-size:11px;color:#5c636a;letter-spacing:.06em}
.hd-hamburger{display:none;background:0;border:0;font-size:24px;cursor:pointer;color:#161616}

/* FOOTER */
footer{background:#111;color:rgba(255,255,255,.45);font-size:13px}
.ft-top{text-align:center;padding:56px 24px 0}
.ft-top img{height:18px;margin:0 auto;filter:brightness(2)}
.ft-desc{margin-top:10px;font-size:13px;color:rgba(255,255,255,.58)}
.ft-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:32px;max-width:1100px;margin:36px auto;padding:28px 24px;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(255,255,255,.08)}
.ft-grid h4{color:rgba(255,255,255,.7);font-size:13px;font-weight:600;margin-bottom:8px}
.ft-grid a{display:block;font-size:12px;color:rgba(255,255,255,.58);padding:3px 0;transition:.2s}
.ft-grid a:hover{color:#fff}
.ft-bottom{text-align:center;padding:24px 24px 48px}
.ft-bottom a{font-size:12px;color:rgba(255,255,255,.6)}
/* 개인정보처리방침 링크 — 개인정보 보호법 제30조의2(다른 링크와 구별되게 표시) 대응: 볼드 + 밝은 색 */
footer .ft-bottom a.privacy{font-weight:700!important;color:rgba(255,255,255,.92)!important;letter-spacing:.01em}
footer .ft-bottom a.privacy:hover{color:#fff!important;text-decoration:underline}
.ft-bottom span{margin:0 10px;color:rgba(255,255,255,.15)}
.ft-corp{font-size:12px;color:rgba(255,255,255,.55);margin-top:10px}
.ft-copy{font-size:11px;color:rgba(255,255,255,.5);margin-top:4px}

/* FADE-UP (base; ds-theme overrides on JS-enabled pages) */
.fade-up{opacity:0;transform:translateY(32px);transition:opacity .65s cubic-bezier(.22,1,.36,1),transform .65s cubic-bezier(.22,1,.36,1)}
.fade-up.visible{opacity:1;transform:translateY(0)}

/* RESPONSIVE — header & footer */
@media(max-width:768px){ .hd-inner{padding:0 20px} .hd-nav{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;flex-direction:column;gap:0;padding:12px 0;border-bottom:1px solid #e0e0dc;box-shadow:0 12px 32px rgba(0,0,0,.06)} .hd.mobile-open .hd-nav{display:flex} .hd-nav-item{height:auto} .hd-nav-link{padding:14px 24px;width:100%;height:auto;justify-content:flex-start} .hd-nav-link .en{display:none} .hd-nav-link .ko{position:static;opacity:1;font-size:15px;font-weight:500;color:#111;pointer-events:auto} .hd-mega{display:none} .hd-hamburger{display:block} .ft-grid{grid-template-columns:repeat(2,1fr)} }

/* === heading demotion compat (h4→h3, h5→h4) === */
.ft-grid h3{color:rgba(255,255,255,.7);font-size:13px;font-weight:600;margin-bottom:8px}

/* === a11y === */
.skip-link{position:absolute;left:-9999px;top:0;z-index:10000;background:#111;color:#fff;padding:12px 20px;font-size:14px;text-decoration:none}
.skip-link:focus{left:0}
button.hero-dot{border:0;padding:0;appearance:none;-webkit-appearance:none;display:inline-block}
/* === EN pages: nav labels (no .ko span) stay visible on hover & mobile === */
html[lang="en"] .hd-nav-item:hover .hd-nav-link .en{opacity:1}
@media(max-width:768px){
  html[lang="en"] .hd-nav-link .en{display:block;position:static;opacity:1;font-size:15px;font-weight:500;color:#111;pointer-events:auto}
}

/* FAQ — 푸터 내부(기업명과 하단 메뉴 사이) 컴팩트 표기 */
footer section#faq,section#faq{padding:10px 24px 6px!important;background:transparent!important;border:0!important;margin:0!important}
section#faq .container{max-width:1100px;margin:0 auto;padding:0}
.faq-title{font-size:11px!important;font-weight:600!important;letter-spacing:.12em;text-transform:uppercase;color:rgba(244,245,246,.55)!important;margin:0 0 6px!important}
.faq-title span{font-family:'Pretendard','Pretendard','Noto Sans KR',sans-serif;font-size:10px;font-weight:500;color:rgba(244,245,246,.35);letter-spacing:.1em;vertical-align:middle;margin-left:8px}
.faq-list{max-width:none;columns:2;column-gap:48px}
.faq-item{border:0;break-inside:avoid}
.faq-item summary{cursor:pointer;padding:4px 20px 4px 0;font-size:12px;font-weight:500;color:rgba(244,245,246,.6);list-style:none;position:relative;transition:color .2s;line-height:1.6}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:13px;font-weight:400;color:rgba(244,245,246,.4);transition:transform .25s}
.faq-item[open] summary::after{transform:translateY(-50%) rotate(45deg)}
.faq-item summary:hover{color:#fff}
.faq-item p{padding:2px 0 10px;color:rgba(244,245,246,.55);font-size:11.5px;line-height:1.75;max-width:520px}
@media(max-width:768px){.faq-list{columns:1}}

/* 접근성: 키보드 포커스 표시 */
:focus-visible{outline:2px solid #c2372d;outline-offset:3px;border-radius:2px}

/* 접근성: 모션 최소화 선호 사용자 */
@media (prefers-reduced-motion: reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms !important;animation-iteration-count:1 !important;transition-duration:.01ms !important}
}
