@charset "utf-8";

/*
	섹션 헤더/푸터 공통 CSS — 이슈 #51 (섹션별 헤더 메뉴 이미지 제거 + 통일 + 반응형)

	섹션 CSS(towninfo.css / radio.css / community.css …)를 로드한 뒤 이어서 로드해서
	캐스케이드로 오버라이드한다. 래퍼(header.php / *_gnu_header.php)의 <link> 순서 주의.

	하는 일
	  1. 스프라이트 이미지 메뉴를 텍스트로 (폭과 무관하게 항상)
	  2. .logo 스프라이트가 [사이트로고 + 섹션명] 합본이라 둘로 분리
	     사이트로고는 단색 SVG mask(색은 CSS), 섹션명은 숨김텍스트(.ht) 복원
	  3. 1300px 이하에서 섹션 메뉴를 햄버거 드롭다운으로 접음
	  4. 900px 이하에서 상단 GNV를 햄버거로 접음

	텍스트는 전부 top_menu.php의 <span class="ht">…</span>에 이미 들어 있다.
	그래서 top_menu.php는 수정하지 않는다(rakotel 검색폼 분리만 예외).

	컨테이너 id가 섹션마다 두 가지다 - 하이픈 #header-box(community/towninfo/radio/tv/
	obituaries/rakotel)와 언더스코어 #header_box(market/homeshopping/travel/uslife/
	uslife2). 그래서 모든 규칙에 두 셀렉터를 함께 적는다. news만 또 다른 구조라 아래 5절 참고.

	※ common_responsive.css와 헤더 규칙이 일부 중복된다. 그 파일은 본문(#contents/#footer/
	  #con1250)까지 함께 다루는 반응형 파일럿(community/ads.php, 카드뉴스) 전용이라 그대로 뒀다.
	  본문 반응형이 끝나면 두 파일을 통합할 것.
*/

/*
	섹션별 전경색. 기본은 흰색이고, 배경이 밝은 섹션은 해당 섹션 CSS에서
	`#header { --rk-header-fg: #333; }` 한 줄로 덮는다.
	#header(특이도 100)가 :root(10)보다 높아 CSS 로드 순서와 무관하게 섹션 쪽이 이긴다.
	현재 덮고 있는 곳 - obituaries(#f2f2f2), rakotel(#fed436), news의 #logo-line(흰 배경)
*/
:root {
    --rk-header-fg: #fff;
    --rk-header-line: rgba(255, 255, 255, .35);
    --rk-header-hover: rgba(0, 0, 0, .12);
}


/* ==================================================================
   1. 컨테이너 유동화
   ================================================================== */

#gnv_box {
    width: 100%;
    min-width: 0;
    max-width: 1250px;
    padding: 0 15px;
    box-sizing: border-box;
}

#header {
    height: auto;
}

/*
	height 대신 min-height + overflow:hidden(BFC).
	고정 height면 메뉴가 폭을 넘겨 둘째 줄로 밀렸을 때 바 밖(흰 배경)으로 나가
	흰 글자가 안 보이는 채로 조용히 사라진다. 이렇게 두면 바가 늘어나 눈에 띈다.
*/
#header-box,
#header_box {
    width: 100%;
    min-width: 0;
    max-width: 1250px;
    min-height: 70px;
    height: auto;
    overflow: hidden;
    margin: 0 auto;
    box-sizing: border-box;
}


/* ==================================================================
   2. 로고 분리 - 사이트로고(mask) + 섹션명(텍스트)
   ================================================================== */

#header-box h1,
#header_box h1 {
    float: left;
    width: auto;
    height: 70px;
}

#header-box h1 a,
#header_box h1 a {
    display: flex;
    align-items: center;
    gap: 12px;
    height: 70px;
    text-decoration: none;
}

#header-box h1 a:hover,
#header_box h1 a:hover {
    text-decoration: none;
}

/*
	사이트 로고. 단색 SVG를 mask로 깔고 색은 background-color로 준다.
	viewBox 0 0 731.03 151.7 (비율 4.82:1) 이므로 높이 31px = 폭 149px.
*/
#header-box h1 a::before,
#header_box h1 a::before {
    content: "";
    display: block;
    flex: none;
    width: 149px;
    height: 31px;
    background-color: var(--rk-header-fg);
    -webkit-mask: url('https://rk-asset.s3.amazonaws.com/www/images/logo/rk_logo_white.svg') no-repeat center / contain;
            mask: url('https://rk-asset.s3.amazonaws.com/www/images/logo/rk_logo_white.svg') no-repeat center / contain;
}

/* 섹션명. .ht(접근성 숨김)를 되살리고 스프라이트를 끈다. */
#header-box .logo,
#header_box .logo {
    position: static;
    width: auto !important;
    height: auto !important;
    overflow: visible;
    line-height: normal;
    text-indent: 0;
    background: none !important;
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-size: 31px;
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--rk-header-fg);
    white-space: nowrap;
}


/* ==================================================================
   3. 메뉴 텍스트화 (폭과 무관하게 항상)
   ================================================================== */

#header-box .menu,
#header_box .menu {
    float: left;
    width: auto;
    height: 70px;
    margin-left: 16px;
    background: none;
}

#header-box .menu ul,
#header_box .menu ul {
    height: 70px;
    background: none;
}

#header-box .menu ul li,
#header_box .menu ul li {
    float: left;
    width: auto;
    height: 70px;
}

/*
	섹션 CSS는 `#header-box .menu ul li a.market`처럼 클래스로 한 번 더 좁혀서
	특이도가 이 규칙보다 높다(123 vs 113). 스프라이트와 고정폭을 확실히 끄기 위해
	충돌하는 세 속성만 !important로 덮는다. common_responsive.css의 선례와 같다.

	:has(.ht)로 좁힌 이유 - uslife/uslife2는 메뉴가 원래부터 텍스트라
	(<a>이민법</a>, .ht 스팬 없음) 자체 padding/line-height를 이미 갖고 있다.
	여기서 box 값을 덮으면 오히려 정렬이 깨진다. 숨김텍스트 라벨을 가진 링크,
	즉 스프라이트 메뉴에만 적용한다.
*/
/* 글자 스타일은 모든 섹션에 동일하게 (uslife/uslife2처럼 원래 텍스트인 메뉴 포함) */
#header-box .menu ul li a,
#header_box .menu ul li a {
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -0.03em;
    color: var(--rk-header-fg);
}

/*
	uslife/uslife2의 .ios-menu(맥에서만 붙는 클래스)는 상하 패딩이 28.8/22.4로 비대칭이라
	글자가 li 중앙보다 3.3px 아래에 놓인다. 그러면 li 중앙에 그리는 구분선만 위로 뜬 것처럼 보인다.
	상하를 맞춰 글자를 세로 중앙에 두면 구분선과 정렬되고, 윈도우 렌더(1.6rem 대칭)와도 같아진다.
	(70 - 글자 19) / 2 = 25.5px
*/
#header-box .menu ul li a.ios-menu,
#header_box .menu ul li a.ios-menu {
    padding-top: 25.5px !important;
    padding-bottom: 25.5px !important;
    /* 좌우도 다른 섹션과 같은 비율로 25% 확대 (11.2px -> 14px) */
    padding-left: 14px !important;
    padding-right: 14px !important;
}

/* 박스 값은 스프라이트 메뉴에만. uslife/uslife2는 자체 padding/line-height가 있어 덮으면 깨진다. */
#header-box .menu ul li a:has(.ht),
#header_box .menu ul li a:has(.ht) {
    float: left;
    display: block;
    white-space: nowrap;
    width: auto !important;
    height: 70px !important;
    line-height: 70px;
    padding: 0 12.5px;   /* 항목 사이 간격 20px -> 25px (25% 확대) */
    /* 스프라이트 시절 항목별 여백(obituaries a.ads의 margin-left:50px 등)이 남아 있어
       간격이 들쭉날쭉해진다. 간격은 위 padding 하나로만 결정되게 한다. */
    margin: 0 !important;
    background: none !important;
}

#header-box .menu ul li a .ht,
#header_box .menu ul li a .ht {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    line-height: inherit;
    text-indent: 0;
}

/*
	메뉴 사이 구분선. 원본은 <li class="bar">(스프라이트 1px 조각)인데 섹션마다 있기도
	없기도 하다. 기존 bar는 숨기고 모든 섹션에 의사요소로 동일하게 넣어 통일한다.
	`li:not(.bar) ~ li:not(.bar)`이므로 첫 항목 앞에는 안 붙는다.
*/
#header-box .menu ul li.bar,
#header_box .menu ul li.bar {
    display: none;
}

#header-box .menu ul li:not(.bar) ~ li:not(.bar),
#header_box .menu ul li:not(.bar) ~ li:not(.bar) {
    position: relative;
}

#header-box .menu ul li:not(.bar) ~ li:not(.bar)::before,
#header_box .menu ul li:not(.bar) ~ li:not(.bar)::before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 1px;
    height: 14px;
    /* 정중앙(-7px)이면 한글은 디센더가 없어 살짝 높아 보인다. 3px 내려 시각 보정. */
    margin-top: -4px;
    background: var(--rk-header-line);
}

/*
	메뉴 옆 별도 링크(community의 유료광고신청 등). 메뉴 항목과 같은 줄·같은 크기로 맞춘다.
	community.css는 width:120px 고정이라 19px 글자가 잘려서 auto로 푼다.
	float은 섹션 원본을 그대로 둔다(community는 left, news는 right).
*/
#header-box strong,
#header_box strong {
    float: right;
    width: auto;
    height: 70px;
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-weight: 500;
}

#header-box strong a,
#header_box strong a {
    display: block;
    height: 70px;
    line-height: 70px;
    padding: 0 14px;
    background: none !important;
    color: var(--rk-header-fg);
}

/* 광고 안내 링크 앞 아이콘(확성기). mask라서 글자색(--rk-header-fg)을 그대로 따라간다. */
#header-box strong a::before,
#header_box strong a::before {
    content: "";
    display: inline-block;
    width: 19px;
    height: 19px;
    margin-right: 6px;
    vertical-align: -3px;
    background-color: var(--rk-header-fg);
    -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%20-960%20960%20960%22%3E%3Cpath%20d%3D%22M720-440v-80h160v80H720Zm48%20280-128-96%2048-64%20128%2096-48%2064Zm-80-480-48-64%20128-96%2048%2064-128%2096ZM200-200v-160h-40q-33%200-56.5-23.5T80-440v-80q0-33%2023.5-56.5T160-600h160l200-120v480L320-360h-40v160h-80Zm100-280Zm260%20134v-268q27%2024%2043.5%2058.5T620-480q0%2041-16.5%2075.5T560-346Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center / contain;
            mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%20-960%20960%20960%22%3E%3Cpath%20d%3D%22M720-440v-80h160v80H720Zm48%20280-128-96%2048-64%20128%2096-48%2064Zm-80-480-48-64%20128-96%2048%2064-128%2096ZM200-200v-160h-40q-33%200-56.5-23.5T80-440v-80q0-33%2023.5-56.5T160-600h160l200-120v480L320-360h-40v160h-80Zm100-280Zm260%20134v-268q27%2024%2043.5%2058.5T620-480q0%2041-16.5%2075.5T560-346Z%22%2F%3E%3C%2Fsvg%3E") no-repeat center / contain;
}

#header-box strong a .ht,
#header_box strong a .ht {
    position: static;
    width: auto !important;
    height: auto !important;
    overflow: visible;
    line-height: inherit;
    text-indent: 0;
    background: none !important;
    font-size: 19px;
    letter-spacing: -0.03em;
}


/* ==================================================================
   4. hover / 선택 상태
   ================================================================== */

#header-box .menu ul li a:hover,
#header_box .menu ul li a:hover {
    background: var(--rk-header-hover) !important;
    color: var(--rk-header-fg);
    text-decoration: none;
}

/*
	현재 메뉴 강조. news/top_menu.php는 선택된 항목에 `<class>_over`를 붙인다.
	다른 섹션 top_menu.php는 아직 현재 페이지 표시용 클래스를 내보내지 않아 hover만 동작한다.
	그 섹션들이 나중에 _over를 붙이면 이 규칙이 그대로 적용된다.
*/
#header-box .menu ul li a[class$="_over"],
#header_box .menu ul li a[class$="_over"],
#menu-box .menu ul li a[class$="_over"],
#header-box .menu ul li a.rk-active,
#header_box .menu ul li a.rk-active,
#menu-box .menu ul li a.rk-active {
    background: var(--rk-header-hover) !important;
    box-shadow: inset 0 -3px 0 var(--rk-header-fg);
    font-weight: 700;
}


/* ==================================================================
   5. 구조가 다른 두 섹션
   ================================================================== */

/*
	5-1. radio 프로그램 서브헤더(#header-sub).
	프로그램 사진(.pic-circle img)과 이름(.program-name)은 원래 이미지가 아니므로
	그대로 두고, 스프라이트인 우측 메뉴만 텍스트로 바꾼다.
*/
#header-sub-box .top-box .menu ul li a {
    width: auto !important;
    height: 70px !important;
    line-height: 70px;
    padding: 0 12px;
    background: none !important;
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -0.03em;
    color: var(--rk-header-fg);
    white-space: nowrap;
}

#header-sub-box .top-box .menu ul li a .ht {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    line-height: inherit;
    text-indent: 0;
}

#header-sub-box .top-box .menu ul li a:hover {
    background: var(--rk-header-hover) !important;
    text-decoration: none;
}

/*
	5-2. news 섹션. 유일하게 #logo-line + #menu-line/#menu-box 구조다.
	헤더 폭도 1100px(다른 섹션 1250px)이고 header_top_1100.php를 쓴다.
	로고 줄은 흰 배경이라 news.css에서 #logo-line의 전경색을 브랜드 블루로 덮는다.
*/
/*
	로고줄은 자식이 h1과 .search_news 둘뿐이라 flex로 바꿔 아래를 맞춘다.
	(float + margin-top 매직넘버 대신) news.css의 .search_news margin-top은 상쇄한다.
*/
#logo-line {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
}

#logo-line .search_news {
    margin-top: 0;
}

/* news.css의 h1은 270x60 고정이라 안쪽 a가 위로 붙는다. 내용 크기로 풀어준다. */
#logo-line h1 {
    float: none;
    width: auto;
    height: auto;
}

#logo-line h1 a {
    display: flex;
    align-items: flex-end;
    gap: 12px;
    text-decoration: none;
}

#logo-line h1 a::before {
    content: "";
    display: block;
    flex: none;
    width: 149px;
    height: 31px;
    background-color: var(--rk-header-fg);
    -webkit-mask: url('https://rk-asset.s3.amazonaws.com/www/images/logo/rk_logo_white.svg') no-repeat center / contain;
            mask: url('https://rk-asset.s3.amazonaws.com/www/images/logo/rk_logo_white.svg') no-repeat center / contain;
}

#logo-line .logo {
    position: static;
    width: auto !important;
    height: auto !important;
    overflow: visible;
    line-height: normal;
    text-indent: 0;
    background: none !important;
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-size: 31px;
    font-weight: 500;
    letter-spacing: -0.02em;
    color: var(--rk-header-fg);
    white-space: nowrap;
}

#menu-box .menu ul li a {
    width: auto !important;
    height: 50px !important;
    line-height: 50px;
    padding: 0 14px;
    background: none !important;
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -0.03em;
    color: var(--rk-header-fg);
    white-space: nowrap;
}

#menu-box .menu ul li a .ht {
    position: static;
    width: auto;
    height: auto;
    overflow: visible;
    line-height: inherit;
    text-indent: 0;
}

#menu-box .menu ul li a:hover {
    background: var(--rk-header-hover) !important;
    text-decoration: none;
}

/* 보도자료는 원본 스프라이트에서 노란색으로 강조돼 있다(#ffde00 실측). */
#menu-box .menu ul li a.press,
#menu-box .menu ul li a.press_over {
    color: #ffde00;
}

/*
	뉴스제보는 우측 끝에 붙고 다른 메뉴와 같은 줄(50px)에 정렬된다.
	news.css의 `#menu-box strong`은 width:67px 고정이라 19px 글자가 잘린다.
*/
#menu-box strong {
    float: right;
    width: auto;
    height: 50px;
}

#menu-box strong a {
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 14px 0 0;
    background: none !important;
}

/*
	뉴스제보는 스프라이트가 <a>가 아니라 안쪽 <span class="report ht">에 붙어 있고
	news.css의 `#menu-box .report`(특이도 110)가 더 높아서 여기서 확실히 덮는다.
*/
#menu-box strong a .ht {
    position: static;
    width: auto !important;
    height: auto !important;
    overflow: visible;
    line-height: inherit;
    text-indent: 0;
    background: none !important;
    font-family: 'Noto Sans KR', AppleSDGothicNeo-Regular, 'Malgun Gothic', sans-serif;
    font-size: 19px;
    font-weight: 700;
    letter-spacing: -0.03em;
    color: var(--rk-header-fg);
}


/* ==================================================================
   6. 1300px 이하 - 섹션 메뉴 햄버거
      토글 버튼은 common/header_top_responsive.php의 JS가 h1 뒤에 삽입한다.
   ================================================================== */

.submenu-toggle {
    display: none;
}

@media only screen and (max-width: 1300px) {

    #header-box,
    #header_box {
        height: auto;
        overflow: hidden;
        padding: 0 12px;
    }

    #header-box h1,
    #header_box h1 {
        float: left;
    }

    #header-box strong,
    #header_box strong {
        display: none;
    }

    .submenu-toggle {
        display: inline-block;
        float: right;
        margin-top: 18px;
        background: none;
        border: 1px solid var(--rk-header-fg);
        color: var(--rk-header-fg);
        padding: 6px 14px;
        border-radius: 4px;
        font-size: 13px;
        cursor: pointer;
    }

    /* news 메뉴는 1150px에서 접히므로 토글도 그때 나와야 한다.
       여기서 같이 띄우면 1151~1300px 구간에서 가로 메뉴와 토글이 함께 보인다. */
    #logo-line .submenu-toggle {
        display: none;
    }

    #header-box .menu,
    #header_box .menu {
        float: none;
        clear: both;
        width: 100%;
        height: auto;
        margin-left: 0;
        display: none;
    }

    #header-box .menu.open,
    #header_box .menu.open {
        display: block;
    }

    /*
    	uslife/uslife2의 .menu ul은 display:flex + nowrap + overflow-x:auto라
    	접었을 때도 가로 스크롤 줄로 남는다. 세로 목록이 되도록 풀어준다.
    	(!important는 없어서 특이도만 올리면 이긴다 — #header 접두사로 211)
    */
    #header #header-box .menu ul,
    #header #header_box .menu ul {
        display: block;
        height: auto;
        overflow: visible;
        white-space: normal;
    }

    #header #header-box .menu ul li,
    #header #header_box .menu ul li {
        display: block;
        float: none;
        width: 100%;
        height: auto;
        border-bottom: 1px solid var(--rk-header-line);
    }

    #header-box .menu ul li.bar,
    #header_box .menu ul li.bar {
        display: none;
    }

    #header-box .menu ul li:not(.bar) ~ li:not(.bar)::before,
    #header_box .menu ul li:not(.bar) ~ li:not(.bar)::before {
        display: none;
    }

    /*
    	접힌 드롭다운의 행 높이/들여쓰기는 여기서 한 번만 정한다.
    	데스크탑 규칙(`a:has(.ht)` 특이도 123)이 이 규칙(113)보다 높아서
    	!important 없이는 데스크탑 padding/line-height가 그대로 남는다.
    	그 탓에 섹션마다 행 높이가 달라졌었다(rakotel 70px vs news 51px).
    	line-height 26 + 상하 padding 22*2 = 70px 로 통일.
    */
    #header #header-box .menu ul li a,
    #header #header_box .menu ul li a {
        display: block;
        float: none !important;
        width: auto !important;
        height: auto !important;
        line-height: 26px !important;
        padding: 22px 12.5px !important;
        text-align: left;
    }

    /* radio 프로그램 서브헤더(#header-sub)도 같은 방식으로 접는다.
       radio.css의 #header-sub-box는 width:1250px 고정이라 좁은 폭에서 토글이
       화면 밖(x≈1250)으로 나가 안 보인다. 먼저 유동화한다. */
    #header-sub {
        height: auto;
    }

    #header-sub-box {
        width: 100%;
        min-width: 0;
        max-width: 1250px;
        height: auto;
        overflow: hidden;
        padding: 0 12px;
        box-sizing: border-box;
    }

    #header-sub-box .top-box {
        overflow: hidden;
    }

    #header-sub-box .sub-box {
        clear: both;
        overflow: hidden;
    }

    #header-sub-box .sub-box .sub-menu ul {
        display: flex;
        flex-wrap: wrap;
    }

    #header-sub-box .top-box .menu {
        float: none;
        clear: both;
        width: 100%;
        height: auto;
        display: none;
    }

    #header-sub-box .top-box .menu.open {
        display: block;
    }

    #header-sub-box .top-box .menu ul {
        height: auto;
    }

    #header-sub-box .top-box .menu ul li {
        display: block;
        float: none;
        width: 100%;
        border-bottom: 1px solid var(--rk-header-line);
    }

    #header-sub #header-sub-box .top-box .menu ul li a {
        display: block;
        float: none !important;
        width: auto !important;
        height: auto !important;
        line-height: 26px !important;
        padding: 22px 12.5px !important;
        text-align: left;
    }

    /* rakotel - 검색폼은 토글과 무관하게 항상 보인다. 그러라고 .menu 밖으로 뺐다. */
    #header-box .search-area,
    #header_box .search-area {
        float: none;
        clear: both;
        width: 100%;
        padding: 0 0 12px 0;
    }
}


/* ==================================================================
   7. 1150px 이하 - news (헤더 폭이 1100px이라 다른 섹션보다 늦게 접는다)
   ================================================================== */

@media only screen and (max-width: 1150px) {

    /*
    	좁은 폭에서는 로고와 검색을 나란히 두면 검색박스가 섹션명을 덮는다.
    	rakotel과 같은 방식으로 검색을 아래 줄에 full-width로 내린다.
    */
    #logo-line {
        display: block;
        width: 100%;
        min-width: 0;
        height: auto;
        padding: 10px 12px;
        box-sizing: border-box;
        overflow: hidden;
    }

    /* 로고는 왼쪽에 띄워서 토글(float:right)이 같은 줄 오른쪽에 오게 하고,
       검색은 clear로 아래 줄에 full-width로 내린다(업소록과 동일한 배치). */
    #logo-line h1 {
        float: left;
    }

    #logo-line .search_news {
        float: none;
        clear: both;
        width: 100%;
        margin-top: 8px;
    }

    #logo-line .search_news .box_searchbar {
        width: auto;
    }

    /*
    	토글 버튼이 float:right라서 overflow:hidden으로 BFC를 만들어 높이를 잡아준다.
    	없으면 #menu-box 높이가 0이 되어 파란 메뉴바가 통째로 사라진다.
    */
    #menu-box {
        width: 100%;
        min-width: 0;
        height: auto;
        overflow: hidden;
        box-sizing: border-box;
        padding: 0 12px;
    }

    #menu-line {
        height: auto;
    }

    #menu-box strong {
        display: none;
    }

    /* news 토글은 파란 바가 아니라 흰 배경의 로고 줄에 놓인다(업소록과 같은 위치).
       #logo-line 안에서는 --rk-header-fg가 브랜드 블루라 테두리/글자가 그 색을 따른다. */
    #logo-line .submenu-toggle {
        display: inline-block;
        margin-top: 0;
    }

    #menu-box .menu {
        float: none;
        clear: both;
        width: 100%;
        height: auto;
        display: none;
    }

    #menu-box .menu.open {
        display: block;
    }

    #menu-box .menu ul {
        height: auto;
    }

    #menu-box .menu ul li {
        display: block;
        float: none;
        width: 100%;
        border-bottom: 1px solid var(--rk-header-line);
    }

    /* 위 #header-box 드롭다운과 동일 치수 (행 70px, 들여쓰기 12.5px) */
    #menu-line #menu-box .menu ul li a {
        display: block;
        float: none !important;
        width: auto !important;
        height: auto !important;
        line-height: 26px !important;
        padding: 22px 12.5px !important;
        text-align: left;
    }
}


/* ==================================================================
   7-1. 푸터 반응형
        footer_1250.php / footer_responsive.php는 마크업이 완전히 동일하고
        (내용 md5 일치) 반응형 여부는 CSS로만 갈린다. 그래서 include는 그대로 두고
        여기서 고정폭만 풀어준다.
        common_1250.css 기준: .foot-box 1250 고정, .left 140, .right 1110 고정.
   ================================================================== */

#footer .foot-box {
    width: 100%;
    min-width: 0;
    max-width: 1250px;
    height: auto;
    padding: 0 15px;
    box-sizing: border-box;
}

/* .right는 1110px 고정이라 로고(140px)를 뺀 나머지로 유동화한다 */
#footer .foot-box .right {
    width: calc(100% - 140px);
}

#footer .foot-box img {
    max-width: 100%;
    height: auto;
}

/* 패밀리 셀렉트가 좁은 폭에서 넘치지 않게 */
#footer .foot-box .right .family {
    flex-wrap: wrap;
    gap: 6px;
}

#footer .foot-box .right .family select {
    max-width: 100%;
}

@media only screen and (max-width: 900px) {

    #footer .foot-box {
        padding: 15px;
    }

    #footer .foot-box .left {
        float: none;
        width: 100%;
        text-align: center;
        margin-bottom: 10px;
    }

    #footer .foot-box .right {
        float: none;
        width: 100%;
    }

    #footer .foot-box .right ul.menu li {
        float: none;
        display: block;
        padding: 2px 0;
    }

    #footer .foot-box .right ul.menu li.bar {
        display: none;
    }
}


/* ==================================================================
   8. 900px 이하 - 상단 GNV 햄버거
      토글 버튼과 #gnv-menu 래퍼는 common/header_top_responsive.php가 출력한다.
   ================================================================== */

.gnv-toggle {
    display: none;
}

@media only screen and (max-width: 900px) {

    #gnv {
        height: auto;
        overflow: visible;
    }

    #gnv_box {
        padding: 0;
    }

    .gnv-toggle {
        display: block;
        width: 100%;
        box-sizing: border-box;
        text-align: left;
        padding: 8px 12px;
        background: #f2f2f2;
        border: 0;
        font-size: 14px;
        color: #333;
        cursor: pointer;
    }

    #gnv-menu {
        display: none;
    }

    #gnv-menu.open {
        display: block;
    }

    #gnv_box .gnv_left {
        float: none;
        height: auto;
    }

    #gnv_box .gnv_left li {
        float: none;
        border-right: 0;
        border-bottom: 1px solid #fff;
    }

    #gnv_box .gnv_left li a,
    #gnv_box .gnv_left li:first-child a {
        padding-left: 20px;
    }

    #gnv_box .gnv_right {
        float: none;
        width: 100%;
        height: auto;
    }

    #gnv_box .gnv_right li {
        float: left;
    }

    #gnv_box .gnv_right li:first-child a {
        padding-left: 20px;
    }

    #header-box h1 a::before,
    #header_box h1 a::before,
    #logo-line h1 a::before {
        width: 116px;
        height: 24px;
    }

    #header-box .logo,
    #header_box .logo,
    #logo-line .logo {
        font-size: 24px;
    }
}
