:root{
    --ink:#0B1B33; --navy:#16294A; --navy-2:#1F3A68; --navy-soft:#2C426E;
    --gold:#C9A24B; --gold-lt:#E4C67E; --gold-deep:#A9863A;
    --paper:#FFFFFF; --paper-2:#F4F1EA; --card:#FFFFFF;
    --line:#E8E4DC; --line-2:#DAD4C8;
    --verified:#1B7A5A; --verified-lt:#E7F2ED;
    --ink-soft:#33445F; --slate:#5A6B84; --mute:#8A97AC;
    --red:#C0491F;
    --sans:'Pretendard',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif;
    --serif:'Pretendard',-apple-system,BlinkMacSystemFont,'Apple SD Gothic Neo','Noto Sans KR','Malgun Gothic',sans-serif;
    --shadow-sm:0 1px 2px rgba(11,27,51,.04), 0 2px 8px rgba(11,27,51,.05);
    --shadow-md:0 4px 12px rgba(11,27,51,.06), 0 12px 32px rgba(11,27,51,.08);
    --shadow-lg:0 18px 50px rgba(11,27,51,.16);
  }
  *{ box-sizing:border-box; word-break:keep-all; overflow-wrap:break-word; min-width:0; }
  html{ -webkit-text-size-adjust:100%; scroll-behavior:smooth; }
  body{ margin:0; font-family:var(--sans); color:var(--ink); background:var(--paper); line-height:1.72; -webkit-font-smoothing:antialiased; overflow-x:hidden; font-feature-settings:"tnum" 0; }
  a{ text-decoration:none; color:inherit; }
  button{ font-family:inherit; }
  .tnum{ font-feature-settings:"tnum" 1; font-variant-numeric:tabular-nums; }
  .wrap{ max-width:1120px; margin:0 auto; padding:0 22px; }
  :focus-visible{ outline:2px solid var(--gold); outline-offset:3px; border-radius:3px; }
  .pv-note{ background:var(--ink); color:var(--gold-lt); padding:7px 16px; font-size:11.5px; text-align:center; letter-spacing:.01em; font-weight:600; }

  /* ── 헤더 ── */
  .hd{ background:#ffffff; border-bottom:1px solid var(--line); position:sticky; top:0; z-index:60; }
  .hd-in{ max-width:1120px; margin:0 auto; padding:13px 22px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
  .brand{ display:flex; flex-direction:row; align-items:center; gap:12px; cursor:pointer; }
  .brand-logo{ height:58px; width:auto; display:block; }
  .brand .mark{ font-size:20px; font-weight:900; letter-spacing:-.03em; color:var(--navy); }
  .brand .mark b{ color:var(--gold-deep); }
  .brand .tag{ font-size:12px; color:#1f3a68; font-weight:700; letter-spacing:.01em; line-height:1.35; padding-left:12px; border-left:1px solid var(--line-2); white-space:nowrap; }
  .brand .tag .tbr{ display:none; }
  .hd-cta{ display:flex; align-items:center; gap:8px; margin-right:40px; }
  .hd-call{ display:inline-flex; align-items:center; gap:6px; background:var(--navy); color:#fff; font-weight:700; font-size:12.5px; padding:9px 16px; border-radius:100px; white-space:nowrap; transition:background .2s, transform .2s; }
  .hd-call:hover{ background:var(--ink); transform:translateY(-1px); }
  .hd-call .ico{ font-size:12px; }
  .hd-call .n{ font-weight:800; }
  .hd-kko{ display:inline-flex; align-items:center; gap:6px; background:#FEE500; color:#3A1D1D; font-weight:800; font-size:12.5px; padding:9px 16px; border-radius:100px; white-space:nowrap; transition:filter .2s, transform .2s; }
  .hd-kko:hover{ filter:brightness(.95); transform:translateY(-1px); }
  .hd-kko .ico{ font-size:12px; }
  .hd-kko .lb-sm{ display:none; }
  /* 모바일 메뉴 버튼 + 우측 드로어 */
  .hd-menu{ display:none; align-items:center; justify-content:center; width:38px; height:38px; border:1px solid var(--line-2); border-radius:10px; background:#fff; cursor:pointer; flex-shrink:0; padding:0; }
  .hd-menu span{ display:block; width:17px; height:2px; background:var(--ink); border-radius:2px; position:relative; }
  .hd-menu span::before, .hd-menu span::after{ content:''; position:absolute; left:0; width:17px; height:2px; background:var(--ink); border-radius:2px; }
  .hd-menu span::before{ top:-5.5px; } .hd-menu span::after{ top:5.5px; }
  .mdrawer-ovl{ display:none; position:fixed; inset:0; z-index:9998; background:rgba(11,27,51,.5); }
  .mdrawer-ovl.on{ display:block; }
  .mdrawer{ position:fixed; top:0; right:-290px; width:280px; height:100vh; z-index:9999; background:#fff; box-shadow:-14px 0 40px rgba(0,0,0,.22); transition:right .26s ease; display:flex; flex-direction:column; padding:18px 0 20px; overflow-y:auto; }
  .mdrawer.on{ right:0; }
  .mdrawer .md-hd{ display:flex; align-items:center; justify-content:space-between; padding:0 18px 14px; border-bottom:1px solid var(--line); }
  .mdrawer .md-tt{ font-family:var(--serif); font-size:15px; font-weight:900; color:var(--ink); }
  .mdrawer .md-x{ background:none; border:none; font-size:22px; color:#94a3b8; cursor:pointer; line-height:1; padding:4px; }
  .mdrawer .md-item{ display:block; width:100%; text-align:left; background:none; border:0; border-bottom:1px solid var(--line); padding:15px 20px; font-size:14px; font-weight:700; color:var(--ink-soft); cursor:pointer; }
  .mdrawer .md-item.on{ color:var(--navy); background:linear-gradient(90deg, rgba(201,162,75,.10), transparent); border-left:3px solid var(--gold); padding-left:17px; }
  .mdrawer .md-call{ margin:16px 16px 0; display:flex; align-items:center; justify-content:center; gap:7px; background:var(--navy); color:#fff; font-size:13.5px; font-weight:800; padding:13px; border-radius:11px; text-decoration:none; }
  .mdrawer .md-kko{ margin:8px 16px 0; display:flex; align-items:center; justify-content:center; gap:7px; background:#FEE500; color:#3A1D1D; font-size:13.5px; font-weight:800; padding:13px; border-radius:11px; text-decoration:none; }
  .hd-call:hover{ background:var(--ink); transform:translateY(-1px); }
  .hd-call .n{ font-feature-settings:"tnum" 1; letter-spacing:.02em; }

  /* ── GNB ── */
  .gnb{ background:var(--paper); border-bottom:1px solid var(--line); position:sticky; top:56px; z-index:59; }
  .gnb-in{ max-width:1120px; margin:0 auto; padding:0 14px; display:flex; overflow-x:auto; scrollbar-width:none; -webkit-overflow-scrolling:touch; }
@media (min-width:900px){ .gnb-in{ justify-content:center; } }
  .gnb-in::-webkit-scrollbar{ display:none; }
  .gnb-in::-webkit-scrollbar{ display:none; }
  .gnb-tab{ flex:0 0 auto; position:relative; padding:14px 15px 13px; font-size:13.5px; font-weight:700; color:var(--slate); border:0; background:none; cursor:pointer; white-space:nowrap; letter-spacing:-.01em; transition:color .18s; text-decoration:none; }
  .gnb-tab::after{ content:''; position:absolute; left:15px; right:15px; bottom:-1px; height:2px; background:var(--gold); transform:scaleX(0); transition:transform .22s cubic-bezier(.2,.7,.3,1); transform-origin:left; }
  .gnb-tab:hover{ color:var(--navy); }
  .gnb-tab.on{ color:var(--navy); font-weight:800; }
  @media (max-width:700px){
    .gnb{ position:static; }
    .gnb-in{ flex-wrap:wrap; padding:4px 8px; }
    .gnb-tab{ flex:1 1 auto; text-align:center; padding:12px 8px 11px; font-size:12.5px; }
    .gnb-tab::after{ left:8px; right:8px; }
  }
  .gnb-tab.on::after{ transform:scaleX(1); }

  .page{ display:none; animation:fade .5s ease both; }
  .page.on{ display:block; }
  @keyframes fade{ from{ opacity:0; transform:translateY(8px); } to{ opacity:1; transform:none; } }
  /* 현금흐름 하이라이트 + 회수기간 */
  .mc-cash{ margin:12px 0 0; padding:12px 14px; background:linear-gradient(135deg,#FBF7EC,#F6EFDD); border:1px solid #EAD9B0; border-radius:11px; }
  .mc-cash .cf-top{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
  .mc-cash .cf-right{ flex:0 1 auto; min-width:0; text-align:right; }
  .mc-cash .cf-lb{ font-size:10.5px; font-weight:700; color:var(--slate); margin-bottom:3px; }
  .mc-cash .cf-v{ font-size:25px; font-weight:900; color:#D93025; line-height:1.05; font-variant-numeric:tabular-nums; letter-spacing:-.01em; }
  .mc-cash .cf-v .u{ font-size:14px; font-weight:800; }
  .mc-cash .cf-v .u{ font-size:13px; }
  .mc-cash .cf-roi{ display:flex; justify-content:space-between; align-items:baseline; margin-top:9px; padding-top:9px; border-top:1px dashed #E1CE9F; }
  .mc-cash .cf-liq{ display:flex; justify-content:space-between; align-items:baseline; margin-top:7px; }
  .mc-cash .cf-liq .k{ font-size:11px; color:var(--slate); font-weight:600; }
  .mc-cash .cf-liq .v{ font-size:13.5px; font-weight:800; letter-spacing:-.01em; }
  .mc-cash .cf-liq .v .st{ font-size:11px; margin-left:3px; }
  .mc-cash .cf-fac{ display:flex; justify-content:space-between; align-items:baseline; margin-top:7px; }
  .mc-cash .cf-fac .k{ font-size:11px; color:var(--slate); font-weight:600; }
  .mc-cash .cf-fac .v{ font-size:13px; font-weight:800; letter-spacing:-.01em; }
  .mc-cash .cf-fac .v .st{ font-size:10.5px; margin-left:3px; color:#94A3B8; }
  .mc-cash .cf-mom{ display:flex; justify-content:space-between; align-items:baseline; margin-top:7px; }
  .mc-cash .cf-mom .k{ font-size:11px; color:var(--slate); font-weight:600; }
  .mc-cash .cf-mom .v{ font-size:13px; font-weight:800; letter-spacing:-.01em; }
  .mc-cash .cf-mom .v .st{ font-size:10.5px; margin-left:3px; color:#94A3B8; }
  .mc-cash .cf-optop{ flex:0 0 auto; display:inline-flex; align-items:center; font-size:24px; font-weight:900; color:#15803D; line-height:1.1; letter-spacing:-.02em; white-space:nowrap; }
  .mc-cash .cf-roi .k{ font-size:11px; color:var(--slate); font-weight:600; }
  .mc-cash .cf-roi .v{ font-size:13.5px; font-weight:800; color:var(--navy); font-variant-numeric:tabular-nums; }
  .mc-sub-rows{ display:flex; flex-direction:column; gap:6px; margin-top:11px; }
  .mc-srow{ display:flex; justify-content:space-between; align-items:baseline; font-size:12px; }
  .mc-srow .k{ color:var(--mute); font-weight:600; }
  .mc-srow .v{ font-weight:700; color:var(--ink-soft); font-variant-numeric:tabular-nums; }
  .mc-exnote{ font-size:10px; color:#9aa7b8; font-weight:600; text-align:right; margin-top:-3px; letter-spacing:-.02em; }
  a[role="button"]{ cursor:pointer; }
  .mc-srow .v.mc-pre-hl{ color:#DC2626; font-weight:800; font-size:16px; }  /* 권리금 구간값 강조 (붉은색·확대) */
  .mc-srow .k.mc-acq-lb{ color:#2563EB; }  /* 권리금 라벨 (파란색) */
  /* 6축 스코어 (100점 만점) */
  .mc-score{ display:grid; grid-template-columns:repeat(3,1fr); gap:6px 4px; margin-top:11px; padding-top:11px; border-top:1px solid var(--line); }
  .msc{ text-align:center; }
  .msc .l{ display:block; font-size:9.5px; font-weight:700; color:var(--mute); letter-spacing:-.01em; }
  .msc .n{ display:block; font-size:14px; font-weight:800; color:var(--ink); font-variant-numeric:tabular-nums; line-height:1.25; }
  .msc .n.hi{ color:var(--gold-deep); }
  .msc .n .u{ font-size:9px; font-weight:700; color:var(--mute); margin-left:1px; }
  .msc-avg{ grid-column:1 / -1; display:flex; justify-content:space-between; align-items:baseline; padding-bottom:8px; margin-bottom:2px; border-bottom:1px dashed var(--line); }
  .msc-avg .k{ font-size:10.5px; font-weight:800; color:var(--slate); }
  .msc-avg .n{ font-size:17px; font-weight:900; color:var(--navy); font-variant-numeric:tabular-nums; }
  .msc-avg .n.hi{ color:var(--gold-deep); }
  .msc-avg .n.avg-red{ color:#D93025; }
  .msc-avg .n.avg-pink{ color:#EC4899; }
  .msc-avg .n.avg-blue{ color:#2563EB; }
  .msc-avg .n.avg-black{ color:#111111; }
  .dm-score-avg .n.avg-red{ color:#D93025; }
  .dm-score-avg .n.avg-pink{ color:#EC4899; }
  .dm-score-avg .n.avg-blue{ color:#2563EB; }
  .dm-score-avg .n.avg-black{ color:#111111; }
  .msc-avg .n .u{ font-size:10px; font-weight:700; color:var(--mute); margin-left:1px; }

  /* ── 점포개발 & 신규입점 자리 카드 ── */
  .dev-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:14px; }
  .devc{ background:var(--card); border:1px solid var(--line); border-radius:13px; padding:16px; box-shadow:var(--shadow-sm); transition:transform .2s, box-shadow .2s; }
  .devc:hover{ transform:translateY(-3px); box-shadow:var(--shadow-lg); }
  .devc .db{ display:inline-block; font-size:10px; font-weight:800; color:#fff; background:var(--navy); border-radius:100px; padding:4px 10px; margin-bottom:10px; }
  .devc .db.new{ background:var(--gold-deep); }
  .devc .dt{ font-size:14.5px; font-weight:800; color:var(--ink); margin-bottom:3px; }
  .devc .dd{ font-size:11.5px; color:var(--slate); margin-bottom:11px; }
  .devc .drows{ display:flex; flex-direction:column; gap:5px; padding-top:10px; border-top:1px solid var(--line); }
  .devc .dr{ display:flex; justify-content:space-between; font-size:12px; }
  .devc .dr .k{ color:var(--mute); font-weight:600; }
  .devc .dr .v{ font-weight:700; color:var(--ink-soft); font-variant-numeric:tabular-nums; }
  .devc .drec{ margin-top:10px; font-size:11px; font-weight:700; color:var(--verified); background:var(--verified-lt); border-radius:7px; padding:6px 9px; }
  .drec.dbrand{ color:#1F3A68; }
  .drec.dbrand b{ color:#D93025; }
  @media (max-width:900px){ .dev-grid{ grid-template-columns:repeat(2,1fr); } }
  @media (max-width:480px){ .dev-grid{ grid-template-columns:1fr; } }
  /* ── 점주모집 카드 (app.py 발행 연동) ── */
  .rc-card{display:flex; background:#fff; border:1px solid #E8E2D5; border-radius:16px; overflow:hidden; box-shadow:0 4px 18px rgba(22,41,74,.06); transition:.25s; cursor:pointer;}
  .rc-card:hover{transform:translateY(-3px); box-shadow:0 14px 34px rgba(22,41,74,.13); border-color:#C9A24B;}
  .rc-photo{width:240px; min-height:180px; flex-shrink:0; position:relative; background:#16294A center/cover no-repeat;}
  .rc-photo .rcph{position:absolute; inset:0; display:flex; align-items:center; justify-content:center; color:#C9A24B; font-weight:800; font-size:14px; background:linear-gradient(135deg,#16294A,#1C3B6C); letter-spacing:.04em;}
  .rc-live{position:absolute; top:12px; left:12px; display:inline-flex; align-items:center; gap:6px; background:rgba(255,255,255,.95); border-radius:999px; padding:5px 12px; font-size:11.5px; font-weight:800; color:#16294A;}
  .rc-dot{width:7px; height:7px; border-radius:50%; background:#22C55E; animation:rcpulse 1.6s infinite;}
  @keyframes rcpulse{70%{box-shadow:0 0 0 7px rgba(34,197,94,0);}100%{box-shadow:0 0 0 0 rgba(34,197,94,0);}}
  .rc-live.soon{color:#92400E;} .rc-live.soon .rc-dot{background:#F59E0B; animation:none;}
  .rc-body{flex:1; padding:20px 24px; display:flex; flex-direction:column; justify-content:center; min-width:0;}
  .rc-cat{display:inline-block; width:fit-content; font-size:10.5px; font-weight:800; letter-spacing:.06em; color:#B8860B; background:#FBF6E9; border:1px solid #EADFC0; padding:3px 10px; border-radius:999px; margin-bottom:8px;}
  .rc-brand{font-size:1.28rem; font-weight:900; letter-spacing:-.02em; margin-bottom:5px; color:#16294A;}
  .rc-meta{font-size:.85rem; color:#8A97AC; font-weight:600; margin-bottom:6px;}
  .rc-meta b{color:#4A5B78;}
  .rc-figures{display:flex; gap:16px; margin-bottom:10px; flex-wrap:wrap;}
  .rc-fig{font-size:.8rem;} .rc-fig .l{color:#A8B2C2; font-weight:700; margin-right:5px;} .rc-fig .v{color:#16294A; font-weight:800;}
  .rc-fig .v.est{color:#B8860B;}
  .rc-intro{font-size:.9rem; color:#3D4C66; line-height:1.6; margin-bottom:12px; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;}
  .rc-side{width:170px; flex-shrink:0; border-left:1px dashed #E8E2D5; display:flex; flex-direction:column; justify-content:center; gap:9px; padding:18px;}
  .rc-btn2{display:block; text-align:center; font-size:13px; font-weight:800; padding:11px 8px; border-radius:10px; text-decoration:none; transition:.2s; cursor:pointer; border:none;}
  .rc-btn2.p{background:#16294A; color:#fff;} .rc-btn2.p:hover{background:#1C3B6C;}
  .rc-btn2.s{background:#fff; color:#16294A; border:1.5px solid #D8D2C4;} .rc-btn2.s:hover{border-color:#C9A24B; color:#B8860B;}
  .rc-note2{font-size:10.5px; color:#A8B2C2; text-align:center; line-height:1.5;}
  .rc-card.closed{opacity:.6; filter:grayscale(.45);} .rc-card.closed .rc-dot{background:#9CA3AF; animation:none;}
  @media(max-width:760px){ .rc-card{flex-direction:column;} .rc-photo{width:100%; height:170px;} .rc-side{width:100%; border-left:none; border-top:1px dashed #E8E2D5; flex-direction:row;} .rc-btn2{flex:1;} .rc-note2{display:none;} }

  /* ── 매장 상세 모달 (app.py 발행 내용 + 30초 상담) ── */
  .dm-ov{ position:fixed; inset:0; z-index:100; background:rgba(11,27,51,.55); backdrop-filter:blur(3px); display:none; opacity:0; transition:opacity .25s;  pointer-events:none;}
  .dm-ov.on{ display:block; opacity:1;  pointer-events:auto;}
  .dm{ position:fixed; z-index:101; left:50%; top:50%; transform:translate(-50%,-48%); width:min(560px,94vw); max-height:92vh; overflow-y:auto; background:var(--paper); border-radius:20px; box-shadow:0 30px 80px rgba(0,0,0,.4); opacity:0; transition:opacity .25s, transform .25s; -webkit-overflow-scrolling:touch;  pointer-events:none;}
  .dm.on{ opacity:1; transform:translate(-50%,-50%);  pointer-events:auto;}
  .dm-close{ position:sticky; top:12px; z-index:6; display:block; margin:12px 12px -46px auto; width:34px; height:34px; border-radius:50%; background:rgba(11,27,51,.55); color:#fff; border:0; font-size:16px; line-height:34px; text-align:center; cursor:pointer; backdrop-filter:blur(4px); box-shadow:0 2px 8px rgba(0,0,0,.25); }
  .dm-photo{ position:relative; height:190px; background:linear-gradient(150deg,#243B63,#131F38); display:flex; align-items:center; justify-content:center; overflow:hidden; }
  .dm-photo img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; }
  .dm-photo::after{ content:''; position:absolute; left:0; right:0; bottom:0; height:64px; background:linear-gradient(180deg, transparent, rgba(11,27,51,.4)); pointer-events:none; }
  .dm-photo-ph{ position:relative; z-index:1; color:#fff; font-size:20px; font-weight:900; display:flex; flex-direction:column; align-items:center; gap:7px; }
  .dm-photo-ph .hint{ font-size:10px; font-weight:700; color:rgba(255,255,255,.6); border:1px dashed rgba(255,255,255,.4); border-radius:100px; padding:3px 10px; letter-spacing:.05em; }
  .dm-badges{ position:absolute; left:16px; bottom:14px; z-index:2; display:flex; gap:6px; }
  .dm-body{ padding:22px 22px 26px; }
  .dm-code{ font-size:11.5px; font-weight:700; color:var(--gold-deep); letter-spacing:.04em; margin-bottom:5px; }
  .dm-ti{ font-family:var(--serif); font-size:24px; font-weight:800; color:var(--ink); letter-spacing:-.01em; margin:0 0 6px; }
  .dm-tags{ font-size:12.5px; color:var(--slate); margin-bottom:18px; }
  .dm-tags .op{ display:inline-block; background:var(--paper-2); border:1px solid var(--line); color:var(--navy); font-weight:700; font-size:11px; padding:3px 9px; border-radius:6px; margin-right:5px; }
  /* 상세 지표 그리드 (라이브 single.php 동일) */
  .dm-stats{ display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:14px; overflow:hidden; }
  .dm-stat{ grid-column:span 2; }  /* 회수기간 제외 5개 지표 */
  .dm-stats .dm-stat:nth-child(4), .dm-stats .dm-stat:nth-child(5){ grid-column:span 3; }  /* 하단 2칸 균등 분할 */
  .dm-stat{ background:var(--card); padding:15px 10px; text-align:center; }
  .dm-stat .lab{ font-size:11px; color:var(--mute); font-weight:600; }
  .dm-stat .val{ font-size:15px; font-weight:800; color:var(--ink); margin-top:4px; font-variant-numeric:tabular-nums; }
  .dm-stat .val.hl{ color:var(--gold-deep); }
  /* app.py 발행 상세 내용 영역 */
  .dm-content{ margin:20px 0; padding:20px; background:var(--card); border:1px solid var(--line); border-radius:14px; font-size:13.5px; line-height:1.85; color:var(--ink-soft); }
  .dm-content h4{ font-size:14px; font-weight:800; color:var(--navy); margin:0 0 10px; display:flex; align-items:center; gap:7px; }
  .dm-content .ph-note{ font-size:11.5px; color:var(--mute); background:var(--paper-2); border:1px dashed var(--line-2); border-radius:9px; padding:10px 12px; margin-top:12px; line-height:1.7; }
  .dm-score{ display:grid; grid-template-columns:repeat(6,1fr); gap:1px; background:var(--line); border:1px solid var(--line); border-radius:12px; overflow:hidden; margin-top:10px; }
  .dm-score .cell{ background:var(--card); padding:11px 4px; text-align:center; }
  .dm-score .cell .l{ font-size:10px; color:var(--mute); font-weight:700; }
  .dm-score .cell .n{ font-size:15px; font-weight:800; color:var(--ink); margin-top:3px; font-variant-numeric:tabular-nums; }
  .dm-score .cell .n.hi{ color:var(--gold-deep); }
  .dm-score-avg{ display:flex; justify-content:space-between; align-items:center; margin-top:14px; padding:12px 16px; background:linear-gradient(135deg,#FBF7EC,#F6EFDD); border:1px solid #EAD9B0; border-radius:12px; }
  .dm-score-avg .k{ font-size:12px; font-weight:800; color:var(--gold-deep); }
  .dm-score-avg .n{ font-size:22px; font-weight:900; color:var(--ink); font-variant-numeric:tabular-nums; }
  .dm-score-avg .n .u{ font-size:12px; font-weight:600; color:var(--slate); margin-left:3px; }
  .dm-score-avg .n .u{ font-size:11px; font-weight:700; color:var(--mute); margin-left:2px; }
  @media (max-width:600px){ .dm-score{ grid-template-columns:repeat(3,1fr); } }
  @media (max-width:600px){ .dm-score-avg{ margin-top:12px; } }

  /* 30초 상담 폼 */
  .dm-form{ margin-top:22px; padding:22px 20px; background:linear-gradient(160deg,#EAF0F9,#F4F7FC); border:1px solid #D5E0F0; border-radius:16px; }
  .dm-form .fh{ display:inline-flex; align-items:center; gap:7px; font-size:12.5px; font-weight:800; color:var(--navy); background:#fff; border:1px solid #D5E0F0; border-radius:100px; padding:6px 14px; margin-bottom:12px; }
  .dm-form h3{ font-size:20px; font-weight:900; color:var(--ink); margin:0 0 14px; letter-spacing:-.02em; }
  .dm-interest{ background:#fff; border:1px solid #D5E0F0; border-radius:12px; padding:14px 16px; margin-bottom:16px; }
  .dm-interest .k{ font-size:11px; font-weight:700; color:var(--slate); margin-bottom:4px; }
  .dm-interest .v{ font-size:14px; font-weight:800; color:var(--navy); line-height:1.5; }
  .dmf{ margin-bottom:12px; }
  .dmf label{ display:block; font-size:12.5px; font-weight:800; color:var(--ink-soft); margin-bottom:6px; }
  .dmf input, .dmf select, .dmf textarea{ width:100%; border:1px solid #CBD5E4; border-radius:11px; padding:13px 14px; font-size:14px; font-family:inherit; color:var(--ink); background:#fff; }
  .dmf input:focus, .dmf select:focus, .dmf textarea:focus{ outline:none; border-color:var(--navy-2); box-shadow:0 0 0 3px rgba(31,58,104,.12); }
  .dmf textarea{ min-height:88px; resize:vertical; }
  .dm-submit{ width:100%; background:linear-gradient(135deg,#2b62d6,#1d3a8f); color:#fff; font-weight:800; font-size:15.5px; padding:16px; border:0; border-radius:13px; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; gap:8px; margin-top:6px; box-shadow:0 8px 22px rgba(29,58,143,.28); transition:transform .2s, box-shadow .2s; }
  .dm-submit:hover{ transform:translateY(-2px); box-shadow:0 12px 28px rgba(29,58,143,.38); }
  .dm-kko{ display:flex; align-items:center; justify-content:center; gap:8px; margin-top:12px; font-size:12.5px; color:var(--slate); }
  .dm-kko b{ color:#3A1D1D; background:#FEE500; border-radius:100px; padding:4px 12px; font-weight:800; }
  .dm-privacy{ font-size:11px; color:var(--mute); text-align:center; margin-top:12px; line-height:1.6; }

  @media (max-width:600px){
    .dm{ width:100vw; max-height:100vh; height:100vh; border-radius:0; top:0; left:0; transform:none; }
    .dm.on{ transform:none; }
    .dm-ti{ font-size:21px; }
    .dm-form h3{ font-size:18px; }
    .dm-body{ padding:18px 16px 24px; }
    .dm-stat{ padding:13px 6px; }
    .dm-stat .lab{ font-size:10.5px; line-height:1.3; }
    .dm-stat .val{ font-size:14px; margin-top:3px; }
    .dm-content{ padding:16px; margin:16px 0; font-size:13px; }
    .dm-form{ padding:20px 16px; margin-top:18px; }
    .dm-score-avg{ padding:11px 14px; }
    .dm-score-avg .n{ font-size:20px; }
    .dm-score .cell{ padding:10px 3px; }
    .dm-tags{ margin-bottom:16px; }
    .dmf input, .dmf select, .dmf textarea{ font-size:16px; }
  }

  /* ── 매장 장터 (홈) ── */
  .mkt-hero{ position:relative; background:linear-gradient(160deg,#16294A,#0B1B33); color:#fff; padding:8px 22px 10px; overflow:hidden; }
  /* ═══ 포스터형 히어로 ═══ */
  .mkt-brand2{ display:flex; justify-content:center; margin-bottom:14px; }
  .mkt-brand2 .bn{ font-size:20px; font-weight:900; color:#fff; letter-spacing:.02em; }
  .mkt-brand2 .bt{ font-size:10px; font-weight:700; color:#9DBBE6; letter-spacing:.18em; }
  .mkt-spec{ display:flex; align-items:center; justify-content:center; flex-wrap:wrap; gap:4px 12px; margin:0 0 3px; font-size:24px; font-weight:900; color:#FF8AB8; letter-spacing:-.02em; text-shadow:0 2px 4px rgba(0,0,0,.65), 0 4px 16px rgba(0,0,0,.5); }
  .mkt-spec span{ white-space:nowrap; }
  .mkt-spec i{ font-style:normal; color:rgba(255,138,184,.55); font-weight:700; }
  @media(max-width:640px){
    .mkt-spec{ font-size:13px; gap:0 4px; margin-bottom:8px; flex-wrap:nowrap; justify-content:center; padding:0 4px; }
    .mkt-spec span{ flex:1 1 0; min-width:0; text-align:center; white-space:nowrap; background:rgba(8,20,40,.62); border:1px solid rgba(255,138,184,.45); border-radius:100px; padding:5px 4px; color:#FFA8CB; text-shadow:0 1px 3px rgba(0,0,0,.8); box-shadow:0 3px 10px rgba(0,0,0,.35); letter-spacing:-.06em; }
    .mkt-spec i{ display:none; }
  }
  @media(max-width:392px){ .mkt-spec{ font-size:11.5px; gap:0 3px; } .mkt-spec span{ padding:5px 1px; letter-spacing:-.09em; } }
  @media(max-width:345px){ .mkt-spec{ font-size:10.5px; } .mkt-spec span{ letter-spacing:-.12em; } }
  .mkt-badge2{ display:inline-block; font-size:11px; font-weight:800; color:var(--gold-lt); border:1px solid rgba(201,162,75,.5); border-radius:100px; padding:5px 15px; letter-spacing:.05em; margin-bottom:16px; background:rgba(201,162,75,.08); }
  .mkt-h1b{ margin:0 0 14px; font-weight:900; line-height:1.14; letter-spacing:-.03em; font-size:37px; }
  .mkt-h1b .mkt-mobr{ display:none; }
  .mkt-h1b .l1{ display:block; transform:translateX(-22px); font-size:1.13em; background:linear-gradient(180deg,#EAF3FF,#9FC4F2 60%,#5E93E0); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 3px 13px rgba(120,180,255,.4)); }
  .mkt-h1b .l2{ display:block; font-size:0.95em; background:linear-gradient(180deg,#FFFFFF,#CBDDF5); -webkit-background-clip:text; background-clip:text; color:transparent; filter:drop-shadow(0 3px 13px rgba(120,180,255,.3)); }
  /* PC 전용: H1 라인 간격 + 굵기 강화 (모바일 미변경) */
  @media (min-width:601px){
    .mkt-h1b{ line-height:1.22; }
    .mkt-h1b .l1{ -webkit-text-stroke:.4px #8FB8EE; paint-order:stroke fill; }
    .mkt-h1b .l2{ -webkit-text-stroke:.4px #EAF3FF; paint-order:stroke fill; }
    .mkt-h1b .g{ -webkit-text-stroke:.45px #D9B45E; paint-order:stroke fill; }
  }
  .mkt-h1b .g{ background:linear-gradient(100deg,#C9A24B 0%,#E8C978 34%,#FFFDF2 50%,#E8C978 66%,#C9A24B 100%); background-size:200% 100%; -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; color:transparent; will-change:background-position; animation:pearlShine 3s linear infinite !important; }
  @keyframes pearlShine{ from{ background-position:100% center; } to{ background-position:-100% center; } }
  @media (prefers-reduced-motion:reduce){ .mkt-h1b .g{ animation:pearlShine 3s linear infinite !important; } }
  .mkt-sub2{ font-size:16px; font-weight:700; color:#C7D6EE; margin:0 0 24px; letter-spacing:-.01em; }
  .mkt-sub2 b{ color:#EAF3FF; font-weight:900; }
  .mkt-ticket{ position:relative; display:inline-block; margin:0 auto; padding:15px 42px; border-radius:14px; background:linear-gradient(135deg,rgba(45,95,175,.5),rgba(22,52,112,.5)); border:1.5px dashed rgba(175,210,250,.55); }
  .mkt-ticket::before,.mkt-ticket::after{ content:''; position:absolute; top:50%; transform:translateY(-50%); width:22px; height:22px; border-radius:50%; background:var(--navy,#0B1B33); }
  .mkt-ticket::before{ left:-11px; } .mkt-ticket::after{ right:-11px; }
  .mkt-ticket .tk-sm{ font-size:12.5px; font-weight:800; color:#BFD4F2; margin-bottom:3px; }
  .mkt-ticket .tk-big{ font-size:25px; font-weight:900; color:#fff; }
  .mkt-ticket .tk-big .g{ background:linear-gradient(180deg,#F4DD97,#C9A24B); -webkit-background-clip:text; background-clip:text; color:transparent; }
  .mkt-ticket .tk-date{ font-size:12px; font-weight:700; color:#9DB6DC; margin-top:4px; letter-spacing:.04em; }
  .mkt-strip2{ margin:22px 0 0; padding:13px 16px; border-radius:10px; background:linear-gradient(90deg,rgba(110,190,140,.25),rgba(90,165,225,.3)); font-size:15px; font-weight:900; color:#fff; letter-spacing:-.01em; text-align:center; }
  /* 중앙 정렬 버튼형 CTA */
  .mkt-cta2-wrap{ position:relative; z-index:3; display:flex; justify-content:center; margin-top:12px; padding:0 2px; }
  /* 매장 접수 중 — 반짝이는 옐로우 */
  .mkt-receiving{ display:flex; align-items:center; justify-content:center; gap:7px; margin-top:11px;
    font-size:10px; font-weight:800; letter-spacing:-.01em; text-align:center;
    color:#FFD84D; text-shadow:0 0 10px rgba(255,216,77,.55), 0 0 20px rgba(255,216,77,.3);
    animation:recvGlow 1.1s ease-in-out infinite; }
  .mkt-receiving .dot{ width:7px; height:7px; border-radius:50%; background:#FF3B30;
    box-shadow:0 0 8px rgba(255,59,48,.95); animation:recvBlink 1s ease-in-out infinite; }
  @keyframes recvGlow{ 0%,100%{ text-shadow:0 0 14px rgba(255,216,77,.85), 0 0 28px rgba(255,216,77,.5); opacity:1; }
    50%{ text-shadow:0 0 6px rgba(255,216,77,.3); opacity:.4; } }
  @keyframes recvBlink{ 0%,100%{ opacity:1; transform:scale(1); } 50%{ opacity:.35; transform:scale(.8); } }
  @media (prefers-reduced-motion:reduce){ .mkt-receiving,.mkt-receiving .dot{ animation:none; } }
  .mkt-cta2{ display:inline-flex; flex-direction:column; align-items:center; gap:4px; text-decoration:none; padding:15px 34px; border-radius:15px; position:relative; background:linear-gradient(160deg,#4C90F8,#2E6FE0 55%,#1E5FD0); box-shadow:0 14px 34px rgba(46,111,224,.5), inset 0 1px 0 rgba(255,255,255,.28); transition:transform .18s, box-shadow .18s, filter .18s; }
  .mkt-cta2:hover{ transform:translateY(-2px); box-shadow:0 20px 44px rgba(46,111,224,.66), inset 0 1px 0 rgba(255,255,255,.28); filter:brightness(1.05); }
  .mkt-cta2:hover .cta-arw{ transform:translateX(5px); }
  .mkt-cta2:active{ transform:translateY(-1px) scale(.99); }
  .mkt-cta2 .cta-hook{ display:inline-flex; align-items:center; gap:5px; font-size:12.5px; font-weight:800; color:#16294A; background:#fff; padding:5px 14px; border-radius:100px; margin-bottom:3px; letter-spacing:-.01em; box-shadow:0 4px 12px rgba(11,27,51,.28); }
  .mkt-cta2 .c-main{ font-size:17.5px; font-weight:900; color:#fff; letter-spacing:-.01em; display:flex; align-items:center; gap:8px; line-height:1.1; }
  .mkt-cta2 .cta-arw{ display:inline-block; transition:transform .18s; }
  .mkt-cta2 .c-sub{ font-size:11px; font-weight:700; color:rgba(255,255,255,.9); display:inline-flex; align-items:center; gap:4px; }
  .mkt-cta2 .cta-live{ display:inline-flex; align-items:center; gap:5px; font-weight:800; color:#fff; }
  .mkt-cta2 .cta-dot{ width:8px; height:8px; border-radius:50%; flex:0 0 auto;
    background:radial-gradient(circle at 35% 35%, #6EE7A0, #22C55E 60%, #15A34A);
    box-shadow:0 0 0 3px rgba(34,197,94,.30), 0 0 8px rgba(34,197,94,.75);
    animation:ctaLive 1.4s ease-in-out infinite; }
  @keyframes ctaLive{ 0%,100%{ transform:scale(1); box-shadow:0 0 0 3px rgba(34,197,94,.30), 0 0 8px rgba(34,197,94,.75); }
    50%{ transform:scale(1.18); box-shadow:0 0 0 7px rgba(34,197,94,.06), 0 0 12px rgba(34,197,94,.95); } }
  .mkt-credline{ display:flex; align-items:center; justify-content:center; gap:9px; margin-top:7px; font-size:12.5px; font-weight:600; color:#9fb0cc; letter-spacing:-.01em; }
  .mkt-credline b{ color:#F7E29A; font-weight:800; }
  .mkt-credline .sep{ width:3px; height:3px; border-radius:50%; background:#4a5b78; flex-shrink:0; }
  @media (prefers-reduced-motion: reduce){ .mkt-cta2 .cta-dot{ animation:none; } .mkt-cta::after{ animation:none; } }
  @media (max-width:600px){
    .mkt-h1b{ font-size:40px !important; }
    .mkt-h1b .l1{ font-size:1.16em !important; }
     .mkt-h1b .l1 .l1a{ font-size:1.05em !important; }
    .mkt-h1b .l2{ font-size:0.74em !important; }
    .mkt-h1b .l1, .mkt-h1b .l2{ filter:drop-shadow(0 2px 9px rgba(6,16,34,.62)); }
    .mkt-sub2{ text-shadow:0 2px 8px rgba(6,16,34,.5); }
     .mkt-h1b .mkt-mobr{ display:inline !important; }
    .mkt-ticket{ padding:14px 32px; }
    .mkt-cta2{ padding:12px 24px; }
  }
  .mkt-hero::before{ content:''; position:absolute; inset:0; background:radial-gradient(50% 60% at 88% 0%, rgba(201,162,75,.13), transparent 60%); pointer-events:none; }
  .mkt-hero-in{ position:relative; max-width:1120px; margin:0 auto; text-align:center; }
  /* [헤더 인물 사진] 우측 하단 고정 · 콘텐츠(검색바 포함) 뒤에 배치 */
  .mkt-hero-fig{ position:absolute; bottom:0; z-index:2; pointer-events:none; user-select:none;
    right:150px; height:auto; width:auto;
    max-height:86%; max-width:26%;
    filter:drop-shadow(0 16px 38px rgba(0,0,0,.45)); }
  @media (max-width:1220px){ .mkt-hero-fig{ right:100px; max-width:25%; } }
  /* 모바일도 PC와 동일 구조: 하단 기준 · 전신 · 검색바 뒤 */
  @media (max-width:1220px){ .mkt-h1b .l1{ transform:translateX(-16px); } }
  @media (max-width:1000px){ .mkt-h1b .l1{ transform:none; } }
  @media (max-width:1000px){
    .mkt-hero-fig{ right:auto; left:50%; transform:translateX(-50%); z-index:-1;
      top:34px; bottom:auto; max-width:45%; max-height:none; width:auto;
      filter:drop-shadow(0 12px 26px rgba(0,0,0,.42)); }
  }
  @media (max-width:600px){
    .mkt-hero-fig{ right:auto; left:50%; transform:translateX(-50%); top:30px; max-width:52%; }
  }
  @media (max-width:380px){
    .mkt-hero-fig{ right:auto; left:50%; transform:translateX(-50%); top:28px; max-width:56%; }
  }
  .mkt-eyebrow{ display:flex; align-items:center; justify-content:center; gap:12px; font-size:12px; font-weight:700; letter-spacing:.16em; color:var(--gold-lt); margin-top:4px; margin-bottom:10px; }
  .mkt-eyebrow .ln{ width:34px; height:1px; background:linear-gradient(90deg,transparent,rgba(201,162,75,.6)); }
  .mkt-eyebrow .ln:last-child{ background:linear-gradient(90deg,rgba(201,162,75,.6),transparent); }
  .mkt-h1{ margin:0 0 14px; }
  .mkt-h1{ font-family:var(--sans); }
  .mkt-h1 .lead{ display:block; font-size:26px; font-weight:900; color:#CBD5E6; letter-spacing:-.02em; margin-bottom:5px; }
  .mkt-h1 .lead .yo{ color:var(--gold-lt); font-size:32px; font-weight:900; letter-spacing:-.02em;
    text-shadow:0 2px 10px rgba(201,162,75,.45); }
  .mkt-h1 .main{ display:block; font-size:28px; font-weight:900; color:#fff; letter-spacing:-.02em; line-height:1.45; }
  .mkt-h1 .em{ color:var(--gold-lt); font-weight:800; } .mkt-h1 .lead .dimm{ color:#7E90B0; }
  .mkt-h1 .badge-y{ font-size:11.5px; font-weight:700; color:var(--gold-lt); background:rgba(201,162,75,.14); border:1px solid rgba(201,162,75,.4); border-radius:100px; padding:4px 11px; margin-left:8px; vertical-align:middle; letter-spacing:.02em; }
  .mkt-sub{ font-size:14px; color:#AFBBCF; margin:0 auto 16px; max-width:560px; letter-spacing:.01em; }
  .mkt-cta{ position:relative; display:inline-flex; flex-direction:column; align-items:center; gap:2px;
    text-decoration:none; padding:14px 34px 15px; border-radius:16px; margin-top:8px;
    background:linear-gradient(180deg, #FFFFFF 0%, #F5F1E7 100%);
    box-shadow:0 16px 42px rgba(0,0,0,.42), 0 0 0 3px rgba(228,198,126,.6), inset 0 1px 0 rgba(255,255,255,.9);
    transition:transform .14s ease, box-shadow .14s ease; }
  .mkt-cta::after{ content:''; position:absolute; top:-8px; right:-8px; width:18px; height:18px; border-radius:50%;
    background:radial-gradient(circle at 35% 35%, #F0705A, #D93A24);
    box-shadow:0 0 0 4px rgba(217,58,36,.28), 0 2px 6px rgba(217,58,36,.5);
    animation:ctaDotRed 1.5s ease-in-out infinite; }
  @keyframes ctaDotRed{ 0%,100%{ transform:scale(1); box-shadow:0 0 0 4px rgba(217,58,36,.28), 0 2px 6px rgba(217,58,36,.5); }
    50%{ transform:scale(1.32); box-shadow:0 0 0 7px rgba(217,58,36,.10), 0 2px 8px rgba(217,58,36,.55); } }
  .mkt-cta:hover{ transform:translateY(-2px); box-shadow:0 22px 52px rgba(0,0,0,.5), 0 0 0 3px rgba(228,198,126,.85), inset 0 1px 0 rgba(255,255,255,.9); }
  .mkt-cta:active{ transform:translateY(0); }
  .mkt-cta .t{ position:relative; font-size:12.5px; font-weight:900; color:#5B6B8C; letter-spacing:-.01em; }
  .mkt-cta .t b{ color:#C0491F; font-weight:900; }
  .mkt-cta .n{ position:relative; font-size:21px; font-weight:900; color:#16294A; letter-spacing:-.02em; }
  .mkt-cta .n .pen{ color:#C0491F; }
  .mkt-cta .tel-sub{ position:relative; font-size:10.5px; font-weight:700; color:#8B97AD; }
  
  
  .mkt-tel:hover{ background:rgba(201,162,75,.2); border-color:var(--gold-lt); }
  /* 검색 박스 */
  .mkt-search{ position:relative; z-index:3; max-width:640px; margin:16px auto 0; background:#fff; border-radius:12px; padding:7px; box-shadow:0 4px 16px rgba(0,0,0,.10); display:grid; grid-template-columns:116px 1fr auto; gap:7px; align-items:center; }
  /* 권리금 적정성 계산기 */
  .gcalc{ background:linear-gradient(180deg,#F7F4EC, #F4F1EA); border-top:1px solid var(--line); padding:46px 22px 52px; }
  .gcalc-in{ max-width:680px; margin:0 auto; }
  .gcalc-head{ text-align:center; margin-bottom:22px; }
  .gcalc-badge{ display:inline-block; background:var(--navy); color:var(--gold-lt); font-size:11px; font-weight:900; letter-spacing:.06em; padding:6px 14px; border-radius:100px; margin-bottom:12px; }
  .gcalc-tt{ font-family:var(--serif); font-size:25px; font-weight:900; color:var(--ink); margin:0 0 8px; letter-spacing:-.01em; }
  .gcalc-tt .gd{ color:var(--gold-deep); }
  .gcalc-sub{ font-size:13px; color:var(--slate); margin:0; }
  .gcalc-body{ background:#fff; border:1px solid var(--line-2); border-radius:18px; padding:24px 22px; box-shadow:0 10px 34px rgba(22,41,74,.08); }
  .gcalc-form{ display:flex; flex-direction:column; gap:13px; }
  .gf label{ display:block; font-size:12px; font-weight:800; color:#334155; margin-bottom:5px; }
  .gf .hint{ font-weight:500; color:var(--mute); font-size:10.5px; }
  .gf input, .gf select{ width:100%; padding:12px 13px; border:1px solid #dbe1ea; border-radius:10px; font-size:15px; font-weight:700; box-sizing:border-box; font-variant-numeric:tabular-nums; }
  .gf input:focus, .gf select:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,162,75,.14); }
  .gf select{ background:#fff; cursor:pointer; }
  .gcalc-run{ margin-top:4px; width:100%; padding:14px; border:none; border-radius:11px; background:var(--navy); color:#fff; font-size:15px; font-weight:900; cursor:pointer; letter-spacing:.02em; transition:background .2s; }
  .gcalc-run:hover{ background:var(--ink); }
  .gcalc-precise{ margin-top:9px; width:100%; padding:13px; border:1.5px solid var(--gold); border-radius:11px; background:linear-gradient(180deg,#FBF6EA,#F4EAD0); color:var(--navy); font-size:13.5px; font-weight:800; cursor:pointer; letter-spacing:.01em; }
  .gcalc-precise b{ font-weight:900; color:var(--gold-deep); }
  .gcalc-precise:hover{ background:#F0E4C6; }
  .gcalc-precise-note{ font-size:11px; color:var(--mute); text-align:center; margin:8px 2px 0; line-height:1.5; }
  .gcalc-precise-note b{ color:var(--gold-deep); font-weight:700; }
  .gcalc-result{ margin-top:20px; border-top:2px dashed var(--line-2); padding-top:18px; }
  .gr-row{ display:flex; justify-content:space-between; align-items:baseline; padding:7px 2px; }
  .gr-row .k{ font-size:13px; font-weight:700; color:var(--slate); }
  .gr-row .v{ font-size:20px; font-weight:900; color:var(--ink); font-variant-numeric:tabular-nums; }
  .gr-grade{ text-align:center; font-family:var(--serif); font-size:21px; font-weight:900; padding:13px; border-radius:12px; margin:12px 0 8px; }
  .gr-grade.s{ background:#E7F2ED; color:#1B7A5A; }
  .gr-grade.a{ background:#FDF6E3; color:#A9863A; }
  .gr-grade.b{ background:#FFF1E6; color:#C2410C; }
  .gr-grade.f{ background:#FDECEC; color:#C0491F; }
  .gr-note{ font-size:12.5px; color:var(--ink-soft); line-height:1.6; text-align:center; margin:0 0 16px; }
  .gr-precise{ display:block; width:100%; border:none; cursor:pointer; margin-bottom:8px;
    background:linear-gradient(135deg, var(--gold-deep), var(--gold), var(--gold-lt)); color:#2A1F08;
    font-size:13.5px; font-weight:900; padding:14px 12px; border-radius:10px; letter-spacing:-.01em;
    box-shadow:0 6px 18px rgba(201,162,75,.35); }
  .gr-precise b{ font-weight:900; }
  .gr-cta{ display:grid; grid-template-columns:1fr 1fr; gap:8px; }
  .gr-call{ display:flex; align-items:center; justify-content:center; gap:6px; background:var(--navy); color:#fff; font-size:13px; font-weight:800; padding:13px; border-radius:10px; text-decoration:none; }
  .gr-kko{ display:flex; align-items:center; justify-content:center; gap:6px; background:#FEE500; color:#3A1D1D; font-size:13px; font-weight:800; padding:13px; border-radius:10px; text-decoration:none; }
  .gr-fine{ font-size:10.5px; color:var(--mute); line-height:1.55; margin:12px 0 0; text-align:center; }
  @media (max-width:600px){
    .gcalc{ padding:36px 16px 42px; }
    .gcalc-tt{ font-size:21px; }
    .gcalc-body{ padding:20px 16px; }
  }
  /* GNB 권리금 계산기 탭 강조 */
  .gnb-calc{ color:var(--gold-deep) !important; font-weight:900; }
  .gnb-calc.on{ color:var(--gold-deep) !important; border-color:var(--gold) !important; }
  .md-calc{ color:var(--gold-deep) !important; font-weight:900; }
  /* 소장 어록 밴드 */
  .ceo-quote{ position:relative; background:linear-gradient(135deg,#0E1E3C 0%,#1C3B6C 52%,#0B1B33 100%); padding:52px 22px 56px; overflow:hidden; }
  .ceo-quote::before{ content:''; position:absolute; inset:0; pointer-events:none; background:
    linear-gradient(112deg, transparent 38%, rgba(201,162,75,.10) 50%, transparent 62%),
    radial-gradient(50% 60% at 90% 8%, rgba(228,198,126,.12), transparent 60%); }
  .ceo-quote::after{ content:''; position:absolute; left:0; right:0; top:0; height:1px; background:linear-gradient(90deg, transparent, rgba(201,162,75,.4), transparent); }
  .cq-in{ position:relative; max-width:760px; margin:0 auto; text-align:center; }
  .cq-mark{ font-family:var(--serif); font-size:76px; font-weight:900; color:var(--gold-lt); line-height:.6; margin-bottom:24px; opacity:.85; }
  .cq-line{ font-family:var(--serif); font-size:52px; font-weight:800; color:#fff; line-height:1.28; letter-spacing:-.02em; margin:0 0 18px; }
  .cq-line .dim{ color:#8FA2C2; }
  .cq-line .gold{ color:var(--gold-lt); text-shadow:0 2px 12px rgba(201,162,75,.35); }
  .cq-sub{ font-family:var(--serif); font-size:17px; font-weight:700; color:#C7D2E4; margin:0 0 24px; letter-spacing:.01em; } .cq-sub .gold-soft{ color:var(--gold-lt); font-weight:900; }
  .cq-sign{ display:inline-flex; align-items:center; gap:12px; font-size:12px; font-weight:800; color:var(--gold-lt); letter-spacing:.14em; }
  .cq-sign .ln{ width:34px; height:1px; background:linear-gradient(90deg, transparent, rgba(201,162,75,.6)); }
  .cq-sign .ln:last-child{ background:linear-gradient(90deg, rgba(201,162,75,.6), transparent); }
  @media (max-width:600px){
    .ceo-quote{ padding:40px 18px 44px; }
    .cq-line{ font-size:34px; line-height:1.3; }
    .cq-sub{ font-size:14.5px; }
    .cq-mark{ font-size:56px; }
  }
  /* 검증 신뢰 바 */
  .mkt-trust{ position:relative; background:#fff; border-top:1px solid var(--line); padding:14px 22px 16px; }
  .mkt-trust-in{ max-width:1120px; margin:0 auto; display:flex; align-items:center; justify-content:space-between; gap:16px; flex-wrap:wrap; }
  .mtx-flow{ display:flex; align-items:center; gap:9px; flex-wrap:wrap; }
  .mtx-step{ font-size:12px; font-weight:800; color:var(--navy); background:var(--paper-2); border:1px solid var(--line); border-radius:100px; padding:6px 13px; }
  .mtx-arrow{ font-size:12px; color:var(--gold-deep); font-weight:800; }
  .mtx-pass{ font-size:12px; font-weight:800; color:#fff; background:var(--verified); border-radius:100px; padding:6px 13px; margin-left:3px; }
  .mtx-cred{ font-size:12px; color:var(--slate); font-weight:600; }
  .mtx-cred b{ color:var(--gold-deep); font-weight:800; font-variant-numeric:tabular-nums; }
  .msf{ min-width:0; }
  .msf label{ display:block; font-size:11px; font-weight:800; color:var(--slate); margin-bottom:6px; letter-spacing:.02em; }
  .msf select, .msf input{ width:100%; border:1px solid var(--line-2); border-radius:8px; padding:8px 11px; font-size:13px; font-family:inherit; color:var(--ink); background:#fff; }
  .msf select:focus, .msf input:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,162,75,.14); }
  .mkt-search .go{ background:var(--navy); color:#fff; font-weight:800; font-size:13.5px; padding:8px 18px; border:0; border-radius:8px; cursor:pointer; white-space:nowrap; display:inline-flex; align-items:center; gap:6px; transition:background .2s; }
  .mkt-search .go:hover{ background:var(--ink); }

  /* 툴바: 결과수 + 정렬 + 칩 */
  .mkt-toolbar{ display:flex; align-items:center; gap:14px; flex-wrap:wrap; padding:20px 0 16px; }
  .mkt-count{ font-size:14px; font-weight:800; color:var(--ink); }
  .mkt-count b{ color:var(--gold-deep); font-variant-numeric:tabular-nums; }
  .mkt-chips{ display:flex; gap:7px; flex-wrap:wrap; }
  .chip{ font-size:12.5px; font-weight:700; color:var(--slate); background:var(--card); border:1px solid var(--line-2); border-radius:100px; padding:8px 14px; cursor:pointer; transition:all .16s; white-space:nowrap; }
  .chip:hover{ border-color:var(--gold); color:var(--gold-deep); }
  .chip.on{ background:var(--navy); color:#fff; border-color:var(--navy); }
  .mkt-sort{ margin-left:auto; display:flex; gap:5px; align-items:center; }
  .mkt-sort .sb{ font-size:12.5px; font-weight:700; color:var(--slate); background:none; border:0; padding:8px 10px; cursor:pointer; border-radius:8px; transition:color .16s; }
  .mkt-sort .sb::before{ content:'· '; color:var(--line-2); }
  .mkt-sort .sb:first-child::before{ content:''; }
  .mkt-sort .sb.on{ color:var(--navy); font-weight:800; }

  /* 매장 그리드 */
  .mkt-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
    /* [깜빡임 방지] 샘플 카드는 초기 숨김 — JS가 검증 매장/준비중 결정 후 처리.
       JS 실행 전 HTML에 박힌 샘플이 번쩍 보이는 FOUC를 원천 차단. */
    .mkt-grid .mc[data-sample]{ display:none !important; }
    /* JS가 로드 완료 표시(sgm-ready)를 붙이면 샘플은 이미 DOM에서 제거되므로 무관 */
  .mc{ background:var(--card); border:1px solid var(--line); border-radius:14px; overflow:hidden; box-shadow:var(--shadow-sm); cursor:pointer; transition:transform .22s cubic-bezier(.2,.7,.3,1), box-shadow .22s, border-color .22s; }
  .mc:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:var(--line-2); }
  /* 매장 사진 영역 (app.py 포스팅 시 실사진 노출) */
  .mc-img{ position:relative; height:150px; background:linear-gradient(150deg,#243B63,#131F38); border-bottom:1px solid var(--line); overflow:hidden; }
  .mc-photo{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; }
  .mc-img::after{ content:''; position:absolute; left:0; right:0; top:0; height:52px; background:linear-gradient(180deg, rgba(11,27,51,.22), transparent); z-index:1; pointer-events:none; }
  /* 사진 없을 때 폴백 */
  .mc-photo-ph{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; color:rgba(255,255,255,.85); }
  .mc-photo-ph .wm{ font-size:16px; font-weight:900; letter-spacing:.01em; text-align:center; }
  .mc-photo-ph .hint{ font-size:9px; font-weight:700; color:rgba(255,255,255,.6); letter-spacing:.06em; border:1px dashed rgba(255,255,255,.4); border-radius:100px; padding:2px 9px; }
  /* 배지 오버레이 */
  /* 매장 번호 배지 */
  .mc-mno{ position:absolute; top:10px; left:10px; z-index:3; background:rgba(11,27,51,.88); color:#E4C67E; font-size:.72rem; font-weight:800; padding:4px 10px; border-radius:7px; letter-spacing:.5px; backdrop-filter:blur(4px); box-shadow:0 2px 8px rgba(0,0,0,.3); border:1px solid rgba(228,198,126,.3); }
  .mc-badges{ position:absolute; top:10px; left:10px; display:flex; gap:5px; z-index:2; flex-wrap:wrap; max-width:calc(100% - 50px); }
  /* 카드 동적 배지 (관리자 지정 20종) */
  .mc-badge-dyn{ display:inline-block; padding:3px 9px; border-radius:6px; font-size:.72rem; font-weight:800; color:#fff; margin-left:4px; white-space:nowrap; box-shadow:0 2px 6px rgba(0,0,0,.15); }

  .mc-fav{ position:absolute; top:9px; right:10px; z-index:2; width:28px; height:28px; border-radius:50%; background:rgba(11,27,51,.42); backdrop-filter:blur(4px); border:1px solid rgba(255,255,255,.24); display:flex; align-items:center; justify-content:center; font-size:14px; color:#fff; }
  .mc-loc{ position:absolute; left:10px; bottom:10px; z-index:2; background:rgba(11,27,51,.62); color:#fff; font-size:10.5px; font-weight:700; padding:4px 9px; border-radius:100px; backdrop-filter:blur(4px); }
  .mc-date{ position:absolute; right:9px; bottom:9px; z-index:2; font-size:9.5px; font-weight:600; letter-spacing:.02em; color:rgba(255,255,255,.82); background:rgba(11,27,51,.42); padding:2px 7px; border-radius:5px; font-variant-numeric:tabular-nums; backdrop-filter:blur(2px); }
  .mc-img.mc-done .mc-photo, .mc-img.mc-done .mc-photo-ph{ filter:grayscale(1) brightness(.6); }
  .mc-stamp{ position:absolute; inset:0; z-index:4; display:flex; align-items:center; justify-content:center; pointer-events:none; }
  .mc-stamp span{ transform:rotate(-12deg); border:2.5px solid #C0491F; color:#C0491F; background:rgba(255,255,255,.9); font-size:18px; font-weight:900; letter-spacing:.06em; padding:6px 18px; border-radius:6px; box-shadow:0 3px 12px rgba(0,0,0,.28); }
  .mc-bv{ display:inline-flex; align-items:center; gap:3px; background:var(--verified); color:#fff; font-size:10px; font-weight:800; padding:4px 9px; border-radius:100px; box-shadow:0 2px 8px rgba(0,0,0,.35); }
  .mc-bhot{ background:var(--red); color:#fff; font-size:10px; font-weight:800; padding:4px 9px; border-radius:100px; }
  .mc-bnew{ background:var(--gold-deep); color:#fff; font-size:10px; font-weight:800; padding:4px 9px; border-radius:100px; }
  .mc-bpin{ display:inline-flex; align-items:center; gap:3px; background:linear-gradient(135deg,#FFD400,#F5B800); color:#3A2E00; font-size:10px; font-weight:800; padding:4px 9px; border-radius:100px; box-shadow:0 2px 8px rgba(0,0,0,.28); }
  .mc-body{ padding:14px 15px 15px; }
  .mc-ti{ font-size:14.5px; font-weight:800; color:var(--ink); letter-spacing:-.01em; margin-bottom:3px; line-height:1.3; word-break:keep-all; }
  .mc-ti .mc-brand{ color:#D93025; font-size:1.2em; white-space:nowrap; }
  .mc-tags{ font-size:11.5px; color:var(--slate); margin-bottom:12px; display:flex; align-items:center; justify-content:space-between; gap:8px; }
  .mc-tags .mc-cat{ min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
  .mc-mno-inline{ flex:0 0 auto; font-family:'Menlo',monospace; font-size:10px; font-weight:800; color:#5A6B84; background:#F1EEE7; border:1px solid #E4DECF; padding:2px 8px; border-radius:6px; letter-spacing:.3px; }
  .mc-tags .op{ display:inline-block; background:var(--paper-2); border:1px solid var(--line); color:var(--navy); font-weight:700; font-size:10.5px; padding:2px 7px; border-radius:5px; margin-right:4px; }
  .mc-rows{ display:flex; flex-direction:column; gap:7px; padding-top:12px; border-top:1px solid var(--line); }
  .mc-row{ display:flex; justify-content:space-between; align-items:baseline; font-size:12.5px; }
  .mc-row .k{ color:var(--mute); font-weight:600; }
  .mc-row .v{ font-weight:800; color:var(--ink); font-variant-numeric:tabular-nums; }
  .mc-row .v.hl{ color:var(--gold-deep); font-size:14px; }
  .mc-report{ flex:0 0 auto; display:inline-flex; align-items:center; gap:4px; font-size:11.5px; font-weight:800; color:var(--verified); background:var(--verified-lt); border:1px solid #C6E2D5; border-radius:9px; padding:0 11px; }
  .mc-verified-line{ display:flex; align-items:center; gap:5px; font-size:10.5px; font-weight:700; color:var(--verified); margin-bottom:10px; }
  .mc-verified-line .ln{ flex:1; height:1px; background:linear-gradient(90deg,#C6E2D5,transparent); }

  .mkt-more{ text-align:center; margin-top:28px; }
  .mkt-more button{ display:inline-flex; align-items:center; gap:8px; font-size:14px; font-weight:800; color:var(--navy); border:1.5px solid var(--navy); background:var(--card); padding:14px 34px; border-radius:100px; cursor:pointer; transition:all .2s; }
  .mkt-more button:hover{ background:var(--navy); color:#fff; transform:translateY(-2px); }
  .mkt-loading{ display:none; align-items:center; justify-content:center; gap:9px; margin-top:26px; font-size:13px; font-weight:700; color:var(--mute); }
  .mkt-loading.on{ display:flex; }
  .mkt-loading .spin{ width:16px; height:16px; border:2px solid var(--line-2); border-top-color:var(--navy); border-radius:50%; animation:mspin .7s linear infinite; }
  @keyframes mspin{ to{ transform:rotate(360deg); } }
  .mkt-note{ font-size:11.5px; color:var(--mute); text-align:center; margin-top:16px; line-height:1.7; }

  @media (max-width:980px){ .mkt-grid{ grid-template-columns:repeat(3,1fr); } }
  @media (max-width:760px){
    /* 헤더: 로고·버튼 대칭 정리 */
    .hd-in{ padding:9px 10px 9px 6px; gap:6px; }
    .brand{ flex:0 0 auto; }
    .brand-logo{ height:42px; width:auto !important; max-width:none; flex-shrink:0; object-fit:contain; }
    .brand .tag{ display:block; font-size:9px; line-height:1.25; white-space:nowrap; padding-left:2px; max-width:none; border-left:none; }
    .brand .tag .tbr{ display:inline; }
    .hd-cta{ margin-right:0; gap:6px; flex-shrink:0; }
    .hd-call{ font-size:11px; padding:7px 11px; gap:3px; }
    .hd-call .lb{ display:inline !important; }
    .hd-call .n{ display:none !important; }
    .hd-call .ico{ font-size:11px; }
    .hd-kko{ font-size:11px; padding:7px 11px; gap:3px; }
    .hd-kko .ico{ font-size:11px; }
    /* GNB 바 숨김 → 우측 드로어로 대체 */
    .gnb{ display:none; }
    .hd-menu{ display:inline-flex; width:34px; height:34px; flex-shrink:0; }
    /* 업종 칩 숨김 — 카운트만 노출 */
    .mkt-chips{ display:none; }
    .mkt-grid{ grid-template-columns:repeat(2,1fr); }
    .mkt-search{ grid-template-columns:1fr; }
    .mkt-search .msf-kw{ grid-column:1 / -1; }
    .mkt-search .go{ grid-column:1 / -1; width:100%; justify-content:center; }
  }
  @media (max-width:600px){
    .mkt-hero{ padding:6px 16px 8px; }
    .mkt-h1 .main{ font-size:22px; line-height:1.5; }
    .mkt-h1 .lead{ font-size:20px; }
    .mkt-eyebrow{ font-size:11px; letter-spacing:.12em; }
    .mkt-sort{ margin-left:0; width:100%; flex-wrap:wrap; }
    /* [모바일] 매장 카드 사진 제거 → 검증완료·위치만 슬림 배너로 (집중도↑) */
    .mc-img{ height:auto; min-height:36px; background:#0f2748; display:flex; align-items:center; padding:7px 12px; }
    .mc-img::after{ display:none; }
    .mc-photo, .mc-photo-ph, .mc-stamp, .mc-fav, .mc-date, .mc-mno{ display:none !important; }
    .mc-badges{ position:static; top:auto; left:auto; max-width:none; }
    .mc-loc{ position:static; left:auto; bottom:auto; margin-left:auto; background:transparent; padding:0; }
    .mc-body{ padding:11px 12px 13px; }
    .mc-row{ font-size:11.5px; }
    /* 카드 세로 길이 축소: 개별 6축 점수는 모바일에서 숨기고 종합만 */
    .mc-score .msc{ display:none; }
    .mc-score{ grid-template-columns:1fr; margin-top:9px; padding-top:9px; }
    .mc-score .msc-avg{ display:flex; justify-content:space-between; align-items:baseline; }
    .mc-ti{ font-size:13px; line-height:1.35; }
    .mc-tags{ font-size:10.5px; margin-bottom:9px; }
    .mc-cash{ margin-top:8px; padding:9px 10px; }
    .mc-cash .cf-v{ font-size:20px; }
    .mc-sub-rows{ margin-top:7px; gap:3px; }
    .mc-srow{ font-size:10.5px; }
    .mc-date{ font-size:8px; padding:1px 4px; }
    .mc-badges .mc-bhot{ display:none; }
    .mc-score{ margin-top:8px; padding-top:8px; }
    .mc-score .msc-avg .n{ font-size:15px; }
    /* 수익금 박스: 상하 배치 + 우측 정렬 (라벨·금액 모두 오른쪽, 약간 여백) */
    .mc-cash .cf-top{ flex-direction:column; align-items:flex-end; gap:5px; }
    .mc-cash .cf-optop{ align-self:flex-start; font-size:13px; }
    .mc-cash .cf-optop::after{ content:" 운영"; font-size:12px; font-weight:800; }
    .mc-cash .cf-right{ width:100%; text-align:right; padding-right:2px; }
    .mc-cash .cf-lb{ font-size:10px; text-align:right; }
    .mc-cash .cf-v{ font-size:23px; white-space:nowrap; text-align:right; }
    .mc-cash .cf-v .u{ font-size:12px; }
    .mc-cash .cf-roi{ margin-top:8px; }
    .mkt-trust-in{ gap:10px; }
    .mtx-flow{ gap:6px; }
    .mtx-step{ font-size:11px; padding:5px 10px; }
    .mtx-cred{ font-size:11px; }
  }
  

  /* ── 히어로 (홈) ── */
  .hero{ position:relative; background:linear-gradient(160deg, #16294A 0%, #0F2145 52%, #0B1B33 100%); color:#fff; overflow:hidden; }
  .hero::before{ content:''; position:absolute; inset:0; background:
    radial-gradient(60% 55% at 88% 8%, rgba(201,162,75,.14), transparent 62%),
    radial-gradient(50% 60% at 0% 100%, rgba(31,58,104,.6), transparent 60%); pointer-events:none; }
  .hero::after{ content:''; position:absolute; left:0; right:0; bottom:0; height:1px; background:linear-gradient(90deg, transparent, rgba(201,162,75,.4), transparent); }
  /* ── 헤드 배경 시안 (선택용) ── */
  
  
  
  
  .mkt-hero.bg-d{ background:linear-gradient(135deg,#0E1E3C 0%,#1C3B6C 52%,#0B1B33 100%); }
  /* 떠다니는 오브 + 대각 광선 (배경 입체감) */
  .mkt-hero{ position:relative; overflow:hidden; }
  .mkt-orb{ position:absolute; border-radius:50%; pointer-events:none; z-index:0; }
  .mkt-orb.o1{ width:230px; height:230px; top:-50px; right:-60px; background:radial-gradient(circle at 35% 35%, rgba(95,160,240,.5), rgba(30,70,140,0) 70%); animation:orbFloat1 9s ease-in-out infinite; }
  .mkt-orb.o2{ width:180px; height:180px; bottom:30px; left:-55px; background:radial-gradient(circle at 40% 40%, rgba(60,120,215,.42), rgba(20,50,110,0) 70%); animation:orbFloat2 11s ease-in-out infinite; }
  .mkt-orb.o3{ width:110px; height:110px; top:38%; left:8%; background:radial-gradient(circle at 40% 40%, rgba(125,175,245,.38), transparent 70%); animation:orbFloat3 8s ease-in-out infinite; }
  .mkt-beam{ position:absolute; inset:0; z-index:0; pointer-events:none; background:linear-gradient(115deg, transparent 40%, rgba(160,205,255,.09) 50%, transparent 60%); }
  .mkt-hero-in{ position:relative; z-index:2; }
  @keyframes orbFloat1{ 0%,100%{ transform:translate(0,0); } 50%{ transform:translate(-14px,18px); } }
  @keyframes orbFloat2{ 0%,100%{ transform:translate(0,0); } 50%{ transform:translate(16px,-14px); } }
  @keyframes orbFloat3{ 0%,100%{ transform:translate(0,0); } 50%{ transform:translate(10px,12px); } }
  @media (prefers-reduced-motion:reduce){ .mkt-orb{ animation:none; } }
  .mkt-hero.bg-d::before{ background:
    linear-gradient(112deg, transparent 38%, rgba(201,162,75,.11) 50%, transparent 62%),
    radial-gradient(55% 60% at 92% 10%, rgba(228,198,126,.13), transparent 60%); }
  
  .hero-in{ position:relative; max-width:1120px; margin:0 auto; padding:64px 22px 56px; }
  .hero-eyebrow{ display:inline-flex; align-items:center; gap:9px; font-size:11.5px; font-weight:700; letter-spacing:.13em; color:var(--gold-lt); margin-bottom:24px; }
  .hero-eyebrow .dash{ width:24px; height:1px; background:linear-gradient(90deg,var(--gold),transparent); }
  .hero-eyebrow .badge-y{ background:rgba(201,162,75,.14); border:1px solid rgba(201,162,75,.4); border-radius:100px; padding:4px 11px; letter-spacing:.02em; }
  /* 고객 고통 질문 */
  .hero-pain{ margin:0 0 8px; }
  .hero-pain .qline{ display:flex; align-items:flex-start; gap:12px; margin-bottom:12px; opacity:0; transform:translateY(12px); animation:painIn .6s cubic-bezier(.2,.7,.3,1) forwards; }
  .hero-pain .qline:nth-child(1){ animation-delay:.1s; }
  .hero-pain .qline:nth-child(2){ animation-delay:.25s; }
  .hero-pain .qline:nth-child(3){ animation-delay:.4s; }
  @keyframes painIn{ to{ opacity:1; transform:none; } }
  .hero-pain .qmark{ flex:0 0 auto; font-family:var(--serif); font-size:20px; font-weight:800; color:var(--gold); line-height:1.3; }
  .hero-pain .qtx{ font-size:19px; font-weight:600; color:#DCE4F0; line-height:1.5; letter-spacing:-.01em; }
  .hero-pain .qtx b{ color:#fff; font-weight:800; border-bottom:2px solid rgba(201,162,75,.5); padding-bottom:1px; }
  .hero-answer{ margin:26px 0 0; padding-top:26px; border-top:1px solid rgba(255,255,255,.12); }
  .hero-answer h1{ font-family:var(--serif); font-size:34px; font-weight:800; line-height:1.4; letter-spacing:-.02em; margin:0 0 16px; }
  .hero-answer h1 .em{ color:var(--gold-lt); }
  .hero-answer .lead{ font-size:15px; color:#B9C6DC; line-height:1.85; max-width:600px; margin:0 0 30px; }
  .hero-cta{ display:flex; gap:12px; flex-wrap:wrap; align-items:center; }
  .btn-primary{ display:inline-flex; align-items:center; gap:9px; background:linear-gradient(135deg,var(--gold-lt),var(--gold)); color:var(--ink); font-weight:800; font-size:14.5px; padding:16px 30px; border:0; border-radius:12px; cursor:pointer; box-shadow:0 10px 28px rgba(201,162,75,.3); transition:transform .2s, box-shadow .2s; }
  .btn-primary:hover{ transform:translateY(-2px); box-shadow:0 14px 34px rgba(201,162,75,.42); }
  .btn-line{ display:inline-flex; align-items:center; gap:8px; color:#fff; font-weight:700; font-size:14.5px; padding:16px 26px; border:1px solid rgba(255,255,255,.28); border-radius:12px; transition:border-color .2s, background .2s; }
  .btn-line:hover{ border-color:var(--gold); background:rgba(201,162,75,.08); }
  .btn-ghost{ display:inline-flex; align-items:center; gap:8px; color:#E4C67E; font-weight:700; font-size:14px; padding:14px 8px; }
  .btn-ghost:hover{ color:#fff; }

  /* ── 왜 대구상가맨 창업연구소인가 (증거 밴드) ── */
  .why{ position:relative; background:var(--ink); color:#fff; padding:0; }
  .why-in{ max-width:1120px; margin:0 auto; padding:0 22px; }
  .why-grid{ display:grid; grid-template-columns:repeat(4,1fr); }
  .why-cell{ padding:34px 24px; border-right:1px solid rgba(255,255,255,.09); position:relative; }
  .why-cell:last-child{ border-right:0; }
  .why-cell .wf{ font-family:var(--serif); font-size:40px; font-weight:800; color:#fff; line-height:1; font-variant-numeric:tabular-nums; letter-spacing:-.01em; }
  .why-cell .wf .u{ font-size:18px; color:var(--gold-lt); margin-left:3px; }
  .why-cell .wl{ font-size:13px; color:var(--gold-lt); font-weight:700; margin-top:12px; }
  .why-cell .wd{ font-size:12px; color:#8A97AC; margin-top:5px; line-height:1.6; }

  /* ── 문제→해결 서비스 카드 ── */
  .ps-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .pscard{ position:relative; background:var(--card); border:1px solid var(--line); border-radius:16px; padding:26px 24px; box-shadow:var(--shadow-sm); transition:transform .25s, box-shadow .25s, border-color .25s; overflow:hidden; }
  .pscard:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:var(--line-2); }
  .pscard .ps-q{ font-size:15px; font-weight:700; color:var(--slate); line-height:1.6; margin-bottom:16px; padding-bottom:16px; border-bottom:1px dashed var(--line); min-height:66px; }
  .pscard .ps-q .quote{ color:var(--navy); font-weight:800; }
  .pscard .ps-a-label{ display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:800; color:var(--verified); background:var(--verified-lt); border-radius:100px; padding:4px 11px; margin-bottom:12px; }
  .pscard h3{ font-family:var(--serif); font-size:18.5px; font-weight:800; color:var(--ink); margin:0 0 8px; letter-spacing:-.01em; }
  .pscard p{ font-size:13px; color:var(--slate); line-height:1.75; margin:0 0 16px; }
  .pscard .ps-go{ display:inline-flex; align-items:center; gap:7px; font-size:13px; font-weight:800; color:var(--navy); transition:gap .2s; }
  .pscard:hover .ps-go{ gap:12px; }

  @media (max-width:860px){
    .why-grid{ grid-template-columns:1fr 1fr; }
    .why-cell:nth-child(2){ border-right:0; }
    .why-cell:nth-child(1),.why-cell:nth-child(2){ border-bottom:1px solid rgba(255,255,255,.09); }
    .ps-grid{ grid-template-columns:1fr; }
  }
  @media (max-width:600px){
    .hero-in{ padding:44px 16px 40px; }
    .hero-pain .qtx{ font-size:16px; }
    .hero-pain .qmark{ font-size:17px; }
    .hero-answer h1{ font-size:24px; }
    .why-cell .wf{ font-size:32px; }
    .why-cell{ padding:26px 18px; }
  }

  /* 검증 인장 (시그니처) */
  .seal{ position:relative; width:var(--sz,116px); height:var(--sz,116px); flex:0 0 auto; }
  .seal svg{ width:100%; height:100%; display:block; }
  .seal .rot{ animation:spin 40s linear infinite; transform-origin:50% 50%; }
  @keyframes spin{ to{ transform:rotate(360deg); } }
  .hero-seal{ position:absolute; top:56px; right:26px; --sz:150px; opacity:.96; }

  .hero-ledger{ display:flex; gap:0; margin-top:44px; border-top:1px solid rgba(228,198,126,.24); padding-top:26px; }
  .led{ flex:1; padding-right:20px; }
  .led + .led{ padding-left:24px; border-left:1px solid rgba(255,255,255,.1); }
  .led .fig{ font-family:var(--serif); font-size:32px; font-weight:800; color:#fff; letter-spacing:-.01em; line-height:1; font-variant-numeric:tabular-nums; }
  .led .fig .u{ font-size:15px; color:var(--gold-lt); margin-left:2px; }
  .led .lb{ font-size:11.5px; color:#94A3B8; margin-top:9px; font-weight:600; letter-spacing:.01em; }
  .led .lb .chk{ color:var(--gold-lt); }

  /* 검색바 */
  .searchbar{ position:relative; margin-top:40px; max-width:560px; }
  .searchbar input{ width:100%; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.06); color:#fff; border-radius:14px; padding:16px 120px 16px 18px; font-size:14.5px; font-family:inherit; }
  .searchbar input::placeholder{ color:#93A2BC; }
  .searchbar button{ position:absolute; right:6px; top:6px; bottom:6px; background:linear-gradient(135deg,var(--gold-lt),var(--gold)); color:var(--ink); font-weight:800; font-size:14px; padding:0 22px; border:0; border-radius:9px; cursor:pointer; }

  /* ── 섹션 헤더 (제목/부제 2줄) ── */
  .sect{ padding:46px 0; }
  .sect.tight{ padding:32px 0; }
  .sect-alt{ background:var(--paper-2); }
  .sect-dark{ background:var(--ink); color:#fff; }
  .shead{ display:flex; align-items:flex-start; gap:14px; margin-bottom:30px; }
  .shead-bar{ width:3px; align-self:stretch; min-height:44px; background:linear-gradient(var(--gold),var(--gold-deep)); border-radius:2px; flex:0 0 auto; }
  .shead-tx{ min-width:0; flex:1; }
  .shead .eyebrow{ font-size:11px; font-weight:800; letter-spacing:.14em; color:var(--gold-deep); text-transform:uppercase; margin-bottom:8px; }
  .shead h2{ font-family:var(--serif); font-size:27px; font-weight:800; line-height:1.35; letter-spacing:-.01em; margin:0; color:var(--ink); }
  .sect-dark .shead h2{ color:#fff; }
  .sect-dark .shead .eyebrow{ color:var(--gold-lt); }
  .shead .sub{ font-size:14px; color:var(--slate); margin:11px 0 0; line-height:1.75; }
  .sect-dark .shead .sub{ color:#AFBBCF; }
  .badge-verified{ display:inline-flex; align-items:center; gap:5px; font-size:11px; font-weight:800; color:var(--verified); background:var(--verified-lt); border:1px solid #BFE0D2; padding:4px 10px; border-radius:100px; vertical-align:middle; margin-left:4px; letter-spacing:.01em; }
  .shead-more{ margin-left:auto; align-self:center; font-size:13px; font-weight:700; color:var(--navy); border:1px solid var(--line-2); background:var(--card); padding:9px 16px; border-radius:100px; flex:0 0 auto; transition:border-color .2s, color .2s; }
  .shead-more:hover{ border-color:var(--gold); color:var(--gold-deep); }

  /* ── 이원 경로 라우터 (부자 vs 예비창업자) ── */
  .router{ position:relative; margin-top:-30px; z-index:5; }
  .router-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .rcard{ position:relative; background:var(--card); border:1px solid var(--line); border-radius:20px; padding:30px 28px; box-shadow:var(--shadow-md); overflow:hidden; cursor:pointer; transition:transform .28s cubic-bezier(.2,.7,.3,1), box-shadow .28s, border-color .28s; }
  .rcard::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(var(--gold-lt),var(--gold-deep)); transform:scaleY(0); transform-origin:top; transition:transform .3s; }
  .rcard:hover{ transform:translateY(-5px); box-shadow:var(--shadow-lg); border-color:var(--line-2); }
  .rcard:hover::before{ transform:scaleY(1); }
  .rcard .rtag{ display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:800; letter-spacing:.1em; text-transform:uppercase; color:var(--gold-deep); margin-bottom:14px; }
  .rcard .rtag .ico{ font-size:14px; }
  .rcard h3{ font-family:var(--serif); font-size:22px; font-weight:800; color:var(--ink); margin:0 0 8px; letter-spacing:-.01em; line-height:1.4; }
  .rcard .rdesc{ font-size:13.5px; color:var(--slate); line-height:1.78; margin:0 0 18px; }
  .rcard .rlist{ list-style:none; margin:0 0 20px; padding:0; }
  .rcard .rlist li{ position:relative; font-size:13px; color:var(--ink-soft); padding:6px 0 6px 20px; }
  .rcard .rlist li::before{ content:'✓'; position:absolute; left:0; color:var(--verified); font-weight:800; font-size:12px; }
  .rcard .rgo{ display:inline-flex; align-items:center; gap:7px; font-size:13.5px; font-weight:800; color:var(--navy); transition:gap .2s, color .2s; }
  .rcard:hover .rgo{ gap:12px; color:var(--gold-deep); }

  /* ── 검증 프로세스 (교육) ── */
  .verify-band{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
  .vstep{ position:relative; background:var(--card); border:1px solid var(--line); border-radius:18px; padding:26px 22px; box-shadow:var(--shadow-sm); transition:transform .25s, box-shadow .25s; }
  .vstep:hover{ transform:translateY(-3px); box-shadow:var(--shadow-md); }
  .vstep .vico{ width:52px; height:52px; border-radius:14px; background:linear-gradient(140deg,var(--verified-lt),#D5EBE0); border:1px solid #BFE0D2; display:flex; align-items:center; justify-content:center; font-size:24px; margin-bottom:16px; }
  .vstep .vnum{ position:absolute; top:22px; right:22px; font-family:var(--serif); font-size:34px; font-weight:800; color:var(--paper-2); line-height:1; }
  .vstep h4{ font-size:16px; font-weight:800; color:var(--ink); margin:0 0 8px; letter-spacing:-.01em; }
  .vstep p{ font-size:13px; color:var(--slate); margin:0; line-height:1.78; }
  .vstep p b{ color:var(--navy); font-weight:700; }
  .verify-foot{ margin-top:22px; padding:18px 22px; background:var(--ink); border-radius:16px; display:flex; align-items:center; gap:14px; flex-wrap:wrap; justify-content:space-between; }
  .verify-foot .vt{ font-family:var(--serif); font-size:16px; font-weight:700; color:#fff; }
  .verify-foot .vt .em{ color:var(--gold-lt); }
  .verify-foot .vb{ font-size:12px; color:#AFBBCF; }

  /* ── 거래 실적 (밀도) ── */
  .tr-filter{ display:flex; gap:8px; flex-wrap:wrap; margin-bottom:22px; }
  .tr-btn{ font-size:12.5px; font-weight:700; color:var(--slate); background:var(--card); border:1px solid var(--line-2); border-radius:100px; padding:9px 16px; cursor:pointer; transition:all .18s; }
  .tr-btn:hover{ border-color:var(--gold); color:var(--gold-deep); }
  .tr-btn.on{ background:var(--navy); color:#fff; border-color:var(--navy); }
  .tr-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
  .tr-item{ display:flex; align-items:center; gap:12px; background:var(--card); border:1px solid var(--line); border-radius:12px; padding:14px 16px; transition:border-color .18s, transform .18s, box-shadow .18s; }
  .tr-item:hover{ border-color:var(--line-2); transform:translateX(3px); box-shadow:var(--shadow-sm); }
  .tr-cat{ flex:0 0 auto; font-size:10px; font-weight:800; padding:4px 8px; border-radius:6px; letter-spacing:.02em; }
  .tr-cat.c1{ color:var(--verified); background:var(--verified-lt); }
  .tr-cat.c2{ color:var(--gold-deep); background:#F6EFDD; }
  .tr-cat.c3{ color:var(--navy); background:#EAF0F9; }
  .tr-cat.c4{ color:#7A4AC0; background:#F0EAF9; }
  .tr-body{ min-width:0; flex:1; }
  .tr-ti{ font-size:13px; font-weight:700; color:var(--ink); letter-spacing:-.01em; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .tr-meta{ font-size:11px; color:var(--mute); margin-top:2px; }
  .tr-yr{ flex:0 0 auto; font-size:11.5px; font-weight:800; color:var(--slate); font-variant-numeric:tabular-nums; }
  .tr-foot{ margin-top:22px; text-align:center; }
  .tr-more{ display:inline-flex; align-items:center; gap:8px; font-size:13.5px; font-weight:800; color:var(--navy); border:1.5px solid var(--navy); background:var(--card); padding:13px 28px; border-radius:100px; transition:all .2s; }
  .tr-more:hover{ background:var(--navy); color:#fff; transform:translateY(-2px); }
  .tr-more .n{ color:var(--gold-deep); }
  .tr-more:hover .n{ color:var(--gold-lt); }

  /* ── 데이터 테이블 (권역별) ── */
  .dtable-wrap{ background:var(--card); border:1px solid var(--line); border-radius:18px; overflow:hidden; box-shadow:var(--shadow-sm); }
  .dtable{ width:100%; border-collapse:collapse; font-variant-numeric:tabular-nums; }
  .dtable thead th{ background:var(--ink); color:#fff; font-size:12px; font-weight:700; padding:15px 16px; text-align:left; letter-spacing:.01em; }
  .dtable thead th:not(:first-child){ text-align:center; }
  .dtable tbody td{ padding:15px 16px; font-size:13.5px; border-bottom:1px solid var(--line); color:var(--ink-soft); }
  .dtable tbody td:not(:first-child){ text-align:center; }
  .dtable tbody tr:last-child td{ border-bottom:0; }
  .dtable tbody tr:hover{ background:var(--paper-2); }
  .dtable .rg{ font-weight:800; color:var(--navy); }
  .dtable .big{ font-family:var(--serif); font-size:17px; font-weight:800; color:var(--gold-deep); }
  .dtable .br{ font-size:12px; color:var(--slate); }
  .dtable tfoot td{ background:var(--paper-2); font-weight:800; color:var(--navy); padding:15px 16px; font-size:13.5px; border-top:2px solid var(--gold); }
  .dtable tfoot td:not(:first-child){ text-align:center; }
  .dtable tfoot .big{ font-size:18px; }

  @media (max-width:860px){
    .tr-grid{ grid-template-columns:1fr 1fr; }
  }
  @media (max-width:600px){
    .tr-grid{ grid-template-columns:1fr; }
    .dtable thead th{ padding:12px 10px; font-size:11px; }
    .dtable tbody td{ padding:12px 10px; font-size:12.5px; }
    .dtable .big{ font-size:15px; }
    .dtable .br{ display:none; }
  }

  /* ── 신뢰 실적 밴드 ── */
  .proof{ display:grid; grid-template-columns:repeat(4,1fr); gap:0; background:var(--card); border:1px solid var(--line); border-radius:20px; overflow:hidden; box-shadow:var(--shadow-sm); }
  .proof-cell{ padding:30px 22px; text-align:center; border-right:1px solid var(--line); }
  .proof-cell:last-child{ border-right:0; }
  .proof-cell .pf{ font-family:var(--serif); font-size:34px; font-weight:800; color:var(--navy); line-height:1; font-variant-numeric:tabular-nums; }
  .proof-cell .pf .u{ font-size:16px; color:var(--gold-deep); margin-left:2px; }
  .proof-cell .pl{ font-size:12px; color:var(--slate); margin-top:10px; font-weight:600; }

  @media (max-width:860px){
    .router-grid{ grid-template-columns:1fr; }
    .verify-band{ grid-template-columns:1fr; }
    .proof{ grid-template-columns:1fr 1fr; }
    .proof-cell:nth-child(2){ border-right:0; }
    .proof-cell:nth-child(1),.proof-cell:nth-child(2){ border-bottom:1px solid var(--line); }
  }

  /* ── 매장 카드 ── */
  .cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
  .lcard{ background:var(--card); border:1px solid var(--line); border-radius:16px; overflow:hidden; box-shadow:var(--shadow-sm); transition:transform .25s cubic-bezier(.2,.7,.3,1), box-shadow .25s, border-color .25s; }
  .lcard:hover{ transform:translateY(-4px); box-shadow:var(--shadow-lg); border-color:var(--line-2); }
  .lcard-top{ position:relative; height:132px; display:flex; align-items:flex-end; justify-content:space-between; padding:12px; background:linear-gradient(150deg,#2C426E,#16294A); }
  .lcard-top.dev1{ background:linear-gradient(150deg,#5B3A22,#2A1810); }
  .lcard-top.dev2{ background:linear-gradient(150deg,#234A34,#0F2A1C); }
  .lcard-top.dev3{ background:linear-gradient(150deg,#26406E,#152449); }
  .lcard-top::before{ content:''; position:absolute; inset:0; background:radial-gradient(70% 80% at 78% 18%, rgba(201,162,75,.2), transparent 60%); }
  .chip-v{ position:relative; display:inline-flex; align-items:center; gap:4px; background:rgba(231,242,237,.95); color:var(--verified); font-size:10.5px; font-weight:800; padding:4px 10px; border-radius:100px; }
  .chip-new{ position:relative; background:var(--gold); color:var(--ink); font-size:10.5px; font-weight:800; padding:4px 10px; border-radius:100px; }
  .chip-loc{ position:relative; background:rgba(11,27,51,.62); color:#fff; font-size:10.5px; font-weight:700; padding:4px 10px; border-radius:100px; backdrop-filter:blur(4px); }
  .lcard-body{ padding:15px 15px 8px; }
  .lcard-ti{ font-size:14.5px; font-weight:800; color:var(--ink); letter-spacing:-.01em; }
  .lcard-brand{ font-size:11.5px; color:var(--slate); margin-top:3px; }
  .lgrid{ display:grid; grid-template-columns:1fr 1fr; gap:1px; margin:14px 0 0; background:var(--line); border-top:1px solid var(--line); }
  .lg-cell{ background:var(--card); padding:11px 8px; text-align:center; }
  .lg-cell .l{ font-size:10.5px; color:var(--mute); font-weight:600; }
  .lg-cell .v{ font-size:13.5px; font-weight:800; color:var(--ink); margin-top:3px; font-variant-numeric:tabular-nums; }
  .lg-cell .v.gold{ color:var(--gold-deep); }
  .note{ font-size:11.5px; color:var(--mute); margin-top:14px; line-height:1.7; }

  /* ── 프로세스 (typed timeline — 순서가 정보) ── */
  .flow{ position:relative; }
  .fstep{ position:relative; display:grid; grid-template-columns:52px 1fr; gap:18px; padding:0 0 26px; }
  .fstep:last-child{ padding-bottom:0; }
  .fstep-num{ position:relative; z-index:2; }
  .fstep-num .dot{ width:44px; height:44px; border-radius:50%; background:var(--card); border:1.5px solid var(--gold); color:var(--gold-deep); display:flex; align-items:center; justify-content:center; font-family:var(--serif); font-size:16px; font-weight:800; box-shadow:var(--shadow-sm); }
  .fstep:not(:last-child) .fstep-num::after{ content:''; position:absolute; left:50%; top:44px; bottom:-26px; width:1.5px; background:linear-gradient(var(--gold),var(--line)); transform:translateX(-50%); }
  .fstep-tx{ padding-top:8px; }
  .fstep-tx h4{ font-size:15px; font-weight:800; color:var(--ink); margin:0 0 5px; letter-spacing:-.01em; }
  .fstep-tx p{ font-size:13.5px; color:var(--slate); margin:0; line-height:1.75; }
  .fstep-tx .accent{ color:var(--navy); font-weight:700; }

  

  /* ── 인사이트 ── */
  .insight-grid{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .icard{ background:var(--card); border:1px solid var(--line); border-radius:16px; padding:24px 22px; box-shadow:var(--shadow-sm); transition:box-shadow .2s, transform .2s; }
  .icard:hover{ box-shadow:var(--shadow-md); transform:translateY(-2px); }
  .icard h3{ display:flex; align-items:center; gap:8px; font-size:15.5px; font-weight:800; color:var(--ink); margin:0 0 3px; }
  .icard .desc{ font-size:12px; color:var(--mute); margin-bottom:14px; }
  .icard ul{ list-style:none; margin:0; padding:0; }
  .icard li{ display:flex; justify-content:space-between; gap:12px; align-items:baseline; font-size:13.5px; color:var(--ink-soft); padding:10px 0; border-bottom:1px solid var(--line); transition:color .18s; }
  .icard li:last-child{ border-bottom:0; }
  .icard li:hover{ color:var(--gold-deep); cursor:pointer; }
  .icard li .d{ font-size:11px; color:var(--mute); flex:0 0 auto; font-variant-numeric:tabular-nums; }
  .icard .more{ display:inline-block; margin-top:14px; font-size:12.5px; font-weight:700; color:var(--navy); }

  /* ── 폼 ── */
  .form-shell{ background:var(--card); border:1px solid var(--line); border-radius:18px; padding:28px 24px; box-shadow:var(--shadow-md); max-width:560px; margin-left:auto; margin-right:auto; }
  .form-shell .fh{ font-family:var(--serif); font-size:19px; font-weight:800; color:var(--ink); margin:0 0 4px; }
  .form-shell .fd{ font-size:12.5px; color:var(--slate); margin:0 0 20px; }
  .field{ margin-bottom:14px; }
  .field label{ display:block; font-size:12.5px; font-weight:700; color:var(--ink-soft); margin-bottom:6px; }
  .field label .req{ color:var(--gold-deep); }
  .field input, .field select, .field textarea{ width:100%; border:1px solid var(--line-2); border-radius:11px; padding:13px 14px; font-size:14px; font-family:inherit; color:var(--ink); background:var(--paper); transition:border-color .18s, box-shadow .18s, background .18s; }
  .field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--gold); box-shadow:0 0 0 3px rgba(201,162,75,.16); background:#fff; }
  .consent{ display:flex; gap:11px; align-items:flex-start; margin:18px 0 16px; padding:15px; background:var(--verified-lt); border:1px solid #C6E2D5; border-radius:13px; font-size:12.5px; line-height:1.8; color:var(--ink-soft); }
  .consent input{ margin-top:3px; width:17px; height:17px; flex:0 0 auto; accent-color:var(--verified); }
  .consent b{ color:var(--ink); font-weight:800; }
  .btn-submit{ width:100%; background:var(--navy); color:#fff; font-weight:800; font-size:15px; padding:15px; border:0; border-radius:12px; cursor:pointer; transition:background .2s, transform .2s; }
  .btn-submit:hover:not(:disabled){ background:var(--ink); transform:translateY(-1px); }
  .btn-submit:disabled{ background:#C6CDD9; cursor:not-allowed; }

  /* ── 페이지 히어로 (서브) ── */
  .phero{ position:relative; background:radial-gradient(120% 100% at 20% 0%, #1F3A68, #0B1B33); color:#fff; padding:56px 22px 52px; overflow:hidden; }
  .phero::after{ content:''; position:absolute; inset:0; background:radial-gradient(46% 60% at 84% 16%, rgba(201,162,75,.14), transparent 60%); pointer-events:none; }
  .phero-in{ position:relative; max-width:1120px; margin:0 auto; }
  .phero .eyebrow{ display:inline-flex; align-items:center; gap:9px; font-size:11px; font-weight:700; letter-spacing:.14em; color:var(--gold-lt); text-transform:uppercase; margin-bottom:18px; }
  .phero .eyebrow .dash{ width:20px; height:1px; background:var(--gold); }
  .phero h1, .phero h2{ font-family:var(--serif); font-size:33px; font-weight:800; line-height:1.35; letter-spacing:-.01em; margin:0 0 14px; }
  .phero h1 .em, .phero h2 .em{ color:var(--gold-lt); }
  .phero p{ font-size:14px; color:#B9C6DC; max-width:560px; line-height:1.8; margin:0 0 26px; }

  /* ── 회사소개 프로필 ── */
  .prof{ position:relative; background:radial-gradient(130% 90% at 50% 0%, #1F3A68, #16294A 50%, #0B1B33); color:#fff; overflow:hidden; }
  .prof::after{ content:''; position:absolute; inset:0; background:radial-gradient(50% 42% at 50% 6%, rgba(201,162,75,.14), transparent 65%); pointer-events:none; }
  .prof-in{ position:relative; max-width:900px; margin:0 auto; padding:52px 22px 46px; text-align:center; }
  .prof-mark{ font-size:22px; font-weight:900; letter-spacing:-.03em; margin-bottom:26px; }
  .prof-logo-img{ height:44px; width:auto; display:inline-block; filter:brightness(0) invert(1); opacity:.95; }
  .prof-mark b{ color:var(--gold-lt); }
  .prof-quote{ max-width:620px; margin:0 auto 34px; }
  .prof-quote .q{ font-family:var(--serif); font-size:26px; font-weight:800; line-height:1.5; letter-spacing:-.01em; }
  .prof-quote .q .em{ color:var(--gold-lt); }
  .prof-quote .sub{ font-size:13.5px; color:#B9C6DC; margin-top:16px; line-height:1.85; max-width:520px; margin-left:auto; margin-right:auto; }
  .prof-fig{ position:relative; display:flex; flex-direction:column; align-items:center; }
  /* 등 뒤 아우라 효과 */
  .prof-fig::before{ content:''; position:absolute; top:-8%; left:50%; transform:translateX(-50%); width:340px; height:340px; background:radial-gradient(circle, rgba(228,198,126,.42) 0%, rgba(201,162,75,.28) 28%, rgba(201,162,75,.12) 52%, transparent 72%); border-radius:50%; z-index:0; filter:blur(18px); animation:auraPulse 4.5s ease-in-out infinite; pointer-events:none; }
  .prof-fig::after{ content:''; position:absolute; top:2%; left:50%; transform:translateX(-50%); width:220px; height:280px; background:radial-gradient(ellipse at center, rgba(255,240,200,.35) 0%, rgba(228,198,126,.18) 40%, transparent 70%); border-radius:50%; z-index:0; filter:blur(28px); animation:auraPulse2 5.5s ease-in-out infinite; pointer-events:none; }
  @keyframes auraPulse{ 0%,100%{ opacity:.75; transform:translateX(-50%) scale(1); } 50%{ opacity:1; transform:translateX(-50%) scale(1.08); } }
  @keyframes auraPulse2{ 0%,100%{ opacity:.6; transform:translateX(-50%) scale(1.05); } 50%{ opacity:.9; transform:translateX(-50%) scale(.96); } }
  .prof-photo{ position:relative; z-index:1; width:auto; max-width:230px; max-height:300px; height:auto; display:block; margin:0 auto; filter:drop-shadow(0 18px 36px rgba(0,0,0,.4)); object-fit:contain; }
  .prof-name{ margin-top:16px; }
  .prof-name .role{ display:block; font-size:12px; color:#A9BEDD; font-weight:600; letter-spacing:.02em; }
  .prof-name .nm{ display:block; font-family:var(--serif); font-size:25px; font-weight:800; color:#fff; margin-top:3px; letter-spacing:.01em; }
  .prof-creds{ display:flex; justify-content:center; flex-wrap:wrap; gap:12px; margin-top:30px; }
  .pcred{ background:rgba(255,255,255,.055); border:1px solid rgba(228,198,126,.22); border-radius:14px; padding:16px 22px; min-width:104px; }
  .pcred b{ display:block; font-family:var(--serif); font-size:22px; font-weight:800; color:#fff; font-variant-numeric:tabular-nums; }
  .pcred span{ font-size:11px; color:#9FB0C8; margin-top:4px; display:block; }

  /* 사업 영역 상세 */
  .biz{ display:flex; flex-direction:column; gap:20px; }
  .bcard{ position:relative; background:var(--card); border:1px solid var(--line); border-radius:18px; padding:28px 26px; box-shadow:var(--shadow-sm); overflow:hidden; transition:box-shadow .25s, transform .25s; }
  .bcard::before{ content:''; position:absolute; left:0; top:0; bottom:0; width:4px; background:linear-gradient(var(--gold-lt),var(--gold-deep)); }
  .bcard:hover{ box-shadow:var(--shadow-md); transform:translateY(-2px); }
  .bhead{ display:flex; align-items:baseline; gap:14px; margin-bottom:13px; }
  .bno{ font-family:var(--serif); font-size:15px; font-weight:800; color:var(--gold-deep); flex:0 0 auto; letter-spacing:.02em; }
  .bhead h3{ font-family:var(--serif); font-size:20px; font-weight:800; color:var(--ink); margin:0; letter-spacing:-.01em; }
  .blead{ font-size:14px; color:var(--ink-soft); line-height:1.8; margin:0 0 18px; }
  .blead b{ color:var(--gold-deep); font-weight:800; }
  .bdetail{ display:flex; flex-direction:column; gap:12px; padding-top:17px; border-top:1px solid var(--line); }
  .brow{ display:grid; grid-template-columns:64px 1fr; gap:14px; align-items:start; }
  .brow .k{ font-size:11px; font-weight:800; color:var(--navy); background:var(--paper-2); border:1px solid var(--line); border-radius:7px; padding:5px 0; text-align:center; letter-spacing:.02em; }
  .brow .v{ font-size:13.5px; color:var(--slate); line-height:1.78; }

  /* 운영/역할 리스트 */
  .plist{ display:flex; flex-direction:column; gap:0; }
  .prow{ display:grid; grid-template-columns:34px 1fr; gap:14px; padding:14px 0; border-bottom:1px solid var(--line); align-items:start; }
  .prow:last-child{ border-bottom:0; }
  .prow .m{ font-family:var(--serif); font-size:14px; font-weight:800; color:var(--gold-deep); text-align:center; padding-top:1px; }
  .prow .t{ font-size:13.5px; color:var(--ink-soft); line-height:1.75; }
  .prow .t b{ color:var(--navy); font-weight:800; }
  .infobox{ background:var(--card); border:1px solid var(--line); border-radius:16px; padding:24px; box-shadow:var(--shadow-sm); font-size:13.5px; line-height:2.05; color:var(--ink-soft); }
  .infobox b{ display:inline-block; min-width:80px; color:var(--navy); font-weight:800; }

  /* ── 푸터 ── */
  .site-foot{ background:var(--ink); color:#8A97AC; padding:40px 22px 34px; font-size:12.5px; line-height:1.9; }
  .sf-admin{ border-top:1px solid rgba(255,255,255,.08); margin-top:18px; padding-top:14px; text-align:center; }
  .sf-admin-link{ display:inline-flex; align-items:center; gap:5px; font-size:11.5px; font-weight:700; color:rgba(255,255,255,.4); text-decoration:none; letter-spacing:-.01em; transition:color .15s; }
  .sf-admin-link:hover{ color:rgba(255,255,255,.75); }
  .sf-grid{ display:grid; grid-template-columns:1fr 1.15fr; gap:44px; align-items:start; }
  .sf-info{ margin-top:2px; }
  .sf-right{ font-size:11.5px; line-height:1.6; color:#7C8AA0; border-left:1px solid rgba(255,255,255,.1); padding-left:44px; }
  .sf-right b{ display:inline; color:inherit; font-weight:inherit; margin:0; font-size:inherit; }
  .site-foot
  .fmark{ display:inline-block; background:#fff; border-radius:10px; padding:8px 12px; margin-bottom:14px; }
  .foot-logo{ height:92px; width:auto; display:block; }
  .site-foot .fmark b{ color:var(--gold-lt); }
  .legal-foot{ background:var(--navy); color:#9FB0C8; font-size:11.5px; line-height:1.65; padding:12px 18px; text-align:center; border-top:2px solid var(--gold); }
  .legal-foot b{ color:#E4C67E; font-weight:700; }

  /* ── 스크롤 리빌 ── */
  .reveal{ opacity:0; transform:translateY(20px); transition:opacity .7s cubic-bezier(.2,.7,.3,1), transform .7s cubic-bezier(.2,.7,.3,1); }
  .reveal.in{ opacity:1; transform:none; }

  @media (max-width:860px){
    .cards{ grid-template-columns:repeat(2,1fr); gap:12px; }
    .hero h1{ font-size:33px; }
    .hero-seal{ --sz:104px; top:20px; right:16px; opacity:.5; }
  }
  @media (max-width:600px){
    .wrap{ padding:0 16px; }
    .sf-grid{ grid-template-columns:1fr; gap:24px; }
    .sf-right{ border-left:0; padding-left:0; border-top:1px solid rgba(255,255,255,.1); padding-top:20px; }
    .hd-kko .lb{ display:none; }
    .hd-kko .lb-sm{ display:none; }
    /* 헤더 CTA: 전화상담·카카오톡상담을 원형 아이콘 버튼으로 항상 노출 */
    .hd-cta{ gap:5px; margin-right:0; flex-shrink:0; }
    .hd-call, .hd-kko{ width:34px; height:34px; padding:0; gap:0; border-radius:50%; justify-content:center; font-size:0; flex-shrink:0; }
    .hd-call .ico, .hd-kko .ico{ font-size:15px; line-height:1; }
    .hd-call .lb, .hd-call .n, .hd-kko .lb, .hd-kko .lb-sm{ display:none !important; }
    .brand{ gap:5px; }
    .brand-logo{ height:38px; }
    .brand .tag{ font-size:8px; line-height:1.25; }
    .hd-cta{ gap:4px; }
    .hd-call, .hd-kko{ width:32px; height:32px; }
    .hd-menu{ width:32px; height:32px; }
    /* [2026-08] 좁은 화면 가로 밀림 수정 ─────────────────────────
       원인: .brand 가 flex:0 0 auto + white-space:nowrap 이라 절대 줄지
       않았고, 태그 안 "대구상가맨 창업연구소" 가 인라인 font-size:15px 로
       박혀 있어 미디어쿼리가 먹지 않았다. 브랜드 쪽만 줄이고 상담 버튼은
       그대로 둔다(전화·카톡이 가장 중요한 버튼이므로 크기 유지). */
    .hd-in{ min-width:0; }
    .brand{ flex:1 1 auto; min-width:0; }
    .brand .tag{ white-space:normal; min-width:0; overflow:hidden; }
    .brand .tag .tbr{ display:inline; }
    .brand .tag .tag-corp{ font-size:11.5px !important; margin-top:2px !important; letter-spacing:-.02em !important; white-space:nowrap; }
    .hd-cta{ flex:0 0 auto; }
    /* 푸터 로고 2배 확대 + 중앙정렬 */
    .sf-left{ text-align:center; }
    .foot-logo{ height:92px; }
    .sf-info{ text-align:left; }
    .hero-in{ padding:44px 16px 40px; }
    .hero h1{ font-size:27px; line-height:1.36; }
    .hero-sub{ font-size:14px; }
    .hero-seal{ display:none; }
    .hero-ledger{ margin-top:32px; }
    .led .fig{ font-size:24px; }
    .led{ padding-right:12px; }
    .led + .led{ padding-left:14px; }
    .sect{ padding:40px 0; }
    .shead h2{ font-size:22px; }
    .shead-more{ display:none; }
    .cards{ grid-template-columns:1fr; gap:14px; }
    #mktGrid{ grid-template-columns:1fr; }   /* 모바일: 매물카드 1열 */
    .lcard-top{ height:120px; }
    .insight-grid{ grid-template-columns:1fr; }
    .phero{ padding:42px 16px 40px; }
    .phero h1, .phero h2{ font-size:25px; }
    .prof-in{ padding:42px 16px 38px; }
    .prof-quote .q{ font-size:21px; }
    .prof-name .nm{ font-size:21px; }
    .prof-photo{ max-width:200px; max-height:260px; }
    .prof-creds{ gap:8px; }
    .pcred{ min-width:88px; padding:13px 16px; }
    .pcred b{ font-size:18px; }
    .bcard{ padding:22px 18px; }
    .bhead h3{ font-size:18px; }
    .brow{ grid-template-columns:1fr; gap:5px; }
    .brow .k{ justify-self:start; padding:4px 14px; }
    .form-shell{ padding:22px 18px; }
  }

  /* [2026-08] 초협소 화면(구형 갤럭시 360px, 아이폰SE 320px) */
  @media (max-width:400px){
    .hd-in{ padding:8px 8px 8px 5px; gap:4px; }
    .brand{ gap:4px; }
    .brand-logo{ height:34px; }
    .brand .tag{ font-size:7.5px; line-height:1.2; padding-left:1px; }
    .brand .tag .tag-corp{ font-size:10px !important; margin-top:1px !important; }
    .hd-cta{ gap:3px; }
    .hd-call, .hd-kko{ width:30px; height:30px; }
    .hd-call .ico, .hd-kko .ico{ font-size:14px; }
    .hd-menu{ width:30px; height:30px; }
  }
  @media (max-width:340px){
    .brand-logo{ height:30px; }
    .brand .tag{ font-size:7px; }
    .brand .tag .tag-corp{ font-size:9px !important; }
    .hd-call, .hd-kko, .hd-menu{ width:28px; height:28px; }
  }
  @media (prefers-reduced-motion:reduce){
    *{ animation:none !important; transition:none !important; scroll-behavior:auto !important; }
    .reveal{ opacity:1; transform:none; }
  }

  /* ── 점주모집 리스트 ── */
  .recruit-list{ display:flex; flex-direction:column; gap:10px; margin-bottom:14px; }
  .rc{ display:flex; align-items:center; justify-content:space-between; gap:14px; background:#fff; border:1px solid var(--line); border-left:3px solid var(--gold); border-radius:12px; padding:14px 18px; cursor:pointer; box-shadow:var(--shadow-sm); transition:transform .18s cubic-bezier(.2,.7,.3,1), box-shadow .18s, border-color .18s; }
  .rc:hover{ transform:translateY(-2px); box-shadow:0 10px 26px rgba(11,27,51,.1); border-left-color:var(--gold-deep); }
  .rc-l{ display:flex; align-items:center; gap:13px; min-width:0; }
  .rc-badge{ flex:0 0 auto; background:linear-gradient(135deg,#1B7A5A,#146147); color:#fff; font-size:10.5px; font-weight:800; padding:5px 11px; border-radius:100px; letter-spacing:.02em; }
  .rc-tx{ min-width:0; }
  .rc-brand{ font-size:16px; font-weight:800; color:var(--ink); letter-spacing:-.01em; }
  .rc-meta{ font-size:12.5px; color:var(--slate); margin-top:2px; }
  .rc-r{ display:flex; align-items:center; gap:16px; flex:0 0 auto; }
  .rc-zone{ font-size:12.5px; color:var(--navy); font-weight:600; text-align:right; }
  .rc-arrow{ font-size:12.5px; font-weight:700; color:var(--gold-deep); white-space:nowrap; }

  /* ── 점주모집 상세 모달 ── */
  .rm-ov{ position:fixed; inset:0; z-index:100; background:rgba(11,27,51,.55); backdrop-filter:blur(3px); display:none; opacity:0; transition:opacity .2s;  pointer-events:none;}
  .rm-ov.on{ display:block; opacity:1;  pointer-events:auto;}
  .rm{ position:fixed; z-index:101; left:50%; top:50%; transform:translate(-50%,-48%); width:min(520px,94vw); max-height:92vh; overflow-y:auto; background:#fff; border-radius:20px; box-shadow:0 30px 80px rgba(11,27,51,.4); opacity:0; pointer-events:none; transition:opacity .22s, transform .22s; }
  .rm.on{ opacity:1; transform:translate(-50%,-50%); pointer-events:auto; }
  .rm-x{ position:absolute; top:14px; right:14px; z-index:2; width:34px; height:34px; border:0; border-radius:50%; background:rgba(11,27,51,.06); color:var(--ink); font-size:15px; cursor:pointer; transition:background .2s; }
  .rm-x:hover{ background:rgba(11,27,51,.12); }
  .rm-head{ background:linear-gradient(160deg,#16294A,#0B1B33); color:#fff; padding:26px 26px 22px; border-radius:20px 20px 0 0; }
  .rm-badge{ display:inline-block; background:rgba(27,122,90,.9); color:#fff; font-size:11px; font-weight:800; padding:5px 12px; border-radius:100px; letter-spacing:.02em; margin-bottom:12px; }
  .rm-brand{ font-size:24px; font-weight:800; margin:0 0 6px; letter-spacing:-.02em; }
  .rm-meta{ font-size:13.5px; color:#AEBBD2; }
  .rm-body{ padding:22px 26px 26px; }
  .rm-sec{ margin-bottom:18px; }
  .rm-lb{ font-size:11.5px; font-weight:800; color:var(--gold-deep); letter-spacing:.04em; margin-bottom:6px; text-transform:uppercase; }
  .rm-sec p{ font-size:13.5px; color:var(--charcoal); line-height:1.7; margin:0; }
  .rm-sec p b{ color:var(--navy); }
  .rm-cta{ display:flex; gap:10px; margin-top:22px; }
  .rm-call{ flex:1; display:inline-flex; align-items:center; justify-content:center; gap:7px; background:var(--navy); color:#fff; font-weight:800; font-size:13.5px; padding:13px; border-radius:11px; text-decoration:none; transition:background .2s; }
  .rm-call:hover{ background:var(--ink); }
  .rm-kko{ flex:1; display:inline-flex; align-items:center; justify-content:center; gap:7px; background:#FEE500; color:#3A2E00; font-weight:800; font-size:13.5px; padding:13px; border-radius:11px; text-decoration:none; transition:filter .2s; }
  .rm-kko:hover{ filter:brightness(.95); }
  @media (max-width:600px){
    .rc{ flex-direction:column; align-items:flex-start; gap:10px; }
    .rc-r{ width:100%; justify-content:space-between; }
    .rc-zone{ text-align:left; }
    .rm{ width:96vw; border-radius:16px; }
    .rm-cta{ flex-direction:column; }
  }



  /* 구 단위 모자이크 마스킹 (궁금증 유발) */
  .gu-mask{ filter:blur(5px); -webkit-filter:blur(5px); user-select:none; pointer-events:none; letter-spacing:1px; opacity:.85; }
  .gu-mask-wrap{ position:relative; display:inline-block; }
  .gu-mask-wrap::after{ content:'🔒'; font-size:.7em; position:absolute; right:-14px; top:50%; transform:translateY(-50%); filter:none; opacity:.55; }
