/* 메인 화면 디자인 (2026-10-30) — index.html 에서만 불러온다(html.cg-main). cg-tokens.css 다음, main-look.js 와 짝.
   원칙: 원래 함수·목록 조회·onclick·슬라이드(slick)는 그대로 두고 모양만 바꾼다. 서버 요청을 새로 만들지 않는다.
   크기·색·간격은 cg-tokens.css 의 --cg-* 변수로. 처음 뜰 때 밀리지 않게 목록 자리 높이를 미리 잡는다(카드 사진 높이 고정).
   1. 위 문구  2. 날짜(실시간 예약과 같은 모양)  3. 실시간 예약 현황 탭·지역  4. 검색·업무제휴문의
   5. 구역 제목  6. 특가상품  7. 추천 클럽  8. 추천 국내·해외투어  9. 해외 인기 도시  10. 공지사항  11. PC  12. 위쪽 틀 A(?frame=a) */

html.cg-main body, html.cg-main #content { background: var(--cg-surface); }
html.cg-main #content { color: var(--cg-text); letter-spacing: -0.2px; }
html.cg-main #content .m-inner { width: 100%; max-width: 1006px; padding: 0 var(--cg-sp-4); box-sizing: border-box; }

/* 아이콘(머리말·검색·아래 메뉴): 아이콘 글꼴이 오기 전 'notifications' 같은 글자가 줄을 넓혀 처음 뜰 때 머리말이 출렁이던 것 → 아이콘 한 칸 크기로 고정 */
html.cg-main .material-symbols-outlined { display: inline-block; width: 1em; overflow: hidden; white-space: nowrap; vertical-align: middle; }

/* ── 1. 위 문구: 큰 영문 제목 대신 한 줄 알약 ── */
html.cg-main .cal_top { margin: 0; padding: var(--cg-sp-2) 0 var(--cg-sp-1); color: inherit; }
html.cg-main .cal_top .m-inner > div:first-child { display: inline-flex !important; align-items: center; gap: 6px; height: 28px; margin: 0 !important; padding: 0 var(--cg-sp-3); border-radius: var(--cg-r-pill); background: var(--cg-gray-900); }
html.cg-main .cal_top .m-inner > div:first-child::before { content: ""; width: 6px; height: 6px; border-radius: 50%; background: #22c55e; }
html.cg-main .cal_top .c1-badge { display: none !important; }
html.cg-main .cal_top .m-inner > div:first-child > span:not(.c1-badge) { margin: 0 !important; color: #fff !important; font-size: var(--cg-fs-meta) !important; font-weight: var(--cg-fw-bold) !important; letter-spacing: -0.2px !important; }
html.cg-main .cal_top .korean-title { display: none !important; }

/* ── 2. 날짜: 'N월 날짜 선택' 단추 + 요일 상자 (실시간 골프예약과 같은 모양) ── */
html.cg-main #pageCont.golfindex { margin: 0; padding: var(--cg-sp-2) 0 var(--cg-sp-3); background: var(--cg-surface); }
html.cg-main .golfindex > #mCalendar .m-inner { display: flex !important; flex-direction: column !important; align-items: stretch !important; gap: 10px; max-width: 1006px; padding: 0 var(--cg-sp-4) !important; line-height: normal !important; border-radius: 0; background: transparent !important; }
html.cg-main .golfindex > #mCalendar .month { position: relative; padding: 0 !important; width: auto !important; }
html.cg-main .golfindex > #mCalendar .month button { display: inline-flex !important; flex-direction: row !important; align-items: center !important; gap: 6px !important; width: auto !important; min-width: 0 !important; height: 34px !important; padding: 0 var(--cg-sp-3) !important; border: 1px solid var(--cg-line) !important; border-radius: 10px; background: #fff; font-size: 14px !important; font-weight: var(--cg-fw-heavy) !important; color: var(--cg-text) !important; line-height: 1 !important; }
html.cg-main .golfindex > #mCalendar .month button::after { content: "" !important; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232563eb' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='16' rx='2'/%3E%3Cpath d='M16 3v4M8 3v4M3 10h18'/%3E%3C/svg%3E") no-repeat center / contain; }
html.cg-main .golfindex > #mCalendar .month #month_s::after { content: " 날짜 선택"; }
html.cg-main .golfindex > #mCalendar .month ul { top: 40px; left: 0; width: 120px; margin-top: 0 !important; border: 1px solid var(--cg-line); border-radius: 10px; overflow: hidden; background: #fff; box-shadow: var(--cg-shadow-pop); }
html.cg-main .golfindex > #mCalendar .month ul li { padding: 0; background: #fff; color: var(--cg-gray-700); font-size: var(--cg-fs-body); font-weight: var(--cg-fw-medium); line-height: normal; }
html.cg-main .golfindex > #mCalendar .month ul li p { padding: 10px 14px; border-bottom: 1px solid var(--cg-gray-100); text-align: left; }
html.cg-main .golfindex > #mCalendar .month ul li p::after { content: "월"; }
html.cg-main .golfindex > #mCalendar .month ul li:hover { background: var(--cg-blue-50); color: var(--cg-accent); }
html.cg-main .golfindex > #mCalendar .day { width: 100% !important; min-height: 60px; height: auto !important; margin: 0 !important; padding: 2px 0 8px !important; box-sizing: border-box; scrollbar-width: none; }   /* 요일이 채워지기 전에도 같은 높이 */
html.cg-main .golfindex > #mCalendar .day::-webkit-scrollbar { display: none; }
html.cg-main .golfindex > #mCalendar .day ul { margin: 0 !important; gap: 10px; }
html.cg-main .golfindex > #mCalendar .day ul li { flex: none; width: 46px !important; max-width: none !important; margin: 0 !important; padding: 0 !important; }
html.cg-main .golfindex > #mCalendar .day ul li::after { display: none !important; }
html.cg-main .golfindex > #mCalendar .day ul li button { position: relative; display: flex !important; flex-direction: column; align-items: center; justify-content: center; gap: 2px; width: 46px; height: 50px; padding: 0; border: 1px solid var(--cg-line); border-radius: var(--cg-r-lg); background: #fff; font-size: 12px !important; font-weight: var(--cg-fw-medium) !important; color: var(--cg-text-3) !important; transform: none; }
html.cg-main .golfindex > #mCalendar .day ul li button > a.month { display: none; }
html.cg-main .golfindex > #mCalendar .day ul li button span { display: block; width: auto !important; height: auto !important; margin: 0 !important; border-radius: 0; background: none !important; font-size: 16px !important; font-weight: var(--cg-fw-heavy) !important; line-height: 1.2; color: var(--cg-text) !important; }
html.cg-main .golfindex > #mCalendar .day ul li button.토, html.cg-main .golfindex > #mCalendar .day ul li button span.토 { color: var(--cg-accent) !important; }
html.cg-main .golfindex > #mCalendar .day ul li button.일, html.cg-main .golfindex > #mCalendar .day ul li button span.일 { color: #e5484d !important; }
html.cg-main .golfindex > #mCalendar .day ul li.on button { border-color: var(--cg-accent); background: var(--cg-accent); color: #fff !important; box-shadow: 0 4px 8px rgb(37 99 235 / 28%); }
html.cg-main .golfindex > #mCalendar .day ul li.on button span { color: #fff !important; }
/* 달이 바뀌는 칸('11월'): 빈 날짜 상자 대신 좁은 구분 글자 */
html.cg-main .golfindex > #mCalendar .day ul li.cg-mdiv { width: auto !important; }
html.cg-main .golfindex > #mCalendar .day ul li.cg-mdiv button { width: auto; padding: 0 2px; border: 0; background: none; box-shadow: none; cursor: default; }
html.cg-main .golfindex > #mCalendar .day ul li.cg-mdiv button > a.month { display: block; padding: 0 !important; font-size: var(--cg-fs-meta) !important; font-weight: var(--cg-fw-bold) !important; color: var(--cg-accent); }
html.cg-main .golfindex > #mCalendar .day ul li.cg-mdiv button span { display: none; }

/* ── 3. 실시간 예약 현황: 위 탭(밑줄) + 아래 탭(알약) + 지역 사진 ── */
html.cg-main #mCity { padding: 0; border-top: 1px solid var(--cg-gray-100); }
html.cg-main #mCity > .m-inner { padding: 0 !important; }
html.cg-main #mCity .top_tabs { display: flex; gap: var(--cg-sp-6); padding: 0 var(--cg-sp-4); border-bottom: 1px solid var(--cg-line); font-size: 15px; }
html.cg-main #mCity .top_tabs > div { flex: none; text-align: center; }   /* 세 탭을 왼쪽부터 글자 폭만큼 나란히(2026-11-01, 3등분 → 모음) */
html.cg-main #mCity .top_tabs .tab, html.cg-main #mCity .top_tabs a { display: block; height: 46px; line-height: 46px; font-size: 15px; font-weight: var(--cg-fw-medium); color: var(--cg-text-2); cursor: pointer; }
html.cg-main #mCity .top_tabs .tab { position: relative; font-weight: var(--cg-fw-bold); color: var(--cg-accent); }
html.cg-main #mCity .top_tabs .tab::after { content: ""; position: absolute; left: 0; right: 0; bottom: -1px; height: 2px; background: var(--cg-accent); }
html.cg-main #mCity .subtab_wrap .m-inner { margin: 0 auto !important; padding: var(--cg-sp-3) 0 var(--cg-sp-3) var(--cg-sp-4) !important; }
html.cg-main #mCity .subtabs { display: flex; gap: var(--cg-sp-2); margin: 0; padding-right: var(--cg-sp-4); overflow-x: auto; scrollbar-width: none; }
html.cg-main #mCity .subtabs::-webkit-scrollbar { display: none; }
html.cg-main #mCity .subtabs li { flex: none; height: 34px; padding: 0 14px; border-radius: var(--cg-r-pill); background: var(--cg-gray-100); opacity: 1; font-size: var(--cg-fs-body); font-weight: var(--cg-fw-medium); line-height: 34px; color: var(--cg-gray-600); transition: background .15s, color .15s; }
html.cg-main #mCity .subtabs li:hover { opacity: 1; font-weight: var(--cg-fw-medium); color: var(--cg-gray-900); }
html.cg-main #mCity .subtabs li.on { background: var(--cg-gray-900); color: #fff; font-weight: var(--cg-fw-bold); }
html.cg-main #mCity .subtabcon_wrap { padding: 0 var(--cg-sp-4) !important; }
html.cg-main #mCity .subtabcon_wrap:not(:has(.subtab-content.on)) > #subtab1 { display: block; }   /* 첫 탭이 켜지기 전에도 지역 줄 자리를 잡아 아래가 밀리지 않게 */
html.cg-main #mCity .city_list { height: 120px; min-height: 0; margin: 0; padding: 0 0 var(--cg-sp-4); overflow: auto hidden; scrollbar-width: none; box-sizing: content-box; }   /* 지역이 오기 전에도 같은 높이. 슬라이드가 풀린 때(날짜를 바꾸면 원래 함수가 목록을 다시 그림)도 손가락으로 넘길 수 있게 */
html.cg-main #mCity .city_list::-webkit-scrollbar { display: none; }
html.cg-main #mCity .city_list li { flex: none; width: 76px; min-width: 0; margin-right: 10px; }
html.cg-main #mCity .city_list li a { display: flex; flex-direction: column; align-items: center; color: var(--cg-text); }
html.cg-main #mCity .city_list li img { display: block; width: 76px !important; height: 72px; border-radius: var(--cg-r-lg); object-fit: cover; }
html.cg-main #mCity .city_list li dl { padding: 6px 0 0; text-align: center; }
html.cg-main #mCity .city_list li dl dt { margin: 0; font-size: var(--cg-fs-meta); font-weight: var(--cg-fw-bold); line-height: 18px; color: var(--cg-gray-800); }
html.cg-main #mCity .city_list li dl dd { margin: 0; font-size: var(--cg-fs-body); font-weight: var(--cg-fw-heavy); line-height: 20px; color: var(--cg-accent); }
html.cg-main #mCity .city_list li dl dd span { padding-left: 1px; font-size: var(--cg-fs-label); font-weight: var(--cg-fw-medium); }
html.cg-main #mCity .city_list li.cg-zero dl dd { color: var(--cg-text-3); }
html.cg-main #mCity .city_list .slick-arrow { display: none !important; }

/* ── 4. 검색 · 업무제휴문의 ── */
html.cg-main #mSearch { margin: 0; padding: var(--cg-sp-1) 0 var(--cg-sp-3); }
html.cg-main #mSearch .m-inner { display: block; padding: 0 var(--cg-sp-4) !important; }
html.cg-main #mSearch .cont { display: flex; align-items: center; width: 100%; max-width: none; height: 46px; padding: 0 4px 0 14px; border: 1px solid var(--cg-line); border-radius: var(--cg-r-lg); background: var(--cg-gray-50); line-height: normal; box-sizing: border-box; }
html.cg-main #mSearch .cont:focus-within { border-color: var(--cg-accent); background: #fff; }
html.cg-main #mSearch .cont input { width: calc(100% - 40px); height: 100%; font-size: 14px; color: var(--cg-text); }
html.cg-main #mSearch .cont input::placeholder { font-size: var(--cg-fs-body); font-weight: var(--cg-fw-normal); color: var(--cg-text-3); opacity: 1; }
html.cg-main #mSearch .cont button { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; }
html.cg-main #mSearch .cont button span { font-size: 22px; color: var(--cg-gray-500); }
html.cg-main #mPartner { margin: 0; padding: 0 0 var(--cg-sp-5); }
html.cg-main #mPartner .m-inner { display: flex; justify-content: flex-end; padding: 0 var(--cg-sp-4) !important; }
html.cg-main #mPartner .cont { display: inline-flex; white-space: nowrap; align-items: center; gap: 6px; width: auto; height: 36px; padding: 0 6px 0 14px; border-radius: var(--cg-r-pill); background: #fee500; color: #191919; font-size: var(--cg-fs-body); font-weight: var(--cg-fw-bold); line-height: normal; }
html.cg-main #mPartner .cont img { width: 24px !important; height: 24px !important; margin: 0 !important; }

/* ── 5. 구역(특가상품~공지사항) 공통: 위 구분선, 제목 18 + 설명 12 ── */
html.cg-main :is(#mPrice, #mClub, #mKrTour, #mPopular, #mAbroadTour, #mNotice) { width: auto; margin: 0; padding: var(--cg-sp-6) 0; border-top: 1px solid var(--cg-gray-100); overflow: hidden; letter-spacing: -0.2px; }
html.cg-main #content .m_tit { margin: 0 0 var(--cg-sp-3); }
html.cg-main #content .m_tit h3 { margin: 0; font-size: var(--cg-fs-head); font-weight: var(--cg-fw-heavy); line-height: 1.35; color: var(--cg-text); }
html.cg-main #content .m_tit p { margin: 2px 0 0; font-size: var(--cg-fs-meta); font-weight: var(--cg-fw-normal); line-height: 1.5; color: var(--cg-text-2); }
html.cg-main #content .m_tit.ver2 { display: flex; align-items: flex-end; justify-content: space-between; gap: var(--cg-sp-2); }
html.cg-main #content .m_tit.ver2 .r_cont a { flex: none; font-size: var(--cg-fs-body); font-weight: var(--cg-fw-bold); color: var(--cg-accent); white-space: nowrap; }
html.cg-main #content .recomslide { overflow: visible; }   /* 목록 폭은 원래대로(폰 150% → 다음 카드가 오른쪽에 걸쳐 보임), 구역이 화면 밖을 자른다 */
html.cg-main #content .recomslide ul { margin: 0; }
html.cg-main #content .recomslide ul li { margin-right: var(--cg-gap-card); }
html.cg-main #content .recomslide ul.slick-initialized { display: block; }   /* 켜진 뒤엔 블록(가로 흐름 상자 안에서 폭이 끝없이 커지지 않게) */
html.cg-main #content .recomslide ul:not(.slick-initialized) { display: flex; overflow: hidden; }   /* 켜지기 전에도 한 줄 */
html.cg-main #content .recomslide .slick-arrow { display: none !important; }
html.cg-main #content .recomslide :is(.slick-list, .slick-track, .slick-slide) { height: auto !important; }   /* 카드 높이는 내용만큼(원래는 화면 높이까지 늘어남) */

/* ── 6. 특가상품: 글자가 든 동그라미 그림 → 작은 카드(글자는 main-look.js 가 넣음, 링크 그대로) ── */
html.cg-main #mPrice .price_list { height: 112px; overflow: hidden; }
html.cg-main #mPrice .price_list li { flex: none; }
html.cg-main #mPrice .cont .price_list a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 2px; position: relative; width: 112px !important; height: 112px !important; padding: var(--cg-sp-3) var(--cg-sp-2); border: 1px solid var(--cg-line); border-radius: var(--cg-r-lg); background: var(--cg-surface) none !important; box-sizing: border-box; text-align: center; }
html.cg-main #mPrice .cg-pico { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; margin-bottom: 6px; border-radius: 50%; }   /* 아이콘 + 연한 배경 동그라미(2026-11-01) */
html.cg-main #mPrice .cg-pico svg { width: 20px; height: 20px; }
html.cg-main #mPrice .cg-pico.warn { background: var(--cg-warn-bg); color: var(--cg-warn); }
html.cg-main #mPrice .cg-pico.blue { background: var(--cg-blue-50); color: var(--cg-accent); }
html.cg-main #mPrice .cg-pico.ok { background: var(--cg-ok-bg); color: var(--cg-ok); }
html.cg-main #mPrice .cg-pbadge { position: absolute; top: 8px; right: 8px; height: 18px; padding: 0 5px; border-radius: var(--cg-r-sm); font-size: var(--cg-fs-badge); font-weight: var(--cg-fw-bold); line-height: 18px; }
html.cg-main #mPrice .cg-pbadge.hot { background: var(--cg-danger-bg); color: var(--cg-danger); }
html.cg-main #mPrice .cg-pbadge.rec { background: var(--cg-blue-50); color: var(--cg-accent); }
html.cg-main #mPrice .cg-ptit { font-size: 14px; font-weight: var(--cg-fw-heavy); line-height: 1.3; color: var(--cg-text); }
html.cg-main #mPrice .cg-psub { font-size: var(--cg-fs-label); line-height: 1.4; color: var(--cg-text-2); }

/* ── 7. 추천 클럽: 사진 + 아래 지역 상자·클럽명 ── */
html.cg-main #mClub .club_list { min-height: 218px; }
html.cg-main #mClub .cont ul li a { display: block; overflow: hidden; border: 1px solid var(--cg-line); border-radius: var(--cg-r-lg); background: var(--cg-surface); }
html.cg-main #mClub .cont ul li .img { height: 150px; background: var(--cg-gray-100); }
html.cg-main #mClub .cont ul li .img img { display: block; width: 100%; height: 150px; border-radius: 0; object-fit: cover; }
html.cg-main #mClub .cont ul li .txt { display: flex; align-items: center; gap: 10px; margin: 0; padding: var(--cg-sp-3); }
html.cg-main #mClub .cont ul li .txt .loc { flex: none; width: 40px; height: 40px; border-radius: var(--cg-r-md); background: var(--cg-accent); color: #fff; }
html.cg-main #mClub .cont ul li .txt .loc p { font-size: var(--cg-fs-label); font-weight: var(--cg-fw-bold); line-height: 1.25; text-align: center; }
html.cg-main #mClub .cont ul li .txt dl { min-width: 0; padding: 0; }
html.cg-main #mClub .cont ul li .txt dl dt { margin: 0; font-size: var(--cg-fs-title); font-weight: var(--cg-fw-bold); line-height: 1.35; color: var(--cg-text); overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
html.cg-main #mClub .cont ul li .txt dl dd { margin-top: 2px; font-size: var(--cg-fs-meta); font-weight: var(--cg-fw-normal); color: var(--cg-text-2); }

/* ── 8. 추천 국내투어 · 추천 해외투어: 사진 + 상품명(2줄) + 지역 + 정보 상자(골프장·숙소) + 가격·공항 ── */
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul { min-height: 345px; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li a { display: block; overflow: hidden; border: 1px solid var(--cg-line); border-radius: var(--cg-r-lg); background: var(--cg-surface); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .img { height: 160px; background: var(--cg-gray-100); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .img img { display: block; width: 100%; min-width: 0; height: 160px; max-height: none; border-radius: 0; object-fit: cover; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt { position: relative; display: flex; flex-direction: column; min-height: calc(var(--cg-pad-card) * 2 + var(--cg-fs-title) * var(--cg-lh-tight) * 2 + 20px + 8px + 56px + 34px); padding: var(--cg-sp-3); box-sizing: border-box; }   /* 상품명 2줄·지역·정보 상자·가격 자리 — 상품명이 한 줄이면 빈 자리는 정보 상자 위로(카드 높이는 같게) */
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt > dl:last-of-type { margin-bottom: var(--cg-sp-2); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt dl { display: block; margin: 0; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt dl dt { display: -webkit-box; width: auto; overflow: hidden; -webkit-line-clamp: 2; -webkit-box-orient: vertical; word-break: keep-all; overflow-wrap: anywhere; font-size: var(--cg-fs-title); font-weight: var(--cg-fw-bold); line-height: var(--cg-lh-tight); color: var(--cg-text); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt dl dd { width: auto; margin-top: 2px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: var(--cg-fs-meta); font-weight: var(--cg-fw-normal); line-height: 18px; color: var(--cg-text-2); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt p.t1 { display: flex; align-items: center; gap: 6px; margin: 0; padding: 2px 10px; background: var(--cg-gray-50); font-size: var(--cg-fs-meta); font-weight: var(--cg-fw-normal); line-height: 18px; color: var(--cg-gray-700); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt p.t1:first-of-type { margin-top: auto; padding-top: var(--cg-sp-2); border-radius: var(--cg-r-md) var(--cg-r-md) 0 0; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt p.t1:last-of-type { padding-bottom: var(--cg-sp-2); border-radius: 0 0 var(--cg-r-md) var(--cg-r-md); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .t1 img { flex: none; width: var(--cg-icon) !important; height: var(--cg-icon); opacity: .55; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .amt { display: block; margin: 10px 0 0; padding: 0; font-size: var(--cg-fs-price); font-weight: var(--cg-fw-heavy); line-height: 24px; color: var(--cg-accent); }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .air_wrap { position: absolute; right: var(--cg-sp-3); bottom: var(--cg-sp-3); display: flex; gap: 4px; max-width: 50%; margin: 0; overflow: hidden; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .air_wrap > span { flex: none; height: var(--cg-badge-h); margin: 0; padding: 0 6px; border-radius: var(--cg-r-sm); background: var(--cg-gray-100); font-size: var(--cg-fs-badge); font-weight: var(--cg-fw-bold); line-height: var(--cg-badge-h); color: var(--cg-gray-600); white-space: nowrap; }
html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .air_wrap > span:empty, html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .air_wrap > span.display_n { display: none; }

/* ── 9. 해외 인기 도시: 사진 위에 나라 이름표 + 아래 설명 ── */
html.cg-main #mPopular .city_list2 { min-height: 150px; }
html.cg-main #content #mPopular .cont ul li { position: relative; height: 150px !important; overflow: hidden; border-radius: var(--cg-r-lg); background: var(--cg-gray-100); }
html.cg-main #mPopular .cont ul li > a { display: block; height: 100%; }
html.cg-main #mPopular .cont ul li img { display: block; width: 100%; height: 150px; border-radius: 0; object-fit: cover; }
html.cg-main #mPopular .cont ul li p { position: absolute; inset: 0; display: flex; flex-direction: column; justify-content: flex-end; margin: 0; padding: 10px; background: linear-gradient(180deg, rgb(15 23 42 / 0) 45%, rgb(15 23 42 / 72%) 100%); font-size: var(--cg-fs-label); font-weight: var(--cg-fw-medium); line-height: 1.4; color: #fff; pointer-events: none; }   /* 누르면 아래 사진 링크로 */
html.cg-main #mPopular .cont ul li p > a:empty { display: none; }
html.cg-main #mPopular .cont ul li p > a:not(:empty) { position: absolute; top: 8px; left: 8px; height: var(--cg-badge-h); margin: 0 !important; padding: 0 8px; border-radius: var(--cg-r-sm); background: rgb(255 255 255 / 92%); font-size: var(--cg-fs-label); font-weight: var(--cg-fw-bold) !important; line-height: var(--cg-badge-h); color: var(--cg-text); }

/* ── 10. 공지사항: 한 줄 카드 ── */
html.cg-main #mNotice .cont ul { display: grid; grid-template-columns: 1fr; gap: var(--cg-gap-card); }
html.cg-main #mNotice .cont ul li { width: auto; margin: 0; padding: 0; }
html.cg-main #mNotice .cont ul li a { display: flex; align-items: center; gap: var(--cg-sp-3); padding: var(--cg-sp-3); border: 1px solid var(--cg-line); border-radius: var(--cg-r-lg); background: var(--cg-surface); }
html.cg-main #mNotice .cont ul li .img { flex: none; width: 44px; height: 44px; margin: 0; overflow: hidden; border-radius: 50%; background: var(--cg-gray-100); }
html.cg-main #mNotice .cont ul li .img img { display: block; width: 100%; height: 100%; object-fit: cover; }
html.cg-main #mNotice .cont ul li .txt { width: auto; min-width: 0; padding: 0; }
html.cg-main #mNotice .cont ul li .txt .date { margin: 0; font-size: var(--cg-fs-label); color: var(--cg-text-3); }
html.cg-main #mNotice .cont ul li .txt h4 { margin: 2px 0 0; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; font-size: var(--cg-fs-body); font-weight: var(--cg-fw-medium); color: var(--cg-text); }

/* ── 11. PC(768~): 넓은 화면은 글자는 그대로, 사진·카드만 조금 크게 ── */
@media (min-width: 768px) {
  html.cg-main :is(#mPrice, #mClub, #mKrTour, #mPopular, #mAbroadTour, #mNotice) { padding: 40px 0; }
  html.cg-main #mCity .top_tabs { max-width: 480px; }
  html.cg-main #mCity .top_tabs .tab::after { bottom: -1px; }
  html.cg-main #mCity > .m-inner, html.cg-main #mCity .subtab_wrap .m-inner, html.cg-main #mCity .subtabcon_wrap { padding-left: var(--cg-sp-4) !important; padding-right: var(--cg-sp-4) !important; }
  html.cg-main #mCity .city_list { height: 136px; }
  html.cg-main #mCity .city_list li { width: 96px; margin-right: var(--cg-sp-4); }
  html.cg-main #mCity .city_list li img { width: 96px !important; height: 88px; }
  html.cg-main #mSearch .cont { max-width: 640px; }
  html.cg-main #mPrice .price_list { height: 124px; }
  html.cg-main #mPrice .cont .price_list a { width: 150px !important; height: 124px !important; padding: var(--cg-sp-4); }
  html.cg-main #mPrice .cg-pbadge { top: 10px; right: 10px; }
  html.cg-main #mClub .club_list { min-height: 268px; }
  html.cg-main #mClub .cont ul li .img, html.cg-main #mClub .cont ul li .img img { height: 200px; }
  html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul { min-height: 395px; }
  html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .img, html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .img img { height: 200px; }
  html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt { padding: var(--cg-sp-4); }
  html.cg-main :is(#mKrTour, #mAbroadTour) .cont ul li .txt .air_wrap { right: var(--cg-sp-4); bottom: var(--cg-sp-4); }
  html.cg-main #mPopular .city_list2 { min-height: 220px; }
  html.cg-main #content #mPopular .cont ul li, html.cg-main #mPopular .cont ul li img { height: 220px !important; }
  html.cg-main #mPopular .cont ul li p { padding: 14px; font-size: var(--cg-fs-meta); }
  html.cg-main #mNotice .cont ul { grid-template-columns: 1fr 1fr; }   /* 공지가 여러 개면 두 칸씩 */
  html.cg-main #mNotice .cont ul li a { padding: var(--cg-sp-4); }
}
@media (min-width: 1024px) {   /* 넓은 PC: 업무제휴문의를 검색칸 오른쪽 옆에 */
  html.cg-main #mPartner { padding-bottom: var(--cg-sp-6); }
  html.cg-main #mPartner .m-inner { justify-content: flex-start; margin-top: calc(-46px - var(--cg-sp-3)) !important; padding-left: calc(640px + var(--cg-sp-6)) !important; }
  html.cg-main #mPartner .cont { height: 46px; padding: 0 8px 0 18px; }
}

/* ── 12. 위쪽 틀 A(조인 방식, 주소 ?frame=a 로 켬 — html.cg-frame-a): 날짜 줄 대신 '실시간 예약 현황' 탭 두 줄이 머리말 밑에 붙고,
   폰에서는 아래 빠른 메뉴 대신 탭바(홈·예약·조인·투어·마이), 업무제휴문의는 오른쪽 아래에 떠 있다. 틀 B(지금 방식)는 위 1~11 그대로 ── */
html.cg-frame-a #pageCont.golfindex { position: static !important; }   /* 날짜 줄은 붙지 않음(_sticky-range.js 도 sticky 가 아니면 손대지 않음) */
html.cg-frame-a #mCity.cg-stuck > .m-inner:first-child, html.cg-frame-a #mCity.cg-stuck > .subtab_wrap { position: fixed; left: 0; right: 0; z-index: 90; background: #fff; }
html.cg-frame-a #mCity.cg-stuck > .m-inner:first-child { top: var(--cg-hd, 60px); margin: 0 auto; box-shadow: 0 0 0 100vmax #fff; clip-path: inset(0 -100vmax); }   /* 탭 줄 뒤 흰 바탕을 화면 끝까지 */
html.cg-frame-a #mCity.cg-stuck > .subtab_wrap { top: calc(var(--cg-hd, 60px) + var(--cg-tab1, 47px)); border-bottom: 1px solid var(--cg-line); box-shadow: var(--cg-shadow); }
html.cg-frame-a #cgTabbar { display: none; }
@media (max-width: 1023px) {
  html.cg-frame-a #mPartner { padding: 0; }
  html.cg-frame-a #mPartner .cont { position: fixed; right: var(--cg-sp-4); bottom: calc(76px + env(safe-area-inset-bottom, 0px)); z-index: 95; height: 40px; box-shadow: var(--cg-shadow-pop); }
}
@media (max-width: 767px) {
  html.cg-frame-a #quickMo, html.cg-frame-a #quickMoDetail { display: none !important; }
  html.cg-frame-a #cgTabbar { position: fixed; left: 0; right: 0; bottom: 0; z-index: 99; display: grid; grid-template-columns: repeat(5, 1fr); height: calc(60px + env(safe-area-inset-bottom, 0px)); padding-bottom: env(safe-area-inset-bottom, 0px); border-top: 1px solid var(--cg-line); background: #fff; }
  html.cg-frame-a #cgTabbar a { display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 3px; font-size: var(--cg-fs-label); font-weight: var(--cg-fw-medium); color: var(--cg-text-3); }
  html.cg-frame-a #cgTabbar a svg { width: 22px; height: 22px; }
  html.cg-frame-a #cgTabbar a[aria-current="page"] { color: var(--cg-accent); font-weight: var(--cg-fw-bold); }
}
