/* ==========================================================================
   VIETNER 디자인 시스템 레이어 (2026-09-05) — 모든 페이지에서 마지막에 로드
   브레이크포인트 3개: 모바일 <=599 / 태블릿 600~1023 / PC >=1024
   역할: 폭·여백·글자 스케일·그리드 열 수·고정 레이어를 템플릿과 무관하게 통일
   ========================================================================== */
:root{
  --sys-content:1120px;
  --sys-gutter:32px;
  --sys-header-h:64px;
  --sys-ticker-h:32px;
  --sys-sp-1:4px;--sys-sp-2:8px;--sys-sp-3:12px;--sys-sp-4:16px;--sys-sp-5:24px;--sys-sp-6:32px;--sys-sp-7:48px;--sys-sp-8:64px;
  --sys-h1:clamp(26px,3vw + 14px,38px);
  --sys-h1-venue:clamp(24px,2vw + 12px,32px);
  --sys-h1-hero:clamp(30px,4.5vw + 12px,52px);
  --sys-h2:clamp(19px,1vw + 14px,24px);
  --sys-h3:17px;
  --sys-body:15px;
  --sys-card-radius:16px;
  --sys-card-pad:28px;
  --sys-section-gap:32px;
  /* 기존 토큰을 시스템 값으로 재정의 */
  --max-width:var(--sys-content);
  --u-content-max:var(--sys-content);
  --ticker-h:var(--sys-ticker-h);
  --u-gutter-mobile:var(--sys-gutter);--u-gutter-tablet:var(--sys-gutter);--u-gutter-desktop:var(--sys-gutter);
  --u-card-pad-mobile:var(--sys-card-pad);--u-card-pad-desktop:var(--sys-card-pad);
  --u-section-gap-mobile:var(--sys-section-gap);--u-section-gap-desktop:var(--sys-section-gap);
}
@media (min-width:600px) and (max-width:1023px){
  :root{--sys-gutter:24px;--sys-header-h:60px;--sys-ticker-h:28px;--sys-card-pad:20px;--sys-section-gap:24px}
}
@media (max-width:599px){
  :root{--sys-gutter:16px;--sys-header-h:56px;--sys-ticker-h:0px;--sys-card-pad:16px;--sys-section-gap:16px}
}

/* ---------- 본문 폭 · 거터 (main이 유일한 거터, 내부 컨테이너는 0) ---------- */
body main,body .site-main,body .site-layout > .site-main{
  width:100%;max-width:var(--sys-content);margin-left:auto;margin-right:auto;
  padding-left:var(--sys-gutter);padding-right:var(--sys-gutter);box-sizing:border-box;
}
body main > .container,body main > nav.breadcrumb,body .container > .hub-lower,body main > .container > .hub-lower,
body .home-blog-wrap,body .cta-section > .container,body .faq-container,body .abt,body .blog-article{
  padding-left:0;padding-right:0;max-width:100%;
}
body .header-inner,body .ticker-bar .container,body .footer-content{
  max-width:var(--sys-content);padding-left:var(--sys-gutter);padding-right:var(--sys-gutter);box-sizing:border-box;
}
body .breadcrumb{margin-left:0;margin-right:0}
body .site-layout{padding-top:0}
body main,body .site-main{padding-top:calc(var(--sys-ticker-h) + var(--sys-header-h) + 12px)}
body{font-size:var(--sys-body);line-height:1.7}

/* ---------- 고정 레이어 정책 ---------- */
body .ticker-bar{height:var(--sys-ticker-h);font-size:12px}
body .header{top:var(--sys-ticker-h);height:var(--sys-header-h)}
body .header-inner{height:var(--sys-header-h)}
body .mbn-label{font-size:12px}
body .mbn-item{min-height:56px}
@media (max-width:1023px){
  /* 플로팅 상담 버튼: 태블릿·모바일도 우하단(하단 내비 위) 표시 (2026-09-09 사장님) */
  body .floating-buttons.floating-buttons{display:flex;bottom:calc(64px + 14px + var(--safe-bottom,0px));right:14px;gap:10px;z-index:110}
  body .floating-buttons.floating-buttons .floating-btn{width:48px;height:48px}
  body .floating-buttons.floating-buttons .floating-btn svg{width:22px;height:22px}
  body .mobile-bottom-nav{display:block}
  body{padding-bottom:calc(64px + var(--safe-bottom,0px))}
}
@media (max-width:599px){
  body .ticker-bar{display:none}
}
@media (min-width:1024px){
  body .mobile-bottom-nav{display:none}
  body .floating-buttons.floating-buttons{display:flex;bottom:32px;right:28px}
  body{padding-bottom:0}
}

/* ---------- 글자 스케일 ---------- */
body .hub-city-title,body.city-hub .city-header .hub-city-title,body .city-header h1,body .page-hero h1,body .faq-hero h1,
body .article-header h1,body .container > h1,body .abt-hero h1,body .faq-hero .gold-text{font-size:var(--sys-h1);line-height:1.2}
body .venue-info h1{font-size:var(--sys-h1-venue);line-height:1.25}
body .hero h1{font-size:var(--sys-h1-hero);line-height:1.15}
body .hub-h2,body .gold-text.hub-h2,body .detail-card-title,body .hub-section h2,body .article-section h2,body .guide-text > h2,
body .section-title,body .hsc-row-head h3,body .blog-section h2,body .cta-section h2,body .city-bottom-cta h2,body .faq-category-title,body .abt h2{font-size:var(--sys-h2);line-height:1.3}
body .venue-card-content h3,body .venues-grid .venue-card-content h3,body .blog-card h3,body .hub-tip-title{font-size:var(--sys-h3);line-height:1.35}
/* 최소 12px */
body .hb-badge,body .blog-category-tag,body .blog-date,body .cat-sm .cc,body .cat-big .cc,body .venue-verified-overlay,body .trust-item,body .update-info,body .subcategory,body .venue-card-content .subcategory{font-size:12px}
body .breadcrumb,body .breadcrumb a{font-size:13px}
body .hub-tip-desc,body .hg-item p,body .related-addr,body .venue-card-content .address,body .hero-rating-label,body .hero-rating-items,body .meta-label,body .verified-badge{font-size:13px}

/* ---------- 터치 영역 ---------- */
body .cat-sm,body .faq-filter-btn,body .hsc-tab,body .pagination a,body .pagination button,body .blog-tab,body .mbn-item{min-height:40px}
body .cat-sm{padding-top:8px;padding-bottom:8px}

/* ---------- 카드 그리드: 1 / 2 / 3열 ---------- */
body .venues-grid,body .hsc-grid,body .blog-grid,body .nearby-grid-v2{display:grid;gap:20px;padding:0}
@media (min-width:1024px){body .venues-grid,body .hsc-grid,body .blog-grid,body .nearby-grid-v2{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (min-width:600px) and (max-width:1023px){body .venues-grid,body .hsc-grid,body .blog-grid,body .nearby-grid-v2{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}}
@media (max-width:599px){body .venues-grid,body .hsc-grid,body .blog-grid,body .nearby-grid-v2{grid-template-columns:1fr;gap:14px}}
/* 소형 정보 그리드: 2 / 2 / 3 */
@media (min-width:1024px){body .highlights-grid,body .verify-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:1023px){body .highlights-grid,body .verify-grid{grid-template-columns:repeat(2,1fr)}}
/* 팁·지역 카드: 1 / 2 / 2 */
@media (max-width:599px){body .hub-tips-grid,body .hub-area-grid{grid-template-columns:1fr}}
@media (min-width:600px){body .hub-tips-grid{grid-template-columns:1fr 1fr}}
/* 카테고리 칩: 2 / 4 / 6 · 도시 대형 칩: 2 / 3 / 3 */
@media (max-width:599px){body .category-nav-grid{grid-template-columns:repeat(2,minmax(0,1fr))}body .cat-nav-main{grid-template-columns:repeat(2,1fr)}}
@media (min-width:600px) and (max-width:1023px){body .category-nav-grid{grid-template-columns:repeat(4,minmax(0,1fr))}body .cat-nav-main{grid-template-columns:repeat(3,1fr)}}
@media (min-width:1024px){body .category-nav-grid{grid-template-columns:repeat(6,minmax(0,1fr))}body .cat-nav-main{grid-template-columns:repeat(3,1fr)}}
/* 업장 2단: PC만 */
@media (max-width:1023px){body .venue-layout{grid-template-columns:1fr;gap:20px}}
@media (min-width:1024px){body .venue-layout{grid-template-columns:minmax(0,1fr) 320px;gap:32px}}

/* ---------- 카드·섹션 여백 ---------- */
body section.glass-card,body .glass-card,body section.hub-section,body .hub-tip,body .info-card,body .city-header,body .guide-text,body .hub-area-card{
  padding:var(--sys-card-pad);border-radius:var(--sys-card-radius);box-sizing:border-box;
}
body .venues-grid .venue-card.glass-card,body .venue-card.glass-card,body .blog-card.glass-card{padding:0}
body .venue-card-content,body .venues-grid .venue-card-content{padding:14px 16px 16px}
body main > section,body .main-content > section,body .container > section,body .hub-lower > section{margin-top:var(--sys-section-gap);margin-bottom:var(--sys-section-gap)}
body .hero{padding-left:0;padding-right:0}

/* ---------- 보정 1 (2026-09-05): id·특이성 충돌 해결 ---------- */
body #main-content,body main#main-content,body main.main-content{padding-top:calc(var(--sys-ticker-h) + var(--sys-header-h) + 12px);padding-left:var(--sys-gutter);padding-right:var(--sys-gutter);max-width:var(--sys-content)}
body .site-layout{padding:0;gap:0;max-width:none}
@media (max-width:1023px){body .sidebar-left,body .sidebar-right{display:none}}
body.city-hub .city-header,body .city-header.city-header{padding:var(--sys-card-pad);border-radius:var(--sys-card-radius)}
body .home-showcase,body .hsc-row{padding-left:0;padding-right:0}
body .mbn-item,body .mbn-item .mbn-label{font-size:12px}
@media (max-width:599px){
  body .venues-section{padding:0;background:none;border:none}
  body .venues-section > .hub-h2,body .venues-section > h2{margin-bottom:12px}
}

/* ---------- 보정 2 (2026-09-05): 헤더 정렬·업장 h1·터치 영역 ---------- */
body .header .header-inner,body .header .header-inner.header-inner{max-width:var(--sys-content);padding-left:var(--sys-gutter);padding-right:var(--sys-gutter);justify-content:space-between;gap:24px}
body .header .header-right{margin-left:0}
body .venue-info h1,body .venue-info h1.gold-text{font-size:var(--sys-h1-venue);line-height:1.25}
body .hamburger{width:44px;height:44px;padding:10px;box-sizing:border-box;justify-content:center}
body .hsc-more{font-size:13px;padding:8px 0;display:inline-block}

/* ---------- 보정 3: sidebar.js 래퍼(.site-main)와 main의 거터 중복 제거 ---------- */
body .site-main,body .site-layout > .site-main{padding-left:0;padding-right:0;padding-top:0}
body .header .container{padding-left:0;padding-right:0;max-width:none}

/* ==========================================================================
   줄 채움 규칙 (2026-09-06) — 어떤 개수든 마지막 줄이 비지 않게
   이미지 카드형: 마지막 줄 카드를 같은 크기로 정중앙 배치
   텍스트 카드·칩형: 마지막 줄을 넓혀서 꽉 채움
   ========================================================================== */
/* --- 이미지 카드형 (3 / 2 / 1) --- */
@media (min-width:1024px){
  body .venues-grid,body .hsc-grid,body .blog-grid,body .nearby-grid-v2{grid-template-columns:repeat(6,minmax(0,1fr))}
  body .venues-grid>*,body .hsc-grid>*,body .blog-grid>*,body .nearby-grid-v2>*{grid-column:span 2}
  body .venues-grid>:nth-last-child(1):nth-child(3n+1),body .hsc-grid>:nth-last-child(1):nth-child(3n+1),body .blog-grid>:nth-last-child(1):nth-child(3n+1),body .nearby-grid-v2>:nth-last-child(1):nth-child(3n+1){grid-column:3/span 2}
  body .venues-grid>:nth-last-child(2):nth-child(3n+1),body .hsc-grid>:nth-last-child(2):nth-child(3n+1),body .blog-grid>:nth-last-child(2):nth-child(3n+1),body .nearby-grid-v2>:nth-last-child(2):nth-child(3n+1){grid-column:2/span 2}
  body .venues-grid>:nth-last-child(1):nth-child(3n+2),body .hsc-grid>:nth-last-child(1):nth-child(3n+2),body .blog-grid>:nth-last-child(1):nth-child(3n+2),body .nearby-grid-v2>:nth-last-child(1):nth-child(3n+2){grid-column:4/span 2}
}
@media (min-width:600px) and (max-width:1023px){
  body .venues-grid,body .hsc-grid,body .blog-grid,body .nearby-grid-v2{grid-template-columns:repeat(4,minmax(0,1fr))}
  body .venues-grid>*,body .hsc-grid>*,body .blog-grid>*,body .nearby-grid-v2>*{grid-column:span 2}
  body .venues-grid>:nth-last-child(1):nth-child(odd),body .hsc-grid>:nth-last-child(1):nth-child(odd),body .blog-grid>:nth-last-child(1):nth-child(odd),body .nearby-grid-v2>:nth-last-child(1):nth-child(odd){grid-column:2/span 2}
}
/* --- 텍스트 카드·큰 칩 (3 / 2 / 2·1) --- */
body .cat-nav-sub{display:grid;gap:8px}
@media (min-width:1024px){
  body .cat-nav-main,body .cat-nav-sub,body .hub-area-grid,body .highlights-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr))}
  body .cat-nav-main>*,body .cat-nav-sub>*,body .hub-area-grid>*,body .highlights-grid>*{grid-column:span 2}
  body .cat-nav-main>:nth-last-child(1):nth-child(3n+1),body .cat-nav-sub>:nth-last-child(1):nth-child(3n+1),body .hub-area-grid>:nth-last-child(1):nth-child(3n+1),body .highlights-grid>:nth-last-child(1):nth-child(3n+1){grid-column:span 6}
  body .cat-nav-main>:nth-last-child(2):nth-child(3n+1),body .cat-nav-main>:nth-last-child(1):nth-child(3n+2),body .cat-nav-sub>:nth-last-child(2):nth-child(3n+1),body .cat-nav-sub>:nth-last-child(1):nth-child(3n+2),body .hub-area-grid>:nth-last-child(2):nth-child(3n+1),body .hub-area-grid>:nth-last-child(1):nth-child(3n+2),body .highlights-grid>:nth-last-child(2):nth-child(3n+1),body .highlights-grid>:nth-last-child(1):nth-child(3n+2){grid-column:span 3}
}
@media (max-width:1023px){
  body .cat-nav-main,body .cat-nav-sub,body .hub-area-grid,body .highlights-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}
  body .cat-nav-main>*,body .cat-nav-sub>*,body .hub-area-grid>*,body .highlights-grid>*{grid-column:span 2}
  body .cat-nav-main>:nth-last-child(1):nth-child(odd),body .cat-nav-sub>:nth-last-child(1):nth-child(odd),body .hub-area-grid>:nth-last-child(1):nth-child(odd),body .highlights-grid>:nth-last-child(1):nth-child(odd){grid-column:span 4}
}
@media (max-width:599px){
  body .hub-area-grid{grid-template-columns:1fr}
  body .hub-area-grid>*{grid-column:auto}
}
body .cat-sm{justify-content:center;text-align:center}
/* --- 필터 칩 (4 / 3 / 2) --- */
body .category-nav-grid{display:grid}
@media (min-width:1024px){
  body .category-nav-grid{grid-template-columns:repeat(12,minmax(0,1fr))}
  body .category-nav-grid>*{grid-column:span 3}
  body .category-nav-grid>:nth-last-child(1):nth-child(4n+1){grid-column:span 12}
  body .category-nav-grid>:nth-last-child(2):nth-child(4n+1),body .category-nav-grid>:nth-last-child(1):nth-child(4n+2){grid-column:span 6}
  body .category-nav-grid>:nth-last-child(3):nth-child(4n+1),body .category-nav-grid>:nth-last-child(2):nth-child(4n+2),body .category-nav-grid>:nth-last-child(1):nth-child(4n+3){grid-column:span 4}
}
@media (min-width:600px) and (max-width:1023px){
  body .category-nav-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  body .category-nav-grid>*{grid-column:span 2}
  body .category-nav-grid>:nth-last-child(1):nth-child(3n+1){grid-column:span 6}
  body .category-nav-grid>:nth-last-child(2):nth-child(3n+1),body .category-nav-grid>:nth-last-child(1):nth-child(3n+2){grid-column:span 3}
}
@media (max-width:599px){
  body .category-nav-grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  body .category-nav-grid>*{grid-column:span 2}
  body .category-nav-grid>:nth-last-child(1):nth-child(odd){grid-column:span 4}
}


/* ==========================================================================
   섹션 컨테이너 규칙 (2026-09-06) — 사이트 전체: 섹션 = 같은 상자, 상자 안 카드 = 테두리 없이 배경 대비
   ========================================================================== */
body .hero,body .home-showcase,body .blog-section,body .cta-section,
body section.glass-card,body .glass-card.hub-section,body section.hub-section,body .venues-section,body .guide-text,body section.faq-section,body .city-header,body .faq-cta,body .content-block,body .section-group{
  background:var(--v-gold-04);border:1px solid var(--v-gold-15);border-radius:20px;padding:var(--sys-card-pad);box-sizing:border-box;
}
body .hero{padding-top:calc(var(--sys-card-pad) + 24px);padding-bottom:calc(var(--sys-card-pad) + 12px);margin-bottom:var(--sys-section-gap)}
body .home-showcase{margin-bottom:var(--sys-section-gap)}
@media (max-width:599px){
  body .venues-section{padding:var(--sys-card-pad);background:var(--v-gold-04);border:1px solid var(--v-gold-15)}
}
/* 상자 안 카드: 테두리 제거, 배경으로 구분 */
body .home-showcase .venue-card,body .venues-section .venue-card,body .venues-grid .venue-card,body .nearby-grid-v2 .venue-card,
body .blog-section .hb-card,body .blog-section .hb-feature,body .hub-tip,body .info-card,body .hub-area-card,body .cat-big,body .cat-sm,body .tip-box,body .hb-item{
  border-color:transparent;background:var(--bg-tertiary);
}
body .home-showcase .venue-card:hover,body .venues-grid .venue-card:hover,body .nearby-grid-v2 .venue-card:hover,body .blog-section .hb-card:hover,body .blog-section .hb-feature:hover{border-color:var(--v-gold-30,rgba(201,169,110,0.3))}
body .cat-big.all{background:linear-gradient(135deg,var(--gold),var(--gold-dark))}


/* ==========================================================================
   전 사이트 섹션 컨테이너 규칙 v2 (2026-09-06) — 모든 URL 공통
   상위 블록 = 같은 상자 · 상자 안 상자 = 테두리 없는 카드 · 블록 간격 = --sys-section-gap
   ========================================================================== */
:root{--sec-bg:var(--v-gold-04);--sec-border:var(--v-gold-15);--sec-radius:20px}
body .sec-box,body .glass-card,body .venue-header,body .venue-cta-card,body .sidebar-card,body .city-header,body .venues-section,body .guide-text,body .cta-section,
body .city-bottom-cta,body .faq-cta,body .faq-hero,body .faq-category,body .abt-stats,body .abt-cta,body .article-header,body .toc,body .article-section,
body .blog-article .verification-report,body .err-inner,body .hero,body .home-showcase,body .blog-section,body .content-block,body .section-group,body .page-hero{
  background:var(--sec-bg);border:1px solid var(--sec-border);border-radius:var(--sec-radius);padding:var(--sys-card-pad);box-sizing:border-box;margin:0 0 var(--sys-section-gap);
}
body.city-hub .city-header,body .city-header.city-header{margin:0 0 var(--sys-section-gap)}
/* 히어로류: 위아래 여백 조금 더 */
body .hero,body .faq-hero,body .page-hero,body .city-header,body .article-header{padding-top:calc(var(--sys-card-pad) + 20px);padding-bottom:calc(var(--sys-card-pad) + 12px)}
/* 상자 안 상자 → 카드 */
body .glass-card .glass-card,body .sec-box .glass-card,body .sec-box .sec-box,body .faq-category .faq-item,body .glass-card .venue-card,body .venues-section .venue-card,body .venues-grid .venue-card,
body .glass-card .info-card,body .glass-card .hub-tip,body .glass-card .hub-area-card,body .glass-card .tip-box,body .glass-card .abt-card,body .sec-box .abt-card,body .abt-stats > div,
body .sec-box .blog-card,body .glass-card .cat-big,body .glass-card .cat-sm,body .home-showcase .venue-card,body .blog-section .hb-card,body .blog-section .hb-feature,body .nearby-grid-v2 .venue-card,
body .sidebar-card .glass-card,body .glass-card .faq-item,body .hb-item,body .toc .toc-list li{
  background:var(--bg-tertiary);border:1px solid transparent;border-radius:14px;margin:0;
}
body .cat-big.all{background:linear-gradient(135deg,var(--gold),var(--gold-dark))}
body .glass-card .glass-card:hover,body .sec-box .glass-card:hover,body .venues-grid .venue-card:hover,body .home-showcase .venue-card:hover,body .nearby-grid-v2 .venue-card:hover,body .blog-section .hb-card:hover,body .blog-section .hb-feature:hover,body .sec-box .blog-card:hover{border-color:rgba(201,169,110,0.3)}
/* 블록 간격 정규화 */
body .breadcrumb{margin:0 0 12px;padding:0}
body .venue-layout{margin-top:0}
body .venue-main{gap:0}
body .venue-main > section,body .venue-main > *{margin:0}
body .venue-sidebar{display:flex;flex-direction:column;gap:0}
body .venue-sidebar > .sidebar-card{margin:0 0 var(--sys-section-gap)}
body .venue-header{border-bottom:1px solid var(--sec-border)}
body .hub-lower > *:last-child,body main > .container > *:last-child,body main > *:last-child,body .venue-main > *:last-child > .glass-card,body .venue-sidebar > .sidebar-card:last-child,body .blog-article > *:last-child{margin-bottom:0}
body main{padding-bottom:var(--sys-section-gap)}
body .article-footer-meta{margin:0;text-align:center}
body .blog-article{max-width:100%;padding:0}
body .article-section > *,body .toc > *,body .blog-article .verification-report > *{max-width:820px;margin-left:auto;margin-right:auto}
body .article-section > *:first-child,body .toc > *:first-child{margin-top:0}
/* 소개·회화 등 상자 안 제목 */
body .sec-box > h2:first-child,body .sec-box > .abt-label{margin-top:0}

/* ---------- 여백 검수 보정 1 (2026-09-06) ---------- */
body main,body .abt,body .blog-article,body .faq-container,body .hub-lower,body main > .container{padding-bottom:0}
body .footer,body footer{margin-top:0}
body .cta-section .city-bottom-cta,body .cta-section .faq-cta{background:none;border:none;padding:0;margin:0;border-radius:0}
body .blog-article .article-section,body .blog-article .toc,body .blog-article .article-header,body .blog-article .verification-report{background:var(--sec-bg);border:1px solid var(--sec-border);border-radius:var(--sec-radius);padding:var(--sys-card-pad);margin:0 0 var(--sys-section-gap)}
body .blog-article .article-header{padding-top:calc(var(--sys-card-pad) + 20px);padding-bottom:calc(var(--sys-card-pad) + 12px)}
body .article-section .venue-cta-card,body .article-section .glass-card,body .article-section .venue-block{background:var(--bg-tertiary);border:1px solid transparent;border-radius:14px}
body .blog-article > *:last-child{margin-bottom:var(--sys-section-gap)}
body .article-footer-meta{margin:0 0 var(--sys-section-gap)}
/* 여백 보정 2: 마지막 상자도 아래 간격 유지(푸터 앞 = 섹션 간격) */
body .hub-lower > *:last-child,body main > .container > *:last-child,body main > *:last-child,body .venue-main > *:last-child > .glass-card,body .venue-sidebar > .sidebar-card:last-child,body .abt > *:last-child,body .faq-container > *:last-child{margin-bottom:var(--sys-section-gap)}
body .venue-layout{margin-bottom:0}
/* 여백 보정 3: 블로그 #venues 섹션(ID 선택자) 상자화 */
body .blog-article .article-section#venues{background:var(--sec-bg);border:1px solid var(--sec-border);border-radius:var(--sec-radius);padding:var(--sys-card-pad);margin:0 0 var(--sys-section-gap)}
body .article-header .article-footer-meta{margin:14px 0 0;text-align:left;font-size:13px;color:var(--text-mute)}
/* 여백 보정 4: 래퍼 섹션(안에 상자를 품은 section)은 여백 0, 상자 위 여백 0, 컨테이너 상단 0 */
body main > section,body .main-content > section,body .container > section,body .hub-lower > section{margin-top:0}
body .related-section,body .nearby-venues,body section.faq-section:not(.glass-card),body .usage-tips,body .quick-summary,body .venue-intro,body .venue-highlights,body .venue-main > section.verification-report,body .price-guide,body .access-info,body .venue-cta-section{margin:0;padding:0;background:none;border:none}
body main > .container{padding-top:0;padding-bottom:0}
body .pt-120,body main.pt-120{padding-top:calc(var(--sys-ticker-h) + var(--sys-header-h) + 12px)}
/* 여백 보정 5: 모바일 .reveal 8px 규칙(pages.css) 무력화 — 상자 안쪽 여백은 항상 --sys-card-pad */
body .glass-card.reveal,body section.glass-card.reveal,body .glass-card.glass-card,body .sec-box.sec-box,body .content-block.content-block,body .content-block.reveal,body .venues-section.reveal,body .guide-text.reveal,body .cta-section.reveal,body .faq-section.glass-card.reveal{padding:var(--sys-card-pad)}
body .glass-card .glass-card.glass-card,body .sec-box .glass-card.glass-card,body .faq-category .faq-item.glass-card{padding:16px}
/* 여백 보정 6 (전수검사): 래퍼 섹션 하단 여백 완전 제거, 404·블로그 푸터·목차 글자·빈 목록 안내 */
body .container > section.related-section,body .container > section.nearby-venues,body .container > section.faq-section:not(.glass-card),body .container > section.usage-tips,body .venue-main > section,body .container > section.venue-cta-section{margin:0;padding:0}
body main.err-wrap{min-height:0;display:block;padding-top:calc(var(--sys-ticker-h) + var(--sys-header-h) + 12px)}
body .err-inner{margin:0 auto var(--sys-section-gap)}
body .blog-article .article-footer{background:var(--sec-bg);border:1px solid var(--sec-border);border-radius:var(--sec-radius);padding:var(--sys-card-pad);margin:0 0 var(--sys-section-gap)}
body .toc .toc-title{font-size:13px}
body .venues-section .empty-notice-block,body .venues-section [class^="empty-notice"]{border-color:transparent;background:var(--bg-tertiary);border-radius:14px}
/* 여백 보정 7 (전수검사 2차): 404 하단, 업장 1열 레이아웃 간격, FAQ 컨테이너 상단 */
body main.err-wrap{padding-bottom:0}
@media (max-width:1023px){body .venue-layout{gap:0}}
body .faq-container{padding-top:0}
body .article-header .article-meta{font-size:12px}
/* 여백 보정 8: 컨테이너 자체 하단 여백 제거(마지막 상자 여백이 갇힌 래퍼 + 컨테이너 여백 이중 방지) */
body main > .container{margin-bottom:0}

/* ---------- 도시 페이지 카테고리 블록 정돈 (2026-09-06) ---------- */
body .cat-nav-main{gap:12px;margin-bottom:0}
body .cat-big{display:flex;align-items:center;gap:12px;padding:12px 14px;min-height:64px;border-radius:14px;background:var(--bg-tertiary);border:1px solid transparent;transition:border-color .2s,transform .2s}
body .cat-big:hover{border-color:var(--v-gold-30,rgba(201,169,110,.3));transform:translateY(-1px);box-shadow:none}
body .cat-big .ci{flex:0 0 40px;width:40px;height:40px;border-radius:50%;background:var(--v-gold-08);border:1px solid var(--v-gold-15);display:flex;align-items:center;justify-content:center;font-size:19px;line-height:1}
body .cat-big .cn{font-size:15.5px;font-weight:700;color:var(--text-primary);line-height:1.2}
body .cat-big .cc{margin-left:auto;font-size:12.5px;font-weight:700;padding:4px 10px;border-radius:999px;background:var(--v-gold-06);border:1px solid var(--v-gold-12);color:var(--gold-light)}
body .cat-big.all{background:linear-gradient(135deg,var(--gold),var(--gold-dark));border-color:transparent}
body .cat-big.all .ci{background:rgba(0,0,0,.14);border-color:transparent}
body .cat-big.all .cn{color:#161616}
body .cat-big.all .cc{color:#161616;background:rgba(0,0,0,.16);border-color:transparent}
body .cat-tier-label{font-size:12px;font-weight:700;letter-spacing:.06em;color:var(--gold-light);opacity:.85;margin:16px 0 8px 2px}
body .cat-tier-label:first-of-type{margin-top:0}
body .cat-nav-sub{display:grid;gap:10px;margin-top:0}
body .cat-sm{display:flex;align-items:center;justify-content:flex-start;text-align:left;gap:10px;padding:8px 12px;min-height:48px;border-radius:12px;background:rgba(255,255,255,0.025);border:1px solid var(--v-gold-10);color:var(--text-primary);font-size:14px;font-weight:600;transition:border-color .2s}
body .cat-sm:hover{border-color:var(--v-gold-30,rgba(201,169,110,.3));color:var(--text-primary)}
body .cat-sm > span:first-child{flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--v-gold-06);display:flex;align-items:center;justify-content:center;font-size:15px;line-height:1}
body .cat-sm .cc{margin-left:auto;opacity:1;font-size:12px;font-weight:600;color:var(--text-secondary);background:rgba(255,255,255,0.05);padding:3px 8px;border-radius:999px}
@media (max-width:599px){
  body .cat-big{min-height:56px;padding:10px 12px;gap:10px}
  body .cat-big .ci{flex-basis:34px;width:34px;height:34px;font-size:17px}
  body .cat-big .cn{font-size:14px}
  body .cat-sm{min-height:44px;font-size:13px;padding:6px 10px}
}
/* 모바일 브레드크럼: 긴 매장명은 한 줄 말줄임 */
@media (max-width:599px){body .breadcrumb{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}}
/* 회화 페이지 12px 미만 글자 보정 */
body #ph-list button,body .tool-note-dim,body .tool-chip span{font-size:12px}
/* 폭 보정: main 바로 아래 .hub-lower 래퍼의 거터 제거 (도시 페이지 하단 블록 폭 통일) */
body .hub-lower,body main > .hub-lower,body .container > .hub-lower{padding-left:0;padding-right:0;max-width:100%;margin-left:0;margin-right:0}


/* ==========================================================================
   5+1 구조 (2026-09-06): 현지 정보 허브 · 숙소 문의 구역 · 도시 카테고리 칩
   ========================================================================== */
body .cat-nav-sub{margin-top:14px;padding-top:14px;border-top:1px solid var(--v-gold-10)}
body .cat-big{min-width:0}
body .cat-big .cn{min-width:0;overflow-wrap:normal}
body .cat-big .cc{flex-shrink:0}
body .hub-cnt{display:inline-block;font-size:13px;font-weight:600;color:var(--text-secondary);margin-left:8px;vertical-align:middle;background:var(--v-gold-06);border:1px solid var(--v-gold-12);padding:3px 10px;border-radius:999px;line-height:1.3}
body .btn-more{display:block;margin:16px auto 0;padding:10px 22px;min-height:40px;border-radius:999px;border:1px solid var(--v-gold-15);background:var(--v-gold-06);color:var(--gold-light);font-weight:700;font-size:14px;cursor:pointer;transition:border-color .2s}
body .btn-more:hover{border-color:var(--v-gold-30,rgba(201,169,110,.3))}
body .hub-cta-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:16px}
body .hub-cta-row a{min-height:44px;display:inline-flex;align-items:center}
body .hub-lead{color:var(--text-secondary);line-height:1.65;margin:0;text-align:center}
body .info-group .venues-grid + .btn-more{margin-top:16px}
body .sec-box .venues-grid,body .info-group .venues-grid{margin:0}
@media (min-width:1024px){
  body .cat-nav-sub.info-n4{grid-template-columns:repeat(4,minmax(0,1fr))}
  body .cat-nav-sub.info-n4>*,body .cat-nav-sub.info-n4>:nth-child(n):nth-last-child(n){grid-column:auto}
}
@media (max-width:599px){
  body .cat-nav-sub{grid-template-columns:minmax(0,1fr)}
  body .cat-nav-sub>*,body .cat-nav-sub>:nth-child(n):nth-last-child(n){grid-column:auto}
  body .cat-sm{font-size:14px}
}

/* 집계 허브 세부 카테고리 카드(.d-grid): 3/2/1열 + 마지막 줄 채움 (텍스트 카드 → 넓힘) */
body .d-grid{display:grid;gap:16px;margin-bottom:0}
@media (min-width:1024px){
  body .d-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  body .d-grid>*{grid-column:span 2}
  body .d-grid>:nth-last-child(1):nth-child(3n+1){grid-column:span 6}
  body .d-grid>:nth-last-child(2):nth-child(3n+1),body .d-grid>:nth-last-child(1):nth-child(3n+2){grid-column:span 3}
}
@media (min-width:600px) and (max-width:1023px){
  body .d-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body .d-grid>*{grid-column:auto}
  body .d-grid>:nth-last-child(1):nth-child(odd){grid-column:span 2}
}
@media (max-width:599px){
  body .d-grid{grid-template-columns:minmax(0,1fr)}
  body .d-grid>*{grid-column:auto}
}

/* ==========================================================================
   허브 콘텐츠 블록 재설계 (2026-09-06): 한 줄 상자 나열 → 카드 격자·목록
   ========================================================================== */
body .tip-grid,body .fact-grid{display:grid;gap:12px;margin:0 0 20px}
body .content-block > .tip-grid:last-child,body .content-block > .fact-grid:last-child{margin-bottom:0}
body .tip-card,body .fact-card{background:var(--bg-tertiary);border:1px solid transparent;border-radius:14px;padding:16px 18px;min-width:0;margin:0}
body .tip-card .tip-title{display:block;font-size:14px;font-weight:700;color:var(--gold-light);margin:0 0 6px;line-height:1.4}
body .tip-card .tip-desc{margin:0;font-size:13.5px;line-height:1.7;color:var(--text-secondary)}
body .fact-card .fact-title{font-size:14px;font-weight:700;color:var(--gold-light);margin:0 0 8px;line-height:1.4}
body .fact-card ul,body .fact-card ol{margin:0;padding-left:18px;font-size:13.5px;line-height:1.7;color:var(--text-secondary);list-style:disc;text-align:left}
body .fact-card ol{list-style:decimal}
body .fact-card li::marker{color:var(--gold)}
body .fact-card li{margin:0 0 4px}
body .fact-card li:last-child{margin-bottom:0}
body .fact-card li b{color:var(--text-primary);font-weight:600}
body .qa-list{display:flex;flex-direction:column}
body .qa{padding:14px 0;border-top:1px solid var(--v-gold-10)}
body .qa:first-child{border-top:0;padding-top:0}
body .qa:last-child{padding-bottom:0}
body .qa b{display:block;font-size:14px;font-weight:700;color:var(--gold-light);margin:0 0 6px;line-height:1.5}
body .qa p{margin:0;font-size:13.5px;line-height:1.7;color:var(--text-secondary)}
body .faq-section .section-box-title{margin:0 0 14px}
body .qa-list,body .qa,body .tip-card,body .fact-card{text-align:left}
body .block-subtitle{margin:18px 0 10px}
body .block-subtitle:first-child,body h2 + .block-subtitle{margin-top:0}
@media (min-width:1024px){
  body .tip-grid,body .fact-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  body .tip-grid>*,body .fact-grid>*{grid-column:span 2}
  body .tip-grid>:nth-last-child(1):nth-child(3n+1),body .fact-grid>:nth-last-child(1):nth-child(3n+1){grid-column:span 6}
  body .tip-grid>:nth-last-child(2):nth-child(3n+1),body .tip-grid>:nth-last-child(1):nth-child(3n+2),body .fact-grid>:nth-last-child(2):nth-child(3n+1),body .fact-grid>:nth-last-child(1):nth-child(3n+2){grid-column:span 3}
  body .fact-grid.n4>:nth-child(n):nth-last-child(n),body .fact-grid.n2>:nth-child(n):nth-last-child(n),body .tip-grid.n4>:nth-child(n):nth-last-child(n),body .tip-grid.n2>:nth-child(n):nth-last-child(n){grid-column:span 3}
}
@media (min-width:600px) and (max-width:1023px){
  body .tip-grid,body .fact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  body .tip-grid>*,body .fact-grid>*{grid-column:auto}
  body .tip-grid>:nth-last-child(1):nth-child(odd),body .fact-grid>:nth-last-child(1):nth-child(odd){grid-column:span 2}
  body .tip-grid.n3,body .fact-grid.n3,body .fact-grid.n6{grid-template-columns:repeat(3,minmax(0,1fr))}
  body .tip-grid.n3>:nth-child(n):nth-last-child(n),body .fact-grid.n3>:nth-child(n):nth-last-child(n),body .fact-grid.n6>:nth-child(n):nth-last-child(n){grid-column:auto}
}
@media (max-width:599px){
  body .tip-grid,body .fact-grid{grid-template-columns:minmax(0,1fr)}
  body .tip-grid>*,body .fact-grid>*{grid-column:auto}
  body .tip-card,body .fact-card{padding:14px 14px}
}

/* 도시 페이지 FAQ(details) → 허브 qa-list 와 같은 구분선 목록 */
body .hub-section details.faq-item,body .glass-card details.faq-item{background:transparent;border:0;border-top:1px solid var(--v-gold-10);border-radius:0;padding:14px 0;margin:0;text-align:left}
body .hub-section details.faq-item:first-of-type,body .glass-card details.faq-item:first-of-type{border-top:0;padding-top:0}
body .hub-section details.faq-item:last-of-type,body .glass-card details.faq-item:last-of-type{padding-bottom:0}
body details.faq-item .hub-faq-q{list-style:none;cursor:default;font-size:14px;font-weight:700;color:var(--gold-light);margin:0 0 6px;line-height:1.5;padding:0}
body details.faq-item .hub-faq-q::-webkit-details-marker{display:none}
body details.faq-item .hub-faq-a{margin:0;font-size:13.5px;line-height:1.7;color:var(--text-secondary);padding:0}

/* ==========================================================================
   프레임 통일 (2026-09-07): 로고 배지 텍스트, SVG 아이콘, 하단 내비·드로어, 푸터 링크
   ========================================================================== */
body .logo-icon{font-size:12.5px;font-weight:800;color:#161616;letter-spacing:.04em;font-family:inherit;line-height:1}
body .mbn-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;font-size:0}
body .mbn-icon svg{width:22px;height:22px;display:block}
body .floating-btn{font-size:0}
body .floating-btn svg{width:24px;height:24px;display:block}
body .mbn-drawer h3{font-size:13px;letter-spacing:.04em;margin:22px 0 10px}
body .mbn-drawer-link{font-size:14px;font-weight:600;min-height:52px;color:var(--text-primary)}
body .mbn-drawer-link.mbn-drawer-kakao{background:#FEE500;color:#191919;border-color:transparent}
body .mbn-drawer-link.mbn-drawer-telegram{background:#2AABEE;color:#fff;border-color:transparent}
body .footer-minimal .footer-links{margin-top:8px;font-size:12px}
body .footer-minimal .footer-links a{color:var(--text-secondary)}
body .footer-minimal .footer-links a:hover{color:var(--gold)}
body .ticker-item{padding:0 32px}
body .header-nav a[aria-current="page"]{color:var(--v-gold-100)}
body .sidebar-tool-link{grid-template-columns:1fr}
body .sidebar-banner.banner-consult .sidebar-banner-body{padding:14px 14px 6px}

/* 함께 둘러볼 매장 링크 목록: 3/2/1열 + 마지막 줄 채움 (텍스트 → 넓힘) */
body .related-venues-list{display:grid;gap:10px;list-style:none;padding:0;margin:0}
body .related-venues-list>li{margin:0}
@media (min-width:1024px){
  body .related-venues-list{grid-template-columns:repeat(6,minmax(0,1fr))}
  body .related-venues-list>li{grid-column:span 2}
  body .related-venues-list>li:nth-last-child(1):nth-child(3n+1){grid-column:span 6}
  body .related-venues-list>li:nth-last-child(2):nth-child(3n+1),body .related-venues-list>li:nth-last-child(1):nth-child(3n+2){grid-column:span 3}
}
@media (min-width:600px) and (max-width:1023px){
  body .related-venues-list{grid-template-columns:repeat(2,minmax(0,1fr))}
  body .related-venues-list>li:nth-last-child(1):nth-child(odd){grid-column:span 2}
}
@media (max-width:599px){ body .related-venues-list{grid-template-columns:minmax(0,1fr)} }

/* ==========================================================================
   2026-09-07 사이드바 제거 · 매장 지도 블록 · 상담 CTA 통일 (전 페이지 공통)
   ========================================================================== */
body .venue-layout{display:block}
body .venue-main{display:block}
body .venue-map{margin-top:16px}
body .venue-map strong{display:block;margin:0 0 10px;color:var(--gold-light);font-weight:700}
body .venue-map iframe{display:block;width:100%;height:240px;border:0;border-radius:12px;background:var(--bg-tertiary)}
body .venue-map .btn-more{margin-top:12px}
/* CTA 상자: 제목·설명·버튼 2개, 가운데 정렬 */
body .cta-section,body .city-bottom-cta,body .venue-cta-card,body .faq-cta,body .abt-cta,body .contact-cta{text-align:center}
body .cta-section h2,body .city-bottom-cta h2,body .venue-cta-card h2,body .faq-cta h2,body .abt-cta h2,body .contact-cta h2{font-size:22px;line-height:1.35;margin:0 0 8px;color:var(--gold-light);font-weight:700}
body .cta-section p,body .city-bottom-cta p,body .venue-cta-card p,body .faq-cta p,body .abt-cta p,body .contact-cta p{font-size:14.5px;line-height:1.7;color:var(--text-secondary);margin:0 0 20px}
body .cta-section .container{padding:0;max-width:none}
/* 버튼 줄 */
body .cta-buttons,body .city-bottom-cta .btns,body .venue-cta-buttons,body .hub-cta-row,body .abt-cta .btns,body .hero-buttons,body .contact-cta .btns{display:flex;justify-content:center;align-items:stretch;gap:12px;flex-wrap:wrap;margin:0}
/* 상담 버튼 공통: 카카오 노랑 · 텔레그램 파랑, 같은 높이·모서리·글자 */
body .cta-buttons a,body .city-bottom-cta .btns a,body .venue-cta-buttons a,body .hub-cta-row a,body .abt-cta .btns a,body .hero-buttons a,body .contact-cta .btns a{display:inline-flex;align-items:center;justify-content:center;min-height:48px;min-width:170px;padding:0 28px;border-radius:12px;border:0;font-size:15px;font-weight:700;line-height:1.2;text-decoration:none;box-shadow:none;background:var(--v-gold-06);color:var(--gold-light);transition:transform .15s}
body .cta-buttons a[href*="open.kakao.com"],body .city-bottom-cta .btns a[href*="open.kakao.com"],body .venue-cta-buttons a[href*="open.kakao.com"],body .hub-cta-row a[href*="open.kakao.com"],body .abt-cta .btns a[href*="open.kakao.com"],body .hero-buttons a[href*="open.kakao.com"],body .contact-cta .btns a[href*="open.kakao.com"]{background:#FEE500;color:#191919}
body .cta-buttons a[href*="t.me/"],body .city-bottom-cta .btns a[href*="t.me/"],body .venue-cta-buttons a[href*="t.me/"],body .hub-cta-row a[href*="t.me/"],body .abt-cta .btns a[href*="t.me/"],body .hero-buttons a[href*="t.me/"],body .contact-cta .btns a[href*="t.me/"]{background:#2AABEE;color:#fff}
body .cta-buttons a:hover,body .city-bottom-cta .btns a:hover,body .venue-cta-buttons a:hover,body .hub-cta-row a:hover,body .abt-cta .btns a:hover,body .hero-buttons a:hover,body .contact-cta .btns a:hover{transform:translateY(-2px)}
@media(max-width:599px){
body .cta-buttons,body .city-bottom-cta .btns,body .venue-cta-buttons,body .hub-cta-row,body .abt-cta .btns,body .hero-buttons,body .contact-cta .btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
body .cta-buttons a,body .city-bottom-cta .btns a,body .venue-cta-buttons a,body .hub-cta-row a,body .abt-cta .btns a,body .hero-buttons a,body .contact-cta .btns a{min-width:0;padding:0 12px;font-size:14px;min-height:46px}
body .cta-section h2,body .city-bottom-cta h2,body .venue-cta-card h2,body .faq-cta h2,body .abt-cta h2,body .contact-cta h2{font-size:19px}
body .cta-section p,body .city-bottom-cta p,body .venue-cta-card p,body .faq-cta p,body .abt-cta p,body .contact-cta p{font-size:13.5px;margin-bottom:16px}
body .venue-map iframe{height:200px}
}

/* FAQ CTA 버튼 우선순위 보정(global.css .faq-cta .cta-btn 보다 우선) + 섹션 제목·보조 버튼 통일 */
body .faq-cta .cta-buttons a,body .faq-cta .cta-btn{border-radius:12px;font-size:15px;min-height:48px;padding:0 28px}
body .faq-cta .cta-buttons a[href*="open.kakao.com"],body .faq-cta .cta-btn.cta-kakao{background:#FEE500;color:#191919}
body .faq-cta .cta-buttons a[href*="t.me/"],body .faq-cta .cta-btn.cta-telegram{background:#2AABEE;color:#fff}
body .contact-h2{font-size:18px;color:var(--gold-light);margin:24px 0 10px;text-align:left}
/* 본문 섹션 제목: 24px · 700 · 크림 · 가운데 (CTA 제목은 22px 골드라이트로 별도) */
body .detail-card-title,body .hub-h2,body .gold-text.hub-h2,body .hub-section h2,body .hsc-title,body .blog-section h2,body .faq-category-title,body .tool-section-title,body .tool-h2,body .gold-text.block-title,body .article-section h2{font-weight:700;text-align:center;color:var(--text-primary,#f0ede6)}
/* 보조 버튼(즐겨찾기·필터·더 보기): 알약형 40px */
body .tool-btn-gold-sm,body .faq-filter-btn,body .btn-more{border-radius:999px;min-height:40px;font-size:13px;font-weight:600;display:inline-flex;align-items:center;justify-content:center}

/* ==========================================================================
   FAQ 아코디언 통일 (2026-09-07): details/summary · 닫힘 기본 · 클릭으로 열림 — 도시·허브·매장·블로그·FAQ 페이지 공통
   (global.css 의 pointer-events:none 항상-펼침 규칙을 덮어씀)
   ========================================================================== */
body .faq-list{display:flex;flex-direction:column;gap:0;margin:0;padding:0}
body details.faq-item,body details.faq-item.faq-item,body .hub-section details.faq-item,body .glass-card details.faq-item,body .faq-list details.faq-item{display:block;background:transparent;border:0;border-top:1px solid var(--v-gold-10);border-radius:0;padding:0;margin:0;text-align:left;box-shadow:none}
body .faq-list>details.faq-item:first-child,body .hub-section>details.faq-item:first-of-type{border-top:0}
body details.faq-item summary,body details.faq-item.faq-item summary{list-style:none;cursor:pointer;pointer-events:auto;user-select:text;display:flex;align-items:flex-start;gap:10px;padding:14px 0;margin:0;font-size:15px;font-weight:700;line-height:1.5;color:var(--gold-light);background:none;border:0;min-height:0}
body details.faq-item summary::-webkit-details-marker,body details.faq-item summary::marker{display:none;content:''}
body details.faq-item .faq-q-text{flex:1;min-width:0}
body details.faq-item .faq-q-text::before,body details.faq-item summary .faq-q-text::before{content:"Q.";display:inline-block;margin-right:8px;color:var(--gold);font-weight:800}
body details.faq-item summary::after{content:"";flex:0 0 auto;width:9px;height:9px;margin:7px 4px 0 0;border-right:2px solid var(--gold);border-bottom:2px solid var(--gold);transform:rotate(45deg);transition:transform .2s;opacity:.85}
body details.faq-item[open] summary::after{transform:rotate(-135deg);margin-top:11px}
body details.faq-item .faq-answer,body details.faq-item.faq-item .faq-answer{display:block;max-height:none;overflow:visible;padding:0 0 16px;margin:0}
body details.faq-item .faq-answer p{font-size:14px;line-height:1.8;color:var(--text-secondary);margin:0 0 8px}
body details.faq-item .faq-answer p:last-child{margin-bottom:0}
body details.faq-item .faq-answer p::before{content:none}
body details.faq-item .faq-answer p:first-child::before{content:"A.";display:inline-block;margin-right:8px;color:var(--gold);font-weight:800;opacity:.75}

/* FAQ 페이지 일상회화 병합 (2026-09-07): 상황별 문장 카드 2열(마지막 홀수는 넓힘) / 모바일 1열 */
body .faq-category{margin:0 0 var(--sys-section-gap)}
body .faq-category-desc{font-size:14px;line-height:1.7;color:var(--text-secondary);text-align:center;margin:-6px 0 18px}
body .ph-group{margin:0 0 18px}
body .ph-group:last-child{margin-bottom:0}
body .ph-cat{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:700;color:var(--gold-light);margin:0 0 10px;text-align:left}
body .ph-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}
body .ph-grid>.ph-card:nth-last-child(1):nth-child(odd){grid-column:1/-1}
body .ph-card{display:grid;grid-template-columns:1fr auto;gap:2px 12px;align-items:baseline;padding:12px 14px;background:var(--bg-tertiary);border:1px solid transparent;border-radius:12px;margin:0}
body .ph-card .ph-ko{grid-column:1/-1;font-size:14.5px;font-weight:700;color:var(--text-primary)}
body .ph-card .ph-vi{font-size:14px;color:var(--gold-light)}
body .ph-card .ph-pr{font-size:13px;color:var(--text-secondary);text-align:right}
body .ph-card .ph-note{grid-column:1/-1;font-size:12px;color:var(--text-secondary);opacity:.8}
body .faq-no-result{text-align:center;color:var(--text-secondary);padding:24px 0}
@media(max-width:599px){body .ph-grid{grid-template-columns:1fr}body .ph-grid>.ph-card:nth-last-child(1):nth-child(odd){grid-column:auto}}

/* ==========================================================================
   헤더 재정렬 (2026-09-07): 파비콘 로고 마크 + PC 한 줄(로고 + 메뉴를 한 묶음으로 가운데), 모바일 로고 가운데·햄버거 우측
   ========================================================================== */
body .logo{display:inline-flex;align-items:center;gap:10px}
body .logo .logo-mark{width:32px;height:32px;border-radius:8px;display:block;object-fit:cover;flex-shrink:0}
body .logo .logo-text{font-size:19px;font-weight:800;letter-spacing:.08em}
@media (min-width:769px){
  body .header{height:var(--sys-header-h)}
  body .header .header-inner{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:40px;height:100%;padding-top:0;padding-bottom:0}
  body .header .logo{margin:0;flex-shrink:0}
  body .header .logo .logo-mark{width:34px;height:34px}
  body .header .header-nav{display:flex;flex:0 0 auto;width:auto;justify-content:center;flex-wrap:nowrap;gap:26px;margin:0;padding:0}
  body .header .logo{flex:0 0 auto;margin:0}
  body .header .header-nav a{padding:6px 0;font-size:14.5px;white-space:nowrap}
  body .header .header-right{display:none}
  html{scroll-padding-top:calc(var(--sys-ticker-h) + var(--sys-header-h) + 12px)}
}
@media (max-width:768px){
  body .header .header-inner{display:grid;grid-template-columns:44px 1fr 44px;align-items:center;gap:0}
  body .header .logo{grid-column:2;justify-self:center;margin:0}
  body .header .header-right{grid-column:3;justify-self:end;margin-left:0}
  body .header .header-nav{display:none}
}

/* ==========================================================================
   정렬 통일 (2026-09-07 사장님): 섹션 제목·설명·탭·행 머리는 전부 좌정렬.
   가운데 정렬은 꼭 필요한 곳만 — 페이지 히어로(h1·태그라인), 상담 CTA 상자, 404, 헤더 로고/메뉴
   ========================================================================== */
body .detail-card-title,body .hub-h2,body .gold-text.hub-h2,body .hub-section h2,body .hsc-title,body .blog-section h2,body .faq-category-title,body .gold-text.block-title,body .block-title,body .article-section h2,body .hsc-row-head h3,body .section-subtitle,body .hsc-sub,body .block-desc,body .faq-category-desc,body .hub-area-desc,body .venue-cta-title ~ .venue-cta-subtitle,body .section-title,body .guide-text > h2,body .abt h2,body .abt-label,body .faq-controls,body .tool-section-title,body .tool-h2{text-align:left}
body .hsc-tabs{justify-content:flex-start}
body .hsc-row.hsc-static .hsc-track{justify-content:flex-start}
body .blog-section .btn-more,body .hub-section .btn-more,body .content-block .btn-more{margin-left:0;margin-right:auto}
/* 예외: 히어로·CTA·404 는 가운데 유지 */
body .hero h1,body .hero p,body .page-hero h1,body .page-hero p,body .city-header h1,body .city-header p,body .faq-hero h1,body .faq-hero p,body .cta-section h2,body .cta-section p,body .city-bottom-cta h2,body .city-bottom-cta p,body .venue-cta-card h2,body .venue-cta-card p,body .faq-cta h2,body .faq-cta p,body .abt-cta h2,body .abt-cta p,body .err-inner *{text-align:center}

/* 정렬 통일 보강: pages.css 의 상자 첫 제목 가운데 규칙(body .glass-card > h2:first-child 등)을 같은 선택자로 덮어 좌정렬 */
body .hub-h2, body .tool-section-title, body .gold-text.hub-h2, body .glass-card > h2:first-child, body .glass-card > .gold-text{text-align:left}
body .abt-cta.sec-box > h2:first-child,body .abt-cta.sec-box > p,body .cta-section .container > h2:first-child,body .venue-cta-card > h2:first-child,body .faq-cta > h2:first-child,body .city-bottom-cta > h2:first-child{text-align:center}

/* 블로그 섹션 좌정렬 (home.css .blog-section{text-align:center} 상속 차단) */
body .blog-section,body .blog-section p,body .home-blog-wrap,body .hb-edit,body .hb-card,body .hb-feature,body .hb-feature-title,body .hb-card h3,body .hb-row,body .blog-grid,body .blog-card,body .blog-card h3{text-align:left}
body .blog-section .btn-more{margin-left:0}

/* header-inner 가운데 강제 (ID 선택자 규칙보다 우선) */
@media (min-width:769px){ body #globalHeader .header-inner,body #globalHeader.header .header-inner{justify-content:center;gap:40px} }
@media (max-width:768px){ body #globalHeader .header-inner{display:grid;grid-template-columns:44px 1fr 44px;justify-content:stretch;gap:0} }

/* 모바일 로고 배치 강제 (ID 우선): 로고 가운데 칸, 햄버거 오른쪽 칸 */
@media (max-width:768px){
  body #globalHeader .logo{grid-column:2;grid-row:1;justify-self:center;margin:0;width:auto;white-space:nowrap}
  body #globalHeader .header-right{grid-column:3;grid-row:1;justify-self:end;margin-left:0}
  body #globalHeader .header-nav{display:none}
}

/* ==========================================================================
   블로그 목차·CTA 검수 (2026-09-07): 번호 배지 세로 정렬, 매장 칩 12칸 그리드(줄 채움), 블로그 CTA 제목(h3) 가운데·줄표 제거
   ========================================================================== */
body .toc-list>li{position:relative;padding:0 0 0 56px;min-height:36px;display:flex;align-items:flex-start;flex-wrap:wrap}
body .toc-list>li::before{top:0;height:36px;display:flex;align-items:center;justify-content:center}
body .toc-list>li>a{min-height:36px;display:flex;align-items:center;padding:0;width:100%}
body .toc-list ul{display:grid;grid-template-columns:repeat(12,1fr);gap:8px;width:100%;margin:10px 0 14px}
body .toc-list ul>li{grid-column:span 3;padding:0;min-height:0;display:block}
body .toc-list ul>li>a{display:flex;align-items:center;min-height:44px;width:100%;box-sizing:border-box}
/* 4칸/줄 기준 남는 1·2·3개 → 12칸 채움 */
body .toc-list ul>li:nth-last-child(1):nth-child(4n+1){grid-column:span 12}
body .toc-list ul>li:nth-last-child(2):nth-child(4n+1),body .toc-list ul>li:nth-last-child(1):nth-child(4n+2){grid-column:span 6}
body .toc-list ul>li:nth-last-child(3):nth-child(4n+1),body .toc-list ul>li:nth-last-child(2):nth-child(4n+2),body .toc-list ul>li:nth-last-child(1):nth-child(4n+3){grid-column:span 4}
@media (min-width:600px) and (max-width:1023px){
  body .toc-list ul>li{grid-column:span 4}
  body .toc-list ul>li:nth-last-child(n):nth-child(n){grid-column:span 4}
  body .toc-list ul>li:nth-last-child(1):nth-child(3n+1){grid-column:span 12}
  body .toc-list ul>li:nth-last-child(2):nth-child(3n+1),body .toc-list ul>li:nth-last-child(1):nth-child(3n+2){grid-column:span 6}
}
@media (max-width:599px){
  body .toc-list ul>li{grid-column:span 6}
  body .toc-list ul>li:nth-last-child(n):nth-child(n){grid-column:span 6}
  body .toc-list ul>li:nth-last-child(1):nth-child(odd){grid-column:span 12}
}
body .blog-article .venue-cta-card h3.venue-cta-title,body .venue-cta-card h3{font-size:22px;line-height:1.35;margin:0 0 8px;color:var(--gold-light);font-weight:700;text-align:center;padding:0;display:block;justify-content:center}
body .blog-article .venue-cta-card h3::before,body .blog-article .venue-cta-card h3::after{content:none;display:none}
body .blog-article .venue-cta-card p.venue-cta-subtitle,body .venue-cta-card .venue-cta-subtitle{text-align:center;font-size:14.5px;line-height:1.7;color:var(--text-secondary);margin:0 0 20px;max-width:none}
body .blog-article .venue-cta-card{text-align:center}

/* ==========================================================================
   블로그 목차 재디자인 (2026-09-07): 배지·알약 배경 제거, 번호+제목 한 줄, 구분선, 매장 칩 그리드
   ========================================================================== */
body .toc{padding:var(--sys-card-pad)}
body .toc .toc-title{display:block;font-size:13px;font-weight:700;letter-spacing:.02em;text-transform:none;color:var(--gold-light);margin:0 0 6px;text-align:left}
body .toc .toc-title::after,body .toc .toc-title::before{content:none;display:none}
body .toc-list{list-style:none;margin:0;padding:0;counter-reset:toc}
body .toc-list::before{content:none}
body .toc-list>li{display:grid;grid-template-columns:34px 1fr;align-items:start;column-gap:0;padding:0;margin:0;min-height:0;background:none;border:0;border-top:1px solid var(--v-gold-10)}
body .toc-list>li:first-child{border-top:0}
body .toc-list>li::before{content:counter(toc,decimal-leading-zero);position:static;top:auto;left:auto;width:auto;height:auto;display:block;padding:12px 0;font-size:12.5px;font-weight:700;color:var(--gold);background:none;border:0;border-radius:0;box-shadow:none;line-height:1.5;text-align:left;font-variant-numeric:tabular-nums}
body .toc-list>li>a{display:block;width:100%;min-height:0;padding:12px 0;margin:0;font-size:15px;line-height:1.5;font-weight:600;color:var(--text-primary);background:none;border:0;border-radius:0;box-shadow:none}
body .toc-list>li>a:hover{color:var(--gold-light);background:none;transform:none}
body .toc-list ul{grid-column:2;display:grid;grid-template-columns:repeat(12,1fr);gap:8px;width:100%;margin:0 0 14px;padding:0;list-style:none}
body .toc-list ul>li{display:block;border:0;padding:0;margin:0;min-height:0}
body .toc-list ul>li::before{content:none}
body .toc-list ul>li>a{display:flex;align-items:center;min-height:44px;width:100%;box-sizing:border-box;padding:10px 12px;border-radius:10px;background:var(--bg-tertiary);border:1px solid var(--v-gold-10);color:var(--text-secondary);font-size:13.5px;font-weight:600;text-decoration:none;box-shadow:none;transform:none}
body .toc-list ul>li>a:hover{color:var(--gold-light);border-color:var(--v-gold-30,rgba(201,169,110,.3));background:var(--bg-tertiary);transform:none;box-shadow:none}
@media (max-width:599px){body .toc-list>li{grid-template-columns:30px 1fr}body .toc-list>li>a{font-size:14.5px;padding:11px 0}body .toc-list ul>li>a{font-size:13px;min-height:42px}}

/* ==========================================================================
   전역 정렬 v3 (2026-09-07 사장님): 상자 안 좌우는 패딩선에 맞춰 꽉 채움, 상하 리듬 통일
   - 좌우: 상자 직계 자식 max-width 해제(블로그 820px 안쪽 열 제거), 좌우 margin 0
   - 상하: 제목→내용 14px · 내용 블록 사이 16px · 소제목 위 24px/아래 10px · 카드줄 20px · 첫 자식 위 0 · 마지막 자식 아래 0
   ========================================================================== */
body .sec-box > *,body .glass-card > *,body .article-section > *,body .toc > *,body .blog-article .verification-report > *,body .content-block > *,body .hub-section > *,body .home-showcase > *,body .venues-section > *,body .faq-category > *,body .blog-section > *{max-width:none;margin-left:0;margin-right:0}
body .sec-box > :first-child,body .glass-card > :first-child,body .article-section > :first-child,body .toc > :first-child,body .blog-article .verification-report > :first-child,body .content-block > :first-child,body .hub-section > :first-child,body .home-showcase > :first-child,body .venues-section > :first-child,body .faq-category > :first-child,body .blog-section > :first-child{margin-top:0}
body .sec-box > :last-child,body .glass-card > :last-child,body .article-section > :last-child,body .toc > :last-child,body .blog-article .verification-report > :last-child,body .content-block > :last-child,body .hub-section > :last-child,body .home-showcase > :last-child,body .venues-section > :last-child,body .faq-category > :last-child,body .blog-section > :last-child,body .venue-cta-card > :last-child,body .city-bottom-cta > :last-child,body .faq-cta > :last-child,body .abt-cta > :last-child,body .cta-section .container > :last-child{margin-bottom:0}
body .sec-box > h2,body .glass-card > h2,body .article-section > h2,body .toc > h2,body .blog-article .verification-report > h2,body .content-block > h2,body .hub-section > h2,body .home-showcase > h2,body .venues-section > h2,body .faq-category > h2,body .blog-section > h2{margin:0 0 14px}
body .sec-box > h3,body .glass-card > h3,body .article-section > h3,body .toc > h3,body .blog-article .verification-report > h3,body .content-block > h3,body .hub-section > h3,body .home-showcase > h3,body .venues-section > h3,body .faq-category > h3,body .blog-section > h3{margin:24px 0 10px}
body .sec-box > h3:first-child,body .glass-card > h3:first-child,body .article-section > h3:first-child,body .toc > h3:first-child,body .blog-article .verification-report > h3:first-child,body .content-block > h3:first-child,body .hub-section > h3:first-child,body .home-showcase > h3:first-child,body .venues-section > h3:first-child,body .faq-category > h3:first-child,body .blog-section > h3:first-child{margin-top:0}
body .sec-box > p,body .glass-card > p,body .article-section > p,body .toc > p,body .blog-article .verification-report > p,body .content-block > p,body .hub-section > p,body .home-showcase > p,body .venues-section > p,body .faq-category > p,body .blog-section > p{margin:0 0 14px}
body .sec-box > ul,body .glass-card > ul,body .article-section > ul,body .toc > ul,body .blog-article .verification-report > ul,body .content-block > ul,body .hub-section > ul,body .home-showcase > ul,body .venues-section > ul,body .faq-category > ul,body .blog-section > ul,body .sec-box > ol,body .glass-card > ol,body .article-section > ol,body .toc > ol,body .blog-article .verification-report > ol,body .content-block > ol,body .hub-section > ol,body .home-showcase > ol,body .venues-section > ol,body .faq-category > ol,body .blog-section > ol{margin:0 0 16px}
body .glass-card > .tip-box,body .glass-card > .info-box,body .article-section > .info-box,body .article-section > .table-wrap,body .glass-card > .table-wrap,body .glass-card > table,body .article-section > table,body .glass-card > .venue-map,body .glass-card > .faq-list,body .article-section > .faq-list,body .faq-category > .faq-list,body .glass-card > .nearby-grid-v2,body .article-section > figure,body .article-section > .item-list,body .glass-card > .v-list,body .article-section > pre,body .glass-card > .tip-grid,body .glass-card > .fact-grid,body .glass-card > .qa-list,body .glass-card > .d-grid,body .content-block > .tip-grid,body .content-block > .fact-grid,body .hub-section > .tip-grid,body .hub-section > .fact-grid,body .hub-section > .d-grid,body .content-block > .d-grid{margin:0 0 16px}
body .article-section > .venue-block{margin:0 0 24px}
body .article-section > details.faq-item,body .glass-card > details.faq-item,body .faq-list > details.faq-item{margin:0}
body .hub-section > .hsc-row,body .home-showcase > .hsc-row,body .venues-section > .hsc-row,body .glass-card > .hsc-row,body .content-block > .hsc-row{margin:0 0 20px}
body .hsc-row:last-child{margin-bottom:0}
body .glass-card > .tip-box:last-child,body .glass-card > .faq-list:last-child,body .glass-card > .venue-map:last-child,body .glass-card > .nearby-grid-v2:last-child,body .article-section > .venue-block:last-child,body .article-section > .table-wrap:last-child,body .glass-card > .fact-grid:last-child,body .glass-card > .tip-grid:last-child{margin-bottom:0}
body .glass-card > .section-subtitle,body .hub-section > .section-subtitle,body .glass-card > .block-desc,body .content-block > .block-desc,body .hub-section > .block-desc,body .hub-section > .hub-lead,body .glass-card > .hub-lead,body .home-showcase > .hsc-sub{margin:-4px 0 16px}
body .toc > .toc-title{margin:0 0 6px}
body .venue-cta-card > h2,body .venue-cta-card > h3{margin:0 0 8px}
body .venue-cta-card > p{margin:0 0 20px}

/* 마지막 자식 여백 0 강제 (우선순위 상향) + 글 안 CTA 상자 아래 여백 0 */
body .sec-box > :last-child:last-child,body .glass-card > :last-child:last-child,body .article-section > :last-child:last-child,body .toc > :last-child:last-child,body .blog-article .verification-report > :last-child:last-child,body .content-block > :last-child:last-child,body .hub-section > :last-child:last-child,body .home-showcase > :last-child:last-child,body .venues-section > :last-child:last-child,body .faq-category > :last-child:last-child,body .blog-section > :last-child:last-child{margin-bottom:0}
body .article-section > .venue-cta-section,body .article-section > .venue-cta-section > .venue-cta-card,body .venue-cta-section:last-child > .venue-cta-card{margin-bottom:0}

/* 목차 행 배경·번호 호버 사각형 제거, 블로그 제목 장식 바 제거 (2026-09-07) */
body .toc .toc-list > li:nth-child(n),body .toc .toc-list > li:nth-child(n):hover{background:none;border-radius:0;box-shadow:none;border:0;border-top:1px solid var(--v-gold-10);padding:0;margin:0}
body .toc .toc-list > li:first-child{border-top:0}
body .toc .toc-list > li:hover::before,body .toc-list > li:hover::before{background:none;color:var(--gold);box-shadow:none;transform:none}
body .toc .toc-list > li > a:hover{padding-left:0}
body .article-section h2::before,body .article-section h2::after,body .article-section h3::before,body .blog-article h2::before,body .blog-article h2::after{content:none;display:none}
body .article-section h2,body .article-section h3{padding-left:0;margin-left:0;display:block}

/* 가이드 제목 이모지 제거 (global.css .guide-text > h2::before 📖) */
body .guide-text > h2::before,body .guide-text > h2::after{content:none;display:none}
body .guide-text > h2{padding-left:0;display:block}

/* 다른 도시 같은 카테고리 (2026-09-07): 3칸 한 줄(PC·태블릿) / 모바일 1열 — 줄표·설명문 제거 */
body .xcity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}
body .xcity-grid .xcity{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:52px;padding:12px 16px;border-radius:12px;background:var(--bg-tertiary);border:1px solid transparent;color:var(--text-primary);text-decoration:none;font-size:14.5px;font-weight:700}
body .xcity-grid .xcity .hub-cnt{margin:0}
body .xcity-grid .xcity:hover{border-color:var(--v-gold-30,rgba(201,169,110,.3));color:var(--gold-light)}
@media (max-width:599px){body .xcity-grid{grid-template-columns:1fr}}

/* 상자 장식선 제거 (2026-09-07): 가이드 상자 왼쪽 세로 바·상단 그라데이션 선 등 옛 장식 ::before/::after */
body .guide-text::before,body .guide-text::after,body .venue-cta-section::before,body .related-section::before,body .faq-cta::before,body section.faq-section::before,body section.blog-section::before,body section.cta-section::before,body .verification-report::before,body .toc::before,body .article-header::after,body .article-footer::before{content:none;display:none}

/* 히어로 정리 (2026-09-07 사장님 "쓸데없어 보인다 지워라"): 제목 + (특집 링크) + 상담 버튼만. 전부 가운데 */
body .city-header.glass-card > h1,body .city-header.glass-card > h1.gold-text,body .city-header.glass-card > p,body .city-header.glass-card > .cta-buttons,body .page-hero > h1,body .page-hero > p{text-align:center;margin-left:auto;margin-right:auto}
body .city-header.glass-card > h1{margin-bottom:10px}
body .city-header .category-feature-link{font-size:14.5px;color:var(--text-secondary);margin:0 0 4px}
body .city-header .category-feature-link a{color:var(--gold-light);text-decoration:none;border-bottom:1px solid var(--v-gold-30,rgba(201,169,110,.3))}
body .city-header .cta-buttons.hero-cta{margin-top:18px;justify-content:center}

/* 허브 특집 카드 (2026-09-07): 히어로 아래, 표지+제목+월+요약. 1개=가로형, 2개 이상=2열(홀수 마지막 넓힘), 모바일 1열 */
body .feat-grid{display:grid;grid-template-columns:1fr;gap:12px}
body .feat-grid.n2{grid-template-columns:repeat(2,1fr)}
body .feat-grid.n2>.feat-card:nth-last-child(1):nth-child(odd){grid-column:1/-1}
body .feat-card{display:grid;grid-template-columns:220px 1fr;gap:0;background:var(--bg-tertiary);border:1px solid transparent;border-radius:14px;overflow:hidden;text-decoration:none;color:var(--text-primary);min-height:132px}
body .feat-card:hover{border-color:var(--v-gold-30,rgba(201,169,110,.3))}
body .feat-img{position:relative;background:var(--bg-secondary)}
body .feat-img img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:4/3}
body .feat-body{display:flex;flex-direction:column;gap:6px;padding:16px 18px;min-width:0}
body .feat-date{font-size:12.5px;color:var(--gold);font-weight:700;letter-spacing:.02em}
body .feat-title{font-size:16px;font-weight:700;line-height:1.4;color:var(--text-primary)}
body .feat-desc{font-size:13.5px;line-height:1.65;color:var(--text-secondary);margin:0}
body .feat-more{margin-top:auto;font-size:13px;color:var(--gold-light);font-weight:700}
@media (max-width:599px){body .feat-grid.n2{grid-template-columns:1fr}body .feat-grid.n2>.feat-card:nth-last-child(1):nth-child(odd){grid-column:auto}body .feat-card{grid-template-columns:1fr}body .feat-img img{aspect-ratio:16/9}}

/* 표 셀 줄바꿈 허용 (2026-09-07 스캔: 모바일에서 가격표 셀이 nowrap 으로 겹침) + 카드 주소 대비 상향 */
body main table{width:100%;table-layout:auto;border-collapse:collapse}
body main table td,body main table th{white-space:normal;word-break:keep-all;overflow-wrap:anywhere;vertical-align:top}
body .venue-card .address,body .hsc-track .venue-card-content .address{color:var(--text-secondary);opacity:1}
@media (max-width:599px){body main table td,body main table th{font-size:13px;padding:8px 6px}}

/* 가격표 열 줄바꿈 강제 (venue.css 의 .price-guide td:nth-child(2) nowrap 보다 우선) */
body .price-guide td:nth-child(2),body .price-guide td:nth-child(n),body .quick-summary td:nth-child(n),body .price-guide th,body .quick-summary th{white-space:normal;word-break:keep-all;overflow-wrap:anywhere}
body .price-guide table,body .quick-summary table{width:100%;max-width:100%;table-layout:fixed}
body .price-guide td:first-child,body .quick-summary td:first-child{width:28%;min-width:84px}

/* ==========================================================================
   블로그 1면 (2026-09-07): 머리기사(2/3 + 주요 2편) · 특집 3열 · 전체 글 가로형 목록. 모바일 1열
   ========================================================================== */
body .np-top{display:grid;grid-template-columns:2fr 1fr;gap:14px;align-items:stretch}
body .np-sides{display:grid;grid-template-rows:1fr 1fr;gap:14px}
body .np-lead,body .np-side,body .np-card,body .np-item{display:flex;flex-direction:column;background:var(--bg-tertiary);border:1px solid transparent;border-radius:14px;overflow:hidden;text-decoration:none;color:var(--text-primary);min-width:0}
body .np-lead:hover,body .np-side:hover,body .np-card:hover,body .np-item:hover{border-color:var(--v-gold-30,rgba(201,169,110,.3))}
body .np-img{background:var(--bg-secondary)}
body .np-img img{display:block;width:100%;height:100%;object-fit:cover;aspect-ratio:16/9}
body .np-lead .np-img img{aspect-ratio:16/9}
body .np-side{flex-direction:column}
body .np-side .np-img img{aspect-ratio:16/9}
body .np-body{display:flex;flex-direction:column;gap:8px;padding:16px 18px;min-width:0}
body .np-meta{display:flex;flex-wrap:wrap;gap:6px 10px;align-items:center;font-size:12.5px;color:var(--text-secondary)}
body .np-city,body .np-tag{padding:3px 8px;border-radius:999px;background:var(--v-gold-08);color:var(--gold-light);font-weight:700}
body .np-date{font-variant-numeric:tabular-nums}
body .np-h{font-size:17px;line-height:1.4;font-weight:700;color:var(--text-primary);margin:0;text-align:left}
body .np-lead .np-h{font-size:24px;line-height:1.3}
body .np-side .np-h{font-size:15.5px}
body .np-deck{font-size:14px;line-height:1.7;color:var(--text-secondary);margin:0}
body .np-lead .np-deck{font-size:15px}
body .np-more{margin-top:auto;padding-top:6px;font-size:13.5px;font-weight:700;color:var(--gold-light)}
body .np-row{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
body .np-row.n2{grid-template-columns:repeat(2,1fr)}
body .np-row.n1{grid-template-columns:1fr}
body .np-list{display:grid;grid-template-columns:1fr;gap:12px}
body .np-item{flex-direction:row}
body .np-item .np-img{flex:0 0 240px}
body .np-item .np-img img{aspect-ratio:16/9;height:100%}
@media (min-width:600px) and (max-width:1023px){body .np-top{grid-template-columns:1fr}body .np-sides{grid-template-rows:none;grid-template-columns:1fr 1fr}body .np-row{grid-template-columns:repeat(3,1fr)}body .np-item .np-img{flex-basis:200px}}
@media (max-width:599px){body .np-top,body .np-sides,body .np-row,body .np-row.n2{grid-template-columns:1fr;grid-template-rows:none}body .np-side,body .np-item{flex-direction:column}body .np-side .np-img,body .np-item .np-img{flex:none}body .np-side .np-img img,body .np-item .np-img img{aspect-ratio:16/9}body .np-lead .np-h{font-size:20px}body .np-body{padding:14px 16px}}

/* 루프 화살표 전 화면 표시 (2026-09-07 사장님): PC 이하에서도 ‹ › 버튼 유지, 모바일은 30px. 정적 행(hsc-static)은 계속 숨김 */
body .hsc-nav{display:flex;gap:6px;flex-shrink:0}
body .hsc-row.hsc-static .hsc-nav{display:none}
@media (max-width:599px){body .hsc-nav button{width:30px;height:30px;font-size:18px}body .hsc-row-head{flex-wrap:nowrap;align-items:center;gap:8px}body .hsc-row-head h3{flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}body .hsc-head-r{flex-shrink:0;display:flex;align-items:center;gap:8px}}

/* ==========================================================================
   업체 페이지 가독성 (2026-09-07): 가격표·찾아가는 방법 글자 크기/대비, PC 2열 동선 상자, 갤러리 화살표 위치 수정
   ========================================================================== */
body .price-guide th,body .price-guide td,body .quick-summary th,body .quick-summary td{font-size:15px;line-height:1.6;padding:12px 14px;vertical-align:top}
body .price-guide th,body .quick-summary th{font-size:13.5px;font-weight:600;color:var(--text-secondary);letter-spacing:.02em}
body .price-guide td:first-child,body .quick-summary td:first-child{color:var(--text-primary);font-weight:600;width:40%}
body .price-guide td:nth-child(2){color:var(--text-primary);font-weight:500}
body .price-guide td:nth-child(3),body .price-guide td:last-child:not(:first-child),body .quick-summary td:last-child:not(:first-child){font-size:15px;color:var(--text-secondary);font-weight:400}
body .price-guide .v-h3,body .venue-detail .v-h3{font-size:17px;margin:24px 0 10px;color:var(--text-primary)}
body .price-guide .v-h3:first-of-type{margin-top:6px}
body .tip-content{font-size:15px;line-height:1.75;color:var(--text-secondary)}
body .update-info{font-size:13px;margin-top:14px}
body .tip-box{padding:16px 18px;margin:0;border-radius:0 10px 10px 0}
body .tip-box strong{font-size:15.5px;margin-bottom:6px}
body .tip-box p{font-size:15px;line-height:1.75;color:var(--text-secondary)}
body .tip-box + .tip-box{margin-top:10px}
body .glass-card:has(> .venue-map){display:grid;grid-template-columns:1fr;gap:10px 16px;align-items:start}
body .glass-card:has(> .venue-map) > h2{grid-column:1/-1;margin:0 0 4px}
body .glass-card:has(> .venue-map) > .tip-box{margin:0}
body .glass-card:has(> .venue-map) > .venue-map{grid-column:1/-1;margin-top:8px}
@media (min-width:1024px){
  body .glass-card:has(> .venue-map){grid-template-columns:1fr 1fr;gap:12px 16px}
  body .glass-card:has(> .venue-map) > .tip-box:nth-last-child(2):nth-child(even){grid-column:1/-1}
}
@media (max-width:599px){
  body .price-guide td:nth-child(n),body .price-guide th,body .quick-summary td:nth-child(n),body .quick-summary th{font-size:14px;padding:10px 8px}
  body .price-guide th,body .quick-summary th{font-size:12.5px}
  body .tip-box{padding:14px 14px}
}
body .venue-header .gallery-wrap{grid-column:1;grid-row:2;position:relative;min-width:0;width:100%;margin-top:12px}
body .venue-header .gallery-wrap .venue-gallery{margin-top:0;grid-column:auto;grid-row:auto}
body .venue-header > .gallery-nav,body .venue-header > .gallery-fade{display:none}

/* ==========================================================================
   반응형 검토 반영 (2026-09-07): 카드 4px 들여쓰기 제거 · 블로그 태블릿 2열 · 브레드크럼 탭 영역 · 작은 글자 · FAQ CTA 2열 · 태블릿 메뉴 · 빈 행 머리
   ========================================================================== */
@media (max-width:1023px){
  body section.glass-card.glass-card,body .glass-card.glass-card,body .content-block.content-block,body .sec-box.sec-box{margin-left:0;margin-right:0}
}
@media (min-width:600px) and (max-width:899px){
  body .np-row{grid-template-columns:repeat(2,1fr)}
  body .np-row.n1{grid-template-columns:1fr}
  body .np-row > .np-card:nth-last-child(1):nth-child(odd){grid-column:1/-1;flex-direction:row}
  body .np-row > .np-card:nth-last-child(1):nth-child(odd) .np-img{flex:0 0 42%}
  body .np-row > .np-card:nth-last-child(1):nth-child(odd) .np-img img{aspect-ratio:4/3;height:100%}
}
body .breadcrumb ol{align-items:center;gap:4px 8px}
body .breadcrumb a,body .breadcrumb li:last-child > span,body .breadcrumb li[aria-current]{display:inline-block;padding:7px 4px;margin:-7px -4px;line-height:1.3}
body .vi-label{font-size:12.5px}
@media (max-width:640px){
  body main table th,body main table td{font-size:13px}
}
@media (max-width:599px){
  body .faq-cta .cta-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;justify-content:stretch}
  body .faq-cta .cta-buttons > a{width:auto;min-width:0;margin:0}
  body .hsc-nav button{width:34px;height:34px}
}
@media (min-width:769px) and (max-width:1023px){
  body .header .header-nav{gap:12px}
  body .header .header-nav a{padding:6px 8px}
}
body .hsc-row-head:has(> h3.sr-only){margin-top:-6px;margin-bottom:8px}
@media (max-width:640px){body .table-wrap th{font-size:13px !important}body .table-wrap td{font-size:13.5px !important}}

/* ==========================================================================
   카드 크기 통일 (2026-09-08): 같은 그리드 안 카드는 내용과 상관없이 같은 크기. 마지막 줄이 남으면 넓히지 않고 같은 크기로 가운데
   ========================================================================== */
body .glass-card:has(> .venue-map){display:block}
body .glass-card > .tip-grid{margin:0 0 16px}
body .tip-grid > .tip-box{margin:0;height:100%}
body .tip-grid > .tip-box + .tip-box{margin-top:0}
@media (min-width:600px){
  body .tip-grid,body .fact-grid,body .feat-grid,body .hub-glance,body .hub-tips-grid,body .abt-3col,body .abt-2col,body .abt-cities,body .verify-grid,body .ph-grid,body .np-row,body .hb-row,body .nearby-grid-v2{grid-auto-rows:1fr}
}
@media (min-width:1024px){
  body .tip-grid>:nth-last-child(1):nth-child(3n+1),body .fact-grid>:nth-last-child(1):nth-child(3n+1){grid-column:3/5}
  body .tip-grid>:nth-last-child(2):nth-child(3n+1),body .fact-grid>:nth-last-child(2):nth-child(3n+1){grid-column:2/4}
  body .tip-grid>:nth-last-child(1):nth-child(3n+2),body .fact-grid>:nth-last-child(1):nth-child(3n+2){grid-column:4/6}
  body .feat-grid.n2>.feat-card:nth-last-child(1):nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
}
@media (min-width:600px) and (max-width:1023px){
  body .tip-grid>:nth-last-child(1):nth-child(odd),body .fact-grid>:nth-last-child(1):nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
  body .tip-grid.n3>:nth-last-child(1):nth-child(odd),body .fact-grid.n3>:nth-last-child(1):nth-child(odd),body .fact-grid.n6>:nth-last-child(1):nth-child(odd){grid-column:auto;width:auto}
  body .nearby-grid-v2:has(> :nth-child(3):last-child){grid-template-columns:repeat(6,minmax(0,1fr))}
  body .nearby-grid-v2:has(> :nth-child(3):last-child) > *{grid-column:span 2}
}
body .ph-grid>.ph-card:nth-last-child(1):nth-child(odd){grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
body .ph-card > .ph-pr:last-child{grid-column:1/-1}
@media (max-width:1023px){
  body .pg8 > .pg8-tile:last-child:nth-child(odd){grid-column:1/-1;width:calc(50% - 5px);justify-self:center}
}
@media (max-width:599px){
  body .ph-grid>.ph-card:nth-last-child(1):nth-child(odd){width:auto;justify-self:stretch}
  body .cta-section .btns > a:nth-child(3):last-child,body .city-bottom-cta .btns > a:nth-child(3):last-child{grid-column:1/-1;width:calc(50% - 6px);justify-self:center}
}

/* 가격 안내 표형 v10 (2026-09-08, 사장님 "현장 확인 리포트 형태로"): 현장 확인 리포트와 같은 결 — 얇은 선으로 나뉜 칸, 가운데 정렬, 작은 라벨 + 굵은 금색 이름 + 정보. PC 3열(수에 따라 2·4·5열, 마지막 줄은 칸을 합쳐 채움), 태블릿·모바일 2열 */
body .pg8{display:grid;grid-template-columns:repeat(6,1fr);grid-auto-rows:1fr;gap:1px;background:var(--border-color);border:1px solid var(--border-color);border-radius:12px;overflow:hidden}
body .pg8>.pg8-tile{grid-column:span 2}
body .pg8>.pg8-tile:nth-last-child(1):nth-child(3n+1){grid-column:span 6}
body .pg8>.pg8-tile:nth-last-child(2):nth-child(3n+1),body .pg8>.pg8-tile:nth-last-child(1):nth-child(3n+2){grid-column:span 3}
body .pg8.n1{grid-template-columns:1fr}body .pg8.n1>.pg8-tile:nth-child(n):nth-child(n){grid-column:auto}
body .pg8.n2,body .pg8.n4{grid-template-columns:repeat(2,1fr)}body .pg8.n2>.pg8-tile:nth-child(n):nth-child(n),body .pg8.n4>.pg8-tile:nth-child(n):nth-child(n){grid-column:auto}
body .pg8.n8{grid-template-columns:repeat(4,1fr)}body .pg8.n8>.pg8-tile:nth-child(n):nth-child(n){grid-column:auto}
body .pg8.n10{grid-template-columns:repeat(5,1fr)}
body .pg8.n5{grid-template-columns:repeat(6,1fr)}body .pg8.n5>.pg8-tile{grid-column:span 2}body .pg8.n5>.pg8-tile:nth-child(n+4){grid-column:span 3}
body .pg8.n7{grid-template-columns:repeat(12,1fr)}body .pg8.n7>.pg8-tile{grid-column:span 3}body .pg8.n7>.pg8-tile:nth-child(n+5){grid-column:span 4}
body .pg8-tile{position:static;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:92px;padding:16px 14px;background:var(--bg-tertiary);border:0;border-radius:0;text-align:center;min-width:0}
body .pg8-tile::before{display:none}
body .pg8-tile i{font-style:normal;font-size:11.5px;font-weight:400;color:var(--text-secondary);letter-spacing:.02em;line-height:1.3}
body .pg8-tile b{font-size:16px;font-weight:800;color:var(--gold);line-height:1.3;word-break:keep-all}
body .pg8-tile span{font-size:13.5px;font-weight:400;color:var(--text-primary);line-height:1.45}
body .pg8-chips{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:6px}
body .pg8-chips li{padding:5px 10px;border-radius:999px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.1);font-size:13.5px;font-weight:600;color:var(--gold);line-height:1.3}
body .pg8-chips li em{font-style:normal;color:var(--text-secondary);font-size:12px;margin-left:4px;font-weight:400}
body .price-guide p.pg8-sub,body .glass-card > p.pg8-sub{margin:20px 0 0;font-size:13.5px;color:var(--text-secondary);line-height:1.6}
body .price-guide p.pg8-note,body .glass-card > p.pg8-note{margin:20px 0 0;font-size:14.5px;color:var(--text-secondary);line-height:1.6}
body .price-guide p.pg8-sub + p.pg8-note,body .glass-card > p.pg8-sub + p.pg8-note{margin-top:8px}
@media (max-width:1023px){
  body .pg8,body .pg8.n3,body .pg8.n4,body .pg8.n5,body .pg8.n7,body .pg8.n8,body .pg8.n10{grid-template-columns:repeat(2,1fr)}
  body .pg8>.pg8-tile:nth-child(n){grid-column:auto;width:auto;justify-self:stretch}
  body .pg8>.pg8-tile:last-child:nth-child(odd){grid-column:1/-1}
}
@media (max-width:599px){body .pg8-tile{padding:13px 10px;min-height:84px}body .pg8-tile b{font-size:15px}body .pg8-tile span{font-size:13px}body .pg8-chips li{padding:4px 9px;font-size:13px}body .price-guide p.pg8-note{margin-top:16px}}

/* 업체 섹션 표형 통일 (2026-09-08): 한눈에 보기(.pg8-kv)·찾아가는 방법·이용 팁·유의사항(.pg8-text)을 가격 안내와 같은 표형 칸으로 */
body .pg8.pg8-kv .pg8-tile span{font-size:14.5px;color:var(--text-primary);line-height:1.55}
body .pg8.pg8-text .pg8-tile{align-items:flex-start;justify-content:flex-start;text-align:left;padding:16px 18px;gap:6px}
body .pg8.pg8-text .pg8-tile i{font-size:13.5px;font-weight:700;color:var(--gold-light);letter-spacing:0}
body .pg8.pg8-text .pg8-tile span{font-size:14.5px;color:var(--text-primary);line-height:1.7}
body .pg8.pg8-text .pg8-tile span a{color:var(--gold-light)}
body .glass-card > .pg8 + .venue-map{margin-top:16px}
body .glass-card > .pg8:last-child{margin-bottom:0}
body .pg8.n10{grid-template-columns:repeat(12,1fr)}body .pg8.n10>.pg8-tile{grid-column:span 3}body .pg8.n10>.pg8-tile:nth-child(n+5){grid-column:span 4}
@media (max-width:1023px){body .pg8.n10{grid-template-columns:repeat(2,1fr)}body .pg8.n10>.pg8-tile:nth-child(n){grid-column:auto}body .pg8.n10>.pg8-tile:last-child:nth-child(odd){grid-column:1/-1}}
@media (max-width:599px){body .pg8.pg8-text .pg8-tile{padding:14px 14px}body .pg8.pg8-kv .pg8-tile span{font-size:13.5px}}

/* pg8 모바일·태블릿 최종 규칙 (2026-09-08): 어떤 nN 의 span 도 2열로 초기화(특이성 상향), 홀수 마지막 칸은 전체 폭. 본문형(.pg8-text)은 모바일 1열·자연 높이 */
@media (max-width:1023px){
  body .pg8>.pg8-tile:nth-child(n):nth-child(n){grid-column:auto;width:auto;justify-self:stretch}
  body .pg8>.pg8-tile:last-child:nth-child(odd):nth-child(n){grid-column:1/-1}
}
@media (max-width:599px){
  body .pg8.pg8-text{grid-template-columns:1fr;grid-auto-rows:auto}
  body .pg8.pg8-text>.pg8-tile:nth-child(n):nth-child(n){grid-column:auto}
}

/* 표 안 간결·아래 서술 (2026-09-08): 칸 = 라벨 + 핵심 한 줄(굵은 금색), 상세는 아래 .pg8-sub 줄글 */
body .pg8.pg8-kv .pg8-tile b{font-size:15.5px;font-weight:800;color:var(--gold);line-height:1.35}
body .pg8.pg8-kv .pg8-tile span{font-size:14px;color:var(--text-primary);line-height:1.5}
body .price-guide p.pg8-sub,body .glass-card > p.pg8-sub{font-size:14px;line-height:1.8;color:var(--text-secondary)}
body .glass-card > p.pg8-sub + .venue-map{margin-top:16px}
body p.pg8-sub b{font-weight:700;color:var(--text-primary)}
body p.pg8-sub b::after{content:':'}

/* pg8 짝수 통일 (2026-09-08): 칸 수는 2·4·6·8·10·12·16·18 뿐 → 합치기 없이 항상 꽉 참. PC 열 2→2, 4·8·12·16→4, 6·18→3, 10→5, 태블릿·모바일 2열 */
body .pg8.pg8{grid-template-columns:repeat(3,1fr)}
body .pg8.pg8>.pg8-tile:nth-child(n):nth-child(n){grid-column:auto;width:auto;justify-self:stretch}
body .pg8.pg8.n2{grid-template-columns:repeat(2,1fr)}
body .pg8.pg8.n4,body .pg8.pg8.n8,body .pg8.pg8.n12,body .pg8.pg8.n16{grid-template-columns:repeat(4,1fr)}
body .pg8.pg8.n10{grid-template-columns:repeat(5,1fr)}
@media (max-width:1023px){body .pg8.pg8.pg8{grid-template-columns:repeat(2,1fr)}}
body .glass-card > h2 + p.pg8-sub{margin-top:0}
body .glass-card:has(> .venue-map) > h2{margin:0 0 16px}

/* 유의사항 = 문의 한 줄 (2026-09-08) */
body .glass-card > h2 + p.pg8-note{margin-top:0}

/* 사이트 전체 리포트 표형 (2026-09-08): 허브·도시·소개·FAQ 회화 = .pg8 규칙, 블로그 표는 같은 결의 얇은 선 표 */
body .pg8.ph-grid .pg8-tile{gap:3px;padding:14px 12px}
body .pg8.ph-grid .pg8-tile i.ph-note{font-size:11.5px;color:var(--text-secondary);min-height:14px;grid-column:auto}
body .pg8.ph-grid .pg8-tile b.ph-ko{font-size:15.5px;font-weight:800;color:var(--gold);grid-column:auto}
body .pg8.ph-grid .pg8-tile span.ph-vi{font-size:14px;color:var(--text-primary)}
body .pg8.ph-grid .pg8-tile span.ph-pr{font-size:13px;color:var(--text-secondary)}
body .ph-group > .pg8{margin:0 0 16px}
body .ph-group > p.pg8-sub{margin:0 0 16px}
body .content-block > .pg8,body .hub-section > .pg8{margin:0 0 16px}
body .content-block > .pg8 + p.pg8-sub,body .hub-section > .pg8 + p.pg8-sub{margin:-4px 0 16px}
body .table-wrap table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--border-color);border-radius:12px;overflow:hidden;background:var(--bg-tertiary)}
body .table-wrap th,body .table-wrap td{border-right:1px solid var(--border-color);border-bottom:1px solid var(--border-color);padding:11px 12px;text-align:center;vertical-align:middle}
body .table-wrap th{font-size:12.5px;font-weight:600;color:var(--text-secondary);background:var(--v-gold-04,rgba(201,169,110,.04))}
body .table-wrap td{font-size:14px;color:var(--text-primary);line-height:1.5}
body .table-wrap td:first-child{font-weight:700;color:var(--gold)}
body .table-wrap tr > :last-child{border-right:0}
body .table-wrap tbody tr:last-child > *{border-bottom:0}
