/* ===================================================================
   철거의정석 · 지역 랜딩 공용 스타일
   배포 경로: /assets/region.css   (모든 지역 페이지가 이 1개를 공유)
   컬러·폰트·라운드는 철거의정석 본 사이트 토큰과 동일
   전부 .cjs 하위로 스코프되어 기존 테마 CSS와 충돌하지 않음
   =================================================================== */
.cjs{
  --blue:#145ce6; --blue-dark:#114dc0; --blue-mid:#3574ed;
  --sol:#2F6BF6; --navy:#141a2e;
  --soft:#c7d8fa; --softer:#ecf2fd; --yellow:#FFD23F;
  --ink:#1f2429; --ink2:#353a3f; --body:#575e64; --muted:#8b9299;
  --line:#dee2e6; --line2:#ecf0f4; --bg:#f4f6fa;
  font-family:"SUIT Variable",SUIT,-apple-system,system-ui,sans-serif;
  color:var(--ink); background:var(--bg); line-height:1.65; word-break:keep-all;
  -webkit-font-smoothing:antialiased; padding-bottom:8px;
}
.cjs *{box-sizing:border-box;}
.cjs a{color:inherit;text-decoration:none;}
.cjs img{max-width:100%;height:auto;}
.cjs .wrap{max-width:1180px;margin:0 auto;padding:0 20px;}

/* 빵부스러기 */
.cjs .crumb{font-size:13px;color:var(--muted);padding:22px 0 6px;}
.cjs .crumb a:hover{color:var(--blue);}
.cjs .crumb b{color:var(--ink2);font-weight:700;}
.cjs .crumb i{font-style:normal;margin:0 6px;color:var(--line);}

/* 히어로 */
.cjs .hero{padding:26px 0 8px;}
.cjs .eyebrow{display:inline-block;font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--blue);background:var(--softer);border-radius:999px;padding:6px 12px;margin-bottom:14px;}
.cjs .hero h1{font-size:34px;font-weight:900;letter-spacing:-.03em;margin:0 0 12px;line-height:1.3;overflow-wrap:anywhere;}
.cjs .aeo-updated{font-size:13px;color:var(--muted);margin:6px 0 2px;}
.cjs .hero p.sub{font-size:16px;color:var(--body);line-height:1.75;margin:0 0 18px;max-width:780px;}
.cjs .answer-box{background:var(--softer);border:1.5px solid var(--soft);border-radius:16px;padding:18px 22px;margin:18px 0 8px;}
.cjs .answer-box b{color:var(--blue-dark);}
.cjs .answer-box p{margin:8px 0 0;font-size:15.5px;line-height:1.8;color:var(--ink2);}

/* 버튼 — 퍼널 2종 (전화 상담 / 간편 견적 요청) */
.cjs .btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;gap:7px;border-radius:12px;padding:14px 24px;font-size:15px;font-weight:800;cursor:pointer;border:1.5px solid transparent;}
.cjs .btn-blue{background:linear-gradient(#4783f6,#145ce9);color:#fff;}
.cjs .btn-blue:hover{filter:brightness(.95);}
.cjs .btn-call{background:#fff;border-color:var(--blue);color:var(--blue);}
.cjs .btn-call:hover{background:var(--softer);}
.cjs .hero-cta{display:flex;gap:10px;flex-wrap:nowrap;}
.cjs .hero-cta .btn{flex:1;white-space:nowrap;padding:14px 12px;font-size:14.5px;}

/* 팩트 표 */
.cjs .aeo-fact{margin:18px 0;}
.cjs .aeo-fhead{background:var(--blue);color:#fff;font-weight:800;font-size:14px;padding:12px 16px;border-radius:16px 16px 0 0;}
.cjs table.aeo-t{width:100%;border-collapse:collapse;border:1.5px solid var(--blue);border-top:none;border-radius:0 0 16px 16px;overflow:hidden;background:#fff;}
.cjs .aeo-t td{padding:11px 16px;border-top:1px solid var(--line2);font-size:14.5px;}
.cjs .aeo-t td:first-child{color:var(--muted);font-weight:700;width:34%;white-space:nowrap;}
.cjs .aeo-t td:last-child{font-weight:700;color:var(--ink);}
.cjs .aeo-lead{color:var(--blue);font-weight:800;}
.cjs .hl{color:var(--blue);}
.cjs .sub-note{font-weight:500;color:var(--muted);}

/* 지원금 배너 */
.cjs .fund{display:flex;gap:16px;align-items:flex-start;background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;border-radius:20px;padding:24px 26px;margin:24px 0;}
.cjs .fund .ico{font-size:30px;line-height:1;}
.cjs .fund .big{font-size:21px;font-weight:900;letter-spacing:-.02em;overflow-wrap:anywhere;}
.cjs .fund .big em{font-style:normal;color:var(--yellow);}
.cjs .fund p{margin:6px 0 0;font-size:14px;line-height:1.7;color:rgba(255,255,255,.9);}
.cjs .fund .warn{margin-top:8px;font-size:13px;font-weight:800;color:var(--yellow);}

/* 섹션 공통 */
.cjs .sec{background:#fff;border:1px solid var(--line2);border-radius:20px;padding:28px;margin:18px 0;}
.cjs .sec h2{font-size:21px;font-weight:900;letter-spacing:-.02em;margin:0 0 14px;overflow-wrap:anywhere;}
.cjs .sec p{font-size:15px;color:var(--body);line-height:1.85;margin:0 0 10px;}

/* 시공사례 마퀴 */
.cjs .marquee{overflow:hidden;margin:18px 0 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);}
.cjs .marquee-track{display:flex;gap:14px;width:max-content;animation:cjsmq 50s linear infinite;}
.cjs .marquee:hover .marquee-track{animation-play-state:paused;}
@keyframes cjsmq{to{transform:translateX(-50%)}}
.cjs .pcard{flex:0 0 240px;border:1px solid var(--line2);border-radius:16px;overflow:hidden;background:#fff;transition:.15s;}
.cjs .pcard:hover{border-color:var(--blue);box-shadow:0 0 16px rgba(0,0,0,.1);}
.cjs .pcard .thumb{width:100%;height:160px;background:var(--line2);}
.cjs .pcard .thumb img{width:100%;height:100%;object-fit:cover;display:block;font-size:0;color:transparent;}
.cjs .pcard .pinfo{padding:11px 14px 13px;}
.cjs .pcard strong{display:block;font-size:14px;font-weight:800;color:var(--ink);line-height:1.45;}
.cjs .pcard span{font-size:12px;color:var(--muted);}
@media(max-width:640px){.cjs .pcard{flex-basis:200px}.cjs .pcard .thumb{height:140px}}

/* 진행 순서 */
.cjs .pflow{display:flex;flex-direction:column;gap:8px;margin-top:10px;}
.cjs .pstep-d{border:1px solid var(--soft);border-radius:12px;overflow:hidden;background:#fff;}
.cjs .pstep-d[open]{border-color:var(--blue);box-shadow:0 2px 8px rgba(0,0,0,.06);}
.cjs .pstep{display:flex;align-items:center;gap:11px;background:var(--softer);padding:13px 16px;font-size:15px;font-weight:800;color:var(--blue-dark);cursor:pointer;list-style:none;transition:.15s;}
.cjs .pstep::-webkit-details-marker{display:none;}
.cjs .pstep-d[open] .pstep,.cjs .pstep:hover{background:var(--soft);}
.cjs .pstep .pnum{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--blue);color:#fff;font-size:13px;font-weight:800;flex:0 0 26px;}
.cjs .pstep .plabel{flex:1;}
.cjs .pstep .pchev{color:var(--blue);font-size:13px;transition:transform .2s;}
.cjs .pstep-d[open] .pstep .pchev{transform:rotate(180deg);}
.cjs .pstep-body{padding:14px 16px 16px 53px;}
.cjs .pstep-body p{margin:0;font-size:14px;color:var(--body);line-height:1.8;}
@media(max-width:560px){.cjs .pstep{font-size:14px;padding:12px 13px;}.cjs .pstep .pnum{width:23px;height:23px;font-size:12px;flex-basis:23px;}.cjs .pstep-body{padding:13px 14px 14px 14px;}}

/* FAQ */
.cjs .faq details{background:#fff;border:1px solid var(--line2);border-radius:16px;margin-bottom:10px;overflow:hidden;}
.cjs .faq summary{font-size:16px;font-weight:800;padding:18px 20px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;}
.cjs .faq summary::-webkit-details-marker{display:none;}
.cjs .faq summary::after{content:"+";font-size:24px;font-weight:300;color:var(--muted);}
.cjs .faq details[open] summary{color:var(--blue);}
.cjs .faq details[open] summary::after{content:"\2212";color:var(--blue);}
.cjs .faq .a{font-size:14.5px;color:var(--body);line-height:1.8;padding:0 20px 18px;}

/* 체크 리스트 */
.cjs .hooklist{list-style:none;padding:0;margin:6px 0 0;}
.cjs .hooklist li{padding:10px 0 10px 26px;position:relative;font-size:15px;font-weight:600;color:var(--ink2);border-bottom:1px solid var(--line2);}
.cjs .hooklist li::before{content:"\2713";position:absolute;left:0;color:var(--blue);font-weight:900;}

/* 정보 박스 */
.cjs .info{background:var(--bg);border:1px solid var(--line2);border-radius:16px;padding:18px 20px;margin-bottom:10px;}
.cjs .info h3{margin:0 0 6px;font-size:15.5px;font-weight:900;color:var(--blue-dark);}
.cjs .info p{margin:0;font-size:14px;color:var(--body);line-height:1.75;}
.cjs .info .src{display:block;margin-top:7px;font-size:12px;color:var(--muted);}

/* 키워드 캐러셀 */
.cjs .carousel{display:flex;gap:12px;overflow-x:auto;padding:4px 0 12px;scroll-snap-type:x mandatory;}
.cjs .card{flex:0 0 190px;width:190px;height:190px;border-radius:20px;overflow:hidden;scroll-snap-align:start;box-shadow:0 0 16px rgba(20,92,230,.18);background:linear-gradient(150deg,var(--blue-mid),var(--navy));position:relative;display:flex;flex-direction:column;justify-content:space-between;padding:18px;}
.cjs .card .knum{font-size:12px;font-weight:800;letter-spacing:.1em;color:var(--yellow);}
.cjs .card .kcap{font-size:19px;font-weight:900;color:#fff;line-height:1.35;letter-spacing:-.02em;}

/* 하위 지역 그리드 */
.cjs .childgrid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
@media(max-width:760px){.cjs .childgrid{grid-template-columns:repeat(2,1fr);}}
.cjs .childgrid a{display:flex;align-items:center;justify-content:space-between;background:#fff;border:1px solid var(--line);border-radius:12px;padding:14px 16px;font-size:15px;font-weight:700;color:var(--ink2);transition:.15s;}
.cjs .childgrid a:hover{border-color:var(--blue);color:var(--blue);}
.cjs .childgrid a .arr{color:var(--line);}
.cjs .childgrid a:hover .arr{color:var(--blue);}
.cjs .grid-label{font-size:13px;font-weight:800;color:var(--muted);margin:22px 0 10px;}

/* CTA 밴드 */
.cjs .ctaband{background:linear-gradient(135deg,var(--navy),var(--blue));color:#fff;border-radius:24px;padding:40px 26px;text-align:center;margin:28px 0;}
.cjs .ctaband h2{font-size:25px;font-weight:900;letter-spacing:-.02em;margin:0 0 8px;overflow-wrap:anywhere;}
.cjs .ctaband p{margin:0 0 22px;color:rgba(255,255,255,.88);font-size:15px;}
.cjs .ctaband .btns{display:flex;gap:12px;justify-content:center;flex-wrap:nowrap;}
.cjs .ctaband .btns .btn{flex:1;max-width:260px;white-space:nowrap;padding:14px 10px;font-size:14.5px;}
.cjs .ctaband .btn-blue{background:#fff;color:var(--blue);}
.cjs .ctaband .btn-blue:hover{background:var(--softer);filter:none;}
.cjs .ctaband .btn-call{background:transparent;border-color:rgba(255,255,255,.45);color:#fff;}
.cjs .ctaband .btn-call:hover{background:rgba(255,255,255,.12);}

/* 하단 고정 CTA */
.cjs-mfix{position:fixed;left:0;right:0;bottom:0;z-index:1200;display:flex;gap:10px;justify-content:center;padding:10px 12px calc(10px + env(safe-area-inset-bottom));background:rgba(255,255,255,.97);backdrop-filter:blur(8px);border-top:1px solid #ecf0f4;box-shadow:0 -2px 14px rgba(20,34,58,.09);font-family:"SUIT Variable",SUIT,-apple-system,system-ui,sans-serif;}
.cjs-mfix a{flex:1;max-width:290px;display:flex;align-items:center;justify-content:center;text-align:center;gap:7px;border-radius:12px;padding:15px 10px;font-size:15.5px;font-weight:800;text-decoration:none;white-space:nowrap;}
.cjs-mfix .m-call{background:#fff;color:#145ce6;border:1.6px solid #145ce6;}
.cjs-mfix .m-quote{background:linear-gradient(#4783f6,#145ce9);color:#fff;}
body.cjs-haspad{margin:0;padding-bottom:86px;background:#f4f6fa;}

/* 모바일 보강 */
@media(max-width:560px){
  .cjs .wrap{padding:0 16px;}
  .cjs .hero{padding:18px 0 6px;} .cjs .hero h1{font-size:26px;} .cjs .hero p.sub{font-size:15px;}
  .cjs .sec{padding:20px 16px;border-radius:16px;} .cjs .sec h2{font-size:18px;}
  .cjs .fund{flex-direction:column;gap:10px;padding:20px 16px;} .cjs .fund .big{font-size:18px;}
  .cjs .ctaband{padding:30px 18px;border-radius:20px;} .cjs .ctaband h2{font-size:20px;}
}
