/* ===== 로페이퍼 추가 (센터 디자인 site.css 위에 정보 사이트에 필요한 부분만) ===== */
.logo img{height:30px}
.hd-tel{color:var(--navy)}
.art .tw table{width:100%;border-collapse:collapse;font-size:15.5px;line-height:1.6;min-width:520px}
.art .tw th,.art .tw td{padding:12px 16px;border-top:1px solid #eef0f5;text-align:left;vertical-align:top}
.art .tw thead th{background:var(--soft);color:var(--navy);font-weight:700;border-top:0}
.warn{margin-top:22px;padding:20px 24px;border-radius:10px;background:#fff5f4;border-left:4px solid #c2412d;font-size:15.5px;line-height:1.75;color:#444}
.warn b{color:#b03a27}
.note b:first-child,.warn b:first-child{margin-right:6px}
.steps li div{font-size:16px;line-height:1.7;color:#444}
.cc .lb{white-space:nowrap}
.more{margin-top:18px!important;font-weight:700}
.hb{margin-top:56px;padding:26px 28px;border-radius:12px;background:var(--navy);color:#fff}
.hb h2{margin:0!important;padding:0!important;font-size:21px!important;color:#fff!important}
.hb p{color:rgba(255,255,255,.82)!important;font-size:15.5px!important;margin-top:10px!important}
.hb p a{color:#fff!important}
.hb ul{list-style:none;margin:18px 0 0!important;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;font-size:15px}
.hb li+li{margin-top:0}
.hb li a{display:block;height:100%;padding:14px 16px;border-radius:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.22);color:#fff!important;text-decoration:none!important}
.hb li a b{display:block;color:#fff!important}
.hb li a b:after{content:" →";opacity:.7}
.hb li a span{display:block;margin-top:4px;font-size:13.5px;line-height:1.5;color:rgba(255,255,255,.72)}
@media (hover:hover){.hb li a:hover{background:rgba(255,255,255,.16);border-color:#fff}}
.toc ol{list-style:none;margin-top:12px;counter-reset:t}
.toc li a{display:flex;gap:10px;padding:9px 0;border-top:1px solid #f0f1f5;font-size:15px;line-height:1.45}
.toc li:first-child a{border-top:0}
.toc li a:before{counter-increment:t;content:counter(t,decimal-leading-zero);font-weight:800;color:var(--navy2);font-size:13.5px;padding-top:1px}
.toc li a:hover{color:var(--navy2);text-decoration:underline}
.box.cta .w{background:#fff;color:var(--navy);margin-top:18px}
.box.cta .o2{border:1px solid rgba(255,255,255,.45);color:#fff}
.ph-hero{background:linear-gradient(100deg,rgba(23,33,77,0) 35%,rgba(var(--ac-d-rgb),.55) 100%),#141c3f}
.ph-hero .meta{margin-top:26px;font-size:14px;color:rgba(255,255,255,.62)}
.ft-g .lg img{height:40px}
.ft-sns{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.ft-sns a,.ft-sns span{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border-radius:100px;border:1px solid rgba(255,255,255,.25);font-size:13.5px;color:#fff}
.ft-sns span{color:rgba(255,255,255,.5)}
.ft-sns small{font-size:11.5px}
.bcta .ch .w{background:#fff;color:var(--navy)}
.bcta .ch .o2{border:1px solid rgba(255,255,255,.55);color:#fff}
.v-card{background:linear-gradient(150deg,rgba(255,255,255,.1),rgba(255,255,255,.02)),#1a2554}
.v-card:before{display:none}
.hm-cats{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px}
.hm-cat{display:flex;flex-direction:column;padding:26px 24px;border-radius:10px;background:#fff;border:1px solid #e3e5ee;border-top:3px solid var(--navy);transition:transform .3s,box-shadow .3s}
.hm-cat b{font-size:19px;color:var(--ink)}
.hm-cat span{margin-top:8px;font-size:14.5px;line-height:1.6;color:var(--mute)}
.hm-cat em{margin-top:auto;padding-top:16px;font-style:normal;font-size:14.5px;font-weight:600;color:var(--navy2)}
@media (hover:hover){.hm-cat:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,33,77,.1)}}
.hm-sits{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}
.hm-sit{display:block;padding:22px 22px 24px;border-radius:10px;background:#fff;border:1px solid #e3e5ee;transition:transform .3s,box-shadow .3s}
.hm-sit b{display:block;font-size:17px;line-height:1.45;color:var(--ink)}
.hm-sit span{display:block;margin-top:8px;font-size:14px;font-weight:600;color:var(--navy2)}
.hm-sit span:after{content:" →"}
@media (hover:hover){.hm-sit:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,33,77,.1)}}
.hm-ec{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:center}
.hm-ec p{font-size:16.5px;line-height:1.8;color:var(--sub);margin-top:18px}
.hm-ec .btns{display:flex;gap:12px;margin-top:28px;flex-wrap:wrap}
.hm-ec ol{list-style:none;counter-reset:e;display:grid;gap:10px}
.hm-ec li{counter-increment:e;display:flex;gap:16px;align-items:baseline;padding:16px 20px;border-radius:10px;background:#fff;border:1px solid #e3e5ee;font-size:15px;color:var(--mute)}
.hm-ec li:before{content:counter(e,decimal-leading-zero);font-size:20px;font-weight:800;color:var(--navy2);min-width:28px}
.hm-ec li b{color:var(--ink);font-size:16.5px;margin-right:8px}
.cat{margin-bottom:64px;scroll-margin-top:calc(var(--hd) + 20px)}
.cat .hm-t{font-size:clamp(23px,2.2vw,30px)}
.cat>p{margin-top:10px;font-size:16px;color:var(--sub)}
.fsearch{position:sticky;top:var(--hd);background:#fff;padding:18px 0 14px;z-index:5;border-bottom:1px solid #eee;margin-bottom:22px}
.fsearch input{width:100%;padding:15px 20px;border:2px solid var(--navy);border-radius:100px;outline:0;font-size:16px;font-family:inherit}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}
.chip{padding:7px 16px;border-radius:100px;border:1px solid #d6d9e4;font-size:14px;font-weight:600;color:#444;background:#fff}
.chip.on{background:var(--navy);border-color:var(--navy);color:#fff}
.flist{list-style:none;display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:14px}
.flist a{display:flex;flex-direction:column;height:100%;padding:20px 22px;border-radius:10px;border:1px solid #e3e5ee;background:#fff;transition:transform .3s,box-shadow .3s}
.flist em{align-self:flex-start;padding:4px 12px;border-radius:100px;background:rgba(23,33,77,.08);color:var(--navy);font-size:12.5px;font-weight:700;font-style:normal;order:-1;margin-bottom:10px}
.flist b{font-size:17px;line-height:1.45}
.flist small{margin-top:6px;font-size:14.5px;line-height:1.6;color:var(--mute)}
.flist .no{display:none}
@media (hover:hover){.flist a:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(23,33,77,.1)}}
.empty{padding:40px 0;text-align:center;color:var(--mute)}
.ft{width:100%;border-collapse:collapse;border:1px solid #e3e5ee;font-size:15.5px;line-height:1.65}
.ft th,.ft td{padding:13px 16px;border-top:1px solid #eef0f5;text-align:left;vertical-align:top}
.ft th{width:130px;background:var(--soft);color:var(--navy);font-weight:700;white-space:nowrap}
.hint{font-size:15.5px!important;color:var(--sub)!important}
.dk{margin-top:18px;border:1px solid #e3e5ee;border-radius:12px;overflow:hidden;background:#eef0f5}
.dk-bar{display:flex;gap:8px;flex-wrap:wrap;padding:12px 14px;background:#fff;border-bottom:1px solid #e3e5ee;position:sticky;top:var(--hd);z-index:3}
.dk-bar button,.dk-bar a{padding:9px 18px;border-radius:100px;border:1px solid var(--navy);background:#fff;color:var(--navy)!important;text-decoration:none!important;font-size:14.5px;font-weight:700}
.dk-bar .cp{background:var(--navy);color:#fff!important}
.dk-bar .cp.done{background:#1f7a4d;border-color:#1f7a4d}
.paper{background:#fff;margin:26px auto;max-width:700px;padding:60px 64px;box-shadow:0 8px 24px rgba(23,33,77,.08);font-family:"Batang","바탕","Nanum Myeongjo",serif;font-size:15.5px;line-height:1.95;color:#111;letter-spacing:0}
.paper p{margin:0!important;white-space:pre-wrap;font-size:inherit!important;line-height:inherit!important;color:inherit!important}
.paper .d-t{text-align:center;font-size:26px!important;font-weight:700;letter-spacing:.5em;margin-bottom:24px!important}
.paper .d-h{text-align:center;font-weight:700;letter-spacing:.3em;margin:14px 0 6px!important}
.paper .d-r{text-align:right}
.paper .d-b{height:1em}
.paper mark{background:#fff1bf;color:#111;padding:0 2px;border-radius:2px}
.src{list-style:none;margin-left:0!important}
.src li:before{content:"↗ ";color:var(--navy2)}
.calc{margin-top:18px;padding:26px 28px;border-radius:12px;border:1px solid #e3e5ee;background:var(--soft)}
.calc label{display:block;margin:14px 0 6px;font-size:15px;font-weight:700;color:var(--navy)}
.calc input,.calc select{width:100%;padding:13px 16px;border:1px solid #d6d9e4;border-radius:8px;font-size:16px;background:#fff;font-family:inherit}
.calc input[type=checkbox]{width:auto}
.calc .row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.calc .out{margin-top:18px;border-radius:10px;border:1px solid #e3e5ee;background:#fff;overflow:hidden}
.calc .out table{width:100%;border-collapse:collapse;font-size:15.5px}
.calc .out td{padding:12px 16px;border-top:1px solid #eef0f5}
.calc .out tr:first-child td{border-top:0}
.calc .out td:last-child{text-align:right;font-weight:700;white-space:nowrap}
.calc .out p{padding:12px 16px}
.calc .tot{font-size:20px;color:var(--ac-d)}
@media (max-width:1024px){.hm-cats,.hm-sits{grid-template-columns:1fr 1fr}.hm-ec{grid-template-columns:1fr;gap:32px}}
@media (max-width:640px){
  .hm-cats,.hm-sits{grid-template-columns:1fr 1fr;gap:10px}
  .hm-sit{padding:16px}.hm-sit b{font-size:15.5px}
  .hm-cat{padding:20px 18px}.hm-cat b{font-size:17px}
  .paper{padding:30px 20px;margin:12px 8px;font-size:14px}
  .paper .d-t{font-size:21px!important;letter-spacing:.3em}
  .ft th{width:92px;white-space:normal}
  .calc{padding:18px}.calc .row{grid-template-columns:1fr}
  .hb{padding:22px 18px}
}
@media print{
  header,.mnav,footer,.ph-hero,.side,.dk-bar,.hb,.byline,.law,.sum,.ft,.tips,.src,.art>h2,.art>p,.art>ul,.art>.cg,.hint{display:none!important}
  .pg{display:block;padding:0}.dk{border:0;background:#fff;margin:0}
  .paper{box-shadow:none;margin:0;padding:0;max-width:none}.paper mark{background:none}
}

.pg.one{grid-template-columns:minmax(0,860px);justify-content:center}
.hd-tel svg{width:17px;height:17px}
/* 변호사 사진: 머리 위·양옆 여백 (원본이 꽉 차 보이지 않게 액자 안에 축소) */
.hm-lw img{aspect-ratio:740/937;object-fit:contain;object-position:50% 100%;padding:0 12px;background:linear-gradient(180deg,#e9edf5,#dfe4ee)}
/* 인스타그램·스레드 버튼: 테두리 강조 */
.ft-sns a{border:1.5px solid rgba(255,255,255,.75);background:rgba(255,255,255,.06);font-weight:600;padding:9px 18px}
.ft-sns a:after{content:" ↗";opacity:.75}
@media (hover:hover){.ft-sns a:hover{border-color:#fff;background:rgba(255,255,255,.14)}}
/* 홈 첫 화면: 숫자 상자 대신 기한 목록을 크게 (2026-10-20) */
.v-cards.dl{display:block}
.v-cards.dl .v-recent{padding:30px 32px 24px}
.v-cards.dl .v-recent h2{font-size:19px;margin-bottom:14px}
.v-cards.dl .v-recent li a{padding:12px 4px}
.v-cards.dl .v-recent li span{font-size:15.5px}
.v-cards.dl .v-recent li b{font-size:18px}
.v-recent li:nth-child(4){animation-delay:.75s}.v-recent li:nth-child(5){animation-delay:.9s}.v-recent li:nth-child(6){animation-delay:1.05s}
.v-recent li:nth-child(7){animation-delay:1.2s}.v-recent li:nth-child(8){animation-delay:1.35s}.v-recent li:nth-child(9){animation-delay:1.5s}.v-recent li:nth-child(10){animation-delay:1.65s}
/* 홈 제목: 형광펜 없이 줄마다 아래에서 떠오르는 등장 */
.hm-hero h1.rv .ln{display:block;overflow:hidden;padding-bottom:.06em}
.hm-hero h1.rv .in{display:inline-block;transform:translateY(105%);opacity:0;animation:lnUp .9s cubic-bezier(.2,.75,.2,1) forwards}
.hm-hero h1.rv .ln:nth-child(2) .in{animation-delay:.18s}
@keyframes lnUp{to{transform:none;opacity:1}}
@media (max-width:640px){.v-cards.dl .v-recent{padding:20px 18px 16px}.v-cards.dl .v-recent li span{font-size:14.5px}.v-cards.dl .v-recent li b{font-size:16px}}
@media (prefers-reduced-motion:reduce){.hm-hero h1.rv .in{animation:none;transform:none;opacity:1}}
