/* ============================================
   홀덤펍 (holdempub.net) — 핑크 애니메 테마
   ============================================ */
:root{
  --bg:#FFF2F7; --bg2:#FFE3EE; --card:#FFFFFF;
  --line:#FFD0E2; --line2:#FFB8D2;
  --pink:#FF5C9E; --pink-deep:#E8447F; --pink-soft:#FFEDF4;
  --ink:#47263B; --dim:#93677E; --mint:#37BDB0; --gold:#F5A623;
  --r-lg:22px; --r-md:16px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  font-family:'Gowun Dodum','Pretendard',-apple-system,'Apple SD Gothic Neo','Malgun Gothic',sans-serif;
  background:linear-gradient(180deg,var(--bg) 0%,#FFE9F1 45%,var(--bg) 100%);
  color:var(--ink); font-size:15.5px; line-height:1.75; letter-spacing:-.01em;
  overflow-x:hidden;
}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
h1,h2,h3,.logo,.flogo{font-family:'Jua','Gowun Dodum',sans-serif;font-weight:400;letter-spacing:0}
.shell{max-width:1140px;margin:0 auto;padding:0 22px}
.narrow{max-width:860px}

/* 떠다니는 무늬 배경 */
.fx{position:fixed;inset:0;pointer-events:none;z-index:0}
.fx i{position:absolute;top:-6vh;font-style:normal;font-size:22px;color:var(--pink);opacity:.13;animation:fall linear infinite}
.fx i:nth-child(1){left:6%;animation-duration:19s}
.fx i:nth-child(2){left:18%;font-size:16px;color:var(--ink);animation-duration:26s;animation-delay:-8s}
.fx i:nth-child(3){left:33%;color:var(--gold);animation-duration:22s;animation-delay:-4s}
.fx i:nth-child(4){left:47%;font-size:28px;color:var(--mint);animation-duration:30s;animation-delay:-14s}
.fx i:nth-child(5){left:61%;animation-duration:24s;animation-delay:-2s}
.fx i:nth-child(6){left:73%;font-size:15px;color:var(--pink-deep);animation-duration:20s;animation-delay:-11s}
.fx i:nth-child(7){left:85%;color:var(--ink);animation-duration:28s;animation-delay:-6s}
.fx i:nth-child(8){left:94%;font-size:18px;animation-duration:23s;animation-delay:-17s}
@keyframes fall{to{transform:translateY(112vh) rotate(360deg)}}
main,header,footer{position:relative;z-index:1}

/* 헤더 */
.top{position:sticky;top:0;z-index:60;background:rgba(255,242,247,.88);backdrop-filter:blur(10px);border-bottom:2px dashed var(--line)}
.bar{display:flex;align-items:center;justify-content:space-between;height:64px;gap:14px}
.logo{display:flex;align-items:center;gap:9px;font-size:24px;color:var(--ink)}
.logo em{font-style:normal;color:var(--pink-deep)}
.mark{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:12px;background:linear-gradient(135deg,var(--pink),var(--pink-deep));color:#fff;font-size:17px;box-shadow:0 4px 12px rgba(232,68,127,.35);animation:bob 3s ease-in-out infinite}
@keyframes bob{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-3px) rotate(4deg)}}
.menu{display:flex;gap:4px;flex-wrap:wrap}
.menu a{padding:8px 13px;border-radius:999px;font-size:14px;color:var(--dim);transition:.15s}
.menu a:hover{background:var(--pink-soft);color:var(--pink-deep)}
.ham{display:none;background:none;border:2px solid var(--line);border-radius:10px;width:40px;height:40px;font-size:17px;color:var(--pink-deep);cursor:pointer}

/* 히어로 */
.hero{padding:34px 0 10px}
.hero-in{display:grid;grid-template-columns:1.05fr 1fr;gap:30px;align-items:center;background:var(--card);border:2px solid var(--line);border-radius:28px;padding:34px 38px;box-shadow:0 18px 44px rgba(232,68,127,.12);overflow:hidden;position:relative}
.hero-in::after{content:"♥ ♠ ♦ ♣";position:absolute;right:-10px;top:-14px;font-size:44px;color:var(--pink-soft);letter-spacing:8px;transform:rotate(12deg)}
.hero-tx h1{font-size:clamp(30px,4.6vw,46px);line-height:1.25}
.hero-tx h1 em{font-style:normal;color:var(--pink-deep);text-shadow:0 3px 0 var(--bg2)}
.hero-tx p{margin-top:12px;color:var(--dim)}
.hero-btns{display:flex;gap:10px;margin-top:18px;flex-wrap:wrap}
.btn-p{background:linear-gradient(135deg,var(--pink),var(--pink-deep));color:#fff;font-weight:700;border-radius:999px;padding:12px 22px;box-shadow:0 8px 20px rgba(232,68,127,.35);transition:.15s}
.btn-p:hover{transform:translateY(-2px)}
.btn-o{border:2px solid var(--line2);color:var(--pink-deep);font-weight:700;border-radius:999px;padding:10px 20px;background:#fff;transition:.15s}
.btn-o:hover{background:var(--pink-soft)}
.stats{display:flex;gap:8px;margin-top:20px;flex-wrap:wrap}
.stat{display:flex;flex-direction:column;align-items:center;background:var(--pink-soft);border-radius:14px;padding:7px 13px;font-size:12px;color:var(--dim);transition:.15s}
.stat b{font-family:'Jua';font-size:17px;color:var(--pink-deep)}
.stat:hover{background:var(--bg2)}
.hero-img img{border-radius:22px;border:3px solid #fff;box-shadow:0 14px 34px rgba(71,38,59,.18);animation:heroFloat 5s ease-in-out infinite}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}

/* 섹션 */
section.shell{padding:34px 22px 6px}
.sect{font-size:26px;margin-bottom:16px}
.sect span{color:var(--pink-deep)}

/* 마스코트 카드 */
.mascots{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.mascot{background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:10px 10px 14px;text-align:center;transition:.18s}
.mascot img{border-radius:14px;aspect-ratio:1/1;object-fit:cover}
.mascot b{display:block;font-family:'Jua';font-size:16px;margin-top:9px}
.mascot small{color:var(--dim);font-size:12px}
.mascot:hover{transform:translateY(-6px) rotate(-1.2deg);border-color:var(--pink);box-shadow:0 14px 26px rgba(232,68,127,.18)}

/* 매장 리스트 (행 스타일) */
.publist{display:flex;flex-direction:column;gap:10px}
.pub{display:flex;align-items:center;gap:14px;background:var(--card);border:2px solid var(--line);border-radius:var(--r-md);padding:13px 16px;transition:.15s}
.pub:hover{border-color:var(--pink);transform:translateX(4px)}
.ava{flex:none;width:46px;height:46px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-family:'Jua';font-size:19px;color:#fff;border:2px solid #fff;box-shadow:0 3px 8px rgba(71,38,59,.15)}
.c0{background:#FF8FB7}.c1{background:#B39DDB}.c2{background:#4ECDC4}.c3{background:#F5A623}.c4{background:#7FB3F5}
.info{min-width:0;flex:1}
.info h3{font-size:16.5px;display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.star{font-size:11px;background:#FFF3D6;color:#B07A0A;border-radius:999px;padding:2px 9px;font-family:'Gowun Dodum'}
.addr{font-size:13px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.meta{font-size:12.5px;color:var(--dim);display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pill{background:var(--pink-soft);border-radius:999px;padding:2px 9px;font-size:11.5px;color:var(--pink-deep)}
.side{flex:none;display:flex;flex-direction:column;gap:6px;align-items:flex-end}
.where{font-size:12px;color:var(--mint);font-weight:700}
.go{background:var(--pink-soft);color:var(--pink-deep);font-weight:700;font-size:12.5px;border-radius:999px;padding:7px 14px;transition:.15s}
.go:hover{background:var(--pink);color:#fff}
.none{color:var(--dim);padding:24px;text-align:center;background:var(--card);border:2px dashed var(--line);border-radius:var(--r-md)}
.morelink{margin-top:12px;text-align:right}
.morelink a{color:var(--pink-deep);font-weight:700}

/* 동네 클라우드 */
.cloud{display:flex;flex-wrap:wrap;gap:8px}
.cloud a{background:var(--card);border:2px solid var(--line);border-radius:999px;padding:7px 14px;font-size:13.5px;transition:.15s}
.cloud a b{color:var(--pink-deep);margin-left:4px;font-family:'Jua'}
.cloud a:hover{border-color:var(--pink);transform:translateY(-2px)}

/* 가이드 카드 */
.gbigs{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px}
.gbig{background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;transition:.18s}
.gbig b{display:block;font-family:'Jua';font-size:17px;color:var(--ink)}
.gbig span{font-size:13px;color:var(--dim)}
.gbig:hover{border-color:var(--pink);transform:translateY(-4px);box-shadow:0 12px 24px rgba(232,68,127,.14)}
.about p{background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:20px 24px;color:var(--dim)}

/* 내부 페이지 */
main.shell{padding-top:22px;padding-bottom:30px}
.crumbs{font-size:13px;color:var(--dim);margin:14px 0 6px}
.crumbs a:hover{color:var(--pink-deep)}
.page-hero{background:var(--card);border:2px solid var(--line);border-radius:24px;padding:26px 30px;margin-bottom:18px;box-shadow:0 10px 26px rgba(232,68,127,.09)}
.page-hero h1{font-size:clamp(26px,4vw,38px)}
.page-hero h1 span{color:var(--pink-deep)}
.page-hero p{color:var(--dim);margin-top:6px}
.bigsearch{width:100%;max-width:440px;margin-top:14px;border:2px solid var(--line2);border-radius:999px;padding:12px 20px;font:inherit;font-size:15px;background:var(--pink-soft);color:var(--ink)}
.bigsearch:focus{outline:none;border-color:var(--pink)}
.chipbox{background:var(--card);border:2px dashed var(--line);border-radius:var(--r-lg);padding:16px 20px;margin-bottom:18px}
.chipbox p{font-size:13px;color:var(--dim);margin-bottom:8px}
.chips{display:flex;flex-wrap:wrap;gap:7px}
.chips a{background:var(--pink-soft);border-radius:999px;padding:6px 13px;font-size:13px;transition:.15s}
.chips a b{color:var(--pink-deep);margin-left:3px}
.chips a:hover{background:var(--bg2)}
.provhead{font-size:22px;margin:26px 0 10px}
.provhead small{color:var(--pink-deep);font-size:15px}
.miniguide{margin-top:30px}
.miniguide h2{font-size:20px;margin-bottom:10px}
.gcards{display:flex;flex-wrap:wrap;gap:9px}
.gcards a{background:var(--card);border:2px solid var(--line);border-radius:999px;padding:9px 16px;font-size:13.5px;transition:.15s}
.gcards a:hover{border-color:var(--pink);color:var(--pink-deep)}

/* 가이드 본문 */
.guide{background:var(--card);border:2px solid var(--line);border-radius:24px;padding:28px 32px}
.guide h2{font-size:21px;margin:22px 0 8px;color:var(--pink-deep)}
.guide h2:first-child{margin-top:0}
.guide h3{font-size:16.5px;margin:16px 0 4px}
.guide p{margin:8px 0;color:#5D3A4E}
.guide ul,.guide ol{margin:8px 0 8px 22px;color:#5D3A4E}
.guide li{margin:5px 0}
.guide a{color:var(--pink-deep);font-weight:700;border-bottom:2px dotted var(--line2)}
.guide b{color:var(--ink)}

/* 푸터 */
.pubfoot{margin-top:40px;background:#3A1E2E;color:#E9C7D6;padding:36px 0 26px}
.fcols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:26px}
.flogo{font-size:21px;color:#fff;display:flex;align-items:center;gap:8px;margin-bottom:8px}
.flogo em{font-style:normal;color:#FF8FB7}
.pubfoot p{font-size:13px;line-height:1.8;color:#C99AAF}
.fnav{display:flex;flex-direction:column;gap:5px;font-size:13.5px}
.fnav b{color:#fff;font-family:'Jua';margin-bottom:4px}
.fnav a:hover{color:#FF8FB7}
.copy{margin-top:22px;border-top:1px solid rgba(255,255,255,.12);padding-top:14px;font-size:12px}

/* 반응형 */
@media (max-width:940px){
  .hero-in{grid-template-columns:1fr;padding:24px}
  .hero-img{order:-1}
  .hero-img img{max-height:300px;width:100%;object-fit:cover;object-position:top}
  .mascots{grid-template-columns:repeat(3,1fr)}
  .fcols{grid-template-columns:1fr}
}
@media (max-width:760px){
  .menu{display:none;position:absolute;top:64px;left:0;right:0;background:#fff;border-bottom:2px dashed var(--line);flex-direction:column;padding:12px 18px;gap:2px}
  .menu.open{display:flex}
  .ham{display:block}
  .mascots{grid-template-columns:repeat(2,1fr)}
  .pub{flex-wrap:wrap}
  .side{flex-direction:row;width:100%;justify-content:flex-end;align-items:center}
  .guide{padding:20px 18px}
}

/* ============ v2 — FX 강화(카드·벚꽃) ============ */
.fx i{opacity:.22}
.fx i.s{text-shadow:0 2px 10px rgba(232,68,127,.18)}
.fx i.p{opacity:.55;animation-name:petal}
@keyframes petal{
  0%{transform:translateY(-6vh) translateX(0) rotate(0deg)}
  25%{transform:translateY(24vh) translateX(38px) rotate(95deg)}
  50%{transform:translateY(52vh) translateX(-30px) rotate(190deg)}
  75%{transform:translateY(80vh) translateX(34px) rotate(300deg)}
  100%{transform:translateY(112vh) translateX(-14px) rotate(390deg)}
}

/* 로고 붙여쓰기 + 우상단 제휴 버튼 */
.logo{gap:9px}
.logo .word{display:inline-flex;letter-spacing:0}
.actions{display:flex;align-items:center;gap:8px}
.partner-btn{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,var(--pink),var(--pink-deep));color:#fff;font-weight:700;font-size:13.5px;border-radius:999px;padding:9px 16px;box-shadow:0 6px 16px rgba(232,68,127,.3);transition:.15s;white-space:nowrap}
.partner-btn:hover{transform:translateY(-2px)}
@media (max-width:760px){.partner-btn span{display:none}.partner-btn{padding:9px 12px}}

/* 지역 통계 → 셀렉트 */
.stat{border:none;cursor:pointer;font-family:inherit}
.stat.on{background:var(--pink);color:#fff}
.stat.on b{color:#fff}
.subselwrap{margin-top:12px}
.regionsel{width:100%;max-width:420px;border:2px solid var(--line2);border-radius:14px;padding:12px 16px;font:inherit;font-size:15px;background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9'%3E%3Cpath d='M1 1l6 6 6-6' stroke='%23E8447F' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 16px center;color:var(--ink);appearance:none;cursor:pointer}
.regionsel:focus{outline:none;border-color:var(--pink)}

/* 지역별 인기 홀덤펍 10카드 */
.rcards{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.rcard{background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);overflow:hidden;transition:.18s;display:flex;flex-direction:column}
.rcard img{aspect-ratio:1/1;object-fit:cover;width:100%}
.rc-bd{padding:12px 14px 14px}
.rc-region{display:block;font-family:'Jua';font-size:17px;color:var(--ink)}
.rc-region small{color:var(--pink-deep);font-size:12px}
.rc-store{display:block;margin-top:7px;font-size:13.5px;color:var(--pink-deep)}
.rc-addr{font-size:12px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.rc-desc{font-size:12px;color:var(--dim)}
.rcard:hover{transform:translateY(-6px) rotate(-1deg);border-color:var(--pink);box-shadow:0 14px 26px rgba(232,68,127,.18)}
.rcard.partner{border-style:dashed;border-color:var(--line2);background:var(--pink-soft)}
.rc-partner{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;height:100%;padding:22px 14px;gap:6px}
.rc-partner .big{font-size:44px;animation:bob 3s ease-in-out infinite}
.rc-partner b{font-family:'Jua';font-size:19px;color:var(--pink-deep)}
.rc-partner p{font-size:12.5px;color:var(--dim);line-height:1.6}
.rc-partner .pbtn{margin-top:6px;background:var(--pink);color:#fff;font-size:12.5px;font-weight:700;border-radius:999px;padding:8px 14px}
@media (max-width:940px){.rcards{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.rcards{grid-template-columns:repeat(2,1fr)}}

/* 매장 리스트 캐릭터 아바타 */
.avaimg{flex:none;width:52px;height:52px;border-radius:16px;object-fit:cover;border:2px solid var(--line);box-shadow:0 3px 8px rgba(71,38,59,.12)}

/* 커뮤니티 */
.cboard{display:flex;flex-direction:column;gap:8px}
.crow{display:flex;align-items:center;gap:12px;background:var(--card);border:2px solid var(--line);border-radius:14px;padding:12px 16px;transition:.15s}
.crow:hover{border-color:var(--pink);transform:translateX(4px)}
.ctag{flex:none;background:var(--pink-soft);color:var(--pink-deep);font-size:11.5px;font-weight:700;border-radius:999px;padding:3px 10px}
.ctitle{flex:1;min-width:0;font-size:14.5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ctitle em{font-style:normal;color:var(--pink-deep);font-size:12px}
.cmeta{flex:none;font-size:12px;color:var(--dim)}
.cpager{display:flex;gap:6px;justify-content:center;margin-top:18px;flex-wrap:wrap}
.cpager a,.cpager b{min-width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:2px solid var(--line);background:var(--card);font-size:13.5px}
.cpager b{background:var(--pink);border-color:var(--pink);color:#fff}
.cpager a:hover{border-color:var(--pink)}
.cpost{background:var(--card);border:2px solid var(--line);border-radius:24px;padding:26px 30px}
.cpost h1{font-size:clamp(20px,3.4vw,28px)}
.pmeta{margin-top:8px;font-size:13px;color:var(--dim);display:flex;align-items:center;gap:8px}
.pbody{margin-top:16px;border-top:2px dashed var(--line);padding-top:16px}
.pbody p{margin:10px 0;color:#5D3A4E}
.coms{margin-top:18px}
.coms h2{font-size:17px;margin-bottom:8px}
.com{display:flex;gap:10px;background:var(--card);border:2px solid var(--line);border-radius:12px;padding:10px 14px;margin-bottom:7px;font-size:13.5px}
.com b{color:var(--pink-deep);flex:none}
.com span{color:#5D3A4E}
@media (max-width:640px){.cmeta{display:none}}

/* 확률계산기 */
.calcwrap{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc{background:var(--card);border:2px solid var(--line);border-radius:24px;padding:22px 24px}
.calc.wide{grid-column:1/-1}
.calc h2{font-size:19px}
.calc h2 small{font-size:12px;color:var(--dim);font-family:'Gowun Dodum'}
.csub{font-size:13px;color:var(--dim);margin:4px 0 14px}
.cgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cgrid label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--dim)}
.cgrid select,.cgrid input{border:2px solid var(--line2);border-radius:12px;padding:11px 13px;font:inherit;font-size:14.5px;background:#fff;color:var(--ink)}
.cgrid select:focus,.cgrid input:focus{outline:none;border-color:var(--pink)}
.cres{margin-top:14px;background:var(--pink-soft);border-radius:16px;padding:16px 18px;text-align:center}
.cres .big{font-family:'Jua';font-size:34px;color:var(--pink-deep)}
.cres p{font-size:12.5px;color:var(--dim);margin-top:2px}
.cquick{margin-top:12px}
.cquick p{font-size:12px;color:var(--dim);margin-bottom:6px}
.cquick button{background:#fff;border:2px solid var(--line);border-radius:999px;padding:7px 12px;font:inherit;font-size:12.5px;color:var(--ink);cursor:pointer;margin:0 4px 6px 0;transition:.15s}
.cquick button:hover{border-color:var(--pink);color:var(--pink-deep)}
.ctable{width:100%;border-collapse:collapse;font-size:14px;margin-top:8px}
.ctable th,.ctable td{text-align:left;padding:9px 10px;border-bottom:2px dashed var(--line)}
.ctable th{color:var(--dim);font-size:12.5px}
.ctable b{color:var(--pink-deep)}
.calc.tip{background:var(--pink-soft);border-style:dashed}
@media (max-width:820px){.calcwrap{grid-template-columns:1fr}.cgrid{grid-template-columns:1fr}}

/* 족보 비주얼 */
.glead{background:var(--pink-soft);border-radius:16px;padding:14px 18px;color:#5D3A4E;margin-bottom:14px}
.jokbo{display:flex;flex-direction:column;gap:10px}
.handrow{display:flex;align-items:center;gap:14px;background:#fff;border:2px solid var(--line);border-radius:16px;padding:12px 16px}
.handrow .rk{flex:none;width:34px;height:34px;border-radius:50%;background:var(--pink);color:#fff;font-family:'Jua';display:flex;align-items:center;justify-content:center;font-size:15px}
.cards{flex:none;display:flex;gap:4px}
.pc{display:inline-flex;align-items:center;justify-content:center;width:38px;height:52px;background:#fff;border:2px solid #E8D3DC;border-radius:7px;font-weight:800;font-size:12.5px;color:#2A2230;box-shadow:0 2px 5px rgba(71,38,59,.14)}
.pc.red{color:#E23B3B}
.handrow .hd b{font-family:'Jua';font-size:15.5px}
.handrow .hd p{font-size:12.5px;color:var(--dim)}
@media (max-width:680px){.handrow{flex-wrap:wrap}.pc{width:32px;height:44px;font-size:11px}}

/* 가이드 그림 */
.gfig{margin:16px 0}
.gfig img{border-radius:18px;border:3px solid #fff;box-shadow:0 10px 24px rgba(71,38,59,.16);max-height:340px;width:100%;object-fit:cover}
.gfig figcaption{text-align:center;font-size:12.5px;color:var(--dim);margin-top:8px}

/* ============ v3 — 히어로 좌우 여성 딜러 와이드 ============ */
.hero-in.wide3{grid-template-columns:1fr 1.5fr 1fr;gap:20px;align-items:stretch}
.hero-side{display:flex;flex-direction:column;gap:12px;justify-content:center}
.hero-side img{width:100%;aspect-ratio:1/1.02;object-fit:cover;object-position:top;border-radius:20px;border:3px solid #fff;box-shadow:0 12px 26px rgba(232,68,127,.18);animation:heroFloat 5.5s ease-in-out infinite}
.hero-side.right img:first-child{animation-delay:-2.7s}
.hero-side img:nth-child(2){animation-delay:-1.4s}
.hero-side.left img:nth-child(2){animation-delay:-3.9s}
@media (max-width:1080px){
  .hero-in.wide3{grid-template-columns:1fr 1.7fr 1fr}
  .hero-side{justify-content:flex-start}
}
@media (max-width:940px){
  .hero-in.wide3{grid-template-columns:1fr}
  .hero-side{flex-direction:row}
  .hero-side.left{order:-1}
  .hero-side.right img:nth-child(2){display:none}
  .hero-side img{aspect-ratio:4/3}
}

/* ============ v4 — 히어로 2컬럼(우측만), 카드 모달, 커뮤니티 동적 ============ */
.hero-in.wide2{grid-template-columns:1.15fr 1fr;gap:26px;align-items:center}
.hero-in.wide2 .hero-side.right{display:flex;flex-direction:column;gap:12px}
.hero-in.wide2 .hero-side img{width:100%;aspect-ratio:1/1;object-fit:cover;object-position:top;border-radius:20px;border:3px solid #fff;box-shadow:0 12px 26px rgba(232,68,127,.18);animation:heroFloat 5.5s ease-in-out infinite}
.hero-in.wide2 .hero-side img:nth-child(2){animation-delay:-2.6s}
@media (max-width:940px){
  .hero-in.wide2{grid-template-columns:1fr}
  .hero-in.wide2 .hero-side.right{flex-direction:row;order:-1}
  .hero-in.wide2 .hero-side img{aspect-ratio:4/3}
}

/* 지역 카드 상세 버튼 */
.rc-more{margin-top:8px;background:var(--pink-soft);color:var(--pink-deep);border:none;font-weight:700;font-size:12.5px;border-radius:999px;padding:7px 14px;cursor:pointer;font-family:inherit;transition:.15s}
.rc-more:hover{background:var(--pink);color:#fff}
.rc-addr{font-size:12.5px;color:var(--dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 모달 */
.modal-back{position:fixed;inset:0;z-index:200;background:rgba(71,38,59,.55);backdrop-filter:blur(3px);display:flex;align-items:center;justify-content:center;padding:20px}
.modal-back[hidden]{display:none}
.modal{position:relative;max-width:420px;width:100%;background:#fff;border:2px solid var(--line);border-radius:22px;padding:26px 26px 22px;box-shadow:0 20px 50px rgba(71,38,59,.3)}
.modal-x{position:absolute;top:10px;right:14px;background:none;border:none;font-size:26px;line-height:1;color:var(--dim);cursor:pointer}
.modal h3{font-family:'Jua';font-size:21px;color:var(--pink-deep);margin-bottom:12px;padding-right:20px}
.modal-row{display:flex;gap:12px;padding:9px 0;border-bottom:2px dashed var(--line);font-size:14px}
.modal-row span{flex:none;width:64px;color:var(--dim)}
.modal-row b{color:var(--ink);font-weight:700}
.modal-go{display:block;text-align:center;margin-top:14px;background:linear-gradient(135deg,var(--pink),var(--pink-deep));color:#fff;font-weight:700;border-radius:12px;padding:11px;box-shadow:0 8px 18px rgba(232,68,127,.28)}

/* 커뮤니티 탭 */
.ctabs{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:14px}
.ctabs button{background:var(--card);border:2px solid var(--line);border-radius:999px;padding:7px 15px;font:inherit;font-size:13.5px;color:var(--dim);cursor:pointer;transition:.15s}
.ctabs button.on{background:var(--pink);border-color:var(--pink);color:#fff}
.ctabs button:hover{border-color:var(--pink)}

/* 글쓰기·댓글 폼 */
.cwrite{background:var(--card);border:2px solid var(--line2);border-radius:20px;padding:20px 22px;margin-bottom:16px}
.cwrite h3{font-family:'Jua';font-size:18px;color:var(--pink-deep);margin-bottom:12px}
.cwrite .wgrid{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px}
.cwrite input,.cwrite select,.cwrite textarea{width:100%;border:2px solid var(--line2);border-radius:12px;padding:11px 13px;font:inherit;font-size:14.5px;background:#fff;color:var(--ink)}
.cwrite input:focus,.cwrite select:focus,.cwrite textarea:focus{outline:none;border-color:var(--pink)}
.cwrite #wTitle,.cwrite textarea{margin-bottom:10px}
.cwrite textarea{resize:vertical;line-height:1.6}
.cwrite .hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.wcap{display:flex;align-items:center;gap:10px;background:var(--pink-soft);border-radius:12px;padding:10px 14px;margin-bottom:10px;font-size:13.5px;color:var(--dim)}
.wcap b{color:var(--pink-deep);font-family:'Jua';font-size:16px}
.wcap input{max-width:90px}
.werr{color:#E23B3B;font-size:13px;min-height:16px;margin-bottom:4px}
.wbtns{display:flex;gap:9px}
.wbtns .btn-p,.wbtns .btn-o{cursor:pointer;border:none;font-family:inherit}
.wbtns .btn-o{border:2px solid var(--line2)}
.comform{margin-top:14px}
@media (max-width:640px){.cwrite .wgrid{grid-template-columns:1fr}}

/* ===== 지역 페이지 인기 홀덤펍 대형 배너 5 ===== */
.popbans-wrap{margin:20px 0 8px}
.popbans-wrap .sect{margin-bottom:12px}
.popbans{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.popban{display:flex;flex-direction:column;gap:7px;background:var(--card);border:2px solid var(--line);border-radius:var(--r-lg);padding:10px;text-decoration:none;color:var(--ink);transition:.18s}
.popban:hover{transform:translateY(-5px) rotate(-1deg);border-color:var(--pink);box-shadow:0 14px 26px rgba(232,68,127,.18)}
.popban img{width:100%;aspect-ratio:1/1;object-fit:cover;border-radius:var(--r-md)}
.popban b{font-family:'Jua';font-size:14px;line-height:1.35}
.pb-star{font-size:11px;color:var(--pink-deep);font-weight:800;white-space:nowrap}
.pb-where{font-size:11px;color:var(--dim);line-height:1.4}
@media (max-width:940px){.popbans{grid-template-columns:repeat(3,1fr)}}
@media (max-width:640px){.popbans{grid-template-columns:repeat(2,1fr)}}

/* ===== 커뮤니티 페이저 (버튼 스타일 + 말줄임) ===== */
.cpager button{min-width:34px;height:34px;display:inline-flex;align-items:center;justify-content:center;border-radius:12px;border:2px solid var(--line);background:var(--card);font-size:13.5px;color:var(--ink);cursor:pointer;font-family:inherit;padding:0 8px;transition:.15s}
.cpager button:hover{border-color:var(--pink);color:var(--pink-deep);transform:translateY(-2px)}
.cpager button.pnav{color:var(--pink-deep);font-size:17px;font-weight:800}
.cpager b{box-shadow:0 6px 14px rgba(232,68,127,.28);font-family:'Jua'}
.cpager .pdots{align-self:center;color:var(--dim);padding:0 3px}

/* ==== 용어사전 그림·도감 (terms) ==== */
.gfig{background:var(--pink-soft);border:2px solid var(--line);border-radius:18px;padding:16px 10px 12px;margin:14px 0;overflow-x:auto}
.gfig svg{display:block;margin:0 auto;max-width:100%;height:auto}
.gfig figcaption{text-align:center;font-size:12.5px;color:var(--dim);margin-top:8px;line-height:1.5}
.ydex{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;margin:12px 0}
.ydex .yd{background:#fff;border:2px solid var(--line);border-radius:16px;padding:13px 15px 14px;position:relative}
.ydex .yd .no{position:absolute;top:10px;right:13px;font-size:11px;color:var(--line2);font-weight:700}
.ydex .yd .nm{display:block;color:var(--pink-deep);font-size:15.5px;font-family:"Jua","Gowun Dodum",sans-serif}
.ydex .yd .lv{font-size:11px;color:var(--gold);font-weight:700}
.ydex .yd p{margin:5px 0 0;font-size:13px;color:#5D3A4E;line-height:1.6}

/* ==== 인기 배너 상세보기 버튼 + 모달 지도 링크 ==== */
.popban .pb-more{margin-top:auto;width:100%;text-align:center}
.popban .pb-where{display:block}
.modal-go.map{background:linear-gradient(135deg,var(--mint),#2AA79B);box-shadow:0 8px 18px rgba(55,189,176,.28)}
.modal-go+.modal-go,.modal-go+button.modal-go{margin-top:10px}
#mClose{width:100%;border:none;cursor:pointer;font-family:inherit;font-size:14.5px}

/* 방문자 카운터 */
.pub-visit{display:flex;gap:12px;align-items:center;justify-content:center;margin:18px 0 10px;color:var(--dim);font-size:13px}
.pub-visit b{color:var(--pink-deep);font-weight:700}
.pub-visit i{width:1px;height:12px;background:var(--line2)}

.hero-visit{justify-content:flex-start;margin:14px 0 0;font-size:13.5px}
.hero-visit b{font-size:15px}
