@charset "utf-8";
/* 2026-10-27: 메뉴가 가볍게 보이지 않도록 보유한 한글 정규·굵은 글꼴을 명시적으로 불러온다. */
@font-face{font-family:"SHIFT Navigation";font-style:normal;font-weight:400;font-display:swap;src:url('/fonts/woff/NotoSansKR-Regular-Hestia.woff') format('woff')}
@font-face{font-family:"SHIFT Navigation";font-style:normal;font-weight:700;font-display:swap;src:url('/fonts/woff/NotoSansKR-Bold-Hestia.woff') format('woff')}
/* 2026-10-27: 메인·제품·회사·게시판의 탐색을 같은 크기와 색상으로 표시하고 기존 본문 CSS의 영향을 차단한다. */
body.site-nav-active{padding-top:56px}
body.site-nav-active #main-menu{display:none!important}
#site-header,#site-header *{box-sizing:border-box;font-family:"SHIFT Navigation","Malgun Gothic","Apple SD Gothic Neo",Arial,sans-serif;word-break:keep-all}
#site-header{position:fixed;inset:0 0 auto;height:56px;width:100%;margin:0;padding:0 0 0 24px;display:flex;align-items:center;justify-content:space-between;z-index:100000;background:#fff;border-bottom:1px solid #eee;color:#1c1c1e;line-height:normal}
#site-header a,#site-header a:visited{color:inherit;text-decoration:none}
#site-header button{margin:0;border:0;border-radius:0;background:none;color:inherit;cursor:pointer;box-shadow:none;text-transform:none;letter-spacing:normal}
#site-header .home-brand{display:block;flex:0 0 190px;width:190px;margin:0;padding:0;line-height:1}
#site-header .home-brand img{display:block;width:190px;max-width:100%;height:auto;max-height:40px;object-fit:contain;border:0;margin:0;padding:0}
#site-header .home-nav{display:flex;position:static;align-self:stretch;align-items:stretch;gap:34px;margin:0;padding:0;overflow:visible;background:#fff;border:0;box-shadow:none}
#site-header .nav-group{position:relative;display:flex;align-items:center;margin:0;padding:0;border:0}
#site-header .nav-group>button{height:56px;width:auto;padding:0 7px;font-size:14px;font-weight:800;text-align:left;white-space:nowrap;line-height:20px;letter-spacing:-.02em}
#site-header .nav-group>button:after{content:"";position:absolute;left:7px;right:7px;bottom:0;height:3px;background:#ef3b31;transform:scaleX(0);transition:transform .2s}
#site-header .nav-group.is-open>button:after,#site-header .nav-group.is-current>button:after{transform:scaleX(1)}
#site-header .nav-group.is-current>button{color:#df332a}
#site-header .nav-sub{display:none;position:absolute;top:100%;left:-20px;min-width:230px;max-height:calc(100svh - 68px);overflow:auto;background:#fff;border-top:1px solid #eee;box-shadow:0 12px 25px #00000012;padding:12px 16px;margin:0;z-index:1}
#site-header .nav-group.is-open .nav-sub{display:block}
#site-header .nav-sub a{display:block;padding:12px;font-size:14px;font-weight:400;line-height:20px;white-space:nowrap}
#site-header .nav-sub a:hover,#site-header .nav-sub a:focus-visible,#site-header .nav-sub a[aria-current=page]{color:#df332a;background:#f8f8f8}
#site-header .header-tools{display:flex;align-items:center;align-self:stretch;height:56px;gap:0;margin:0;padding:0;font-size:10px;font-weight:700;letter-spacing:.06em}
#site-header a.contact-link{display:flex;align-items:center;justify-content:center;gap:20px;height:56px;padding:0 23px;background:#ef3b31;color:#fff;line-height:20px;font-size:10px;font-weight:700}
#site-header .menu-toggle,#site-header .mobile-contact{display:none}
#site-header :focus-visible{outline:3px solid #ef3b31;outline-offset:4px}
@media(max-width:1200px){#site-header .home-brand{flex-basis:170px;width:170px}#site-header .home-brand img{width:170px}#site-header .home-nav{gap:20px}#site-header .nav-group>button{font-size:13px}}
@media(max-width:900px){#site-header{padding:0 20px}#site-header .home-brand{flex-basis:175px;width:175px}#site-header .home-brand img{width:175px}#site-header .home-nav{display:none;position:absolute;top:56px;left:0;right:0;padding:10px 24px 24px;border-top:1px solid #eee;max-height:calc(100svh - 56px);overflow:auto;box-shadow:0 15px 25px #0001}#site-header .home-nav.is-open{display:block}#site-header .nav-group{display:block;border-bottom:1px solid #eee}#site-header .nav-group>button{display:block;padding:17px 0;height:auto;width:100%;font-size:16px;line-height:24px}#site-header .nav-group>button:after{display:none}#site-header .nav-group>button:before{content:"+";float:right;font-size:20px;font-weight:400}#site-header .nav-group.is-open>button:before{content:"−"}#site-header .nav-sub{position:static;max-height:none;min-width:0;overflow:visible;border:0;box-shadow:none;padding:0 0 12px}#site-header .nav-sub a{padding:12px 5px;white-space:normal}#site-header a.contact-link{display:none}#site-header .menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;width:36px;height:44px;padding:3px}#site-header .menu-toggle span{display:block;height:2px;width:24px;background:#222;transition:transform .2s}#site-header .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}#site-header .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}}
@media(max-width:600px){#site-header{padding:0 16px}#site-header .home-brand{flex-basis:155px;width:155px}#site-header .home-brand img{width:155px}}
@media(prefers-reduced-motion:reduce){#site-header *{transition:none!important}}
/* 2026-10-27: 메뉴 포커스를 둥근 강조 영역으로 바꾸고 56px 헤더 안에서 글자와 버튼 중심을 정확히 맞춘다. */
#site-header .nav-group>button{display:flex;align-items:center;justify-content:center;height:36px;padding:0 14px;border-radius:8px;line-height:20px;font-size:14px;font-weight:800;transition:background-color .18s,color .18s,box-shadow .18s}
#site-header .nav-group>button:after{display:none}
#site-header .nav-group>button:hover,#site-header .nav-group.is-open>button{background:#f6f6f6;color:#1c1c1e}
#site-header .nav-group.is-current>button{background:#fff0ed;color:#cf3027}
#site-header .nav-group>button:focus-visible{outline:0;background:#fff0ed;color:#b82720;box-shadow:0 0 0 2px #d63a31}
#site-header .nav-sub a{border-radius:6px}
#site-header .nav-sub a:focus-visible{outline:2px solid #d63a31;outline-offset:0}
#site-header .home-brand:focus-visible,#site-header .menu-toggle:focus-visible{border-radius:6px;outline:2px solid #d63a31;outline-offset:2px}
@media(max-width:1200px) and (min-width:901px){#site-header .home-nav{gap:12px}#site-header .nav-group>button{padding:0 12px}}
@media(max-width:900px){#site-header .nav-group{padding:3px 0}#site-header .nav-group>button{display:block;text-align:left;min-height:44px;height:auto;width:100%;padding:10px 12px;font-size:16px;line-height:24px}#site-header .nav-group>button:before{line-height:24px;margin-left:16px}#site-header .nav-sub{padding:6px 0 12px}#site-header .nav-sub a{padding:12px}}
