/* 주담대연구소 미니 홈페이지 공통 스타일 · 흰 바탕, 최대 640px 한 줄 흐름, 파란 버튼 하나 */
:root{
  --paper:#FFFFFF; --card:#F3F5F7; --ink:#191F28; --sub:#4E5968; --muted:#6B7684; --line:#E5E8EB;
  --blue:#2F6FEB; --blue-soft:#EAF1FE; --red:#E5484D; --red-soft:#FDECEC; --mint:#0F9F77; --mint-soft:#E3F7F0; --sun:#C27C00; --sun-soft:#FFF4DE;
  --body:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;
  --fs-body:16px; --lh-body:1.7; --ls-body:-.01em; --fs-h1:32px; --fs-h2:20px; --fs-h3:17px; --gap-p:16px; --gap-sec:36px; --gap-calc:14px; --fs-cap:13px; --fs-foot:11.5px; --fs-out:26px;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:var(--fs-body);line-height:var(--lh-body);letter-spacing:var(--ls-body);padding-bottom:96px;word-break:keep-all;overflow-wrap:anywhere}
img{max-width:100%;height:auto;display:block}
a{color:var(--blue)}
p{margin:0}
h1,h2,h3{margin:0;word-break:keep-all;letter-spacing:-.03em;text-wrap:balance}
.pad{padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.wrap{max-width:640px;margin:0 auto}
.note{font-size:13.5px;color:var(--muted);line-height:1.6}
.num{font-variant-numeric:tabular-nums}
.warn{color:var(--red)}
.ms{font-family:"Material Symbols Rounded";font-weight:normal;font-style:normal;font-size:24px;line-height:1;display:inline-block;white-space:nowrap;font-feature-settings:"liga";overflow:hidden;width:1em;vertical-align:middle}
:focus-visible{outline:2px solid var(--blue);outline-offset:2px}

/* 헤더 */
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:41;background:var(--paper)}
.top{position:sticky;top:env(safe-area-inset-top,0px);z-index:40;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:saturate(1.4) blur(6px)}
.top>.wrap{display:flex;align-items:center;justify-content:space-between;min-height:56px;gap:8px}
.brand{display:flex;align-items:center;text-decoration:none}
.brand img{height:30px;width:auto}
.brand b{color:var(--blue)}
.top-actions{display:flex;align-items:center;gap:2px}
.iconbtn{width:44px;height:44px;border:0;background:transparent;border-radius:12px;display:grid;place-items:center;color:var(--ink);cursor:pointer;text-decoration:none}
.menu{border-top:1px solid var(--line);background:var(--paper)}
.menu ul{list-style:none;margin:0;padding:8px 0 16px;display:grid;grid-template-columns:1fr 1fr;gap:4px}
.menu a{display:flex;align-items:center;gap:10px;min-height:48px;padding:0 12px;border-radius:12px;text-decoration:none;color:var(--ink);font-weight:500;font-size:15.5px}
.menu a:hover{background:var(--card)}
.menu .ms{color:var(--blue);font-size:22px}
.menu .sub{grid-column:1/-1;font-size:12.5px;color:var(--muted);font-weight:700;padding:8px 12px 0}

/* 법정 표시: 푸터, 가운데, 작은 글씨 */
.legal{font-size:11.5px;line-height:1.6;color:var(--muted);text-align:center;padding:4px 0}

/* 따라다니는 배너 */
.magnet{position:fixed;left:0;right:0;bottom:0;z-index:35;padding:10px max(12px,env(safe-area-inset-right,0px)) calc(10px + env(safe-area-inset-bottom,0px)) max(12px,env(safe-area-inset-left,0px));background:var(--paper);border-top:1px solid var(--line);transition:transform .25s ease}
.magnet.hide{transform:translateY(110%)}
.magnet .wrap{display:flex;align-items:center;gap:8px}
.magnet .m-text{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.35}
.magnet .m-text b{font-size:15px}
.magnet .m-text span{font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.magnet .m-go{min-height:48px;padding:0 16px;border-radius:14px;background:var(--blue);color:#fff;font-weight:700;text-decoration:none;display:flex;align-items:center;white-space:nowrap;font-size:15px}
.magnet .m-tel{width:48px;height:48px;border-radius:14px;background:var(--card);color:var(--ink);display:grid;place-items:center;text-decoration:none}
.magnet .m-x{width:32px;height:32px;border:0;background:transparent;color:var(--muted);cursor:pointer;display:grid;place-items:center;padding:0}
@media (prefers-reduced-motion:reduce){.magnet{transition:none}}

/* 공통 버튼·입력 */
.btn{font:inherit;font-weight:700;font-size:16px;min-height:54px;border-radius:16px;border:0;background:var(--blue);color:#fff;cursor:pointer;padding:0 18px;display:flex;align-items:center;justify-content:center;gap:6px;text-decoration:none;width:100%}
.btn.ghost{background:var(--blue-soft);color:var(--blue)}
input,select{font:inherit;font-size:17px;font-weight:500;min-height:54px;padding:0 14px;border:0;border-radius:14px;background:var(--paper);color:var(--ink);width:100%}
label.f{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;color:var(--ink)}
label.f small{font-weight:400;color:var(--muted);font-size:12.5px}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.row2>*{min-width:0}
.check{display:flex;align-items:center;gap:10px;font-size:14px;color:var(--sub)}
.check input{width:22px;min-height:22px}
@media (max-width:360px){.row2{grid-template-columns:1fr}}

/* 계산기 위젯 */
.calc{background:var(--card);border-radius:22px;padding:20px;display:flex;flex-direction:column;gap:var(--gap-calc);margin:8px 0}
.calc-h{display:flex;align-items:center;gap:10px}
.calc-h .ms{color:var(--blue);background:var(--paper);border-radius:12px;width:40px;height:40px;display:grid;place-items:center;font-size:22px}
.calc-h b{font-size:16px;line-height:1.35}
.calc-h span{display:block;font-size:13px;color:var(--muted);font-weight:400}
.calc .why{font-size:13px;color:var(--muted);margin-top:-6px}
.calc .out{background:var(--paper);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:4px}
.calc .out .k{font-size:13.5px;color:var(--muted)}
.calc .out .v{font-size:var(--fs-out);font-weight:800;color:var(--blue);letter-spacing:-.03em;line-height:1.25}
.calc .out .v.bad{color:var(--red)}
.calc .rows{display:flex;flex-direction:column;gap:0;margin-top:6px}
.calc .rows div{display:flex;justify-content:space-between;gap:12px;font-size:14.5px;padding:8px 0;border-top:1px solid var(--line)}
.calc .rows div span:last-child{font-weight:700;text-align:right}
.calc .more{border:1px dashed var(--line);border-radius:14px}
.calc .more summary{min-height:46px;display:flex;align-items:center;padding:0 14px;font-size:14px;color:var(--muted);cursor:pointer}
.calc .more>div{padding:0 14px 14px;display:flex;flex-direction:column;gap:10px}
.calc .more input,.calc .more select{background:var(--paper)}
.calc .cta{margin-top:2px}
.calc .bar{height:8px;border-radius:4px;background:var(--line);overflow:hidden}
.calc .bar i{display:block;height:100%;background:var(--blue)}
.calc .bar.over i{background:var(--red)}
.calc .suggest{list-style:none;margin:0;padding:6px;border-radius:14px;max-height:260px;overflow:auto;background:var(--paper)}
.calc .suggest li{padding:10px 12px;min-height:46px;border-radius:10px;cursor:pointer;display:flex;justify-content:space-between;gap:8px;font-size:15.5px}
.calc .suggest li:hover{background:var(--card)}
.calc .suggest li span{color:var(--muted);font-size:13.5px;white-space:nowrap}
.quick{display:flex;gap:6px;flex-wrap:wrap}
.quick button{font:inherit;font-size:13.5px;font-weight:500;min-height:36px;padding:0 12px;border:0;border-radius:999px;background:var(--paper);color:var(--ink);cursor:pointer}
.tag-ex{display:inline-block;font-size:12px;font-weight:700;color:var(--blue);background:var(--blue-soft);border-radius:999px;padding:1px 8px;margin-right:4px}

/* 글 본문 */
.crumb{font-size:13px;color:var(--muted);padding-top:14px}
.crumb a{color:var(--muted);text-decoration:none}
.post-head{display:flex;flex-direction:column;gap:10px;padding-top:10px}
.post-cat{font-size:13.5px;font-weight:700;color:var(--blue)}
.post-head h1{font-size:min(var(--fs-h1),max(26px,7.2vw));line-height:1.3;font-weight:700;color:#111}
.post-meta{font-size:13px;color:#878E9C;display:flex;gap:8px;flex-wrap:wrap}
.post-thumb{border-radius:18px;overflow:hidden;background:var(--card);aspect-ratio:1200/630}
.post-thumb img{width:100%;height:100%;object-fit:cover}
.summary{background:var(--blue-soft);border-radius:18px;padding:16px 18px;display:flex;flex-direction:column;gap:6px}
.summary b{font-size:15px;color:var(--blue);text-align:center;display:block}
.summary ul{margin:0;padding:0;list-style:none;text-align:center;display:flex;flex-direction:column;gap:4px;font-size:15px;color:var(--ink)}
.toc{border:1px solid var(--line);border-radius:16px}
.toc summary{min-height:50px;display:flex;align-items:center;justify-content:center;padding:0 16px;font-weight:700;font-size:15px;cursor:pointer}
.toc ol{margin:0;padding:0 16px 14px;list-style-position:inside;text-align:center;display:flex;flex-direction:column;gap:6px;font-size:15px}
.toc a{color:var(--sub);text-decoration:none}
.article{display:flex;flex-direction:column;gap:var(--gap-p);padding-top:6px;color:#555C68}
.article h2{font-size:var(--fs-h2);line-height:1.5;font-weight:700;color:#111;padding-top:20px;scroll-margin-top:72px}
.article h3{font-size:var(--fs-h3);line-height:1.5;font-weight:700;color:#111;padding-top:4px}
.article ul,.article ol{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px}
.article strong{font-weight:700}
.article .tbl{overflow-x:auto;border-radius:14px;border:1px solid var(--line)}
.article table{width:100%;border-collapse:collapse;font-size:14px;line-height:1.5;color:var(--ink)}
.article th,.article td{padding:11px 12px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}
.article tr:last-child td{border-bottom:0}
.article th{background:var(--card);font-size:13px;color:var(--sub);font-weight:700;white-space:nowrap}
.article td.r,.article th.r{text-align:right}
.article figure{margin:4px 0;display:flex;flex-direction:column;gap:6px}
.article figure img{border-radius:16px;background:var(--card);width:100%;height:auto}
.article figcaption{font-size:var(--fs-cap);color:#878E9C;text-align:center}
.tip{background:var(--card);border-radius:16px;padding:14px 16px;font-size:15px;color:var(--ink);display:flex;gap:10px}
.tip .ms{color:var(--blue);font-size:22px;flex:none}
.tip.warn-box{background:var(--red-soft)}
.tip.warn-box .ms{color:var(--red)}
.faq{display:flex;flex-direction:column;gap:8px}
.faq details{background:var(--card);border-radius:16px}
.faq summary{min-height:54px;display:flex;align-items:center;padding:12px 16px;font-weight:700;font-size:15.5px;color:var(--ink);cursor:pointer;line-height:1.45}
.faq details>p{padding:0 16px 16px;font-size:15px;color:#555C68}
.src{font-size:13px;color:var(--muted);border-top:1px solid var(--line);padding-top:14px;display:flex;flex-direction:column;gap:4px}
.src a{color:var(--muted)}
.inline-cta{display:flex;align-items:center;gap:12px;background:var(--card);border-radius:18px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.inline-cta .ms{color:var(--blue);font-size:26px}
.inline-cta b{font-size:15px;display:block}
.inline-cta span{font-size:13px;color:var(--muted)}

/* 카드 목록 */
.sec{display:flex;flex-direction:column;gap:14px}
.sec-head{display:flex;justify-content:space-between;align-items:end;gap:12px}
.sec-head h2{font-size:20px;font-weight:700;line-height:1.4}
.sec-head a{font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.kicker{font-size:13px;font-weight:700;color:var(--muted)}
.cards{display:flex;flex-direction:column;gap:14px}
.card-h{display:grid;grid-template-columns:112px 1fr;gap:14px;align-items:center;text-decoration:none;color:var(--ink)}
.card-h img{width:112px;height:72px;border-radius:12px;object-fit:cover;background:var(--card)}
.card-h b{font-size:15.5px;line-height:1.45;color:var(--ink);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.card-h span{font-size:12.5px;color:var(--muted)}
.chips{display:flex;gap:8px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}
.chips::-webkit-scrollbar{display:none}
.chips button,.chips a{font:inherit;font-size:14.5px;font-weight:700;min-height:40px;padding:0 14px;border-radius:999px;border:1px solid var(--line);background:var(--paper);color:var(--sub);white-space:nowrap;cursor:pointer;text-decoration:none;display:flex;align-items:center}
.chips [aria-pressed="true"]{background:var(--ink);color:#fff;border-color:var(--ink)}

/* 상담 폼 */
.leadbox{background:var(--ink);color:#fff;border-radius:24px;padding:22px 20px;display:flex;flex-direction:column;gap:12px}
.leadbox h2{color:#fff;font-size:21px;font-weight:800}
.leadbox .note{color:#C9CFD6}
.leadbox label.f{color:#E6E9ED}
.leadbox input{background:#2A313C;color:#fff}
.leadbox .check{color:#C9CFD6}
.leadbox .test{background:#2A313C;color:#9EC1FF;font-size:13.5px;border-radius:12px;padding:12px 14px}

footer.site{font-size:12px;line-height:1.6;color:#878E9C;margin:40px calc(-1 * max(20px,env(safe-area-inset-right,0px))) 0 calc(-1 * max(20px,env(safe-area-inset-left,0px)));padding:40px max(20px,env(safe-area-inset-right,0px)) 24px max(20px,env(safe-area-inset-left,0px));background:#F3F5F7}
.foot-in{max-width:640px;margin:0 auto;display:flex;flex-direction:column;gap:28px}
.foot-links{display:grid;grid-template-columns:1fr 1fr;gap:14px 16px;padding-bottom:28px;border-bottom:1px solid #E1E5EA}
.foot-links b{grid-column:1/-1;font-size:15px;color:var(--ink)}
.fcol{display:flex;flex-direction:column;gap:8px}
.fcol span{font-size:12px;font-weight:700;color:#9AA1AD;margin-bottom:2px}
.fcol a{color:var(--sub);text-decoration:none;font-size:13.5px}
main.stack{display:flex;flex-direction:column;gap:var(--gap-sec);padding-top:4px}

/* 홈 */
.sec-h{font-size:20px;font-weight:700;line-height:1.4}
.hero{display:flex;flex-direction:column;gap:14px;padding-top:14px}
.hero h1{font-size:min(var(--fs-h1),max(26px,7.2vw));line-height:1.3;font-weight:700;color:#111}
.hero .lede{color:#555C68;font-size:16px}
.hero img{border-radius:22px;aspect-ratio:1200/760;width:100%;object-fit:cover;background:var(--blue-soft)}
.hero-btns{display:flex;flex-direction:column;gap:8px}
.qgrid{display:grid;grid-template-columns:repeat(5,1fr);gap:6px}
.qgrid a{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:var(--ink);font-size:12.5px;font-weight:500;text-align:center;line-height:1.3;padding:6px 0;word-break:keep-all}
.qgrid .ms{width:48px;height:48px;border-radius:16px;background:var(--card);display:grid;place-items:center;color:var(--blue);font-size:24px}
@media (max-width:360px){.qgrid{grid-template-columns:repeat(4,1fr)}}
.situs{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.situ{background:var(--card);border-radius:18px;padding:16px;display:flex;flex-direction:column;gap:10px;text-decoration:none;color:var(--ink);min-height:112px}
.situ .ms{color:var(--blue)}
.situ b{font-size:15.5px;line-height:1.4;word-break:keep-all}
.pols{display:flex;flex-direction:column;gap:10px}
.pol{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);border-radius:18px;padding:14px 16px;text-decoration:none;color:var(--ink)}
.pol b{font-size:16px;line-height:1.45}
.pol>span:last-child{font-size:12.5px;color:var(--muted)}
.pill{align-self:flex-start;font-size:12px;font-weight:700;color:var(--red);background:var(--red-soft);border-radius:999px;padding:2px 10px}
.flow{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:0;counter-reset:f}
.flow li{counter-increment:f;display:grid;grid-template-columns:40px 1fr;column-gap:12px;padding:10px 0;position:relative}
.flow li::before{content:counter(f);grid-row:1/3;width:32px;height:32px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800;display:grid;place-items:center;font-size:15px}
.flow b{font-size:16px}.flow span{font-size:14px;color:var(--muted)}
ol.how{margin:0;padding-left:22px;display:flex;flex-direction:column;gap:6px;font-size:15.5px}
.sec .inline-cta+.inline-cta{margin-top:-4px}
/* 시안 모음 */
.picks{display:flex;flex-direction:column;gap:10px}
.pick{position:relative;display:flex;flex-direction:column;gap:4px;padding:16px 18px;border-radius:18px;background:var(--card);text-decoration:none;color:var(--ink)}
.pick.new{background:var(--blue-soft)}
.pick b{font-size:16.5px}.pick span{font-size:13.5px;color:var(--muted)}
.pick em{position:absolute;top:14px;right:16px;font-style:normal;font-size:12px;font-weight:700;color:#fff;background:var(--blue);border-radius:999px;padding:2px 10px}
.article td:first-child,.article th:first-child{white-space:nowrap}

/* 정문 거리뷰 */
.roadview{border:1px solid var(--line);border-radius:18px;overflow:hidden;background:var(--card)}
.rv-ph{display:flex;flex-direction:column;align-items:center;text-align:center;gap:8px;padding:16px}
.rv-ph .ms{color:var(--blue);font-size:28px}
.rv-emoji{font-size:28px;line-height:1;text-align:center}
.rv-ph b{font-size:15.5px;display:block}.rv-ph span{font-size:12.5px;color:var(--muted);display:block}
.rv-btn{font:inherit;font-weight:700;font-size:14px;min-height:40px;padding:0 18px;margin-top:4px;border:0;border-radius:12px;background:var(--blue);color:#fff;cursor:pointer;white-space:nowrap}
.rv-pane{height:240px;background:var(--line)}
.rv-foot{padding:8px 16px 10px;margin:0}
.rv-foot a{color:var(--muted)}

.flow li.has-img{grid-template-columns:40px 72px 1fr}
.flow li.has-img img{grid-row:1/3;width:72px;height:72px;border-radius:16px;object-fit:cover;background:var(--card)}

figcaption,.article figcaption,.rv-ph,.rv-ph b,.rv-ph span{text-align:center}

/* 계산기 머리: 아이콘 없이 가운데 정렬 */
.calc-h{justify-content:center;text-align:center}
.calc-h .ms{display:none}
.calc-h span{text-align:center}
/* 본문 속 계산기 바로가기 카드도 같은 모양 */
.inline-cta{justify-content:center;text-align:center}
.inline-cta>.ms{display:none}

/* 계산기 입력: 라벨·입력값·조건 바꾸기 모두 가운데 */
.calc label.f{align-items:center;text-align:center}
.calc label.f small{text-align:center}
.calc input,.calc select{text-align:center;text-align-last:center}
.calc .more summary{justify-content:center;text-align:center}
.calc .check{justify-content:center}
.calc .quick{justify-content:center}

/* 계산기 머리: 제목 없이 한 줄 안내만 둥근 탭으로 */
.calc-h b{display:none}
.calc-h span{display:inline-block;background:var(--blue-soft);color:var(--blue);border-radius:999px;padding:7px 16px;font-size:13.5px;font-weight:600;line-height:1.4}

/* 계산 결과: 가운데 정렬, 설명은 의도한 줄바꿈만 */
.calc .out{align-items:center;text-align:center}
.calc .out .note{white-space:pre-line;word-break:keep-all}
.calc .out .rows{align-self:stretch;text-align:left}

/* 단위가 붙는 입력칸: 흰 상자 안에 '4800 만원'이 가운데로 */
.inwrap{display:flex;align-items:center;justify-content:center;gap:4px;width:100%;min-height:54px;background:var(--paper);border-radius:14px;padding:0 14px;cursor:text}
.inwrap:focus-within{outline:2px solid var(--blue);outline-offset:0}
.calc .inwrap input{width:4ch;min-width:2ch;max-width:100%;min-height:auto;padding:0;background:transparent;border-radius:0;text-align:right;text-align-last:right;outline:none}
.inwrap .unit{font-size:14.5px;font-weight:600;color:var(--muted);white-space:nowrap;align-self:center;padding-bottom:0;line-height:1}
.calc .more .inwrap{background:var(--paper)}

/* 계산기 안내 탭은 무조건 한 줄: 좁은 화면에선 글씨만 살짝 작게 */
.calc-h{max-width:100%}
.calc-h>div{max-width:100%}
.calc-h span{white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis;font-size:clamp(13px,3.8vw,15px);padding:8px 18px}
.calc .rows div span:first-child{color:var(--sub)}
.calc .rows div span:last-child{white-space:nowrap}

/* 전·후 구분: 현재(따뜻한 붉은 톤) → 정리한 뒤(파랑) */
.phase{border-radius:18px;padding:14px 12px;display:flex;flex-direction:column;gap:10px}
.phase.now{background:#FFF5F3;border:1px solid #F8D9D4}
.phase.after{background:#EEF4FF;border:1px solid #CFE0FD}
.phase-tag{align-self:center;font-size:12.5px;font-weight:700;padding:3px 12px;border-radius:999px;line-height:1.5}
.now .phase-tag{background:#FDE4E0;color:#C8463B}
.after .phase-tag{background:#D9E7FE;color:var(--blue)}
.phase-arrow{display:flex;align-items:center;justify-content:center;gap:6px;font-size:13px;font-weight:600;color:var(--muted);margin:-4px 0}
.phase-arrow::after{content:"";width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-top:8px solid var(--blue)}
.calc .rows .rgrp{display:flex;flex-direction:column;border-radius:14px;padding:10px 12px 4px;margin-top:8px;border:0}
.calc .rows .rgrp>div{display:flex;justify-content:space-between;gap:10px;font-size:14px;padding:7px 0;border-top:1px solid rgba(0,0,0,.06)}
.calc .rows .rgrp>div:first-of-type{border-top:0}
.calc .rows .rgrp.now{background:#FFF5F3}
.calc .rows .rgrp.after{background:#EEF4FF}
.calc .rows .rgrp.after>div span:last-child{color:var(--blue)}
.calc .rows .rgrp .phase-tag{margin-bottom:2px}
.calc .rows .rnote{border:0;padding:8px 2px 0;font-size:12px;text-align:center;display:block}

/* 글 상단: 공유 버튼·데이터 기준 배지·바로가기 칩 */
.post-meta{align-items:center}
.share{margin-left:auto;display:inline-flex;align-items:center;gap:4px;font:inherit;font-size:13px;font-weight:600;color:var(--sub);background:var(--card);border:0;border-radius:999px;padding:5px 12px;cursor:pointer}
.share .ms{font-size:16px}
.badges{display:flex;flex-wrap:wrap;gap:6px}
.badges span{font-size:12px;font-weight:600;color:var(--mint);background:var(--mint-soft);border-radius:999px;padding:3px 10px}
.jump{display:flex;justify-content:safe center;gap:8px;overflow-x:auto;scrollbar-width:none;margin:0 -2px}
.jump::-webkit-scrollbar{display:none}
.jump a{flex:none;font-size:13.5px;font-weight:600;color:var(--ink);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:7px 14px;background:var(--paper)}
.jump a:last-child{color:#fff;background:var(--blue);border-color:var(--blue)}
/* 읽은 만큼 표시줄 · 맨 위로 · 알림 */
.readbar{position:fixed;left:0;right:0;top:0;height:3px;background:var(--blue);transform-origin:0 50%;transform:scaleX(0);z-index:50;pointer-events:none}
.totop{position:fixed;right:max(14px,env(safe-area-inset-right,0px));bottom:calc(84px + env(safe-area-inset-bottom,0px));width:44px;height:44px;border-radius:50%;border:1px solid var(--line);background:var(--paper);color:var(--ink);box-shadow:0 4px 14px rgba(0,0,0,.08);display:grid;place-items:center;cursor:pointer;opacity:0;pointer-events:none;transition:opacity .2s;z-index:34}
.totop.on{opacity:1;pointer-events:auto}
.toast{position:fixed;left:50%;bottom:calc(96px + env(safe-area-inset-bottom,0px));transform:translate(-50%,10px);background:var(--ink);color:#fff;font-size:14px;padding:10px 16px;border-radius:12px;opacity:0;transition:.2s;z-index:60;pointer-events:none}
.toast.on{opacity:1;transform:translate(-50%,0)}
/* 표: 짧은 칸은 줄바꿈 없이 */
.article td.nw{white-space:nowrap}
/* 데이터와 출처 */
.src span{color:var(--muted);line-height:1.6}
/* 섹션 구분: 본문 뒤 묶음 사이에 얇은 선 */
article>.sec{border-top:1px solid var(--line);padding-top:22px}
/* A/B 선택지 카드 */
.opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.opt{position:relative;background:var(--paper);border:2px solid var(--line);border-radius:16px;padding:14px 10px 12px;display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;transition:border-color .2s}
.opt b{font-size:14px}
.opt .opt-tag{font-size:12px;font-weight:800;color:var(--muted);background:var(--card);border-radius:999px;padding:1px 9px}
.opt .opt-v{font-size:13px;font-weight:700;color:var(--sub)}
.opt.win{border-color:var(--blue);background:#EEF4FF}
.opt.win .opt-tag{background:var(--blue);color:#fff}
.opt.win .opt-v{color:var(--blue)}
.opt.win::after{content:"이자 덜 내요";position:absolute;top:-10px;right:8px;font-size:11px;font-weight:700;color:#fff;background:var(--blue);border-radius:999px;padding:2px 8px}
.opt .inwrap{background:var(--card)}
.opt.win .inwrap{background:var(--paper)}
@media (max-width:360px){.opts{grid-template-columns:1fr}}
/* 제목: 쉼표 뒤 덩어리는 쪼개지지 않게 */
.h1b{display:inline-block}
/* 푸터 사업자·법정 표시: 가운데, 작은 글씨 */
footer.site .biz{display:flex;flex-direction:column;gap:5px;text-align:left;font-size:var(--fs-foot);line-height:1.6;color:#878E9C;padding-bottom:24px;border-bottom:1px solid #E1E5EA}
footer.site .biz h3{font-size:12px;color:#5B6372;margin:0 0 4px}
footer.site .biz p{margin:0}
footer.site .biz b{color:var(--sub);font-weight:700}
footer.site .biz a{color:#878E9C}
footer.site .legal{margin:0;padding:14px 16px;border:1px solid #D9DEE5;border-radius:12px;text-align:center;font-size:12.5px;line-height:1.6}
footer.site .legal strong{color:var(--ink)}
footer.site .note{text-align:center;font-size:11px;margin:0}

.toc summary::-webkit-details-marker{display:none}.toc summary{list-style:none}

/* 간편·정밀 계산 전환 */
.modes{display:flex;gap:4px;background:#EEF1F5;border-radius:999px;padding:4px}
.modes button{flex:1;border:0;background:none;border-radius:999px;padding:9px 0;font:600 14px/1 inherit;font-family:inherit;color:var(--muted);cursor:pointer}
.modes button.on{background:#fff;color:var(--blue);box-shadow:0 1px 3px rgba(0,0,0,.08)}
.m-easy,.m-pro{display:flex;flex-direction:column;gap:12px}
.m-pro[hidden],.m-easy[hidden]{display:none}
.pro-tip{margin:0;font-size:13px;color:var(--muted);text-align:center}
.loans{display:flex;flex-direction:column;gap:10px}
.loan{border:1px solid var(--line);border-radius:14px;padding:12px;background:var(--paper);display:flex;flex-direction:column;gap:8px}
.loan-h{display:flex;gap:8px;align-items:center}
.loan-h select{flex:1;min-width:0}
.ldel{border:0;background:none;color:var(--muted);font-size:13px;padding:6px;cursor:pointer;font-family:inherit}
.row3{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:8px}
.row3>*{min-width:0}
.lnote{font-size:12.5px;color:var(--blue);text-align:center}
.addloan{border:1px dashed var(--blue);background:none;color:var(--blue);border-radius:12px;padding:11px;font:600 14px/1 inherit;font-family:inherit;cursor:pointer}
.calc-lead{margin:0 0 -6px;text-align:center;font-size:18px;font-weight:700;color:var(--ink);line-height:1.4}
.leadbox h2{text-align:center}
.leadbox .lead-copy{text-align:center;line-height:1.6;font-size:15px}
.leadbox .lead-amt{margin:0;text-align:center;font-size:14px;color:#9EC1FF;background:#2A313C;border-radius:12px;padding:10px 12px}
.leadbox .lead-agree{justify-content:center;text-align:center;line-height:1.45}

/* 글 공유하기: 한 줄 가로 스크롤 */
.sharebox{background:var(--card);border-radius:22px;padding:16px 14px}
.sharebox .sec-h{text-align:center;margin-bottom:12px}
.sh-row{display:flex;gap:2px;overflow-x:auto;scrollbar-width:none;margin:0 -4px;padding:0 4px}
.sh-row::-webkit-scrollbar{display:none}
.sh{flex:0 0 64px;display:flex;flex-direction:column;align-items:center;gap:5px;border:0;background:none;padding:4px 0;cursor:pointer;font-family:inherit;color:var(--sub);font-size:10.5px;white-space:nowrap}
.sh svg,.sh .ms{width:42px;height:42px;border-radius:50%;padding:10px;background:#333;display:block}
.sh .ms{font-size:22px;color:#fff;background:#8B95A1;overflow:visible}
.sh-kakao svg{background:#FEE500}.sh-facebook svg{background:#1877F2}.sh-x svg{background:#000}.sh-threads svg{background:#000}.sh-naver svg{background:#03C75A}.sh-band svg{background:#3BC63B}.sh-tistory svg{background:#EB531F}
.sh-instagram svg{background:radial-gradient(circle at 30% 107%,#fdf497 0%,#fd5949 45%,#d6249f 60%,#285AEB 90%)}
.sh:active svg,.sh:active .ms{transform:scale(.94)}

/* 홈 히어로 */
.hero{display:flex;flex-direction:column;gap:12px;padding-top:8px}
.hero-panel{position:relative;overflow:hidden;border-radius:24px;padding:24px 20px 0;background:linear-gradient(140deg,#17308F 0%,#2F6FEB 55%,#4F8DFF 100%);color:#fff;display:flex;flex-direction:column;gap:12px}
.hero-panel .kicker{color:rgba(255,255,255,.8);font-size:12.5px;font-weight:700;letter-spacing:0}
.hero-panel h1{color:#fff;font-size:clamp(19px,5.9vw,30px);line-height:1.3}
.hero-panel .nw{white-space:normal;word-break:keep-all}
.hero-panel h1 em{font-style:normal;color:#FFD866}
.hero-panel .lede{color:rgba(255,255,255,.88);font-size:clamp(12px,3.5vw,15px);line-height:1.6;word-break:keep-all}
.hero-pts{list-style:none;margin:0;padding:0;display:flex;gap:6px;flex-wrap:wrap}
.hero-pts li{font-size:12px;font-weight:700;background:rgba(255,255,255,.16);border:1px solid rgba(255,255,255,.3);border-radius:999px;padding:5px 10px;white-space:nowrap}
.hero-ex{position:relative;z-index:1;background:#fff;color:var(--ink);border-radius:18px;padding:14px 16px;display:flex;flex-direction:column;gap:4px;box-shadow:0 10px 30px rgba(10,30,90,.25);margin-top:6px}
.hero-ex .ex-tag{display:inline-block;font-size:10.5px;font-weight:700;color:var(--blue);background:var(--blue-soft);border-radius:999px;padding:2px 7px;margin-right:2px;vertical-align:1px}
.hero-ex .ex-apt{font-size:12.5px;color:var(--muted)}
.hero-ex .ex-k{font-size:13px;color:var(--sub)}
.hero-ex .ex-v{font-size:24px;font-weight:800;color:var(--blue);letter-spacing:-.03em;line-height:1.2}
.hero-ex .ex-bar{display:block;height:8px;border-radius:999px;background:var(--card);margin-top:6px;overflow:hidden}
.hero-ex .ex-bar i{display:block;height:100%;background:linear-gradient(90deg,#2F6FEB,#6FA3FF);border-radius:999px}
.hero-panel img{display:block;width:calc(100% + 40px);height:140px;object-fit:cover;object-position:right 55%;margin:-34px -20px 0;border-radius:0;background:transparent;opacity:.95;-webkit-mask-image:linear-gradient(to right,transparent,#000 45%),linear-gradient(to bottom,transparent 10%,#000 60%);-webkit-mask-composite:source-in;mask-image:linear-gradient(to right,transparent,#000 45%),linear-gradient(to bottom,transparent 10%,#000 60%);mask-composite:intersect}
.cta-cards{display:flex;flex-direction:column;gap:8px}
.cta-card{position:relative;display:flex;flex-direction:column;gap:2px;text-decoration:none;background:var(--blue);color:#fff;border-radius:16px;padding:14px 48px 14px 16px;min-height:60px}
.cta-card span{font-size:12.5px;color:rgba(255,255,255,.85)}
.cta-card b{font-size:16px;font-weight:700}
.cta-card .ms{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:22px}
.cta-card.alt{background:var(--paper);color:var(--ink);border:1.5px solid var(--blue)}
.cta-card.alt span{color:var(--muted)}.cta-card.alt b,.cta-card.alt .ms{color:var(--blue)}
.hero-stats{display:flex;justify-content:center;gap:0;font-size:12.5px;color:var(--muted);margin:2px 0 0}
.hero-stats span+span::before{content:'·';margin:0 8px;color:var(--line)}

/* 지역 칩 */
.citychips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:-4px 0 0}
.citychips::-webkit-scrollbar{display:none}
.citychips button{flex:none;border:1px solid var(--line);background:var(--paper);border-radius:999px;padding:6px 12px;font:600 13px/1 inherit;font-family:inherit;color:var(--sub);cursor:pointer}
.citychips button.on{background:var(--blue);border-color:var(--blue);color:#fff}

/* 푸터 보완 */
.fcol.wide{grid-column:1/-1}
.fext{display:flex;flex-wrap:wrap;gap:6px}
.fext a{font-size:12px;color:var(--sub);background:#fff;border:1px solid #E1E5EA;border-radius:999px;padding:5px 10px;text-decoration:none}
footer.site .legal{text-align:left}
footer.site .note{text-align:left}

/* 앵커 이동 시 고정 헤더에 가려지지 않게 */
.leadbox,.calc,[id^="calc-"],#faq,.sec[id]{scroll-margin-top:calc(72px + env(safe-area-inset-top,0px))}

/* 많이 묻는 질문(홈) - 작게 */
.situs{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.situ{background:var(--card);border-radius:14px;padding:10px 8px 10px 12px;min-height:0;display:flex;flex-direction:row;align-items:center;gap:2px;text-decoration:none;color:var(--ink)}
.situ b{flex:1;font-size:13.5px;font-weight:600;line-height:1.35}
.situ .ms{font-size:18px;color:var(--muted);flex:none}
/* 진행 순서(계산기·가이드) - 번호 없이 가운데 */
.flow-sec .sec-h{text-align:center}
.flow2{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.flow2 li{background:var(--card);border-radius:18px;padding:14px 10px;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}
.flow2 img{width:72px;height:72px;border-radius:16px;object-fit:cover;margin-bottom:4px}
.flow2 b{font-size:15px}.flow2 span{font-size:12.5px;color:var(--muted)}

/* 결과 줄: 왼쪽 라벨이 한 글자씩 꺾이지 않게 */
.calc .rows div span:first-child{flex:1 1 auto;min-width:7.5em}
.calc .rows div span:last-child{flex:0 1 auto;white-space:normal;word-break:keep-all;max-width:62%}
.calc .rows div{align-items:baseline}

/* 지역 칩 자동으로 흐르기(손대면 멈춤) */
.marquee{overflow:hidden;margin:0 -20px;-webkit-mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent);mask-image:linear-gradient(90deg,transparent,#000 24px,#000 calc(100% - 24px),transparent)}
.mq-track{display:flex;width:max-content;animation:mq 38s linear infinite}
.marquee .chips.mq{overflow:visible;flex-wrap:nowrap;padding:2px 4px 2px 0;gap:8px;margin-right:8px}
.marquee:hover .mq-track,.marquee:active .mq-track,.marquee:focus-within .mq-track{animation-play-state:paused}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){.mq-track{animation:none}.marquee{overflow-x:auto}}
.calc .suggest .more-li{justify-content:center;text-align:center;color:var(--blue);font-weight:700;font-size:13.5px}
.sec-sub{margin:-6px 0 4px;font-size:13px;color:var(--muted)}

/* 푸터 기관 링크: 파비콘 + 자동 흐름 */
.fmq{margin:0 -20px}
.fext.mq{display:flex;flex-wrap:nowrap;gap:8px;margin-right:8px}
.fext a{display:inline-flex;align-items:center;gap:7px;white-space:nowrap;font-size:13px;font-weight:600;color:var(--ink);background:#fff;border:1px solid #E1E5EA;border-radius:999px;padding:7px 14px 7px 8px;text-decoration:none}
.fext a .fico{width:22px;height:22px;border-radius:50%;flex:none;display:grid;place-items:center;color:#fff;font:800 10.5px/1 var(--body);font-style:normal;letter-spacing:-.04em}
.fmq .mq-track{animation-duration:45s}

/* 홈 타일(계산기·질문 같은 크기) */
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tile{display:flex;align-items:center;gap:8px;min-height:56px;padding:8px 10px 8px 12px;border-radius:14px;background:var(--card);text-decoration:none;color:var(--ink)}
.tile b{flex:1;font-size:13.5px;font-weight:600;line-height:1.35;word-break:keep-all}
.tile .ms{flex:none;font-size:20px;color:var(--blue)}
.tile.q .ms{font-size:18px;color:var(--muted)}
.h-link{display:inline-flex;align-items:center;gap:2px;color:inherit;text-decoration:none}
.h-link .ms{font-size:22px;color:var(--muted)}
/* 홈 카드 목록 크기 통일 */
.cards .card-h{grid-template-columns:96px 1fr;gap:12px}
.cards .card-h img{width:96px;height:64px}
.cards .card-h b{font-size:15px}
/* 상담 시트 */
.lsheet{position:fixed;inset:0;z-index:80;display:flex;align-items:flex-end;justify-content:center}
.lsheet-bg{position:absolute;inset:0;background:rgba(15,20,30,.5);animation:fadeIn .2s}
.lsheet-panel{position:relative;width:100%;max-width:640px;max-height:92vh;overflow:auto;background:var(--ink);border-radius:24px 24px 0 0;padding:8px 0 calc(8px + env(safe-area-inset-bottom,0px));animation:sheetUp .25s ease}
.lsheet-panel .leadbox{border-radius:0;padding-top:8px}
.lsheet-grab{display:block;width:40px;height:5px;border-radius:9px;background:#4A5260;margin:4px auto 6px}
.lsheet-later{display:block;margin:0 auto 6px;border:0;background:none;color:#9AA3AF;font:500 13.5px/1 var(--body);padding:10px 16px;cursor:pointer}
@keyframes sheetUp{from{transform:translateY(100%)}to{transform:none}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
body.sheet-open{overflow:hidden}
body.sheet-open .magnet{transform:translateY(110%)}
.tile{height:64px;min-height:0}
.tile b{font-size:13px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.fext2{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px}
.fext2 a{color:var(--sub);text-decoration:none;font-size:13.5px}
.tile{justify-content:center;text-align:center;padding:8px 10px}
.tile b{flex:0 1 auto}
.tile.q .ms{display:none}

/* 홈 하단 패널: 같은 크기, 배경 톤으로 구분 */
.panel{border-radius:22px;padding:20px 18px;min-height:212px;display:flex;flex-direction:column;gap:12px}
.panel .sec-head{margin:0}
.panel .sec-sub{margin:-4px 0 2px}
.panel .marquee{margin:0 -18px}
.panel.t1{background:#EEF4FF}
.panel.t2{background:#F3F5F7}
.panel.t3{background:#F5F1FB}
.panel.t4{background:#FFF6EC}
.panel.t5{background:#EEF8F3}
.panel.t6{background:#F3F5F7}
.panel .card-h img{background:#fff}
.panel{min-height:236px}
.panel .cards{gap:12px}
.panel .card-h{height:66px;align-items:center}
.panel .card-h div{display:flex;flex-direction:column;gap:2px;min-width:0}
.panel .card-h b{font-size:14.5px;line-height:1.4;-webkit-line-clamp:2}
.panel .card-h span{font-size:12px}
.panel.t1{justify-content:flex-start}
.panel{min-height:252px}

/* 상담 상자 톤 살짝 밝게 */
.leadbox,.lsheet-panel{background:#2C3644}
.leadbox input{background:#3B4656}
.leadbox .lead-amt,.leadbox .test{background:#3B4656}
.leadbox .note{color:#D3D9E0}

/* 한도 계산 2단계(DSR) */
.calc .step2{border:1.5px solid var(--blue);border-radius:14px;background:var(--paper)}
.calc .step2 summary{list-style:none;min-height:48px;display:flex;align-items:center;justify-content:center;gap:8px;padding:0 12px;font-size:14.5px;font-weight:700;color:var(--blue);cursor:pointer}
.calc .step2 summary::-webkit-details-marker{display:none}
.calc .step2 summary b{font-size:11.5px;background:var(--blue);color:#fff;border-radius:999px;padding:3px 8px}
.calc .step2[open] summary{border-bottom:1px solid var(--line)}
.calc .step2>div{padding:12px;display:flex;flex-direction:column;gap:10px}
.calc .step2 .s2-tip{margin:0;font-size:12.5px;color:var(--muted);text-align:center}
.calc .out .note{white-space:pre-line}

/* 결과 줄: 라벨 한 줄, 금액 한 줄 */
.calc .out>.rows>div{flex-direction:column;align-items:flex-start;gap:2px}
.calc .out>.rows>div span:first-child{min-width:0;white-space:nowrap;font-size:13.5px}
.calc .out>.rows>div span:last-child{max-width:none;white-space:nowrap;text-align:left;font-size:15.5px}
.sec-head h2 .h-link{font-size:inherit;font-weight:inherit;color:inherit;white-space:normal}
.calc .out>.rows>div{align-items:center;text-align:center}
.calc .out>.rows>div span:last-child{text-align:center}
.mq2{display:flex;flex-direction:column;gap:8px}
.marquee.rev .mq-track{animation-direction:reverse;animation-duration:32s}
.panel.t1 .mq2{margin-top:auto;margin-bottom:auto}

.calc .s2-out{background:var(--blue-soft);border-radius:12px;padding:12px;text-align:center;font-size:13.5px;color:var(--sub);display:flex;flex-direction:column;gap:4px}
.calc .s2-out b{color:var(--ink)}
.calc .s2-out .fin b{color:var(--blue);font-size:17px}
.calc .s2-out small{font-size:12px;color:var(--muted)}
.panel.t0{background:#F0F3FA}
.tools-panel .tile{background:#fff}
.tools-panel{min-height:0}

/* 히어로: 아파트 그림을 배경으로 은은하게 */
.hero-panel{padding-bottom:22px}
.hero-panel>*{position:relative;z-index:1}
.hero-panel img{position:absolute!important;z-index:0;left:0;right:0;bottom:0;width:100%!important;height:62%!important;margin:0!important;object-fit:cover;object-position:center bottom;opacity:.22;mix-blend-mode:screen;-webkit-mask-image:linear-gradient(to bottom,transparent,#000 45%);mask-image:linear-gradient(to bottom,transparent,#000 45%);pointer-events:none}
.hero-ex .ex-foot{font-size:11.5px;color:var(--muted);margin-top:4px}
.hero-panel img{top:0!important;height:100%!important;object-fit:cover;object-position:62% 70%;opacity:.28;mix-blend-mode:soft-light;-webkit-mask-image:linear-gradient(100deg,rgba(0,0,0,.25) 10%,#000 70%);mask-image:linear-gradient(100deg,rgba(0,0,0,.25) 10%,#000 70%)}
.hero-ex{background:rgba(255,255,255,.96)}
.hero-panel img{opacity:.42;mix-blend-mode:luminosity;object-position:70% 40%;-webkit-mask-image:linear-gradient(100deg,rgba(0,0,0,.15) 15%,#000 75%);mask-image:linear-gradient(100deg,rgba(0,0,0,.15) 15%,#000 75%)}
.hero-panel img{opacity:.6;-webkit-mask-image:linear-gradient(100deg,rgba(0,0,0,.25) 10%,#000 65%);mask-image:linear-gradient(100deg,rgba(0,0,0,.25) 10%,#000 65%)}
.sec-head.center{justify-content:center;text-align:center}
.hero-panel img{opacity:.48}

/* 계산기 안 작은 거리뷰 */
.calc .mrv{margin:0;border-radius:14px;overflow:hidden;background:#E9EDF2}
.calc .mrv-pane{height:150px}
.calc .mrv-cap{font-size:12px;color:var(--muted);text-align:center;padding:6px 8px;background:var(--paper)}

/* 푸터를 상담 상자에서 더 멀리, 맨 아래는 하단 배너에 가리지 않게 */
footer.site{margin-top:120px;padding-bottom:40px}

/* 대부업법: 상호·등록번호를 첫 화면 왼쪽 위에 */
.lawbar{background:#F3F5F7;border-bottom:1px solid var(--line);font-size:14px;line-height:1.3;color:var(--sub)}
.lawbar .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:2px 10px;padding-top:7px;padding-bottom:7px}
.lawbar b{color:var(--ink);font-weight:800;font-size:14px}
.lawbar span{white-space:nowrap}
.brand img{height:28px}
.top{top:0}
.lawbar{font-size:clamp(11px,3.2vw,14px);letter-spacing:-.02em}
.lawbar .wrap{flex-wrap:nowrap;justify-content:center;gap:0 8px;padding-top:6px;padding-bottom:6px}
.lawbar b{font-size:inherit;white-space:nowrap}
.lawbar span::before{content:'|';color:#B8C0CC;margin-right:8px}
/* ---------- 홈 v2: 3D 아이콘 중심 ---------- */
.v2{display:flex;flex-direction:column;gap:14px;text-align:center}
.v2 .ic3{display:block;object-fit:contain;filter:drop-shadow(0 6px 10px rgba(30,60,140,.14))}
.vh{position:relative;border-radius:28px;padding:22px 8px 18px;background:radial-gradient(120% 80% at 80% 0%,#CFE0FF 0%,#E4EDFF 45%,#EEF4FF 100%);display:flex;flex-direction:column;align-items:center;gap:10px;overflow:hidden;margin-top:8px}
.vh-k{margin:0;font-size:12.5px;font-weight:700;color:var(--blue);background:#fff;border-radius:999px;padding:4px 12px;box-shadow:0 2px 8px rgba(47,111,235,.12)}
.vh h1{margin:4px 0 0;font-size:clamp(23px,7vw,32px);line-height:1.32;font-weight:800;color:#111;letter-spacing:-.03em}
.vh h1 em{font-style:normal;color:var(--blue);background:linear-gradient(transparent 62%,#FFE58A 62%)}
.vh-art{position:relative;width:100%;max-width:420px;margin:4px auto 0}
.vh-art>img{width:78%;margin:0 auto;animation:vfloat 5s ease-in-out infinite;filter:drop-shadow(0 18px 24px rgba(30,60,140,.18))}
@keyframes vfloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
@media (prefers-reduced-motion:reduce){.vh-art>img{animation:none}}
.vh-card{position:relative;margin:-26px auto 0;width:min(310px,94%);background:#fff;border-radius:20px;padding:14px 14px 16px;box-shadow:0 14px 34px rgba(20,50,130,.16);display:flex;flex-direction:column;align-items:center;gap:2px}
.vh-tag{font-size:10.5px;font-weight:700;color:var(--blue);background:var(--blue-soft);border-radius:999px;padding:2px 8px}
.vh-top{display:flex;align-items:center;justify-content:center;gap:6px;max-width:100%}
.vh-loc{font-size:12px;color:var(--muted);white-space:nowrap}
.vh-apt{margin-top:0;font-size:15px;font-weight:700;color:var(--ink);letter-spacing:-.02em;white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.vh-cond{list-style:none;margin:10px 0 8px;padding:0;width:100%;display:grid;grid-template-columns:repeat(3,1fr);background:var(--card);border-radius:12px}
.vh-cond li{min-width:0;display:flex;flex-direction:column;align-items:center;gap:1px;padding:8px 2px}
.vh-cond li+li{border-left:1px solid var(--line)}
.vh-cond i{font-style:normal;font-size:11px;color:var(--muted);white-space:nowrap}
.vh-cond span{font-size:13px;font-weight:700;color:var(--ink);white-space:nowrap;letter-spacing:-.02em}
.vh-card b{font-size:26px;font-weight:800;color:var(--blue);letter-spacing:-.03em;line-height:1.25}
.vh-amt{display:inline-block;margin-top:6px;padding:2px 4px;font-size:clamp(22px,6.4vw,27px)!important;white-space:nowrap;max-width:100%;background:linear-gradient(transparent 60%,#FFE58A 60%) no-repeat 0 0/0% 100%}
.vh-amt small{font-size:.6em;font-weight:700;color:var(--sub)}
.vh-amt small+.n{margin-left:2px}
.vh-amt .n+small{margin-left:5px}
.vh-amt .n{letter-spacing:-.03em}
.vh-amt.lit{animation:vmark .7s ease-out forwards}
@keyframes vmark{to{background-size:100% 100%}}
.vh-sub{font-size:13px;color:var(--sub)}
.vh-card .ex-bar{display:block;width:100%;height:8px;border-radius:999px;background:var(--card);margin-top:8px;overflow:hidden}
.vh-card .ex-bar i{display:block;height:100%;background:linear-gradient(90deg,#2F6FEB,#6FA3FF);border-radius:999px;animation:vbar 1.4s ease-out both}
@keyframes vbar{from{width:0}}
.vh-btn{margin-top:6px;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;max-width:360px;background:var(--blue);color:#fff;text-decoration:none;font-weight:700;font-size:16.5px;border-radius:16px;padding:16px 12px;box-shadow:0 10px 22px rgba(47,111,235,.3)}
.vh-btn .ms{font-size:20px}
.vh-trust{list-style:none;margin:6px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:6px;width:100%}
.vh-trust{margin:8px 0 0;grid-template-columns:repeat(3,auto);justify-content:center;gap:8px;width:auto}
.vh-trust li{display:flex;align-items:center;gap:4px;font-size:clamp(12px,3.4vw,13.5px);font-weight:700;color:var(--blue);background:#fff;border-radius:999px;padding:6px 11px 6px 8px;box-shadow:0 2px 8px rgba(47,111,235,.10);white-space:nowrap;letter-spacing:-.02em}
.vh-trust .ms{font-size:17px;color:var(--blue)}
.vmenu{display:grid;grid-template-columns:repeat(3,1fr);gap:16px 10px;padding:0}
.vcontent{padding-top:16px;padding-bottom:12px;gap:8px}
.vm{display:flex;flex-direction:column;align-items:center;gap:8px;text-decoration:none;color:var(--ink);font-size:clamp(14px,4vw,16px);font-weight:700;white-space:nowrap}
.vm .ic3{width:min(88px,24vw);height:min(88px,24vw);background:#F3F6FB;border-radius:24px;padding:8px;transition:transform .2s}
.vm:active .ic3{transform:scale(.94)}
.vs{border-radius:26px;padding:22px 8px;display:flex;flex-direction:column;gap:14px}
.vs.t-blue{background:#E6EEFF}
.vs.t-blue#v2calc{padding:14px 8px}
#v2calc .calc{background:transparent;padding:6px 4px;margin:0}.vs.t-gray{background:#F6F7F9}.vs.t-mint{background:#EEF9F5}
.vs-head{display:flex;align-items:center;gap:12px;text-align:left}
.vs-head.center{flex-direction:column;gap:2px;text-align:center}
.vs-head h2{margin:0;font-size:19px;font-weight:800;line-height:1.35;letter-spacing:-.02em}
.vs-head p{margin:0;font-size:13.5px;color:var(--muted)}
.vs-head .ic3{width:52px;height:52px;flex:none}
.vs .cards{text-align:left}
.vs-more{display:flex;align-items:center;justify-content:center;gap:2px;font-size:14px;font-weight:700;text-decoration:none;color:var(--sub);background:#fff;border-radius:14px;padding:12px;border:1px solid var(--line)}
.vs-more .ms{font-size:18px}
.vtools{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}
.vt{display:flex;flex-direction:column;align-items:center;gap:2px;background:#fff;border-radius:20px;padding:14px 4px 12px;text-decoration:none;color:var(--ink);box-shadow:0 2px 10px rgba(20,40,90,.05);transition:transform .2s}
.vt:active{transform:scale(.97)}
.vt .ic3{width:min(64px,15vw);height:min(64px,15vw);margin-bottom:6px}
.vt b{font-size:clamp(12px,3.4vw,14.5px);font-weight:800;white-space:nowrap}
.vt span{font-size:12px;color:var(--muted)}
.vflow{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,1fr);gap:6px;position:relative}
.vflow:before{content:'';position:absolute;left:12%;right:12%;top:46px;height:2px;background:repeating-linear-gradient(90deg,#C9D8F7 0 6px,transparent 6px 12px)}
.vflow li{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px}
.vflow i{font-style:normal;font-size:11px;font-weight:800;color:#fff;background:var(--blue);border-radius:999px;width:20px;height:20px;line-height:20px;text-align:center}
.vflow img{width:min(60px,14vw);height:min(60px,14vw);border-radius:50%;background:#F2F6FF;position:relative}
.vflow b{font-size:clamp(11.5px,3.3vw,14px);font-weight:800;white-space:nowrap}
.vflow span{font-size:clamp(10px,2.8vw,12px);color:var(--muted);white-space:nowrap}
.vqs{display:flex;flex-direction:column;gap:8px}
.vq{display:flex;align-items:center;gap:10px;background:#F6F7F9;border-radius:16px;padding:13px 14px;text-decoration:none;color:var(--ink);text-align:left}
.vq span{flex:none;width:26px;height:26px;border-radius:9px;background:var(--blue);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.vq b{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.v2 .mq2{margin:0 -8px}
/* 입력칸·선택칸이 입력하는 곳임을 알 수 있게: 테두리 + 연필/화살표, 기본값은 연하게 */
.calc .inwrap{position:relative;border:1.5px solid #C9D8F7;padding:0 14px;gap:4px;justify-content:center}
.calc .inwrap input{min-width:2ch;flex:0 0 auto;text-align:center;text-align-last:center;font-variant-numeric:tabular-nums}
.calc .inwrap:after{content:'';position:absolute;right:12px;top:50%;width:20px;height:20px;margin-top:-10px;border-radius:6px;background:#EAF1FE url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%232F6FEB' d='M4 17.2V20h2.8l8.3-8.3-2.8-2.8L4 17.2zm13.7-7.6c.4-.4.4-1 0-1.4l-1.9-1.9c-.4-.4-1-.4-1.4 0l-1.3 1.3 2.8 2.8 1.8-.8z'/%3E%3C/svg%3E") center/14px no-repeat}
.calc .inwrap:focus-within{border-color:var(--blue);outline:0}
.calc .inwrap input:not(.ed){color:#A0A8B3}
.calc select{border:1.5px solid #C9D8F7;-webkit-appearance:none;appearance:none;padding-right:40px;padding-left:40px;background:var(--paper) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%232F6FEB' d='M7 10l5 5 5-5z'/%3E%3C/svg%3E") right 12px center/22px no-repeat}
.calc select:focus{border-color:var(--blue);outline:0}
.optchips{display:grid;grid-template-columns:repeat(2,1fr);gap:8px;margin-top:4px}
.optchips label{min-width:0}
.optchips label{cursor:pointer}
.optchips input{position:absolute;opacity:0;width:1px;height:1px}
.optchips span{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;font-size:clamp(13px,3.8vw,15px);font-weight:700;color:var(--sub);background:var(--paper);border:1.5px solid #C9D8F7;border-radius:14px;padding:12px 4px;white-space:nowrap;box-shadow:0 2px 6px rgba(47,111,235,.08)}
.optchips span:before{content:'';width:14px;height:14px;border-radius:4px;border:1.5px solid #B9C3D0;background:#fff}
.optchips input:checked+span{color:#fff;border-color:var(--blue);background:var(--blue);box-shadow:0 6px 14px rgba(47,111,235,.28)}
.optchips input:checked+span:before{border-color:#fff;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/12px no-repeat}
.optchips input:focus-visible+span{outline:2px solid var(--blue);outline-offset:2px}
.vflow .ic3{width:min(60px,14vw);height:min(60px,14vw);background:#fff;border-radius:50%;padding:6px;position:relative}
.vflow:before{top:30px}
.vq{align-items:center}
.vq .vq-q{flex:none;width:26px;height:26px;border-radius:9px;background:var(--blue);color:#fff;font-weight:800;font-size:13px;display:flex;align-items:center;justify-content:center}
.vq span.vq-t{all:unset;display:flex;flex-direction:column;gap:2px;min-width:0;flex:1}
.vq-t b{font-size:15px;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vq-t em{font-style:normal;font-size:13px;color:#8B95A1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.vq-t em i{font-style:normal;font-weight:800;color:var(--mint);margin-right:6px}
.calc select:not(.ed){color:#A0A8B3}
.optchips{flex-wrap:nowrap;gap:4px}
.optchips label{flex:0 1 auto;min-width:0}
.optchips span{font-size:clamp(11px,3.1vw,13.5px);padding:6px 8px;gap:3px;letter-spacing:-.03em}
.optchips span:before{width:12px;height:12px;flex:none}
.vh h1 .vh-pre{font-size:.62em;font-weight:700;color:var(--sub);letter-spacing:-.02em}

/* 아파트 검색칸: 안내문이 옆으로 흐른다 (입력하거나 누르면 사라짐) */
.calc label.f.has-flow{position:relative}
.ph-flow{position:absolute;left:14px;right:48px;bottom:0;height:54px;display:flex;align-items:center;overflow:hidden;pointer-events:none;color:#A0A8B3;font-size:15px;white-space:nowrap;mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.ph-flow i{font-style:normal;padding-right:48px;animation:phflow 14s linear infinite}
.ph-flow.off,.has-flow input:focus~.ph-flow,.has-flow input:not(:placeholder-shown)~.ph-flow{display:none}
@keyframes phflow{to{transform:translateX(-100%)}}
@media (prefers-reduced-motion:reduce){.ph-flow i{animation:none}}

/* 아파트 검색칸도 다른 입력칸처럼 둥근 테두리 상자 */
.calc input[type=search]{border:1.5px solid #C9D8F7;border-radius:14px;background:var(--paper);padding-right:48px;min-height:54px}
.calc label.f.has-flow:after{content:'';position:absolute;right:12px;bottom:16px;width:22px;height:22px;border-radius:7px;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M4 17.2V20h2.8l8.3-8.3-2.8-2.8L4 17.2zm13.7-7.6c.4-.4.4-1 0-1.4l-1.9-1.9c-.4-.4-1-.4-1.4 0l-1.3 1.3 2.8 2.8 1.8-.8z'/%3E%3C/svg%3E") center/15px no-repeat;pointer-events:none;animation:inpulse 1.8s ease-in-out infinite}
.calc label.f.has-flow:focus-within:after{animation:none}
@keyframes inpulse{0%,100%{box-shadow:0 0 0 0 rgba(47,111,235,.45)}60%{box-shadow:0 0 0 8px rgba(47,111,235,0)}}
@media (prefers-reduced-motion:reduce){.calc label.f.has-flow:after{animation:none}}
.calc input[type=search]:focus{border-color:var(--blue);outline:0}
.calc label.f small{white-space:nowrap}

/* 계산기 머리 문구: 말풍선 모양(아래 꼬리), 파란 바탕 흰 글씨 */
.calc-h{position:relative;margin-bottom:6px}
.calc-h span{position:relative;background:linear-gradient(135deg,#2F6FEB,#4F8BFF);color:#fff;border-radius:14px;padding:11px 20px;font-size:clamp(14px,4.1vw,16.5px);font-weight:700;letter-spacing:-.02em;box-shadow:0 8px 18px rgba(47,111,235,.25);overflow:visible}
.calc-h span:after{content:'';position:absolute;left:50%;bottom:-7px;width:14px;height:14px;margin-left:-7px;background:#4A86FC;transform:rotate(45deg);border-radius:3px}

/* 예시 카드 결과 줄: 왼쪽 사람 픽토그램 + 금액 */
.vh-res{display:flex;align-items:center;justify-content:center;gap:10px;margin-top:4px}
.vh-res>div{display:flex;flex-direction:column;align-items:center;gap:2px}
.vh-res .vh-amt{margin-top:0}
.vh-who{flex:none;display:flex;flex-direction:column;align-items:center;gap:2px}
.vh-who img{width:72px;height:72px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(30,60,140,.16))}
.vh-who i{font-style:normal;font-size:11px;font-weight:700;color:var(--sub);white-space:nowrap}
.vh-pre2{font-size:12.5px;font-weight:700;color:var(--sub);white-space:nowrap}

/* 단지 글 계산기: 질문 한 줄(굵게) + 말풍선 */
.article .calc-h>div{display:flex;flex-direction:column;align-items:center;gap:8px}
.article .calc-h b{display:block;font-size:clamp(15px,4.3vw,17px);font-weight:800;color:var(--ink);letter-spacing:-.02em;white-space:normal;word-break:keep-all;line-height:1.4;max-width:100%}

/* 거리뷰: 누르기 전 자리표시 버튼 */
.calc .mrv.mrv-wait{background:linear-gradient(135deg,#E6EEFF,#F3F6FB)}
.calc .mrv.mrv-wait .mrv-pane{height:auto}
.mrv-btn{width:100%;min-height:88px;border:0;background:transparent;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;cursor:pointer;padding:14px 10px;font-family:inherit}
.mrv-btn img{width:56px;height:56px;object-fit:contain;filter:drop-shadow(0 4px 8px rgba(30,60,140,.14))}
.mrv-btn b{font-size:15px;font-weight:800;color:var(--ink);white-space:nowrap;max-width:100%;overflow:hidden;text-overflow:ellipsis}
.mrv-btn>span:last-child{font-size:12.5px;color:var(--blue);font-weight:700;border:1.5px solid var(--blue);border-radius:999px;padding:4px 12px;margin-top:4px}

/* 폴드·태블릿처럼 넓은 화면: 홈 전체를 폰 화면 비슷한 폭(600px)으로 가운데 모아, 위(제목·예시 카드)와 아래(계산기·목록) 폭이 같아 보이게 */
@media (min-width:600px){
  .v2{max-width:600px;margin-left:auto;margin-right:auto;width:100%}
  .vh-art{max-width:100%}
  .vh-art>img{width:60%}
  .vh-card{width:100%;max-width:560px}
  .vh-cond i{font-size:13px}.vh-cond span{font-size:15px}
  .vh-amt{font-size:30px!important}
  .vh h1{font-size:30px}
}
.optnote{margin:2px 4px 0;font-size:12.5px;line-height:1.5;color:var(--muted);text-align:center;word-break:keep-all}
/* 예시 글자 색 통일: 입력칸 placeholder = 선택칸 기본값 색 */
.calc input::placeholder{color:#A0A8B3;opacity:1}

/* ================= 홈 v3: GPT 시안 참고 (2026-11-01) ================= */
:root{--body:"Pretendard Variable",Pretendard,"Noto Sans KR",-apple-system,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--blue:#244be2;--blue-soft:#eaf0ff;--ink:#172b47;--sub:#3d4d61;--muted:#596879;--line:#dfe5ed}
body{letter-spacing:-.02em}
.v3{gap:0}
.v3 .vs{border-radius:0;padding:44px 20px;margin:0 calc(50% - 50vw);padding-left:max(20px,calc(50vw - 300px));padding-right:max(20px,calc(50vw - 300px));text-align:left;gap:18px;background:#fff}
.v3 .vs.t-gray,.v3 .vfaq{background:#f6f8fc}
.v3 .vs.vg:nth-of-type(odd){background:#f7f6f2}
.v3 .sec-head{display:flex;flex-direction:column;gap:8px;text-align:left}
.v3 .eyebrow{font-size:13px;font-weight:700;color:var(--blue);letter-spacing:-.01em}
.v3 .sec-head h2{margin:0;font-size:clamp(24px,6.6vw,30px);line-height:1.3;font-weight:800;color:var(--ink);letter-spacing:-.04em;word-break:keep-all}
.v3 .sec-head p{margin:0;font-size:15px;color:var(--muted)}
.v3 .text-link{align-self:flex-start;font-size:14.5px;font-weight:700;color:var(--blue);text-decoration:none}
/* 히어로 */
.v3 .vh{border-radius:0 0 28px 28px;margin-top:0}
.v3 .vh h1{font-size:clamp(28px,8vw,36px);font-weight:800;letter-spacing:-.05em;color:var(--ink)}
.v3 .vh h1 em{color:var(--blue)}
.v3 .vh-trust li{color:var(--ink);font-weight:600}
.v3 .vh-trust .ms{color:var(--blue)}
/* 계산기 구역 */
.v3 #v2calc{background:#f3f6fc}
.v3 #v2calc .calc{background:#fff;border:1px solid var(--line);border-radius:22px;padding:22px 16px;box-shadow:0 10px 30px rgba(16,36,67,.06)}
.v3 .calc-h span{background:var(--blue);border-radius:12px;box-shadow:none}
.v3 .calc-h span:after{background:var(--blue)}
.v3 .calc .out{background:#102443;color:#fff;border-radius:18px}
.v3 .calc .out *{color:inherit}
.v3 .calc .out .rows>*{border-color:rgba(255,255,255,.14)}
.v3 .calc .out .tag-ex{background:rgba(255,255,255,.14)}
/* FAQ */
.v3 .fqs{display:flex;flex-direction:column;border-top:1px solid var(--line)}
.v3 .fq{border-bottom:1px solid var(--line)}
.v3 .fq summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:20px 2px;font-size:16.5px;font-weight:700;color:var(--ink)}
.v3 .fq summary::-webkit-details-marker{display:none}
.v3 .fq summary:after{content:'+';flex:none;font-size:24px;font-weight:400;color:var(--muted);line-height:1;transition:transform .2s}
.v3 .fq[open] summary:after{transform:rotate(45deg)}
.v3 .fq>div{padding:0 2px 20px}
.v3 .fq p{margin:0 0 10px;font-size:15px;line-height:1.7;color:var(--sub)}
.v3 .fq a{font-size:14px;font-weight:700;color:var(--blue);text-decoration:none}
/* 진행 순서 */
.v3 .plist{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.v3 .plist li{display:flex;gap:20px;padding:20px 2px;border-bottom:1px solid var(--line)}
.v3 .plist li>span{flex:none;width:28px;font-size:14px;font-weight:800;color:var(--blue);padding-top:3px}
.v3 .plist h3{margin:0 0 4px;font-size:19px;font-weight:800;color:var(--ink)}
.v3 .plist p{margin:0;font-size:15px;color:var(--muted)}
/* 가이드 카드 (알고 선택하는 대출 스타일) */
.v3 .gcards{display:flex;flex-direction:column;gap:14px}
.v3 .gcard{display:flex;min-height:180px;background:#fff;border:1px solid var(--line);border-radius:20px;overflow:hidden;text-decoration:none;color:var(--ink);transition:transform .2s,box-shadow .2s}
.v3 .gcard:active{transform:scale(.99)}
.v3 .gart{flex:0 0 34%;background:#eef2fb;display:flex;align-items:center;justify-content:center;overflow:hidden}
.v3 .gart img{width:100%;height:100%;object-fit:cover}
.v3 .gtext{position:relative;flex:1;min-width:0;padding:18px 16px 40px;display:flex;flex-direction:column;gap:8px}
.v3 .gtext>span{font-size:12.5px;color:var(--muted)}
.v3 .gtext h3{margin:0;font-size:17px;line-height:1.42;font-weight:800;letter-spacing:-.03em;word-break:keep-all;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.v3 .gtext p{margin:0;font-size:13.5px;line-height:1.5;color:var(--muted);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.v3 .gtext i{position:absolute;right:16px;bottom:14px;font-style:normal;font-size:20px;color:var(--blue)}
/* 컨텐츠 메뉴·계산기 */
.v3 .vm .ic3,.v3 .vt .ic3{background:#f3f6fc}
.v3 .vs-more{color:var(--blue)}
@media (min-width:600px){.v3 .vs{padding-top:56px;padding-bottom:56px}}
.v3 .vs{align-items:stretch}
.v3 .sec-head,.v3 .sec-head h2,.v3 .sec-head p{text-align:left;align-items:flex-start}
.v3 .calc .out .rows *{color:rgba(255,255,255,.72)!important}
.v3 .calc .out .rows b,.v3 .calc .out .rows strong{color:#fff!important}
.v3 .calc .out .tag-ex{color:#fff!important}
.v3 .plist li{align-items:center}
.v3 .plist li>div{flex:1}
.v3 .plist .ic3{flex:none;width:60px;height:60px;background:#f3f6fc;border-radius:18px;padding:6px}
.v3 .sec-head.has-ic{flex-direction:row;align-items:center;gap:14px}
.v3 .sec-head.has-ic>div{display:flex;flex-direction:column;gap:6px;min-width:0}
.v3 .sec-head.has-ic .ic3{flex:none;width:60px;height:60px;background:#fff;border-radius:18px;padding:6px}
.v3 .sec-head.has-ic h2{font-size:clamp(20px,5.6vw,26px)}
.v3 .sec-head.has-ic{justify-content:flex-start}
.v3 .sec-head.has-ic>div{flex:1;align-items:flex-start;text-align:left}
.v3 .sec-head.has-ic>div *{text-align:left}
.v3 .sec-head.has-ic>.ic3{display:none}
/* 바로 상담 시트 (하단 바 → 아파트·이름·연락처) */
.qk{position:fixed;inset:0;z-index:1000;display:flex;align-items:flex-end;justify-content:center}
.qk[hidden]{display:none}
.qk-bg{position:absolute;inset:0;background:rgba(16,36,67,.5)}
.qk-panel{position:relative;width:100%;max-width:520px;background:#fff;border-radius:24px 24px 0 0;padding:28px 22px calc(22px + env(safe-area-inset-bottom));display:flex;flex-direction:column;gap:12px;animation:qkup .28s ease-out;max-height:92vh;overflow:auto}
@keyframes qkup{from{transform:translateY(40px);opacity:0}}
.qk-x{position:absolute;right:14px;top:12px;width:40px;height:40px;border:0;background:none;font-size:28px;color:#8a95a5;cursor:pointer}
.qk-eyebrow{font-size:13px;font-weight:700;color:var(--blue)}
.qk-panel h2{margin:0;font-size:24px;line-height:1.32;font-weight:800;color:var(--ink);letter-spacing:-.04em}
.qk-sub{margin:0 0 6px;font-size:15px;line-height:1.6;color:var(--muted)}
.qk-panel label{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:700;color:var(--ink)}
.qk-panel input[type=text],.qk-panel input[type=tel]{height:54px;border:1.5px solid var(--line);border-radius:14px;padding:0 16px;font:500 17px/1 var(--body);color:var(--ink);background:#fff}
.qk-panel input:focus{outline:0;border-color:var(--blue)}
.qk-panel input::placeholder{color:#A0A8B3}
.qk-agree{flex-direction:row!important;align-items:center;gap:8px!important;font-weight:500!important;font-size:13px!important;color:var(--muted)!important}
.qk-agree input{width:20px;height:20px;accent-color:var(--blue)}
.qk-err{margin:0;color:#d93b3b;font-size:13.5px}.qk-ok{margin:0;color:#0f9f77;font-weight:700;font-size:14px}
.qk-btn{margin-top:4px;width:100%;border:0;cursor:pointer;font-family:var(--body)}
.qk-btn:disabled{opacity:.6}
.qk-panel label small{font-weight:500;color:var(--muted);font-size:12.5px;margin-left:4px}
.qk-sub{font-size:14.5px;word-break:keep-all}
/* 로고: 마크 + 글자 (GPT 시안과 같은 구성) */
.brand{gap:9px}
.brand img{height:34px!important;width:34px!important}
.brand-t{display:flex;flex-direction:column;font-size:20px;font-weight:800;letter-spacing:-.05em;line-height:1.15;color:var(--ink);white-space:nowrap}
.brand-t em{font-style:normal;color:var(--blue)}
.brand-t small{display:block;font-size:8.5px;letter-spacing:.17em;margin-top:3px;font-weight:700;color:#738095}
.brand-t{display:block}
/* 글꼴: 각 폰의 기본 글꼴(삼성·아이폰 시스템 글꼴) */
:root{--body:-apple-system,BlinkMacSystemFont,system-ui,"Apple SD Gothic Neo","Malgun Gothic","Noto Sans KR",sans-serif}
.brand-t img{display:block;height:30px!important;width:auto!important}
.brand-t small{margin:2px 0 0 38px}
/* 부제 위치: 로고 글자(주담대연구소) 시작점과 폭에 정확히 맞춤 (로고 높이 30px 기준 글자 시작 37px, 폭 94px) */
.brand-t small{margin:3px 0 0 37px;width:94px;font-size:7.5px;letter-spacing:0;text-align:justify;text-align-last:justify;white-space:nowrap}
.brand-t small{text-align:left;text-align-last:auto;letter-spacing:1.55px;width:auto}
.brand-t small{letter-spacing:1.05px}
/* 상담칸 설득 문구 */
.lead-why{text-align:left;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:16px;margin:4px 0 6px}
.lw-h{margin:0 0 6px;font-size:16px;font-weight:800;color:#fff}
.lw-p{margin:0 0 12px;font-size:13.5px;line-height:1.6;color:rgba(255,255,255,.75);word-break:keep-all}
.lw-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
.lw-list li{position:relative;padding-left:28px;display:flex;flex-direction:column;gap:1px}
.lw-list li:before{content:'';position:absolute;left:0;top:2px;width:20px;height:20px;border-radius:50%;background:#2fd08f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%23fff' d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/13px no-repeat}
.lw-list b{font-size:14.5px;color:#fff}
.lw-list span{font-size:13px;line-height:1.5;color:rgba(255,255,255,.7);word-break:keep-all}
.lw-foot{margin:2px 0 0;text-align:center;font-size:12px;color:rgba(255,255,255,.55)}
.leadbox label.f small{color:rgba(255,255,255,.6)}
.lw-p{margin-bottom:10px}.lw-list{gap:8px}.lead-why{padding:14px 16px}

/* ================= PC 화면(900px 이상) 배치 — GPT 3번째 시안 참고 ================= */
.desktop-nav{display:none}
@media (min-width:900px){
  .wrap{max-width:1120px}
  .top .wrap{display:flex;align-items:center;gap:24px}
  .desktop-nav{display:flex;gap:28px;margin-left:auto}
  .desktop-nav a{font-size:15px;font-weight:600;color:var(--ink);text-decoration:none}
  .desktop-nav a:hover{color:var(--blue)}
  .top-actions{margin-left:8px}
  .v2,.v2.v3{max-width:1120px}
  .v3 .vs{padding:80px max(32px,calc(50vw - 560px))}
  /* 히어로: 왼쪽 글, 오른쪽 그림+예시 카드 */
  .v3 .vh{display:grid;grid-template-columns:1.05fr 1fr;grid-template-rows:auto auto 1fr;column-gap:56px;align-items:start;text-align:left;padding:72px 48px 64px;border-radius:0 0 36px 36px;margin:0 calc(50% - 50vw);padding-left:max(48px,calc(50vw - 560px));padding-right:max(48px,calc(50vw - 560px))}
  .v3 .vh h1{grid-column:1;grid-row:1;font-size:52px;line-height:1.22;text-align:left;margin-top:40px}
  .v3 .vh-trust{grid-column:1;grid-row:2;justify-content:flex-start;margin-top:28px}
  .v3 .vh-art{grid-column:2;grid-row:1/4;max-width:none;width:100%;margin:0;background:#fff;border-radius:32px;padding:28px;box-shadow:0 24px 60px rgba(16,36,67,.10)}
  .v3 .vh-art>img{width:62%}
  .v3 .vh-card{width:100%;max-width:none;box-shadow:none;border:1px solid var(--line)}
  /* 계산기: 가운데 넓은 카드 */
  .v3 #v2calc .calc{max-width:720px;margin:0 auto;width:100%;padding:32px 36px}
  /* FAQ: 왼쪽 제목, 오른쪽 질문 */
  .v3 .vfaq{display:grid;grid-template-columns:1fr 1.4fr;column-gap:72px;align-items:start}
  .v3 .vfaq .sec-head{position:sticky;top:110px}
  .v3 .vfaq .sec-head h2{font-size:38px}
  /* 진행 순서: 4칸 카드 */
  .v3 .plist{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;border-top:0}
  .v3 .plist li{flex-direction:column;align-items:flex-start;gap:12px;border:1px solid var(--line);border-radius:20px;padding:24px;background:#fff;min-height:190px;position:relative}
  .v3 .plist .ic3{position:absolute;right:20px;top:20px}
  .v3 .sec-head h2{font-size:38px}
  /* 계산기 모음: 4칸 */
  .v3 .vtools{grid-template-columns:repeat(4,1fr);gap:16px}
  .v3 .vs-more{align-self:flex-start;width:auto;border:0;padding:0}
  /* 가이드 카드: 2칸, 그림 위 글 아래 */
  .v3 .gcards{display:grid;grid-template-columns:1fr 1fr;gap:20px}
  .v3 .gcard{flex-direction:column;min-height:0}
  .v3 .gart{flex:none;aspect-ratio:16/8}
  .v3 .gtext{padding:22px 24px 52px}
  .v3 .gtext h3{font-size:20px}
  /* 상담칸: 왼쪽 문구, 오른쪽 입력 */
  .leadbox{display:grid!important;grid-template-columns:1fr 1fr;column-gap:48px;align-items:start;padding:48px!important;max-width:1120px;margin:80px auto!important}
  .leadbox>h2,.leadbox>.lead-amt,.leadbox>.lead-copy{grid-column:1;text-align:left!important}
  .leadbox>h2{font-size:32px}
  .leadbox>form{grid-column:2;grid-row:1/5;background:rgba(255,255,255,.06);border-radius:20px;padding:24px}
  /* 하단 따라다니는 바: 가운데 카드처럼 */
  .magnet .wrap{max-width:820px}
  /* 글·계산기 페이지 본문은 읽기 좋은 폭 유지 */
  main.wrap>article,.post-page main.wrap,.tool-page main.wrap{max-width:760px;margin-left:auto;margin-right:auto}
}
@media (min-width:900px) and (max-width:1100px){.v3 .vh h1{font-size:42px}.v3 .plist{grid-template-columns:repeat(2,1fr)}}
/* 글 카드: 글자 없는 그림 위, 제목 아래 (참고 시안처럼) */
.v3 .gcard{flex-direction:column;min-height:0}
.v3 .gart{flex:none;aspect-ratio:16/9;width:100%;border-radius:0}
.v3 .gart img{width:100%;height:100%;object-fit:cover}
.v3 .gtext{padding:16px 18px 44px}
.v3 .gtext h3{font-size:18px}

/* ===== 2026-11-03 수정 ===== */
/* #2 로고: 부제를 로고 그림의 글자 위치에 비율로 맞춤(그림 높이 기준) */
.brand-t{--lh:30px}
.brand-t img{height:var(--lh)!important}
.brand-t small{margin:3px 0 0 calc(var(--lh) * 1.24)!important;font-size:calc(var(--lh) * .25)!important;letter-spacing:calc(var(--lh) * .035)!important;width:auto}
@media (max-width:599px){.brand-t{--lh:28px}}
/* #7 PC 화면 크기: GPT 3번째 시안과 같은 크기(본문 17px, 폭 1160px) */
@media (min-width:900px){
  body{--fs-body:17px}
  .wrap,.v2,.v2.v3,.leadbox{max-width:1160px}
  .v3 .vs{padding-left:max(32px,calc(50vw - 580px));padding-right:max(32px,calc(50vw - 580px))}
  .v3 .vh{padding-left:max(48px,calc(50vw - 580px));padding-right:max(48px,calc(50vw - 580px));min-height:600px;column-gap:60px}
  .v3 .vh h1{font-size:49px}
  .v3 .vtools{grid-template-columns:repeat(4,1fr)}
  /* #29 상담칸: 제목이 한 단어씩 떨어지지 않게 */
  .leadbox>h2{font-size:30px;word-break:keep-all;line-height:1.35}
  .lsheet-panel .leadbox{display:flex!important;max-width:none;margin:0!important;padding:24px 28px!important}
  .lsheet-panel .leadbox>form{background:none;padding:0}
  .lsheet-panel{max-width:600px}
}
/* #8 결과 상자: 남색 → 사이트 파란 계열 */
.v3 .calc .out{background:linear-gradient(160deg,#244be2 0%,#3a63f0 60%,#4f7cff 100%);box-shadow:0 14px 34px rgba(36,75,226,.22)}
.v3 .calc .out .rows *{color:rgba(255,255,255,.8)!important}
.v3 .calc .out .rows b,.v3 .calc .out .rows strong{color:#fff!important}
.v3 .calc .out .tag-ex{background:rgba(255,255,255,.2)}
/* #23·모두 보기 링크: 가운데 정렬 */
.v3 .vs-more,.v3 .text-link{align-self:center!important;margin-left:auto;margin-right:auto;text-align:center}
@media (min-width:900px){.lsheet-panel .leadbox>form,.lsheet-panel .leadbox>*{width:100%;align-self:stretch}.lsheet-panel .leadbox>h2,.lsheet-panel .leadbox>.lead-copy{text-align:center!important}}
/* #1 배경 색감: GPT 시안 팔레트 적용 */
.v3 .vh{background:radial-gradient(circle at 78% 16%,rgba(36,75,226,.13),transparent 28%),linear-gradient(180deg,#f7faff 0%,#ffffff 74%)!important;overflow:hidden;position:relative}
.v3 .vh::before{content:"";position:absolute;inset:auto -70px -120px auto;width:230px;height:230px;border-radius:50%;background:rgba(36,75,226,.07);pointer-events:none}
.v3 .vs{background:#fff}
.v3 .vs.t-gray,.v3 .vfaq{background:#f6f8fc}
.v3 .vs.vg:nth-of-type(odd){background:#f8f7f3}
.v3 #v2calc,.v3 .vs.t-blue#v2calc{background:#f2f6fd!important}
.v3 #v2calc .calc{background:#fff;border:1px solid var(--line);box-shadow:0 6px 18px rgba(23,43,71,.06)}
.v3 .eyebrow{display:inline-flex;align-items:center;min-height:28px;padding:0 10px;border-radius:999px;background:#eef3ff;color:var(--blue);font-size:12px;font-weight:800}
:root{--blue-soft:#eef3ff;--paper:#f6f8fc}
/* 법정 표시 띠: 메뉴 머리말과 같은 높이, 글자 키움 */
.lawbar .wrap{min-height:56px;padding-top:0;padding-bottom:0;align-items:center}
.lawbar{font-size:clamp(13px,3.6vw,16px)}
.lawbar b{font-size:inherit}
@media (min-width:900px){.lawbar .wrap{min-height:66px}.top>.wrap{min-height:66px}.lawbar{font-size:16px}}

/* 접수 완료 팝업 */
.done{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px}
.done[hidden]{display:none}
.done-bg{position:absolute;inset:0;background:rgba(15,23,42,.5)}
.done-box{position:relative;width:100%;max-width:360px;background:#fff;border-radius:22px;padding:30px 24px 22px;text-align:center;box-shadow:0 20px 50px rgba(15,23,42,.25);animation:donein .22s ease-out}
.done-ic{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:#e8f0ff;color:#2563eb;margin-bottom:14px}
.done-box h2{margin:0 0 10px;font-size:22px;font-weight:800;letter-spacing:-.04em;color:var(--ink,#111)}
.done-box p{margin:0;font-size:15.5px;line-height:1.6;color:#4b5563}
.done-box .done-note{margin-top:10px;font-size:13.5px;color:#6b7280}
.done-btn{width:100%;margin-top:20px;min-height:52px;font-size:17px}
@keyframes donein{from{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.done-box{animation:none}}
