/* 런칠리 세이지 공통 스타일 — 메인·서비스·실측표·대상·운영사·FAQ·신청 페이지가 같이 씀(10/27 메인 index.html 에서 옮김) */
/* v4 (10/27 병근 「B2B 서비스 SEO 전문 업체 느낌」) — 컨설팅사 톤 : 표·숫자·방법론. 동네 가게는 「소상공인 플랜」 한 칸 */
/* v3 (10/24 병근 「디자인 아쉽고 전문성 떨어지고 AI스럽다」) — 종이·세리프·손글씨 걷어내고 측정 서비스 톤으로 */
:root{
  --bg:#fff; --soft:#f5f6f4; --ink:#0f1311; --sub:#525955; --faint:#8a918d; --line:#e3e6e3;
  --acc:#1f6b4a; --acc-soft:#e9f2ed; --miss:#e4e7e4; --warn:#b5482f;
  --mono:"JetBrains Mono",ui-monospace,monospace;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:Pretendard,-apple-system,sans-serif;background:var(--bg);color:var(--ink);line-height:1.65;font-size:16px;word-break:keep-all;-webkit-font-smoothing:antialiased}
a{color:inherit}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.mono{font-family:var(--mono)}
.eyebrow{font-size:13px;font-weight:700;letter-spacing:.02em;color:var(--acc);text-transform:uppercase}
h1,h2,h3{letter-spacing:-.025em;font-weight:800}
h1{font-size:clamp(34px,4.6vw,56px);line-height:1.22}
h2{font-size:clamp(26px,3vw,38px);line-height:1.3;margin-top:12px}
h3{font-size:18px;line-height:1.4}
.lead{font-size:clamp(16px,1.6vw,18px);color:var(--sub);margin-top:18px;max-width:620px}
.src{font-size:12.5px;color:var(--faint);margin-top:10px}
.src a{text-decoration:underline;text-underline-offset:2px}
section{padding:104px 0;border-top:1px solid var(--line)}
section.soft{background:var(--soft)}

/* 버튼 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--ink);color:#fff;text-decoration:none;font-weight:700;padding:14px 22px;border-radius:8px;font-size:15.5px;border:0;cursor:pointer;font-family:inherit;transition:background .15s}
.btn:hover{background:#2a302d}
.btn.line{background:transparent;color:var(--ink);box-shadow:inset 0 0 0 1px #c9cec9}
.btn.line:hover{background:var(--soft)}
.btn.sm{padding:9px 14px;font-size:14px}

/* 머리 */
header{position:sticky;top:0;z-index:10;background:rgba(255,255,255,.92);backdrop-filter:saturate(1.4) blur(8px);border-bottom:1px solid var(--line)}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:64px;gap:20px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand i{width:22px;height:22px;border-radius:5px;background:var(--acc);display:grid;grid-template-columns:1fr 1fr;gap:2px;padding:4px}
.brand i b{background:#fff;border-radius:1px}.brand i b:nth-child(2){opacity:.35}
.brand span{font-weight:800;font-size:16px;letter-spacing:-.01em}
.brand small{font-family:var(--mono);font-size:11px;color:var(--faint);font-weight:500;margin-left:2px}

/* 첫 화면 */
.hero{padding:88px 0 96px;border-top:0}
.hero-grid{display:grid;grid-template-columns:1.02fr 1fr;gap:64px;align-items:center}
.hero h1 em{font-style:normal;color:var(--acc)}
.cta{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}
.engines{margin-top:40px;padding-top:20px;border-top:1px solid var(--line);display:grid;grid-template-columns:auto 1fr;gap:6px 16px;font-size:13.5px;color:var(--sub)}
.engines dt{font-family:var(--mono);font-size:11.5px;color:var(--faint);padding-top:2px}

/* 리포트 패널 */
.panel{border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:0 1px 2px rgba(15,19,17,.04),0 12px 32px -12px rgba(15,19,17,.12);overflow:hidden}
.panel-top{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;border-bottom:1px solid var(--line);font-size:13px}
.panel-top b{font-weight:700}
.panel-top span{font-family:var(--mono);font-size:11.5px;color:var(--faint)}
.score{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid var(--line)}
.score>div{padding:16px 18px;border-right:1px solid var(--line)}
.score>div:last-child{border-right:0}
.score small{display:block;font-size:12px;color:var(--sub)}
.score .n{font-family:var(--mono);font-weight:700;font-size:26px;line-height:1.2;margin-top:4px}
.score .n span{font-size:13px;color:var(--faint);font-weight:500}
.bar{height:4px;background:var(--miss);border-radius:2px;margin-top:10px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--acc)}
.score .low .n{color:var(--warn)}.score .low .bar i{background:var(--warn)}
.qs{width:100%;border-collapse:collapse;font-size:13.5px}
.qs th{font-family:var(--mono);font-size:10.5px;font-weight:500;color:var(--faint);text-align:center;padding:10px 4px 6px;width:52px;letter-spacing:.04em}
.qs th:first-child{text-align:left;padding-left:18px;width:auto}
.qs td{padding:10px 4px;border-top:1px solid var(--line);text-align:center;line-height:1.4}
.qs td:first-child{text-align:left;padding-left:18px;color:#26302b}
.qs tr.flag td{background:#fdf6f3}
.qs tr.flag td:first-child{box-shadow:inset 3px 0 0 var(--warn)}
.panel-foot{display:flex;justify-content:space-between;padding:12px 18px;border-top:1px solid var(--line);font-size:12.5px;color:var(--sub);background:var(--soft)}
.panel-foot b{color:var(--warn)}

/* 칸 표시 (측정표 공통) — ○ 나옴 / × 안 나옴 */
td.o,td.x{font-size:0}
td.o::before,td.x::before{content:"";display:inline-block;width:14px;height:14px;border-radius:3px;vertical-align:middle}
td.o::before{background:var(--acc)}
td.x::before{background:var(--miss)}

/* 시장 */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:48px;border-top:1px solid var(--ink)}
.stats>div{padding:28px 28px 0 0}
.stats>div+div{padding-left:28px;border-left:1px solid var(--line)}
.stats .n{font-family:var(--mono);font-weight:700;font-size:40px;letter-spacing:-.03em;line-height:1.1}
.stats p{color:var(--sub);font-size:15px;margin-top:12px}

/* 시작한 이유 */
.story{display:grid;grid-template-columns:340px 1fr;gap:72px;align-items:start}
.story .big{margin-top:28px;display:grid;gap:14px}
.story .big div{display:flex;justify-content:space-between;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:12px;font-size:14px;color:var(--sub)}
.story .big b{font-family:var(--mono);font-size:30px;color:var(--ink)}
.story .big .low b{color:var(--warn)}
.story .text p{font-size:17px;color:#2b332f;margin-top:18px}
.story .text p:first-child{margin-top:0}
.story .who{margin-top:28px;font-size:14px;color:var(--sub)}
.story .who b{color:var(--ink);font-size:15px;margin-right:8px}

/* 하는 일 */
.steps{margin-top:48px;border-top:1px solid var(--ink)}
.steps li{list-style:none;display:grid;grid-template-columns:80px 1fr 260px;gap:32px;padding:30px 0;border-bottom:1px solid var(--line)}
.steps .no{font-family:var(--mono);font-weight:700;font-size:14px;color:var(--acc)}
.steps .no small{display:block;font-weight:500;color:var(--faint);font-size:11.5px;margin-top:4px}
.steps p{color:var(--sub);font-size:15.5px;margin-top:6px}
.steps .get{font-size:14.5px;align-self:start;background:var(--soft);border-radius:8px;padding:12px 14px}
.steps .get span{display:block;font-size:12px;color:var(--faint);font-weight:600;margin-bottom:2px}
.map{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:14px;max-width:560px}
.map div{border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-size:13px;background:#fff}
.map b{display:block;font-size:13.5px}
.map span{font-family:var(--mono);font-size:11px;color:var(--faint)}

/* 전체 측정표 */
.legend{display:flex;gap:20px;font-size:13.5px;color:var(--sub);margin-top:24px;flex-wrap:wrap;align-items:center}
.legend i{display:inline-block;width:12px;height:12px;border-radius:3px;vertical-align:-1px;margin-right:6px}
.sheet{margin-top:20px;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.sheet-head{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:16px 20px;border-bottom:1px solid var(--line);font-size:14px}
.sheet-head span{font-family:var(--mono);font-size:11.5px;color:var(--faint)}
.ledger{width:100%;border-collapse:collapse;font-size:14.5px}
.ledger th{font-family:var(--mono);font-size:11px;font-weight:500;color:var(--faint);text-align:center;padding:10px 4px;border-bottom:1px solid var(--line);width:72px}
.ledger th:first-child{text-align:left;padding-left:20px;width:auto}
.ledger td{padding:10px 4px;border-bottom:1px solid #eef0ee;text-align:center}
.ledger td:first-child{text-align:left;padding-left:20px}
.ledger tr.grp td{background:var(--soft);font-size:12.5px;font-weight:700;color:var(--sub);padding:8px 20px;text-align:left}
.ledger tfoot td{border-bottom:0;border-top:1px solid var(--ink);font-family:var(--mono);font-weight:700;font-size:15px;padding:14px 4px}
.ledger tfoot td:first-child{font-family:inherit;font-size:14px}
.sheet details summary{list-style:none;cursor:pointer;padding:16px 20px;font-weight:700;font-size:14.5px;color:var(--acc);text-align:center;border-top:1px solid var(--line)}
.sheet details summary::-webkit-details-marker{display:none}
.sheet details summary:hover{background:var(--soft)}
.sheet details[open] summary{display:none}

/* 대상 */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}
.fit>div{border:1px solid var(--line);border-radius:12px;padding:32px;background:#fff}
.fit .tag{font-family:var(--mono);font-size:11.5px;color:var(--faint)}
.fit h3{font-size:22px;margin-top:6px}
.fit .ask{margin-top:14px;font-size:14.5px;color:var(--sub)}
.fit ul{list-style:none;margin-top:20px;border-top:1px solid var(--line)}
.fit li{padding:14px 0;border-bottom:1px solid var(--line);font-size:15px}
.fit li b{display:block;font-size:15.5px}
.fit li span{color:var(--sub);font-size:14.5px}
.fit li:last-child{border-bottom:0;padding-bottom:0}

/* 고쳐 쓴 예 */
.diff{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}
.doc{align-self:start;border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.doc-top{padding:12px 18px;border-bottom:1px solid var(--line);font-size:13px;display:flex;justify-content:space-between}
.doc-top span{font-size:12px;color:var(--faint)}
.doc.before .doc-top b{color:var(--faint)}
.doc.after .doc-top b{color:var(--acc)}
.doc-body{padding:22px 22px 24px;font-size:15px}
.doc-body .t{font-size:18px;font-weight:800;line-height:1.5}
.doc-body p{margin-top:12px;color:#2b332f}
.doc.before .doc-body{color:var(--faint)}
.doc.before .doc-body p,.doc.before .doc-body .t{color:#7d847f}
.doc table{width:100%;border-collapse:collapse;margin-top:14px;font-size:14px}
.doc th,.doc td{border:1px solid var(--line);padding:7px 10px;text-align:left}
.doc th{background:var(--soft);font-size:12.5px}
.doc tr.hl td{background:var(--acc-soft)}
.pin{display:inline-grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--acc);color:#fff;font-family:var(--mono);font-size:11px;font-weight:700;vertical-align:2px;margin-right:6px}
.notes{list-style:none;margin-top:24px;display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.notes li{font-size:14px;color:var(--sub);border-top:1px solid var(--line);padding-top:12px}
.notes li b{display:block;color:var(--ink);font-size:14.5px;margin-top:6px}
.score-note{margin-top:32px;padding:18px 22px;border-radius:10px;background:var(--acc-soft);font-size:14.5px;color:#23412f}
.score-note b{font-family:var(--mono)}

/* 원칙 */
.rules{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:40px}
.rules h3{font-size:15px;padding-bottom:12px;border-bottom:1px solid var(--ink)}
.rules .no h3{border-color:var(--warn);color:var(--warn)}
.rules ul{list-style:none}
.rules li{padding:13px 0 13px 26px;border-bottom:1px solid var(--line);font-size:15px;position:relative}
.rules li::before{content:"";position:absolute;left:2px;top:21px;width:10px;height:2px;background:var(--acc)}
.rules .yes li::after{content:"";position:absolute;left:6px;top:17px;width:2px;height:10px;background:var(--acc)}
.rules .no li::before{background:var(--warn)}
.rules li span{color:var(--faint);font-size:13.5px}

/* 질문 */
.faq{display:grid;grid-template-columns:340px 1fr;gap:72px}
details.q{border-bottom:1px solid var(--line);padding:20px 0}
details.q:first-child{border-top:1px solid var(--ink)}
details.q summary{font-weight:700;font-size:16.5px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:16px}
details.q summary::-webkit-details-marker{display:none}
details.q summary::after{content:"+";font-family:var(--mono);color:var(--faint);font-weight:500}
details.q[open] summary::after{content:"−"}
details.q p{color:var(--sub);margin-top:10px;font-size:15.5px}

/* 상담 */
.end{background:var(--ink);color:#fff;border-top:0}
.end .eyebrow{color:#7fc3a0}
.end h2{color:#fff}
.end .lead{color:#b3bab6}
.end-grid{display:grid;grid-template-columns:1fr 1.25fr;gap:72px;align-items:start}
.end .steps-mini{list-style:none;margin-top:36px;border-top:1px solid #2c3430}
.end .steps-mini li{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid #2c3430;font-size:15px;color:#d4d9d6}
.end .steps-mini span{font-family:var(--mono);color:#7fc3a0;font-size:13px;padding-top:2px}
.apply{display:grid;grid-template-columns:1fr 1fr;gap:16px 16px;background:#171d1a;border:1px solid #2c3430;border-radius:14px;padding:28px}
.apply label{display:block;font-weight:600;font-size:14px;color:#e6eae8}
.apply small{font-weight:400;color:#8c9590;font-size:12.5px;margin-left:6px}
.apply label>input,.apply label>select{margin-top:7px;display:block}
.apply input,.apply select{font:inherit;font-weight:400;font-size:16px;padding:12px 13px;border-radius:8px;border:1px solid #333c37;background:#0f1311;color:#fff;width:100%}
.apply input:focus,.apply select:focus{outline:2px solid #4fa77b;outline-offset:0;border-color:transparent}
.apply .agree,.apply button,.apply .msg{grid-column:1/-1}
.apply .agree{display:flex;flex-direction:row;align-items:flex-start;gap:10px;font-weight:400;font-size:14px;color:#c9cfcb}
.apply .agree input{width:20px;height:20px;flex:none;margin-top:2px!important;accent-color:#4fa77b}
.apply .agree small{display:block;margin:4px 0 0}
.apply button{background:#fff;color:var(--ink);font-size:16px;padding:15px}
.apply button:hover{background:#e6ebe8}
.apply button[disabled]{opacity:.6}
.hp{position:absolute;left:-9999px;width:1px;height:1px}
.msg{min-height:1.5em;font-weight:700;font-size:14.5px}
.msg.ok{color:#9fd6b8}.msg.err{color:#f0b3a8}
.end .note{color:#8c9590;font-size:13.5px;margin-top:20px}
footer{padding:32px 0;font-size:13px;color:var(--faint);border-top:1px solid var(--line)}
footer .wrap{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}

@media (max-width:900px){
  section{padding:72px 0}
  .hero{padding:48px 0 64px}
  .hero-grid,.story,.faq,.end-grid,.fit,.diff,.rules{grid-template-columns:1fr;gap:36px}
  .stats{grid-template-columns:1fr}
  .stats>div,.stats>div+div{padding:24px 0;border-left:0;border-bottom:1px solid var(--line)}
  .steps li{grid-template-columns:1fr;gap:10px;padding:26px 0}
  .map{grid-template-columns:1fr 1fr}
  .notes{grid-template-columns:1fr 1fr}
  .apply{grid-template-columns:1fr;padding:20px}
  .ledger th{width:48px}
  .ledger th:first-child,.ledger td:first-child,.ledger tr.grp td{padding-left:14px}
  .ledger td:first-child{font-size:13.5px}
}
@media (max-width:520px){
  .wrap{padding:0 16px}
  .cta .btn{flex:1 1 100%}
  .score>div{padding:12px}
  .score .n{font-size:20px}
  .qs th{width:40px}
  .qs td:first-child,.qs th:first-child{padding-left:14px}
  .fit>div{padding:22px}
  .notes{grid-template-columns:1fr}
  .brand small{display:none}
  .panel-top{flex-direction:column;align-items:flex-start;gap:2px}
}

.svc{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);margin-top:36px}
.svc>div{padding:26px 22px 28px;border-right:1px solid var(--line)}
.svc>div:last-child{border-right:0}
.svc .k{font-family:var(--mono);font-size:13px;color:var(--acc);font-weight:700}
.svc h3{margin-top:10px}
.svc p{margin-top:10px;color:var(--sub);font-size:15px}
.svc .out{margin-top:16px;font-size:13.5px;border-top:1px solid var(--line);padding-top:12px}
.svc .out b{display:block;font-size:12px;color:var(--faint);font-weight:700;margin-bottom:2px}
.plan{margin-top:28px;display:flex;gap:24px;align-items:flex-start;justify-content:space-between;border:1px solid var(--line);padding:22px 24px;background:#fff}
.plan .tag{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--sub)}
.plan p{color:var(--sub);font-size:15px;margin-top:6px;max-width:640px}
.who3{display:grid;grid-template-columns:repeat(3,1fr);gap:0;border-top:2px solid var(--ink);margin-top:36px}
.who3>div{padding:24px 22px;border-right:1px solid var(--line)}
.who3>div:last-child{border-right:0}
.who3 .ask{margin-top:10px;color:var(--sub);font-size:15px}
.who3 ul{list-style:none;margin-top:14px;font-size:14.5px}
.who3 li{padding:8px 0;border-top:1px solid var(--line)}
.sample-note{font-size:12.5px;color:var(--warn);font-weight:700;margin-top:10px}
@media (max-width:900px){.svc,.who3{grid-template-columns:1fr}.svc>div,.who3>div{border-right:0;border-bottom:1px solid var(--line)}.plan{flex-direction:column}}

/* v5 (10/27 병근 「더 고급지고 전문가스럽게, 인포그래픽·이미지」) — 컨설팅 리포트 톤 : 세리프 제목 · 넓은 여백 · 얇은 선 · 큰 숫자 + 각주 */
h1,h2,.serif{font-family:"Noto Serif KR",serif;font-weight:800;letter-spacing:-.03em}
h1{line-height:1.18}
section{padding:120px 0}
.eyebrow{letter-spacing:.14em;font-size:12px}
.eyebrow::before{content:"";display:inline-block;width:22px;height:1px;background:var(--acc);vertical-align:middle;margin-right:10px}
.fn{font-size:11px;vertical-align:super;color:var(--acc);font-weight:700;text-decoration:none;margin-left:2px}
.foot{margin-top:28px;border-top:1px solid var(--line);padding-top:12px;font-size:12px;color:var(--faint);line-height:1.7}
.foot a{text-decoration:underline;text-underline-offset:2px}
.kpi{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--ink);border-bottom:1px solid var(--line);margin-top:44px}
.kpi>div{padding:30px 26px 26px;border-right:1px solid var(--line)}
.kpi>div:last-child{border-right:0}
.kpi .big{font-family:"Noto Serif KR",serif;font-weight:800;font-size:clamp(44px,6vw,72px);line-height:1;letter-spacing:-.04em}
.kpi .big small{font-size:.38em;color:var(--faint);font-weight:600;margin-left:4px}
.kpi p{margin-top:12px;color:var(--sub);font-size:14.5px}
.chart{margin-top:40px;border:1px solid var(--line);background:#fff;padding:28px 28px 18px}
.chart h3{font-size:15px}
.chart .cap{font-size:12.5px;color:var(--faint);margin-top:6px}
.chart svg{width:100%;height:auto;display:block;margin-top:18px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:40px}
.two .chart{margin-top:0}
.shot{border:1px solid var(--line);background:#fff;padding:14px}
.shot img{width:100%;height:auto;display:block;border:1px solid var(--line)}
.shot .cap{font-size:12.5px;color:var(--faint);margin-top:10px}
.tbl{width:100%;border-collapse:collapse;margin-top:36px;font-size:15px}
.tbl th{font-size:12px;letter-spacing:.08em;color:var(--faint);text-align:left;font-weight:700;padding:0 14px 10px 0;border-bottom:1px solid var(--ink)}
.tbl td{padding:16px 14px 16px 0;border-bottom:1px solid var(--line);vertical-align:top}
.tbl td:first-child{font-family:var(--mono);color:var(--acc);font-weight:700;font-size:13px;white-space:nowrap}
.tbl td b{display:block;font-size:16px}
@media (max-width:900px){.kpi,.two{grid-template-columns:1fr}.kpi>div{border-right:0;border-bottom:1px solid var(--line)}section{padding:80px 0}.chart{padding:20px 16px 12px}}
@media (max-width:520px){.tbl{font-size:14px}.tbl thead{display:none}.tbl tr{display:block;border-bottom:1px solid var(--line);padding:12px 0}.tbl td{display:block;border:0;padding:4px 0}}
/* 운영사 (10/27 병근 「런칠리 AX 페이지 정도 신뢰감」) — 운영사·대표·운영사 교육 실적·직접 해 본 결과 */
.trust{background:var(--soft);border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-size:14px;color:var(--sub)}
.trust .wrap{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;padding-top:14px;padding-bottom:14px}
.trust .k{font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--acc);letter-spacing:.08em}
.trust b{color:var(--ink)}
.trust i{font-style:normal;color:#c2c7c3}
.trust a{margin-left:auto;font-weight:700;color:var(--acc);text-decoration:none;white-space:nowrap}
.org{display:grid;grid-template-columns:1.05fr 1fr;gap:28px;margin-top:44px}
.org .card{border:1px solid var(--line);background:#fff;padding:28px}
.org .card>.tag{font-family:var(--mono);font-size:11.5px;color:var(--faint);letter-spacing:.08em}
.org dl{display:grid;grid-template-columns:118px 1fr;margin-top:10px;font-size:15px}
.org dt,.org dd{padding:12px 0;border-bottom:1px solid var(--line)}
.org dt{color:var(--faint);font-size:13px;font-weight:700;padding-top:14px}
.org dd a{color:var(--acc)}
.org dl>:nth-last-child(-n+2){border-bottom:0}
.ceo h3{font-size:24px;margin-top:8px;font-family:"Noto Serif KR",serif}
.ceo .role{color:var(--sub);font-size:14.5px;margin-top:4px}
.ceo ul{list-style:none;margin-top:18px;border-top:1px solid var(--ink)}
.ceo li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px}
.ceo li:last-child{border-bottom:0}
.ceo li span{display:block;color:var(--faint);font-size:13px}
.track{margin-top:72px}
.track h3{font-size:22px;font-family:"Noto Serif KR",serif}
.track .scope{margin-top:12px;font-size:14.5px;color:#7a3a28;background:#fbf3ef;border-left:3px solid var(--warn);padding:10px 14px;max-width:760px}
.kpi.k2{grid-template-columns:1fr 1fr}
.photos{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:36px}
.photos figure{margin:0}
.photos img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--line)}
.photos figcaption{font-size:12.5px;color:var(--faint);margin-top:8px}
.case{margin-top:72px;border:1px solid var(--acc);background:var(--acc-soft);padding:32px}
.case .tag{font-family:var(--mono);font-size:11.5px;color:var(--acc);font-weight:700;letter-spacing:.08em}
.case h3{font-size:22px;margin-top:6px;font-family:"Noto Serif KR",serif}
.case dl{display:grid;grid-template-columns:110px 1fr;margin-top:18px;font-size:15px;border-top:1px solid #bcd6c8}
.case dt,.case dd{padding:12px 0;border-bottom:1px solid #bcd6c8}
.case dt{font-weight:700;color:var(--acc);font-size:13.5px;padding-top:13px}
.case dd a{color:var(--acc);font-weight:700}
@media (max-width:900px){.org,.photos{grid-template-columns:1fr}.kpi.k2{grid-template-columns:1fr}.trust a{margin-left:0}}
@media (max-width:520px){.org .card,.case{padding:20px}.org dl{grid-template-columns:92px 1fr}.case dl{grid-template-columns:1fr}.case dt{padding-bottom:0;border-bottom:0}.trust i{display:none}.trust .wrap{gap:2px 10px}}
footer span{line-height:1.7}
/* 10/27 메뉴별 페이지 */
.crumb{font-size:13px;color:var(--faint);margin-bottom:18px}.crumb a{text-decoration:none}.crumb a:hover{color:var(--ink)}.crumb span{margin:0 6px}
section.first{padding-top:72px;border-top:0}
.first h1{font-size:clamp(30px,3.8vw,46px);line-height:1.25;margin-top:12px}
.end .crumb{color:#8c9590}.end .crumb a:hover{color:#fff}
.btn.inv{background:#fff;color:var(--ink)}.btn.inv:hover{background:#e6ebe8}
.steps .src{font-size:12.5px;color:var(--faint);margin-top:10px}
.alt-mail{margin-top:16px;font-size:14px;color:#8c9590}.alt-mail a{color:#cfe6d9}
.sum{padding:104px 0}
.sum-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:start}
.sum .lead{max-width:none}
.more{display:inline-block;margin-top:26px;font-weight:700;color:var(--acc);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.more:hover{color:var(--ink)}
.rows{list-style:none;border-top:1px solid var(--ink)}
.rows li{display:grid;grid-template-columns:84px 1fr;gap:16px;padding:18px 0;border-bottom:1px solid var(--line)}
.rows .k{font-family:var(--mono);font-size:12.5px;font-weight:700;color:var(--acc);padding-top:3px}
.rows b{display:block;font-size:16.5px}
.rows div span{display:block;color:var(--sub);font-size:14.5px;margin-top:4px}
.sum .kpi{margin-top:0}
.sum .kpi>div{padding:24px 18px 20px}
.sum .kpi .big{font-size:clamp(40px,4.4vw,58px)}
.sum .scope{margin-top:18px;font-size:14px;color:#7a3a28;background:#fbf3ef;border-left:3px solid var(--warn);padding:10px 14px}
.sum details.q:first-child{border-top:1px solid var(--ink)}
.clist{list-style:none;margin-top:28px;border-top:1px solid var(--ink)}
.clist li{border-bottom:1px solid var(--line)}
.clist a{display:block;padding:20px 0;text-decoration:none}
.clist a:hover b{color:var(--acc)}
.clist b{display:block;font-size:18px;letter-spacing:-.02em}
.clist span{display:block;color:var(--sub);font-size:15px;margin-top:6px}
.pend{padding:64px 0;background:var(--soft)}
.pend-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.nextp{display:block;border:1px solid var(--line);background:#fff;padding:24px 26px;text-decoration:none}
.nextp:hover{border-color:var(--ink)}
.nextp small{display:block;font-family:var(--mono);font-size:11.5px;color:var(--faint);letter-spacing:.08em}
.nextp b{display:block;font-size:19px;margin-top:6px;letter-spacing:-.02em}
.nextp span{display:block;color:var(--sub);font-size:14.5px;margin-top:4px}
.askb{background:var(--ink);color:#fff;padding:24px 26px}
.askb p{color:#d4d9d6;font-size:15px}
.askb .btn{margin-top:16px}
@media (max-width:900px){.sum{padding:72px 0}.sum-grid,.pend-grid{grid-template-columns:1fr;gap:28px}section.first{padding-top:44px}.pend{padding:48px 0}}
@media (max-width:520px){.rows li{grid-template-columns:1fr;gap:4px}.sum .kpi>div{padding:20px 0}.nextp,.askb{padding:20px}}

/* v6 (10/27 병근 「단순 랜딩 느낌보다 비즈니스용 느낌」) — 기업 사이트 틀. 머리·바닥·머리 띠는 /chrome.css */
section.first{padding-top:64px}
.band + section.first{border-top:0}
.blk{padding:96px 0}
.sec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.sec-head .more{margin-top:0;white-space:nowrap}
.blk .lead{max-width:720px}
/* 메인 첫 화면 */
.hero2{padding:72px 0 88px;border-top:0}
.hero2 h1{font-size:clamp(30px,3.6vw,46px);line-height:1.28;margin-top:16px}
.hero2 h1 em{font-style:normal;color:var(--acc)}
.hero2 .def{margin-top:22px;color:var(--sub);font-size:clamp(15.5px,1.5vw,17px);max-width:600px}
/* 서비스 4개 */
.svc4{display:grid;grid-template-columns:repeat(4,1fr);border-top:2px solid var(--ink);margin-top:40px}
.svc4>a{display:flex;flex-direction:column;padding:28px 24px 26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-decoration:none;color:inherit;transition:background .15s}
.svc4>a:last-child{border-right:0}
.svc4>a:hover{background:var(--soft)}
.svc4>a:hover h3{color:var(--acc)}
.svc4 .k{font-family:var(--mono);font-size:12.5px;color:var(--acc);font-weight:700}
.svc4 h3{margin-top:12px;font-size:20px}
.svc4 p{margin-top:10px;color:var(--sub);font-size:15px;flex:1}
.svc4 dl{display:grid;grid-template-columns:56px 1fr;gap:6px 10px;margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:13.5px}
.svc4 dt{color:var(--faint);font-weight:700;font-size:12.5px}
.go{display:inline-block;margin-top:18px;font-weight:700;font-size:14px;color:var(--acc)}
.svc-links>a{text-decoration:none;color:inherit;padding:26px 22px 28px;border-right:1px solid var(--line);display:flex;flex-direction:column}
.svc-links>a:last-child{border-right:0}
.svc-links>a:hover{background:var(--soft)}
.svc-links>a p{flex:1}
.tbl td b a{text-decoration:none}.tbl td b a:hover{color:var(--acc);text-decoration:underline}
/* 실측 숫자 띠 */
.kband{background:var(--soft);padding:80px 0}
.kband-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:56px;align-items:start}
.kband .kpi{margin-top:0}
.kband .kpi>div{padding:24px 20px 20px}
.kband .kpi .big{font-size:clamp(42px,4.6vw,62px)}
/* 일하는 방식 */
.way{list-style:none;display:grid;grid-template-columns:repeat(4,1fr);margin-top:40px;border-top:1px solid var(--ink)}
.way li{padding:24px 24px 0 0;position:relative}
.way li+li{padding-left:24px;border-left:1px solid var(--line)}
.way .no{font-family:var(--mono);font-weight:700;color:var(--acc);font-size:13px}
.way h3{margin-top:10px;font-size:17px}
.way p{margin-top:8px;color:var(--sub);font-size:14.5px}
/* 대상 3칸 */
.fit3{display:grid;grid-template-columns:repeat(3,1fr);margin-top:36px;border-top:2px solid var(--ink)}
.fit3>div{padding:24px 22px 4px 0}
.fit3>div+div{padding-left:22px;border-left:1px solid var(--line)}
.fit3 .k{font-family:var(--mono);font-size:12.5px;color:var(--acc);font-weight:700}
.fit3 h3{margin-top:8px}
.fit3 p{margin-top:8px;color:var(--sub);font-size:14.5px}
/* 인사이트 3칸 (build.py 가 <!--cols--> 사이에 씀) */
.ins{padding:96px 0}
.ins-list{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:36px;border-top:2px solid var(--ink)}
.ins-list li{border-right:1px solid var(--line)}
.ins-list li:last-child{border-right:0}
.ins-list a{display:block;height:100%;padding:24px 22px 26px;text-decoration:none}
.ins-list li:first-child a{padding-left:0}
.ins-list a:hover{background:var(--soft)}
.ins-list a:hover b{color:var(--acc)}
.ins-list small{display:block;font-family:var(--mono);font-size:11.5px;color:var(--faint);letter-spacing:.04em}
.ins-list b{display:block;font-size:18px;line-height:1.45;letter-spacing:-.02em;margin-top:10px}
.ins-list span{display:block;color:var(--sub);font-size:14.5px;margin-top:10px}
/* 운영사 신뢰 */
.org2{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start}
.org2 .kpi{margin-top:32px}
.org2 .scope{margin-top:16px;font-size:14px;color:#7a3a28;background:#fbf3ef;border-left:3px solid var(--warn);padding:10px 14px}
.org2 .more{margin-top:20px}
.org-photo{margin:0}
.org-photo img{width:100%;aspect-ratio:4/3;object-fit:cover;display:block;border:1px solid var(--line)}
.org-photo figcaption{font-size:12.5px;color:var(--faint);margin-top:8px}
/* 문의 띠 */
.askband{background:var(--acc-deep,#143d2c);color:#fff;border-top:0;padding:88px 0}
.askband .eyebrow{color:#a5d3ba}.askband .eyebrow::before{background:#a5d3ba}
.askband h2{color:#fff}
.askband .lead{color:#c8dbd0}
.askband-grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.askband .steps-mini{list-style:none;border-top:1px solid #2f5a47;margin-bottom:28px}
.askband .steps-mini li{display:flex;gap:16px;padding:14px 0;border-bottom:1px solid #2f5a47;font-size:15px;color:#e1ece6}
.askband .steps-mini span{font-family:var(--mono);color:#a5d3ba;font-size:13px;padding-top:2px}
.askband .alt-mail{color:#a9c4b6}.askband .alt-mail a{color:#fff}
/* FAQ 한 칸 */
.faq.one{grid-template-columns:1fr;max-width:860px}
/* 서비스 상세 */
.sd{padding-bottom:96px}
.sd-grid{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:64px;align-items:start}
.sd-sec{padding:0 0 56px}
.sd-sec+.sd-sec{padding-top:48px;border-top:1px solid var(--line)}
.sd-sec h2{font-family:Pretendard,-apple-system,sans-serif;font-size:clamp(22px,2.2vw,26px);margin:0 0 22px;display:flex;gap:14px;align-items:baseline}
.sd-sec h2 span{font-family:var(--mono);font-size:13px;color:var(--acc);font-weight:700}
.sd-fit{list-style:none;border-top:1px solid var(--ink)}
.sd-fit li{padding:16px 0;border-bottom:1px solid var(--line)}
.sd-fit b{display:block;font-size:16.5px}
.sd-fit span{display:block;color:var(--sub);font-size:15px;margin-top:4px}
.sd-do{list-style:none;counter-reset:d;border-top:1px solid var(--ink)}
.sd-do li{counter-increment:d;display:grid;grid-template-columns:44px 1fr;padding:18px 0;border-bottom:1px solid var(--line)}
.sd-do li::before{content:counter(d,decimal-leading-zero);font-family:var(--mono);font-size:12.5px;font-weight:700;color:var(--acc);padding-top:3px;grid-row:1/3}
.sd-do b{font-size:16.5px}
.sd-do p{color:var(--sub);font-size:15px;margin-top:4px}
.sd-link{margin-top:16px;font-weight:700}.sd-link a{color:var(--acc)}
.sd-out{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--ink)}
.sd-out>div{padding:16px 18px 16px 0;border-bottom:1px solid var(--line)}
.sd-out>div:nth-child(even){padding-left:18px;border-left:1px solid var(--line)}
.sd-out dt{font-weight:800;font-size:16px}
.sd-out dd{color:var(--sub);font-size:14.5px;margin-top:4px}
.sd-shot{margin-top:28px}
.sd-shot figcaption a{text-decoration:underline}
.sd-steps{list-style:none;border-left:2px solid var(--acc);margin-left:4px}
.sd-steps li{position:relative;padding:0 0 22px 26px}
.sd-steps li::before{content:"";position:absolute;left:-7px;top:6px;width:12px;height:12px;background:#fff;border:2px solid var(--acc);border-radius:50%}
.sd-steps .when{display:block;font-family:var(--mono);font-size:12px;font-weight:700;color:var(--acc)}
.sd-steps b{display:block;font-size:16.5px;margin-top:2px}
.sd-steps p{color:var(--sub);font-size:14.5px;margin-top:2px}
.sd-not{list-style:none;border-top:1px solid var(--warn)}
.sd-not li{padding:13px 0 13px 26px;border-bottom:1px solid var(--line);position:relative;font-size:15.5px}
.sd-not li::before{content:"";position:absolute;left:2px;top:23px;width:12px;height:2px;background:var(--warn)}
.sd-not b{font-weight:700}
.sd-not span{display:block;color:var(--faint);font-size:13.5px}
.sd-sec .clist{margin-top:0}
.sd-sec .kpi{margin-top:0}
.sd-sec .scope{margin-top:16px;font-size:14px;color:#7a3a28;background:#fbf3ef;border-left:3px solid var(--warn);padding:10px 14px}
.sd-photo{margin:24px 0 0}.sd-photo img{width:100%;aspect-ratio:16/10;object-fit:cover;display:block;border:1px solid var(--line)}.sd-photo figcaption{font-size:12.5px;color:var(--faint);margin-top:8px}
.sd-aside{position:sticky;top:96px}
.sd-box{border:1px solid var(--line);border-top:3px solid var(--acc-deep,#143d2c);padding:22px 22px 20px;background:#fff}
.sd-box .tag,.sd-other .tag{font-family:var(--mono);font-size:11.5px;font-weight:700;color:var(--faint);letter-spacing:.08em}
.sd-box dl{margin-top:8px;font-size:14.5px}
.sd-box dt{font-size:12.5px;color:var(--faint);font-weight:700;margin-top:12px}
.sd-box dd{margin-top:2px}
.sd-box dd small{display:block;font-size:12px;color:var(--faint)}
.sd-box .btn{width:100%;margin-top:20px}
.sd-mail{font-size:12.5px;color:var(--faint);margin-top:10px;text-align:center}.sd-mail a{color:var(--sub)}
.sd-other{margin-top:20px;border:1px solid var(--line);padding:16px 22px}
.sd-other a{display:flex;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);text-decoration:none;font-size:14.5px;font-weight:600}
.sd-other a span{font-family:var(--mono);font-size:12px;color:var(--faint);padding-top:2px}
.sd-other a:hover{color:var(--acc)}
.sd-other a[aria-current]{color:var(--acc);font-weight:800}
.sd-other a.all{border-bottom:0;color:var(--acc);font-weight:700;padding-bottom:0}
@media (max-width:960px){
  .svc4{grid-template-columns:1fr 1fr}.svc4>a:nth-child(2){border-right:0}
  .way{grid-template-columns:1fr 1fr}.way li:nth-child(3){padding-left:0;border-left:0}
  .way li{padding-bottom:20px}
  .kband-grid,.org2,.askband-grid{grid-template-columns:1fr;gap:32px}
  .ins-list{grid-template-columns:1fr}.ins-list li{border-right:0;border-bottom:1px solid var(--line)}.ins-list a,.ins-list li:first-child a{padding:20px 0}
  .fit3{grid-template-columns:1fr}.fit3>div,.fit3>div+div{padding:20px 0;border-left:0;border-bottom:1px solid var(--line)}
  .sd-grid{grid-template-columns:1fr;gap:40px}
  .sd-aside{position:static;order:-1}
  .sd-other{display:none}
  .blk,.ins{padding:72px 0}.kband,.askband{padding:64px 0}
  .hero2{padding:44px 0 64px}
}
@media (max-width:520px){
  .svc4{grid-template-columns:1fr}.svc4>a{border-right:0;padding:22px 0}
  .svc-links>a{border-right:0;padding:22px 0}
  .way{grid-template-columns:1fr}.way li,.way li+li{padding:18px 0;border-left:0;border-bottom:1px solid var(--line)}
  .sd-out{grid-template-columns:1fr}.sd-out>div,.sd-out>div:nth-child(even){padding:14px 0;border-left:0}
  .kband .kpi>div{padding:18px 0}
  .sec-head{align-items:flex-start}
}
.org-photo img,.sd-photo img,.photos img{height:auto}
.hero2 h1{font-size:clamp(30px,3.2vw,42px)}
.hero2 .hero-grid{grid-template-columns:1.1fr 1fr}
.kband h2{font-size:clamp(24px,2.6vw,32px)}
@media (max-width:900px){.hero2 .hero-grid{grid-template-columns:1fr}}

/* 10/27 병근 「이미지가 많이 부족해서 전문성이 떨어져 보이는 듯 · 줄글로만 되어 있으니 AI로 돌린 느낌」
   → 실제 측정 화면 · 실제 데이터 도표 · 실제 교육 현장 사진. AI 생성 이미지 · 스톡 사진 없음. 그림 원본 : 맥미니 geo_log.jsonl · 직접 돌린 점검 */
.vfig{margin:0}
.vfig a{display:block;border-radius:12px}
.vfig img{display:block;width:100%;height:auto;border-radius:12px}
.vfig.photo img{border:1px solid var(--line);aspect-ratio:16/10;object-fit:cover}
.vfig figcaption{font-size:13px;color:var(--faint);margin-top:10px;line-height:1.65}
.vfig figcaption b{color:var(--sub);font-weight:700}
.hero-shot{align-self:start}
.kband .vfig{margin-top:32px}
.stats-fig{margin-top:40px;max-width:860px}
.svc4 .thumb{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;border-radius:10px;margin-bottom:20px}
.svc4 .thumb.ph{border:1px solid var(--line)}
.sd-vis{padding-bottom:48px}
.sd-vis .tag{font-family:var(--mono);font-size:12px;font-weight:700;color:var(--acc);letter-spacing:.04em;margin-bottom:12px}
.sd-sec .vfig{margin-top:28px}
.chart+.vfig,.kpi+.vfig{margin-top:40px}
article .vfig{margin:28px 0}
.fit-fig{margin-top:36px}
.photos.p3{grid-template-columns:repeat(3,1fr)}
/* 일하는 방식 · 진행 단계 흐름도 : 번호 원 + 화살표 줄 (좁은 화면은 세로 흐름) */
.way.flow{border-top:0;margin-top:44px}
.way.flow li,.way.flow li+li{padding:0 28px 0 0;border-left:0;border-bottom:0}
.way.flow .no{width:42px;height:42px;border-radius:50%;border:2px solid var(--acc);display:flex;align-items:center;justify-content:center;background:#fff;font-size:14px;position:relative;z-index:1}
.way.flow li:last-child .no{background:var(--acc);color:#fff}
.way.flow li:not(:last-child)::after{content:"";position:absolute;top:20px;left:54px;right:14px;height:2px;background:var(--acc)}
.way.flow li:not(:last-child)::before{content:"";position:absolute;top:15px;right:8px;border-style:solid;border-width:6px 0 6px 9px;border-color:transparent transparent transparent var(--acc)}
.way-loop{margin-top:26px;font-size:14.5px;color:var(--sub);border:1px dashed #b9c9bf;border-radius:8px;padding:10px 14px;display:inline-block}
.way-loop b{color:var(--acc)}
.sd-steps.flow{counter-reset:st;display:grid;grid-auto-flow:column;grid-auto-columns:1fr;border-left:0;margin-left:0}
.sd-steps.flow li{counter-increment:st;padding:54px 16px 0 0;position:relative}
.sd-steps.flow li::before{content:counter(st,decimal-leading-zero);left:0;top:0;width:40px;height:40px;border:2px solid var(--acc);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:13px;font-weight:700;color:var(--acc);box-sizing:border-box}
.sd-steps.flow li:last-child::before{background:var(--acc);color:#fff}
.sd-steps.flow li:not(:last-child)::after{content:"";position:absolute;top:19px;left:50px;right:12px;height:2px;background:var(--acc)}
.sd-steps.flow li:not(:last-child) .when::after{content:"";position:absolute;top:14px;right:6px;border-style:solid;border-width:6px 0 6px 9px;border-color:transparent transparent transparent var(--acc)}
.sd-steps.flow b{font-size:15.5px}
.sd-steps.flow p{font-size:14px}
@media (max-width:960px){
  .way.flow{grid-template-columns:1fr}
  .way.flow li,.way.flow li+li{padding:0 0 26px 62px}
  .way.flow .no{position:absolute;left:0;top:0}
  .way.flow li:not(:last-child)::after{top:46px;bottom:6px;left:20px;right:auto;width:2px;height:auto}
  .way.flow li:not(:last-child)::before{top:auto;bottom:0;left:15px;right:auto;border-width:9px 6px 0 6px;border-color:var(--acc) transparent transparent transparent}
  .way.flow h3{margin-top:8px}
  .photos.p3{grid-template-columns:1fr 1fr}
}
@media (max-width:720px){
  .sd-steps.flow{grid-auto-flow:row;grid-template-columns:1fr}
  .sd-steps.flow li{padding:0 0 24px 58px}
  .sd-steps.flow li:not(:last-child)::after{top:44px;bottom:4px;left:19px;right:auto;width:2px;height:auto}
  .sd-steps.flow li:not(:last-child) .when::after{top:auto;bottom:-2px;left:14px;right:auto;border-width:9px 6px 0 6px;border-color:var(--acc) transparent transparent transparent}
  .sd-steps.flow b{font-size:16.5px}
  .photos.p3{grid-template-columns:1fr}
}
@media (max-width:520px){.svc4 .thumb{margin-bottom:16px}}
/* 메인 인사이트 카드 썸네일(build.py 가 칼럼 첫 그림 캡처를 넣음) */
.ins-list .cthumb{display:block;width:100%;height:auto;aspect-ratio:1200/630;border:1px solid var(--line);border-radius:10px;margin-bottom:16px;background:var(--soft)}
.vfig picture{display:block}
