:root{--ink:#222326;--sub:#717171;--line:#ebebeb;--soft:#f7f7f7;--point:#f0567a;--green:#0e9f6e;--green-soft:#e7f7f1}
*{margin:0;padding:0;box-sizing:border-box}
body{font-family:"Pretendard Variable",Pretendard,-apple-system,sans-serif;color:var(--ink);background:#fff;line-height:1.6;-webkit-font-smoothing:antialiased}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
a{text-decoration:none;color:inherit}
header{position:sticky;top:0;background:#fff;border-bottom:1px solid var(--line);z-index:50}
.hd{display:flex;align-items:center;justify-content:space-between;height:58px}
.logo img{height:40px;display:block}
.hd-cta{font-size:12.5px;font-weight:700;padding:8px 15px;border-radius:999px;background:var(--ink);color:#fff}

.crumb{font-size:12.5px;color:var(--sub);padding:16px 0 8px}
.crumb a:hover{color:var(--point)}
.rh{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding:4px 0 14px;flex-wrap:wrap}
.rh h1{font-size:23px;font-weight:800;letter-spacing:-.6px}
.rh h1 em{font-style:normal;color:var(--point)}
.rh .sort{font-size:12.5px;color:var(--sub);font-weight:600}

/* 업종 탭 */
.cattabs{display:flex;gap:7px;margin-bottom:10px;flex-wrap:wrap}
.ctab{font-size:12.5px;font-weight:700;padding:8px 15px;border-radius:999px;border:1px solid var(--line);color:#3d434b;transition:.2s}
.ctab.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.ctab:hover:not(.on){border-color:var(--point);color:var(--point)}

/* 동 칩 */
.dongs{display:flex;gap:7px;flex-wrap:wrap;padding:2px 0 16px}
.dong{font-size:12px;font-weight:600;color:var(--sub);background:var(--soft);padding:6px 12px;border-radius:999px}
.dong b{color:#9a9da3;font-weight:700;margin-left:3px}
.dong:hover{color:var(--point)}

/* 샵 목록 */
.free{display:flex;flex-direction:column;border:1.6px solid #26282c;border-radius:16px;padding:4px 16px}
.frow{display:flex;align-items:center;gap:10px;padding:13px 6px;border-bottom:1px solid var(--soft);transition:.15s}
.frow:last-child{border-bottom:0}
.frow:hover{background:#fcfcfc}
.frow .fnm{font-size:14px;font-weight:600}
.frow .fok{font-size:10px;font-weight:800;color:var(--green);background:var(--green-soft);padding:2px 7px;border-radius:5px;flex-shrink:0}
.frow .fmt{font-size:12px;color:var(--sub);margin-left:auto;flex-shrink:0}

/* 구·시도 카드 */
.gcards{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:11px;padding:4px 0 10px}
.gcard{border:1px solid var(--line);border-radius:14px;padding:16px 18px;transition:.2s;background:#fff}
.gcard:hover{border-color:var(--point);box-shadow:0 6px 18px rgba(240,86,122,.10);transform:translateY(-2px)}
.gcard b{font-size:14.5px;font-weight:800;display:block;letter-spacing:-.3px}
.gcard span{font-size:12px;color:var(--sub)}

/* 샵 상세 */
.bare{border:1px solid var(--line);border-radius:18px;padding:24px;margin-top:6px}
.bare h1{font-size:22px;font-weight:800;letter-spacing:-.5px}
.badges{display:flex;gap:6px;margin-top:9px;flex-wrap:wrap}
.bdg{font-size:11px;font-weight:800;padding:4px 10px;border-radius:7px}
.bdg.ok{background:var(--green-soft);color:var(--green)}
.bdg.cat{background:#fef1f4;color:var(--point)}
.bdg.open{background:#eef4ff;color:#3b6fe0}
.bare .meta{font-size:13px;color:var(--sub);margin-top:10px;line-height:1.8}
.ownercta{margin-top:18px;background:linear-gradient(115deg,#222326,#33363c 60%,#3d4148);border-radius:16px;padding:22px 24px;display:flex;align-items:center;gap:18px;flex-wrap:wrap}
.ownercta .tx{flex:1;min-width:220px}
.ownercta b{color:#fff;font-size:15.5px;font-weight:800;display:block;letter-spacing:-.3px}
.ownercta b em{font-style:normal;color:#ffb3c4}
.ownercta p{color:#b8bcc4;font-size:12.5px;margin-top:6px;line-height:1.7}
.ownercta a{background:var(--point);color:#fff;font-size:13.5px;font-weight:700;padding:12px 22px;border-radius:999px;flex-shrink:0}
.nearby{margin-top:26px}
.nearby h2{font-size:15px;font-weight:800;margin-bottom:10px}
.more{display:block;text-align:center;font-size:13.5px;font-weight:700;color:#3d434b;border:1px solid var(--line);border-radius:12px;padding:13px;transition:.2s}
.more:hover{background:var(--soft);border-color:#c9c9c9}

.seo{background:var(--soft);border-radius:16px;padding:20px 22px;margin:24px 0 10px}
.seo h2{font-size:15px;font-weight:800;margin-bottom:8px}
.seo p{font-size:13px;color:#5b6068;line-height:1.85}
.note{font-size:11.5px;color:#b0b0b0;margin:10px 0 0}
footer{background:#fff;border-top:2px solid #f6cdd7;padding:14px 0 16px;margin-top:36px;text-align:center}
footer p{font-size:11.5px;color:#8a8f98;line-height:1.8}
@media(max-width:640px){.rh h1{font-size:19px}.gcards{grid-template-columns:1fr 1fr}}

/* 가격·정렬·시세밴드 */
.sortbar{display:flex;gap:7px;margin:2px 0 10px}
.sbtn{font-size:12px;font-weight:700;color:#5b6068;background:var(--soft);border:1px solid var(--line);padding:6px 14px;border-radius:999px;cursor:pointer;font-family:inherit;transition:.2s}
.sbtn.on{background:var(--ink);color:#fff;border-color:var(--ink)}
.sbtn:hover:not(.on){border-color:#c9c9c9}
.frow .fprice{font-size:12px;font-weight:700;color:var(--point);flex-shrink:0;margin-left:8px}
.frow .fprice.none{color:#c0c0c0;font-weight:500}
.bandbox{background:#fff;border:1.6px solid #26282c;border-radius:14px;padding:13px 17px;margin-bottom:12px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bandbox b{font-size:13px;font-weight:800}
.bandbox .band{font-size:14px;font-weight:800;color:var(--point)}
.bandbox .bandnote{font-size:11px;color:#a6adb6;width:100%;line-height:1.6}
.pricenote{background:#fef8f9;border:1px solid #fbe3ea;border-radius:12px;padding:12px 16px;margin-top:12px;font-size:12.5px;color:#5b6068;line-height:1.75;text-align:center}
.pricenote b{color:var(--ink);font-weight:700}
.pricebox{margin-top:18px;border-top:1px solid var(--line);padding-top:16px}
.pricebox h2{font-size:15px;font-weight:800;margin-bottom:8px}
.pricebox .nopr{font-size:13px;color:var(--sub)}

/* 베스트 5 */
.best5{background:#fbf7f7;border-radius:20px;padding:22px 22px 20px;margin:20px 0 28px}
.best5 .bh h2{font-size:16px;font-weight:800;letter-spacing:-.3px}
.best5 .bh small{font-size:11.5px;font-weight:600;color:var(--sub);margin-left:6px}
.brow{display:flex;gap:12px;padding-top:10px}
.brow::-webkit-scrollbar{display:none}
.bcard{scroll-snap-align:start}
.bh{display:flex;align-items:center;justify-content:space-between}
.bnav{display:flex;gap:8px}
.barr{width:32px;height:32px;border-radius:50%;border:1px solid #dfdfdf;background:#fff;cursor:pointer;font-size:17px;line-height:1;color:#222326;box-shadow:0 2px 8px rgba(0,0,0,.07);transition:.2s;display:flex;align-items:center;justify-content:center}
.barr:hover{box-shadow:0 4px 14px rgba(0,0,0,.16);transform:scale(1.04)}
.bcard{flex:1 1 0;width:auto;min-width:0;overflow:hidden;position:relative;text-decoration:none;color:var(--ink)}
.bph{aspect-ratio:1/0.85;border-radius:12px;background:linear-gradient(135deg,#fdf1f3,#f7e6ea);display:flex;align-items:center;justify-content:center}
.bph img{width:38%;opacity:.4}
.bmedal{position:absolute;top:8px;left:8px;width:24px;height:24px;border-radius:50%;background:#9aa1ab;color:#fff;font-size:12px;font-weight:800;display:flex;align-items:center;justify-content:center;z-index:2;box-shadow:0 2px 6px rgba(0,0,0,.15)}
.bmedal.m1{background:linear-gradient(135deg,#f5c552,#e09c1f)}
.bmedal.m2{background:linear-gradient(135deg,#d9dde3,#a9b1bc);color:#5b6068}
.bmedal.m3{background:linear-gradient(135deg,#e2a06b,#bf7a42)}
.bnm{font-size:13.5px;font-weight:700;margin-top:7px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bmt{font-size:11.5px;color:var(--sub);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.btag{font-size:11px;font-weight:700;color:var(--point);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.clearDong{display:inline-block;margin:0 0 10px;font-size:12.5px;font-weight:700;color:var(--point);text-decoration:none;border:1px solid #f6cdd7;border-radius:999px;padding:5px 12px}

/* 샵 상세 (프리뷰 디자인) */
.gallery{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:8px;border-radius:18px;overflow:hidden;aspect-ratio:16/6.5;margin-top:6px}
.gph{background:linear-gradient(135deg,#fdf1f3,#f7e6ea);display:flex;align-items:center;justify-content:center;position:relative}
.gph:nth-child(2){background:linear-gradient(135deg,#f7ecf0,#f2e0e7)}
.gph:nth-child(3){background:linear-gradient(135deg,#fbf3ee,#f5e6dd)}
.gph:nth-child(4){background:linear-gradient(135deg,#f4eef7,#eae0f2)}
.gph:nth-child(5){background:linear-gradient(135deg,#eef4f2,#dfece7)}
.gph img{width:22%;opacity:.35}
.gph.main img{width:13%}
.gph.main{grid-row:span 2}
.gph .ovl{position:absolute;left:0;right:0;bottom:0;padding:10px 14px;font-size:12.5px;font-weight:700;color:#b98a95}
.shophead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 0 6px}
.shophead h1{font-size:24px;font-weight:800;letter-spacing:-.6px}
.cols{display:grid;grid-template-columns:1.6fr 1fr;gap:26px;padding:14px 0 8px}
.sec{margin-bottom:24px}
.sec h2{font-size:16px;font-weight:800;margin-bottom:10px;letter-spacing:-.3px}
.sec h2 small{font-size:11px;color:#9a9da3;font-weight:600;margin-left:4px}
.intro{font-size:14px;color:#3d434b;line-height:1.85;background:var(--soft);border-radius:14px;padding:16px 18px}
.pricetable{border:1px solid var(--line);border-radius:14px;overflow:hidden}
.pricetable .pr{display:flex;justify-content:space-between;align-items:center;padding:13px 16px;font-size:13.5px;color:#8a8f98}
.pnote{font-size:11.5px;color:#a6adb6;margin-top:8px;line-height:1.7}
.infocard{border:1.6px solid #26282c;border-radius:16px;padding:18px;position:sticky;top:78px}
.infocard .ir{display:flex;gap:10px;font-size:13px;padding:7px 0;align-items:flex-start}
.infocard .ir b{font-weight:700}
.mapbtn{display:block;text-align:center;border:1.4px solid #26282c;color:var(--ink);font-size:13.5px;font-weight:700;border-radius:12px;padding:12px;margin-top:12px}
.telbtn{display:block;text-align:center;background:var(--ink);color:#fff;font-size:14px;font-weight:700;border-radius:12px;padding:13px;margin-top:10px}
@media(max-width:760px){.cols{grid-template-columns:1fr}.infocard{position:static}.gallery{aspect-ratio:16/10}.shophead{flex-direction:column}}

/* 모바일 보정 (안쪽 페이지) */
@media(max-width:760px){
.cattabs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding-bottom:4px}
.cattabs::-webkit-scrollbar{display:none}
.ctab{flex-shrink:0}
.dongs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none}
.dongs::-webkit-scrollbar{display:none}
.dong{flex-shrink:0}
.brow{overflow-x:auto;scrollbar-width:none}
.bcard{flex:0 0 132px;width:132px;min-width:132px;max-width:132px}
.shophead h1{font-size:20px}
.frow{padding:13px 12px}
}

/* 움직이는 로고 (전 페이지) */
.logo{display:flex;align-items:center;gap:0}
.logo .lgirl{width:46px;height:46px;flex-shrink:0;mix-blend-mode:multiply;opacity:.95;pointer-events:none;-webkit-mask-image:radial-gradient(closest-side,#000 52%,transparent 98%);mask-image:radial-gradient(closest-side,#000 52%,transparent 98%)}
.logo .ltxt{height:32px;display:block;margin-left:-10px;align-self:center;position:relative;top:-3px}

/* 문의 팝업 */
.inqlink{color:#8a8f98;font-size:11.5px;font-weight:700;border:1px solid #e2e2e5;border-radius:999px;padding:5px 14px;cursor:pointer}
footer .inqlink{color:#9a9da3}
.inqov{display:none;position:fixed;inset:0;background:rgba(20,22,26,.5);z-index:200;align-items:center;justify-content:center;padding:20px}
.inqbox{background:#fff;border-radius:20px;padding:22px 22px 24px;width:100%;max-width:420px;box-shadow:0 24px 60px rgba(0,0,0,.25)}
.inqh{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}
.inqh b{font-size:17px;font-weight:800}
.inqx{cursor:pointer;color:#a6adb6;font-size:15px;padding:4px}
.inqbox input,.inqbox textarea{width:100%;border:1.4px solid #e2e2e5;border-radius:12px;padding:11px 13px;font-family:inherit;font-size:16px;outline:0;margin-bottom:9px;background:#fff;color:#222326}
.inqbox input:focus,.inqbox textarea:focus{border-color:#f0567a}
.inqbox textarea{height:110px;resize:vertical}
.inqgo{width:100%;border:0;background:#f0567a;color:#fff;font-size:15px;font-weight:800;border-radius:13px;padding:13px;cursor:pointer;font-family:inherit}
.inqgo:disabled{opacity:.5}
#inqDone{text-align:center;padding:26px 0 14px}
#inqDone .big{font-size:36px}
#inqDone b{font-size:16px;font-weight:800;display:block;margin:8px 0 6px}
#inqDone p{font-size:13px;color:#71767e}
.fixreq{display:block;text-align:center;font-size:12px;color:#a6adb6;margin-top:12px;cursor:pointer;text-decoration:underline;text-underline-offset:3px}

.inqwho{display:flex;gap:16px;margin-bottom:10px;font-size:13.5px;font-weight:700}
.inqwho label{display:flex;align-items:center;gap:6px;cursor:pointer}
.inqwho input{accent-color:#f0567a;width:16px;height:16px}
.inqbox select{width:100%;border:1.4px solid #e2e2e5;border-radius:12px;padding:11px 13px;font-family:inherit;font-size:15px;outline:0;margin-bottom:9px;background:#fff;color:#222326}
.inqbox select:focus{border-color:#f0567a}

/* 리스트 업체 사진 칸 (업체 등록 시 실제 사진으로 교체) */
.fthumb{width:40px;height:40px;border-radius:11px;background:linear-gradient(135deg,#fdf1f3,#f7e6ea);display:flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden}
.fthumb img{width:46%;opacity:.4}
.fthumb img.real{width:100%;height:100%;object-fit:cover;opacity:1}

.adbdg{position:absolute;top:8px;right:8px;font-size:9px;font-weight:800;letter-spacing:.5px;background:rgba(34,35,38,.5);color:#fff;border-radius:6px;padding:2px 6px;z-index:2}

/* 헤더: 내 샵 무료 등록 숨김 · 로고 핑크 링 */
.hd-cta{display:none}
.logo{position:relative}
.logo .lgirl{-webkit-mask-image:none;mask-image:none;border-radius:50%;object-fit:cover;background:#fff}
.logo:before{content:"";position:absolute;left:-4px;top:50%;transform:translateY(-50%);width:54px;height:54px;border-radius:50%;
background:conic-gradient(from 120deg,#f0567a,#ff9ab5 90deg,#ffd6e0 160deg,#e9a0d8 230deg,#e0446a 300deg,transparent 300deg 360deg);
-webkit-mask:radial-gradient(closest-side,transparent 72%,#000 74%);mask:radial-gradient(closest-side,transparent 72%,#000 74%);
pointer-events:none}
.logo .ltxt{margin-left:-4px}

.logo:before{display:none}

body{background:#fff}
footer{background:transparent}

header{background:#fff;border-bottom:1px solid #f6dfe6}
