
/* ===== reset / tokens ===== */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --ink:#0a0a0a;--ink2:#141414;--card:#1e1e1e;--card2:#262626;
  --line:rgba(255,255,255,.10);--gold:#c9a96e;--gold2:#e8d5a3;--gold3:#a6854a;
  --glass:rgba(255,255,255,0.06);--text:#ffffff;--muted:#999999;
  --font-body:'Noto Sans KR', sans-serif;--font-disp:'Playfair Display','Noto Sans KR',serif;
  --r:18px;--rs:12px;--max:1200px;
  --shadow:0 18px 48px rgba(0,0,0,.45);
  --accent:var(--gold);
}
html,body{overflow-x:clip}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{
  font-family:var(--font-body);
  background:var(--ink);color:var(--text);line-height:1.7;letter-spacing:-.01em;
  word-break:keep-all;
}
h1,h2,h3,h4{overflow-wrap:anywhere;min-width:0;font-style:normal;font-family:var(--font-body)}
.brg-logo-txt i,.brg-eyebrow,.brg-sh .kicker,.brg-cta-band .bt small,
#brg-ref-visit .rv-k,.brg-side-box .sb-h,.brg-foot .ft-h{font-family:var(--font-disp);letter-spacing:.18em}
a,button{-webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--gold);outline-offset:3px;border-radius:4px}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.wrap{max-width:var(--max);margin:0 auto;padding:0 20px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* ===== header ===== */
.brg-top{background:var(--ink2);border-bottom:1px solid var(--line);
  font-size:12.5px;color:#b8b2a8}
.brg-top .wrap{display:flex;justify-content:space-between;align-items:center;height:36px;gap:14px}
.brg-top b{color:var(--gold2);font-weight:700}
.brg-top .brg-top-r{display:flex;gap:16px;white-space:nowrap;overflow:hidden}
@media(max-width:768px){.brg-top .brg-top-r{display:none}}

.brg-head{position:sticky;top:0;z-index:900;background:rgba(10,10,10,.82);backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.brg-head .wrap{display:flex;align-items:center;gap:18px;height:74px}
.brg-logo{display:flex;align-items:center;gap:11px;flex-shrink:0}
.brg-logo-mark{width:40px;height:40px}
.brg-logo-txt{display:flex;flex-direction:column;line-height:1.15}
.brg-logo-txt b{font-size:17px;font-weight:800;color:#fff;letter-spacing:-.03em}
.brg-logo-txt i{font-size:9.5px;font-style:normal;letter-spacing:.22em;color:var(--gold);font-weight:600}

.brg-nav{display:flex;gap:2px;margin-left:auto}
.brg-nav>li{position:relative}
.brg-nav>li>a{display:flex;align-items:center;gap:5px;height:74px;padding:0 11px;font-size:14.5px;
  font-weight:500;color:#e6e2da;white-space:nowrap;transition:color .2s}
.brg-nav>li>a:hover,.brg-nav>li.on>a{color:var(--gold2)}
.brg-nav>li>a::after{content:"";position:absolute;left:11px;right:11px;bottom:18px;height:2px;
  background:linear-gradient(90deg,var(--gold),transparent);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.brg-nav>li:hover>a::after,.brg-nav>li.on>a::after{transform:scaleX(1)}
.brg-drop{position:absolute;top:74px;left:50%;transform:translateX(-50%) translateY(8px);min-width:230px;
  background:var(--card);border:1px solid var(--line);border-radius:14px;padding:10px;box-shadow:var(--shadow);
  opacity:0;visibility:hidden;transition:.22s}
.brg-nav>li:hover .brg-drop,.brg-nav>li:focus-within .brg-drop{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.brg-drop a{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:10px 13px;border-radius:9px;
  font-size:14.5px;color:#d8d2ca;transition:.18s}
.brg-drop a:hover{background:rgba(201,169,110,.12);color:var(--gold2)}
.brg-drop a span{font-size:11px;color:var(--muted)}

.brg-cta{display:flex;align-items:center;gap:9px;flex-shrink:0;padding:11px 18px;border-radius:999px;
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;font-weight:800;font-size:15px;
  box-shadow:0 8px 22px rgba(201,169,110,.28);transition:.25s;white-space:nowrap}
.brg-cta:hover{transform:translateY(-2px);box-shadow:0 12px 28px rgba(201,169,110,.42)}
.brg-cta small{display:block;font-size:10px;font-weight:700;letter-spacing:.1em;opacity:.72}
.brg-cta .ar{font-size:17px;line-height:1}
.brg-burger{display:none;width:44px;height:44px;border:1px solid var(--line);border-radius:11px;background:transparent;
  color:var(--text);font-size:20px;cursor:pointer;align-items:center;justify-content:center}

@media(max-width:1340px){
  .brg-nav{display:none}
  .brg-burger{display:flex;margin-left:auto}
  .brg-cta{padding:9px 14px;font-size:13.5px}
  .brg-cta small{display:none}
}
@media(max-width:520px){
  .brg-head .wrap{height:64px;gap:10px}
  .brg-logo-mark{width:34px;height:34px}
  .brg-logo-txt b{font-size:15px}
  .brg-logo-txt i{font-size:8.5px}
}

/* mobile drawer */
.brg-drawer{position:fixed;inset:0;z-index:1000;background:rgba(8,8,8,.97);backdrop-filter:blur(6px);
  display:none;flex-direction:column;padding:22px 20px 40px;overflow-y:auto}
.brg-drawer.open{display:flex}
.brg-drawer-hd{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.brg-drawer-x{width:42px;height:42px;border:1px solid var(--line);border-radius:11px;background:transparent;
  color:var(--text);font-size:20px;cursor:pointer}
.brg-drawer .dw-h{display:block;font-size:12px;letter-spacing:.14em;color:var(--gold);margin:20px 0 8px;font-weight:700}
.brg-drawer a{display:block;padding:12px 14px;border-radius:10px;border:1px solid var(--line);
  margin-bottom:8px;font-size:15px;font-weight:600;background:var(--card)}

/* ══════════════════════════════════════════════════════════
   히어로 — 레퍼런스(popup-N3) 2분할 구조를 이식.
   구조·비율·여백만 차용하고 색·폰트는 고구려 토큰으로 재빌드.
   모든 선택자를 #brg-hero-ref 아래로 스코프 → 다른 섹션 영향 없음.
   (레퍼런스 rem 1rem=10px 기준을 px 로 환산해 우리 루트 폰트와 무관하게 고정)
   ══════════════════════════════════════════════════════════ */
#brg-hero-ref{position:relative;overflow:hidden;border-bottom:1px solid var(--line)}
#brg-hero-ref .hr-inner{display:grid;grid-template-columns:680px minmax(0,1fr);
  width:100%;min-height:min(800px,86vh)}
#brg-hero-ref .hr-title{display:flex;align-items:center;justify-content:center;flex-direction:column;
  gap:80px;padding:0 80px 48px;background:var(--ink2);position:relative}
#brg-hero-ref .hr-title::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(80% 60% at 50% 0%,rgba(201,169,110,.10),transparent 62%)}
#brg-hero-ref .hr-wrap{flex:1;display:flex;align-items:center;justify-content:center;position:relative;z-index:1}
#brg-hero-ref .hr-set{text-align:center;max-width:520px}
#brg-hero-ref .hr-eyebrow{display:inline-block;padding:8px 24px;margin-bottom:28px;
  border:1px solid var(--gold);color:var(--gold);font-family:var(--font-disp);
  font-size:12px;font-weight:500;letter-spacing:.28em;text-transform:uppercase}
#brg-hero-ref h1{font-size:clamp(34px,4.4vw,54px);font-weight:900;line-height:1.24;letter-spacing:-.035em;
  color:#fff;margin:0}
#brg-hero-ref h1 em{font-style:normal;
  background:linear-gradient(135deg,var(--gold2) 0%,var(--gold) 52%,var(--gold3) 100%);
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}
#brg-hero-ref .hr-desc{margin:24px 0 60px;font-size:17px;font-weight:300;line-height:1.75;
  color:rgba(255,255,255,.72)}
#brg-hero-ref .hr-btn{display:inline-flex;align-items:center;gap:12px;padding:18px 34px;border-radius:999px;
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;font-weight:800;font-size:18px;
  box-shadow:0 10px 30px rgba(201,169,110,.28);transition:.25s}
#brg-hero-ref .hr-btn:hover{transform:translateY(-2px);box-shadow:0 16px 38px rgba(201,169,110,.44)}
#brg-hero-ref .hr-btn small{display:block;font-size:11px;font-weight:700;letter-spacing:.12em;opacity:.72}
#brg-hero-ref .hr-hours{display:flex;align-items:center;justify-content:center;gap:24px;position:relative;z-index:1}
#brg-hero-ref .hr-hours span{font-family:var(--font-disp);font-size:21px;font-weight:700;color:var(--gold)}
#brg-hero-ref .hr-line{flex-shrink:0;width:96px;height:3px;background:var(--gold)}

#brg-hero-ref .hr-slide{position:relative;overflow:hidden;background:var(--ink)}
#brg-hero-ref .hr-track{display:flex;height:100%;transition:transform .9s cubic-bezier(.71,0,.29,1)}
#brg-hero-ref .hr-item{flex:0 0 100%;height:100%}
#brg-hero-ref .hr-item img{width:100%;height:100%;object-fit:cover;display:block}
#brg-hero-ref .hr-dots{position:absolute;left:0;right:0;bottom:24px;z-index:2;
  display:flex;gap:8px;justify-content:center}
#brg-hero-ref .hr-dots button{width:28px;height:3px;border:0;padding:0;cursor:pointer;
  background:rgba(255,255,255,.28);transition:.3s}
#brg-hero-ref .hr-dots button[aria-current="true"]{background:var(--gold);width:44px}

@media(max-width:992px){
  #brg-hero-ref .hr-inner{grid-template-columns:minmax(0,1fr);grid-template-rows:auto 360px;min-height:0}
  #brg-hero-ref .hr-title{gap:48px;padding:64px 16px 24px}
  #brg-hero-ref .hr-desc{margin:12px 0 28px;font-size:15px}
  #brg-hero-ref .hr-hours{gap:16px}
  #brg-hero-ref .hr-line{width:40px}
  #brg-hero-ref .hr-hours span{font-size:17px}
}
@media(max-width:480px){
  #brg-hero-ref .hr-inner{grid-template-rows:auto 260px}
  #brg-hero-ref .hr-title{padding:52px 16px 22px;gap:34px}
  #brg-hero-ref .hr-eyebrow{font-size:10.5px;letter-spacing:.2em;padding:7px 16px;margin-bottom:20px}
}

/* 히어로 아래 진입 칩·루프·통계 */
.brg-entry{padding:44px 0 8px;background:var(--ink)}
.brg-chips{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}
.brg-chips a{padding:9px 16px;border-radius:999px;border:1px solid var(--line);background:rgba(255,255,255,.04);
  font-size:13.5px;font-weight:600;color:#ded7ce;transition:.2s}
.brg-chips a:hover{border-color:var(--gold);color:var(--gold2);background:rgba(201,169,110,.1)}

.brg-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:38px}
.brg-stats div{padding:18px 16px;border:1px solid var(--line);border-radius:var(--rs);background:rgba(255,255,255,.03)}
.brg-stats b{display:block;font-size:19px;color:var(--gold2);font-weight:800;margin-bottom:3px}
.brg-stats span{font-size:12.5px;color:var(--muted)}
@media(max-width:760px){.brg-stats{grid-template-columns:repeat(2,1fr)}}

/* ===== section ===== */
section{padding:72px 0}
section.alt{background:var(--ink2)}
/* 섹션 헤더 = kicker / h2 / sub-p 3단 고정.
   h2 와 서브카피의 크기·굵기·색·간격을 한 곳에서만 정의해 페이지마다 어긋나지 않게 한다. */
.brg-sh{margin-bottom:34px;max-width:820px}
.brg-sh .kicker{display:block;font-size:12px;letter-spacing:.2em;color:var(--gold);font-weight:700;
  margin-bottom:12px;line-height:1}
.brg-sh h2{font-size:clamp(24px,3.2vw,34px);font-weight:800;letter-spacing:-.032em;color:#fff;
  line-height:1.34;margin:0}
.brg-sh h3{font-size:clamp(19px,2.4vw,23px);font-weight:800;letter-spacing:-.028em;color:#fff;line-height:1.4;margin:0}
.brg-sh p{margin:13px 0 0;color:var(--muted);font-size:15.5px;font-weight:400;line-height:1.75;max-width:64ch}
.brg-sh-row{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap;max-width:none}
.brg-sh-row>div:first-child{max-width:820px}
@media(max-width:620px){
  .brg-sh{margin-bottom:26px}
  .brg-sh p{font-size:14.5px;margin-top:11px}
}

/* ===== carousel (지역 카드) ===== */
.brg-carousel{position:relative}
.brg-track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(290px,1fr);gap:20px;
  overflow-x:auto;scroll-snap-type:x mandatory;padding:4px 4px 18px;scrollbar-width:thin}
.brg-track::-webkit-scrollbar{height:6px}
.brg-track::-webkit-scrollbar-thumb{background:rgba(201,169,110,.34);border-radius:99px}
.brg-track>*{scroll-snap-align:start}
.brg-arrows{display:flex;gap:9px}
.brg-arrows button{width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--card);
  color:var(--text);font-size:17px;cursor:pointer;transition:.2s}
.brg-arrows button:hover{border-color:var(--gold);color:var(--gold2)}

.brg-card{display:flex;flex-direction:column;background:var(--card);border:1px solid var(--line);
  border-radius:var(--r);overflow:hidden;transition:.3s cubic-bezier(.22,1,.36,1)}
.brg-card:hover{transform:translateY(-6px);border-color:rgba(201,169,110,.42);box-shadow:var(--shadow)}
.brg-card-img{position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--card2)}
.brg-card-img img{width:100%;height:100%;object-fit:cover;transition:transform .5s}
.brg-card:hover .brg-card-img img{transform:scale(1.05)}
.brg-badge{position:absolute;top:14px;left:14px;padding:6px 12px;border-radius:999px;font-size:11.5px;
  font-weight:800;letter-spacing:.02em;background:rgba(10,10,15,.72);border:1px solid currentColor;
  backdrop-filter:blur(6px)}
.brg-card-b{padding:22px 20px 24px;display:flex;flex-direction:column;flex:1}
.brg-card-b h3{font-size:19px;font-weight:800;color:#fff;letter-spacing:-.025em}
.brg-card-b p{margin-top:9px;font-size:14px;color:var(--muted);flex:1}
.brg-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:15px}
.brg-tags span{padding:5px 10px;border-radius:7px;background:rgba(255,255,255,.05);font-size:11.5px;color:#bdb6ad}
.brg-more{display:inline-flex;align-items:center;gap:7px;margin-top:18px;font-size:13.5px;font-weight:700;color:var(--gold2)}
.brg-more::after{content:"→";transition:transform .25s}
.brg-card:hover .brg-more::after{transform:translateX(4px)}

/* ===== grid (이미지 트랙은 minmax(0,1fr) — 모바일 오버플로 방지) ===== */
.brg-grid{display:grid;gap:20px}
.g2{grid-template-columns:repeat(2,minmax(0,1fr))}
.g3{grid-template-columns:repeat(3,minmax(0,1fr))}
.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:980px){.g3,.g4{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.g2,.g3,.g4{grid-template-columns:minmax(0,1fr)}}
@media(max-width:380px){
  .wrap{padding:0 14px}
  section{padding:52px 0}
  .brg-track{grid-auto-columns:minmax(248px,1fr)}
}

/* ===== 맛집 리스트 (플랫폼형 로우) ===== */
.brg-food{display:flex;gap:16px;padding:18px;border:1px solid var(--line);border-radius:var(--rs);
  background:var(--card);transition:.25s}
.brg-food:hover{border-color:rgba(201,169,110,.4);background:var(--card2)}
.brg-food-n{width:46px;height:46px;flex-shrink:0;border-radius:12px;display:flex;align-items:center;
  justify-content:center;font-weight:800;font-size:15px;background:rgba(201,169,110,.13);color:var(--gold2)}
.brg-food .fn{display:block;font-size:16.5px;font-weight:700;color:#fff;line-height:1.5}
.brg-food .meta{display:flex;flex-wrap:wrap;gap:8px;margin:7px 0 8px}
.brg-food .meta span{font-size:11.5px;padding:4px 9px;border-radius:6px;background:rgba(255,255,255,.05);color:#c2bbb2}
.brg-food .meta span.hr{background:rgba(201,169,110,.18);color:var(--gold2)}
.brg-food p{font-size:13.5px;color:var(--muted)}

/* ===== step ===== */
.brg-step{position:relative;padding:26px 22px;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.brg-step b.num{display:inline-block;font-size:11.5px;letter-spacing:.14em;color:var(--gold);font-weight:800;margin-bottom:12px}
.brg-step h3{font-size:17.5px;font-weight:700;color:#fff;margin-bottom:9px}
.brg-step p{font-size:14px;color:var(--muted)}

/* ===== table ===== */
.brg-tw{overflow-x:auto;border:1px solid var(--line);border-radius:var(--rs);background:var(--card)}
table.brg-t{width:100%;border-collapse:collapse;min-width:520px;font-size:14.5px}
table.brg-t th,table.brg-t td{padding:14px 16px;text-align:left;border-bottom:1px solid var(--line)}
table.brg-t thead th{background:rgba(201,169,110,.09);color:var(--gold2);font-weight:700;font-size:13.5px}
table.brg-t tbody tr:last-child td{border-bottom:0}
table.brg-t td b{color:#fff}

/* ===== FAQ ===== */
.brg-faq details{border:1px solid var(--line);border-radius:var(--rs);background:var(--card);margin-bottom:12px;overflow:hidden}
.brg-faq details[open]{border-color:rgba(201,169,110,.36)}
.brg-faq summary{list-style:none;cursor:pointer;padding:20px 56px 20px 22px;position:relative;
  font-size:16px;font-weight:700;color:#fff}
.brg-faq summary::-webkit-details-marker{display:none}
.brg-faq summary::after{content:"+";position:absolute;right:22px;top:50%;transform:translateY(-50%);
  font-size:22px;color:var(--gold);transition:.25s}
.brg-faq details[open] summary::after{content:"−"}
.brg-faq .a{padding:0 22px 22px;font-size:14.8px;color:#c5beb6;line-height:1.95}
.brg-faq .a strong{color:#fff}
.faq-highlight{background:linear-gradient(transparent 58%,rgba(201,169,110,.32) 58%);color:#fff;font-weight:600}

/* ===== 예약 폼 밴드 ===== */
.brg-form-band{background:var(--ink2);border-top:1px solid var(--line);
  border-bottom:1px solid var(--line)}
.brg-form-band .wrap{padding-top:56px;padding-bottom:56px}
.brg-form-hd{text-align:center;margin-bottom:30px}
.brg-form-hd h2{font-size:clamp(22px,3.2vw,30px);font-weight:800;color:#fff}
.brg-form-hd p{margin-top:11px;color:#b9b2aa;font-size:15px}
form.brg-form{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) minmax(0,1fr) auto;gap:14px;align-items:end;
  padding:24px;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
form.brg-form .fld{display:flex;flex-direction:column;gap:8px}
form.brg-form label{font-size:12.5px;font-weight:700;letter-spacing:.04em;color:var(--gold2);
  display:flex;align-items:center;gap:6px}
form.brg-form input{height:50px;padding:0 15px;border-radius:11px;border:1px solid var(--line);
  background:rgba(255,255,255,.05);color:var(--text);font-size:15px;font-family:inherit}
form.brg-form input::placeholder{color:#7d766e}
form.brg-form input:focus{outline:none;border-color:var(--gold);background:rgba(201,169,110,.08)}
form.brg-form button{height:50px;padding:0 30px;border:0;border-radius:11px;cursor:pointer;
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;font-weight:800;font-size:15.5px;
  font-family:inherit;white-space:nowrap;transition:.25s}
form.brg-form button:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(201,169,110,.35)}
.brg-form-note{margin-top:14px;text-align:center;font-size:12.5px;color:var(--muted)}
@media(max-width:900px){form.brg-form{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}form.brg-form button{grid-column:1/-1}}
@media(max-width:520px){form.brg-form{grid-template-columns:minmax(0,1fr)}}

/* ===== article (하위페이지 본문) ===== */
.brg-bc{font-size:12.5px;color:var(--muted);padding:20px 0 0}
.brg-bc a:hover{color:var(--gold2)}
.brg-bc span{margin:0 7px;opacity:.5}
.brg-art{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:44px;padding:36px 0 76px;align-items:start}
@media(max-width:1000px){.brg-art{grid-template-columns:minmax(0,1fr);gap:32px}}
.brg-art h1{font-size:clamp(25px,4vw,36px);font-weight:800;line-height:1.35;letter-spacing:-.03em;color:#fff;margin-bottom:18px}
.brg-art .intro{font-size:16.5px;color:#c9c2ba;padding:20px 22px;border-left:3px solid var(--gold);
  background:rgba(201,169,110,.06);border-radius:0 var(--rs) var(--rs) 0;margin-bottom:34px}
.brg-art h2{font-size:clamp(21px,2.8vw,27px);font-weight:800;color:#fff;margin:46px 0 16px;
  padding-top:26px;border-top:1px solid var(--line);letter-spacing:-.025em}
.brg-art h3{font-size:18.5px;font-weight:700;color:var(--gold2);margin:30px 0 12px}
.brg-art p{font-size:15.5px;color:#c5beb6;margin-bottom:16px}
.brg-art ul{list-style:none;margin:0 0 20px}
.brg-art ul li{position:relative;padding-left:20px;margin-bottom:10px;font-size:15px;color:#c5beb6}
.brg-art ul li::before{content:"";position:absolute;left:3px;top:12px;width:6px;height:6px;border-radius:50%;background:var(--gold)}
.brg-art figure{margin:26px 0}
.brg-art figure img{border-radius:var(--r);border:1px solid var(--line);width:100%}
.brg-art figcaption{margin-top:10px;font-size:12.5px;color:var(--muted);text-align:center}
.brg-key{padding:24px;border:1px solid rgba(201,169,110,.3);border-radius:var(--r);
  background:rgba(201,169,110,.06);margin:30px 0}
.brg-key b{display:block;color:var(--gold2);font-size:14px;letter-spacing:.08em;margin-bottom:12px}
.brg-divider{height:1px;background:linear-gradient(90deg,transparent,var(--line),transparent);margin:44px 0}

/* sidebar */
.brg-side{position:sticky;top:96px;display:flex;flex-direction:column;gap:18px}
.brg-side-box{border:1px solid var(--line);border-radius:var(--r);background:var(--card);padding:22px}
.brg-side-box .sb-h{display:block;font-size:13px;letter-spacing:.12em;color:var(--gold);font-weight:800;margin-bottom:14px}
.brg-side-box a{display:flex;justify-content:space-between;gap:10px;padding:10px 0;font-size:14px;
  color:#cdc6be;border-bottom:1px solid var(--line)}
.brg-side-box a:last-child{border-bottom:0}
.brg-side-box a:hover{color:var(--gold2)}
.brg-side-cta{display:block;text-align:center;padding:20px;border-radius:var(--r);
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408}
.brg-side-cta small{display:block;font-size:12px;font-weight:700;opacity:.75}
.brg-side-cta b{display:block;font-size:21px;font-weight:800;margin-top:4px}
@media(max-width:1000px){.brg-side{position:static}}

/* ===== toc ===== */
.brg-toc{border:1px solid var(--line);border-radius:var(--r);background:var(--card);padding:22px 24px;margin-bottom:34px}
.brg-toc b{display:block;font-size:13px;letter-spacing:.12em;color:var(--gold);margin-bottom:12px;font-weight:800}
.brg-toc ol{margin:0;padding-left:20px;color:#c5beb6}
.brg-toc li{margin-bottom:7px;font-size:14.5px}
.brg-toc a:hover{color:var(--gold2)}

/* ===== footer ===== */
.brg-foot{background:#06060a;border-top:1px solid var(--line);padding:56px 0 34px;font-size:14px}
.brg-foot-grid{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:34px;padding-bottom:34px;border-bottom:1px solid var(--line)}
@media(max-width:860px){.brg-foot-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:26px}}
.brg-foot .ft-h{display:block;font-size:12.5px;letter-spacing:.14em;color:var(--gold);font-weight:800;margin-bottom:14px}
.brg-foot a{display:block;padding:5px 0;color:#a9a29a;font-size:13.5px}
.brg-foot a:hover{color:var(--gold2)}
.brg-foot .about p{color:#8e8880;font-size:13px;margin-top:14px;max-width:330px}
.brg-foot-b{padding-top:22px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  color:#6f6a63;font-size:12.5px}
.brg-foot-b a{display:inline;color:#8e8880}

/* ===== 플로팅 : 전화·문자 (다음머니 스타일) ===== */
.dg-floating{position:fixed;right:24px;bottom:26px;z-index:9999;display:flex;flex-direction:column;gap:12px}
.dg-floating a{display:flex;align-items:center;gap:13px;background:#fff;color:#8a6c33;border:2.5px solid var(--gold);
  border-radius:999px;padding:14px 24px 14px 18px;box-shadow:0 10px 32px rgba(0,0,0,.42);font-size:15px;
  font-weight:800;line-height:1.2;transition:all .3s cubic-bezier(.22,1,.36,1)}
.dg-floating a:hover{transform:translateX(-5px) scale(1.03);
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;border-color:var(--gold2)}
.dg-floating .dg-icon{width:42px;height:42px;display:flex;align-items:center;justify-content:center;flex-shrink:0;
  border-radius:50%;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;transition:.3s}
.dg-floating a:hover .dg-icon{background:#fff;color:#8a6c33}
.dg-floating .dg-icon svg{width:23px;height:23px;display:block}
.dg-floating-text{white-space:nowrap;letter-spacing:-.02em}
@media(max-width:768px){
  .dg-floating{right:14px;bottom:16px;gap:9px}
  .dg-floating a{padding:11px 18px 11px 13px;font-size:13px;gap:9px;border-width:2px}
  .dg-floating .dg-icon{width:34px;height:34px}
  .dg-floating .dg-icon svg{width:19px;height:19px}
}

/* ===== 플로팅 : 빠른예약 (코리아렌트 스타일 · 우측 중앙) ===== */
.krf-quick{position:fixed;right:20px;top:50%;transform:translateY(-50%);z-index:9998;width:236px}
.krf-quick-in{border:1px solid rgba(201,169,110,.4);border-radius:16px;overflow:hidden;
  background:rgba(16,16,24,.94);backdrop-filter:blur(10px);box-shadow:0 14px 40px rgba(0,0,0,.5)}
.krf-quick .krf-h{padding:14px 16px;font-size:14px;font-weight:800;color:#1a1408;
  background:linear-gradient(135deg,var(--gold2),var(--gold));display:flex;justify-content:space-between;align-items:center}
.krf-quick .krf-h button{border:0;background:transparent;font-size:16px;cursor:pointer;color:#1a1408;line-height:1}
.krf-quick form{padding:14px 16px 16px;display:flex;flex-direction:column;gap:9px}
.krf-quick label{font-size:11px;font-weight:700;letter-spacing:.05em;color:var(--gold2)}
.krf-quick input{height:40px;padding:0 12px;border-radius:9px;border:1px solid var(--line);
  background:rgba(255,255,255,.06);color:var(--text);font-size:13.5px;font-family:inherit;width:100%}
.krf-quick input:focus{outline:none;border-color:var(--gold)}
.krf-quick button.go{margin-top:4px;height:44px;border:0;border-radius:10px;cursor:pointer;font-family:inherit;
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;font-weight:800;font-size:14.5px}
.krf-quick .tel{display:flex;align-items:center;justify-content:center;gap:7px;margin-top:8px;
  padding:10px;border-radius:10px;border:1px solid var(--line);font-size:13.5px;font-weight:700;color:var(--gold2)}
.krf-tab{position:fixed;right:0;top:50%;transform:translateY(-50%);z-index:9998;display:none;
  writing-mode:vertical-rl;padding:18px 11px;border-radius:12px 0 0 12px;border:0;cursor:pointer;font-family:inherit;
  background:linear-gradient(180deg,var(--gold2),var(--gold));color:#1a1408;font-weight:800;font-size:13.5px;letter-spacing:.1em}
.krf-tab.show{display:block}
@media(max-width:1420px){.krf-quick{display:none}.krf-tab{display:none!important}}

/* ===== 유틸 ===== */
.brg-note{padding:18px 20px;border:1px dashed rgba(201,169,110,.35);border-radius:var(--rs);
  background:rgba(201,169,110,.05);font-size:13.5px;color:#bdb6ad;margin:22px 0}
.brg-src{font-size:12.5px;color:var(--muted);margin-top:18px}
.brg-src a{color:#b9b2aa;text-decoration:underline}

/* ═══ 루프 텍스트 마퀴 ═══ */
.brg-loop{margin-top:30px;overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);
  padding:13px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.brg-loop ul{display:flex;gap:36px;list-style:none;width:max-content;animation:brgLoop 26s linear infinite}
.brg-loop li{font-size:14px;font-weight:700;letter-spacing:.06em;color:rgba(201,169,110,.72);white-space:nowrap}
.brg-loop li::before{content:"◆";margin-right:12px;font-size:9px;vertical-align:middle;color:var(--gold3)}
@keyframes brgLoop{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.brg-loop ul,.brg-rail ul{animation:none}}

/* ═══ 이미지 레일 (라인업 · 양방향) ═══ */
.brg-rail{overflow:hidden;padding:5px 0;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
  mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.brg-rail ul{display:flex;gap:16px;list-style:none;width:max-content;animation:brgLoop 42s linear infinite}
.brg-rail.rev ul{animation-direction:reverse;animation-duration:50s}
.brg-rail li{width:212px;flex-shrink:0}
.brg-rail img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:14px;border:1px solid var(--line)}
.brg-rail figcaption{margin-top:8px;font-size:12px;color:var(--muted);text-align:center}
@media(max-width:620px){.brg-rail li{width:152px}}

/* ═══ 스티키 '특별한 이유' 리스트 ═══ */
.brg-reason{display:flex;flex-direction:column;gap:20px}
.brg-reason .it{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:0;overflow:hidden;
  border:1px solid var(--line);border-radius:var(--r);background:var(--card);position:sticky;top:100px}
.brg-reason .it:nth-child(2){top:118px}
.brg-reason .it:nth-child(3){top:136px}
.brg-reason .it:nth-child(4){top:154px}
.brg-reason .it img{width:100%;height:100%;min-height:260px;object-fit:cover}
.brg-reason .desc{padding:34px 32px;display:flex;flex-direction:column;justify-content:center}
.brg-reason .desc span.no{font-size:12px;letter-spacing:.2em;font-weight:800;color:var(--gold);margin-bottom:12px}
.brg-reason .desc strong{font-size:clamp(19px,2.4vw,24px);font-weight:800;color:#fff;line-height:1.45;letter-spacing:-.025em}
.brg-reason .desc p{margin-top:13px;font-size:15px;color:#bdb6ad}
@media(max-width:860px){
  .brg-reason .it{grid-template-columns:minmax(0,1fr);position:static}
  .brg-reason .it img{min-height:200px;max-height:260px}
  .brg-reason .desc{padding:26px 22px}
}

/* ═══ 이런 분들께 (오버레이 카드 · 희망뱅크 hb-moment 패턴) ═══ */
.brg-moment{position:relative;aspect-ratio:3/4;border-radius:var(--r);overflow:hidden;border:1px solid var(--line)}
.brg-moment img{width:100%;height:100%;object-fit:cover;transition:transform .55s}
.brg-moment:hover img{transform:scale(1.06)}
.brg-moment .ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(6,6,10,.93) 0%,rgba(6,6,10,.52) 42%,rgba(6,6,10,.08) 100%)}
.brg-moment .ct{position:absolute;left:0;right:0;bottom:0;padding:22px 20px}
.brg-moment h3{font-size:17.5px;font-weight:800;color:#fff;letter-spacing:-.02em}
.brg-moment p{margin-top:7px;font-size:13.5px;color:#bdb6ad}

/* ═══ 체크리스트 (희망뱅크 hb-check 패턴) ═══ */
.brg-check{padding:16px 18px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card);
  display:flex;gap:12px;align-items:flex-start}
.brg-check i{flex-shrink:0;width:24px;height:24px;border-radius:7px;display:flex;align-items:center;
  justify-content:center;background:rgba(201,169,110,.16);color:var(--gold2);font-style:normal;
  font-size:13px;font-weight:800;margin-top:2px}
.brg-check b{display:block;font-size:15px;color:#fff;font-weight:700;margin-bottom:5px}
.brg-check p{font-size:13.5px;color:var(--muted)}

/* ═══ 허브 링크 그리드 ═══ */
.brg-hub{display:block;padding:22px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card);
  transition:.25s}
.brg-hub:hover{border-color:rgba(201,169,110,.45);background:var(--card2);transform:translateY(-3px)}
.brg-hub b{display:flex;justify-content:space-between;align-items:center;gap:10px;font-size:16.5px;
  font-weight:700;color:#fff}
.brg-hub b::after{content:"→";color:var(--gold);transition:transform .25s}
.brg-hub:hover b::after{transform:translateX(4px)}
.brg-hub p{margin-top:8px;font-size:13.5px;color:var(--muted)}

/* ═══ 후기 ═══ */
.brg-rev{padding:24px 22px;border:1px solid var(--line);border-radius:var(--r);background:var(--card)}
.brg-rev .st{color:var(--gold);font-size:13px;letter-spacing:.15em;margin-bottom:11px}
.brg-rev p{font-size:14.5px;color:#c5beb6}
.brg-rev cite{display:block;margin-top:14px;font-style:normal;font-size:12.5px;color:var(--muted)}

/* ══════════════════════════════════════════════════════════
   레퍼런스 이식 섹션 — 「홈페이지 합치기 에이전트」 격리 규칙 적용
   · 레퍼런스(popup-N7 방문가이드 / book-N7 혜택)에서 **구조만 추출**하고
     색·폰트·크기·굵기·여백은 이 사이트 토큰(골드+블랙)으로 전량 재빌드
   · 모든 선택자를 #brg-ref-* ID 아래로 스코프 → 다른 섹션에 영향 없음
   · JS 는 site.js 안에서 IIFE + 래퍼 내부 querySelector 로만 접근
   ══════════════════════════════════════════════════════════ */
#brg-ref-visit .rv-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:34px;align-items:stretch}
#brg-ref-visit .rv-fig{border-radius:var(--r);overflow:hidden;border:1px solid var(--line);background:var(--card)}
#brg-ref-visit .rv-fig img{width:100%;height:100%;min-height:300px;object-fit:cover}
#brg-ref-visit .rv-list{display:flex;flex-direction:column;gap:12px}
#brg-ref-visit .rv-it{display:grid;grid-template-columns:126px minmax(0,1fr);gap:18px;align-items:start;
  padding:20px 22px;border:1px solid var(--line);border-radius:var(--rs);background:var(--card);transition:.25s}
#brg-ref-visit .rv-it:hover{border-color:rgba(201,169,110,.42);background:var(--card2)}
#brg-ref-visit .rv-k{font-size:12.5px;font-weight:800;letter-spacing:.12em;color:var(--gold);padding-top:3px}
#brg-ref-visit .rv-v{font-size:15.5px;font-weight:600;color:#fff;line-height:1.62}
#brg-ref-visit .rv-v small{display:block;margin-top:6px;font-size:13.5px;font-weight:400;color:var(--muted)}
#brg-ref-visit .rv-tel{display:inline-flex;align-items:center;gap:9px;margin-top:6px;padding:14px 24px;
  border-radius:999px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;
  font-weight:800;font-size:16px;transition:.25s}
#brg-ref-visit .rv-tel:hover{transform:translateY(-2px);box-shadow:0 12px 26px rgba(201,169,110,.35)}
@media(max-width:900px){
  #brg-ref-visit .rv-grid{grid-template-columns:minmax(0,1fr);gap:22px}
  #brg-ref-visit .rv-fig img{min-height:220px;max-height:280px}
  #brg-ref-visit .rv-it{grid-template-columns:minmax(0,1fr);gap:8px;padding:18px}
}

#brg-ref-bene .rb-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
#brg-ref-bene .rb-it{position:relative;padding:30px 24px 28px;border:1px solid var(--line);border-radius:var(--r);
  background:var(--card);overflow:hidden;transition:.3s}
#brg-ref-bene .rb-it::after{content:"";position:absolute;inset:0;border-radius:var(--r);
  background:radial-gradient(120% 80% at 100% 0%,rgba(201,169,110,.16),transparent 62%);opacity:0;transition:.3s}
#brg-ref-bene .rb-it:hover{transform:translateY(-5px);border-color:rgba(201,169,110,.44)}
#brg-ref-bene .rb-it:hover::after{opacity:1}
#brg-ref-bene .rb-ico{position:relative;z-index:1;width:46px;height:46px;border-radius:13px;display:flex;
  align-items:center;justify-content:center;margin-bottom:16px;font-size:19px;
  background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408}
#brg-ref-bene .rb-it h3{position:relative;z-index:1;font-size:17.5px;font-weight:800;color:#fff;
  letter-spacing:-.025em;line-height:1.42;margin:0}
#brg-ref-bene .rb-it p{position:relative;z-index:1;margin:10px 0 0;font-size:14px;font-weight:400;
  color:var(--muted);line-height:1.72}
@media(max-width:980px){#brg-ref-bene .rb-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){#brg-ref-bene .rb-grid{grid-template-columns:minmax(0,1fr)}}

/* ═══ CTA 밴드 ═══ */
.brg-cta-band{position:relative;padding:70px 0;text-align:center;background:var(--ink2);
  border-top:1px solid rgba(201,169,110,.28);border-bottom:1px solid rgba(201,169,110,.28)}
.brg-cta-band::before{content:"";position:absolute;inset:0;pointer-events:none;
  background:radial-gradient(60% 120% at 50% 0%,rgba(201,169,110,.13),transparent 62%)}
.brg-cta-band>.wrap{position:relative;z-index:1}
.brg-cta-band h2{font-size:clamp(22px,3.2vw,32px);font-weight:800;color:#fff;line-height:1.4}
.brg-cta-band p{margin-top:13px;color:#c2bbb3;font-size:15.5px}
.brg-cta-band .bt{display:inline-flex;align-items:center;gap:10px;margin-top:26px;padding:17px 34px;
  border-radius:999px;background:linear-gradient(135deg,var(--gold2),var(--gold));color:#1a1408;
  font-weight:800;font-size:19px;box-shadow:0 12px 30px rgba(201,169,110,.32);transition:.25s}
.brg-cta-band .bt:hover{transform:translateY(-3px);box-shadow:0 18px 38px rgba(201,169,110,.45)}
.brg-cta-band .bt small{display:block;font-size:11px;letter-spacing:.12em;opacity:.72;font-weight:700}
