/* 단계별 가이드 장마다 다른 레이아웃(2026-10-15 사장님 '다 형식이 똑같은것 같은데' → '레이아웃 말하는거야' → '다해봐').
   장마다 그 단계에서 다루는 문서·결정의 모양을 판으로 삼는다. 원고는 그대로, 배치만 다르게. article.hl-<slug> 범위.
   머리글, 따라오는 목차, 다음 단계 카드는 공통. 참고 사이트를 재서 옮김(값 옆 주석). 이전 판 백업: git tag hub-layout-before-2026-10-15 */

/* ───────── 01 개발 필요성과 비용 = 판단 흐름(GOV.UK 질문 화면 실측: https://www.gov.uk/check-uk-visa,
   design-system 라디오 조건부 표출) — 질문 하나, 큰 라디오, 고르면 아래에 왼쪽 선 붙은 답, '다음 질문' 단추 ───────── */
.hl-hub-desire .prose{font-size:17px}
.hl-hub-desire .prose .sec{margin:0;padding:0}
.hl-hub-desire .prose .q-start{padding-bottom:56px;border-bottom:1px solid var(--line)}
.hl-hub-desire .prose .q-list{margin:26px 0 30px;padding:0;list-style:none;counter-reset:q;border-top:1px solid var(--line)}
.hl-hub-desire .prose .q-list li{counter-increment:q;margin:0;padding:0;border-bottom:1px solid var(--line)}
.hl-hub-desire .prose .q-list li::before{content:none}
.hl-hub-desire .prose .q-list a{display:flex;gap:16px;padding:14px 0;font-size:18px;font-weight:700;line-height:1.4;color:var(--ink);text-decoration:none}
.hl-hub-desire .prose .q-list a::before{content:counter(q);flex:none;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--ink);color:#fff;font-size:14px}
.hl-hub-desire .prose .q-list a:hover{color:var(--blue)}
/* 시작 단추 = govuk-button--start: 24px/24, 안 여백 8 10 7, 아래 그림자 2px, 모서리 각짐, 화살표 18×19 왼쪽 10 */
.hl-hub-desire .prose .q-go,.hl-hub-desire .prose .q-next{display:inline-flex;align-items:center;gap:10px;padding:14px 26px;border-radius:999px;background:var(--blue);box-shadow:0 14px 28px -16px rgba(46,91,255,.7);color:#fff!important;font-size:18px;font-weight:800;line-height:22px;text-decoration:none!important}
.hl-hub-desire .prose .q-go svg{width:12px;height:14px;fill:#fff}
.hl-hub-desire .prose .q-go:hover,.hl-hub-desire .prose .q-next:hover{background:var(--navy)}
.hl-hub-desire .prose .q-go:active,.hl-hub-desire .prose .q-next:active{transform:translateY(1px)}
.hl-hub-desire .prose .q-next{margin:4px 0 40px;font-size:16px;line-height:20px;padding:12px 22px}
/* 질문 한 장 */
.hl-hub-desire .prose .qstep{padding:64px 0 40px;border-bottom:1px solid var(--line)}
.hl-hub-desire .prose .q-cap{display:block;margin-bottom:4px;font-size:15px;font-weight:800;color:var(--blue)}
.hl-hub-desire .prose .qstep h2{margin:0 0 10px;padding:0;border:0;font-size:20px;font-weight:600;line-height:1.4;color:var(--sub);letter-spacing:-.3px}
.hl-hub-desire .prose .qstep h2::before,.hl-hub-desire .prose .qstep h2::after{content:none}
.hl-hub-desire .prose .q{margin:0 0 20px;padding:0;border:0;min-width:0}
/* 질문 = 범례 36/40 굵게, 아래 15 */
.hl-hub-desire .prose .q-l{display:block;margin:0 0 22px;padding:0;font-size:36px;line-height:1.18;font-weight:800;letter-spacing:-1px;color:var(--ink)}
/* 라디오 = 원 40, 테두리 2, 점 테두리 10, 글자 19/25 안 여백 7 15, 항목 사이 10 */
.hl-hub-desire .prose .q-o{position:relative;margin:0 0 10px;padding:0 0 0 44px;min-height:44px}
.hl-hub-desire .prose .q-o input{position:absolute;left:0;top:0;z-index:1;width:44px;height:44px;margin:0;opacity:0;cursor:pointer}
.hl-hub-desire .prose .q-o label{display:inline-block;padding:9px 15px 7px;font-size:19px;line-height:25px;font-weight:600;color:var(--ink);cursor:pointer}
.hl-hub-desire .prose .q-o label::before{content:'';position:absolute;left:2px;top:2px;width:40px;height:40px;box-sizing:border-box;border:2px solid var(--ink);border-radius:50%;background:#fff}
.hl-hub-desire .prose .q-o label::after{content:'';position:absolute;left:12px;top:12px;width:0;height:0;border:10px solid var(--blue);border-radius:50%;opacity:0;transition:opacity .12s}
.hl-hub-desire .prose .q-o input:checked + label::after{opacity:1}
.hl-hub-desire .prose .q-o input:focus-visible + label::before{box-shadow:0 0 0 4px #ffd84d}
.hl-hub-desire .prose .q-o input:checked + label{color:var(--blue)}
/* 조건부 표출 = 왼쪽 20, 안 35, 왼쪽 선 4(모서리 각짐) */
.hl-hub-desire .prose .q-r{display:none;margin:6px 0 16px -24px;padding:4px 0 4px 35px;border-left:4px solid #c8d3fb}
.hl-hub-desire .prose .q-o input:checked ~ .q-r{display:block}
.hl-hub-desire .prose .q-r p{margin:0 0 10px;font-size:17px;line-height:1.65}
.hl-hub-desire .prose .q-r p:last-child{margin-bottom:0}
.hl-hub-desire .prose .q-r ul{margin:0 0 10px;padding:0 0 0 20px;list-style:disc}
.hl-hub-desire .prose .q-r li{margin:0 0 2px;padding:0;font-size:16.5px;line-height:1.6}
.hl-hub-desire .prose .q-r li::before{content:none}
.hl-hub-desire .prose .q-ref{font-size:15.5px!important;color:var(--sub)}
.hl-hub-desire .prose .q-ref a{margin-left:6px}
.hl-hub-desire .prose .q-fig{margin:24px 0}
.hl-hub-desire .prose .q-fig img{display:block;width:100%;height:auto;border-radius:0}
/* 관련 글 = GOV.UK 관련 내용: 위 파란 선 2, 제목 19 굵게, 밑줄 글자 링크 16(그림 없음) */
.hl-hub-desire .prose .q-side,.hl-hub-desire .prose .q-more{margin-top:28px;border-top:2px solid var(--blue);padding-top:14px}
.hl-hub-desire .prose .q-more{border-bottom:0;padding-bottom:0}
.hl-hub-desire .prose .q-rel{margin:0 0 10px;font-size:19px;font-weight:800;color:var(--ink)}
.hl-hub-desire .prose .q-more .q-rel + .hub-cards{margin-bottom:28px}
.hl-hub-desire .prose .hub-cards{display:block;margin:0 0 6px}
.hl-hub-desire .prose .hub-cards li{margin:0 0 10px}
.hl-hub-desire .prose .hub-cards .hc{display:inline;padding:0;border:0;border-radius:0;background:none;box-shadow:none;transform:none;color:var(--blue)}
.hl-hub-desire .prose .hub-cards .hc-pic{display:none}
.hl-hub-desire .prose .hub-cards .hc-t{font-size:16px;font-weight:600;line-height:1.4;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.hl-hub-desire .prose .hub-cards .hc:hover .hc-t{text-decoration-thickness:3px}
.hl-hub-desire .prose .hub-cards li.more{display:none}
.hl-hub-desire .prose .hub-cards.open li.more{display:list-item}
.hl-hub-desire .prose .hc-more{width:auto;margin:0;padding:0;border:0;background:none;font-size:16px;text-decoration:underline;text-underline-offset:3px}
/* 진행 방식 상자 = GOV.UK 알림 띠(테두리 5, 위 제목 띠 파랑, 안 흰 바탕, 모서리 각짐) */
.hl-hub-desire .prose .hub-we{margin:36px 0 8px;padding:0 0 26px;border:2px solid var(--blue);border-radius:20px;background:#fff;overflow:hidden}
.hl-hub-desire.hl-hub-desire .prose .hub-we > *:not(.we-k){margin-left:25px;margin-right:25px}
.hl-hub-desire .prose .hub-we .we-k{margin:0 0 4px;padding:12px 25px;background:var(--blue);color:#fff;font-size:15px!important}
.hl-hub-desire .prose .hub-we .we-k img{background:#fff}
.hl-hub-desire .prose .hub-we.we-quote{border-color:var(--navy);background:var(--navy)}
.hl-hub-desire .prose .hub-we.we-quote .we-k{background:var(--blue)}
.hl-hub-desire .prose .hub-we.we-quote .we-t{color:#fff}
.hl-hub-desire .prose .hub-we .we-t{margin-top:20px;font-size:24px}
/* 넓은 화면(1440 이상): 관련 글을 본문 오른쪽 여백 칸으로(GOV.UK 2/3 + 1/3, 칸 사이 30 → 여기서는 본문 760 + 오른쪽 260) */
@media (min-width:1440px){
  .hl-hub-desire .prose .qstep{display:grid;grid-template-columns:760px 260px;column-gap:44px;row-gap:0;margin-right:-304px}
  .hl-hub-desire .prose .qstep > *{grid-column:1;min-width:0}
  .hl-hub-desire .prose .qstep > .q-next{justify-self:start}
  .hl-hub-desire .prose .qstep > .q-side{grid-column:2;grid-row:1 / span 40;align-self:start;position:sticky;top:110px;margin-top:4px}
  .hl-hub-desire .prose .q-side .hub-cards li{margin-bottom:12px}
}
@media (max-width:640px){
  .hl-hub-desire .prose .q-l{font-size:27px;line-height:1.25;letter-spacing:-.6px}
  .hl-hub-desire .prose .qstep{padding:48px 0 32px}
  .hl-hub-desire .prose .q-go{font-size:21px}
  .hl-hub-desire .prose .q-o label{font-size:17.5px}
  .hl-hub-desire.hl-hub-desire .prose .hub-we > *:not(.we-k){margin-left:18px;margin-right:18px}
  .hl-hub-desire .prose .hub-we .we-k{padding:6px 14px 9px}
}

/* ───────── 02 기획 = 문서 묶음(Atlassian 템플릿 페이지 실측: https://www.atlassian.com/software/confluence/templates/product-requirements
   — 왼쪽 고정 칸 363(위 68 고정), 칸 사이 33, 오른쪽 755. 작성 단계는 번호 원 40 + 제목 24 굵게, 내용 왼쪽 60 들여씀) ─────────
   왼쪽 고정 칸 = '간단한 요청으로 시작' 상자(기획 문서 넷 + 견적 문의) + 목차. 오른쪽 = 문서 창 미리보기 + 번호 단계 */
.hl-hub-method .prose > .mag-restored{counter-reset:st}
.hl-hub-method .prose > .mag-restored > h2{counter-increment:st;position:relative;margin-top:64px;padding:2px 0 0 60px;border:0;font-size:26px;line-height:1.35}
.hl-hub-method .prose > .mag-restored > h2::before{content:counter(st);position:absolute;left:0;top:-3px;display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#e6ecff;color:var(--navy);font-size:19px;font-weight:800;letter-spacing:0}
.hl-hub-method .prose > .mag-restored > h2::after{content:none}
.hl-hub-method .prose > .mag-restored > h2 ~ *:not(h2):not(.we-start){margin-left:60px}
/* 문서 창 미리보기: 첫 그림을 문서 도구 창 안에 */
.hl-hub-method .prose .mag-opening{margin:28px 0 8px;padding:34px 0 0;border:1px solid #dfe3ec;border-radius:12px;background:#f6f7fa linear-gradient(#fff,#fff) 0 34px/100% calc(100% - 34px) no-repeat;position:relative;overflow:hidden;box-shadow:0 30px 60px -44px rgba(27,31,58,.5)}
.hl-hub-method .prose .mag-opening::before{content:'';position:absolute;left:14px;top:13px;width:9px;height:9px;border-radius:50%;background:#d5d9e3;box-shadow:15px 0 #d5d9e3,30px 0 #d5d9e3}
.hl-hub-method .prose .mag-opening::after{content:'기획 문서';position:absolute;left:68px;top:9px;font-size:12.5px;font-weight:700;color:var(--sub)}
.hl-hub-method .prose .mag-opening img{display:block;border-radius:0}
.hl-hub-method .prose .mag-opening .figcap{padding:10px 16px 12px;margin:0;border-top:1px solid #eef0f5}
:is(.hl-hub-method,.hl-series) .prose .we-start .we-cta{margin-top:16px}
:is(.hl-hub-method,.hl-series) .prose .we-start .we-btn{display:inline-block;background:var(--blue);color:#fff!important}
:is(.hl-hub-method,.hl-series) .prose .we-start .we-btn:hover{background:var(--navy)}
/* 1360 이상(2026-10-17 사장님 "목차는 왼쪽, 간단한 요청 상자는 오른쪽"): 왼쪽 따라오는 목차(.hub-side 기본 자리) + 본문 720 + 오른쪽 고정 칸 300(간단한 요청 상자).
   본문 묶음(720 + 28 + 300)을 오른쪽으로 밀어 목차 자리를 냄(본문 왼쪽 = 50% - 392px, 목차 오른쪽 = 50% - 432px). 따로 뜨던 오른쪽 흐름소프트 상자(.hub-svc)는 같은 자리라 숨김.
   연재 표지(.hl-series, 모두의 창업·사장님 매출 성장기)도 같은 구조 — 거기는 .prose 가 바로 격자 */
@media (min-width:1360px){
  .hl-hub-method .readw:has(> .prose),.hl-series .readw:has(> .prose){max-width:calc(1048px + var(--pad) * 2);margin-left:calc(50% - 392px - var(--pad));margin-right:auto}
  .hl-series .readw:has(> .article-hero){max-width:calc(720px + var(--pad) * 2);margin-left:calc(50% - 392px - var(--pad));margin-right:auto}
  .hl-hub-method .prose > .mag-restored,.hl-series .prose{display:grid;grid-template-columns:minmax(0,720px) 300px;column-gap:28px;row-gap:0;align-items:start}
  .hl-hub-method .prose > .mag-restored > *,.hl-series .prose > *{grid-column:1;min-width:0}
  .hl-hub-method .prose > .mag-restored > p{margin-top:0;margin-bottom:22px}
  .hl-hub-method .prose > .mag-restored > .we-start,.hl-series .prose > .we-start{grid-column:2;grid-row:1 / span 300;position:sticky;top:96px;margin:0;padding:24px 22px;max-height:calc(100vh - 120px);overflow:auto;scrollbar-width:thin}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-t{font-size:22px}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-req{grid-template-columns:1fr;gap:10px}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-arr{width:2px;height:18px;justify-self:center}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-arr::after{right:-5px;top:auto;bottom:-2px;border:6px solid transparent;border-top:8px solid var(--blue);border-bottom:0}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-outs{grid-template-columns:1fr 1fr}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-bub{font-size:14px;padding:13px 16px}
  :is(.hl-hub-method,.hl-series) .prose .we-start .we-lede{font-size:14.5px!important;margin-bottom:14px!important}
  :is(.hl-hub-method,.hl-series) .hub-svc{display:none!important}
}
@media (max-width:640px){
  .hl-hub-method .prose > .mag-restored > h2{padding-left:52px;font-size:22px}
  .hl-hub-method .prose > .mag-restored > h2::before{width:36px;height:36px;font-size:17px}
  .hl-hub-method .prose > .mag-restored > h2 ~ *:not(h2):not(.we-start){margin-left:0}
}

/* ───────── 03 업체 선정 = 비교 열(Apple iPhone 모델 비교 실측: https://www.apple.com/kr/iphone/compare/ — 1352 화면에서 상자 980, 세 열 가운데 정렬,
   큰 값 68/68 굵기 600, 묶음 제목 32/44 600 + 아래 1px #e8e8ed, 줄 글자 17 600 가운데, 위 이름 띠 고정 71 흰 바탕) — 여기서는 본문 폭 760 에 맞춰 줄임 ───────── */
.hl-hub-listup .prose .cmp{margin:36px 0 56px}
.hl-hub-listup .prose .cmp-head{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;padding:6px 0 18px;background:#fff;border-bottom:1px solid var(--line)}
.hl-hub-listup .prose .cmp-c{display:flex;flex-direction:column;align-items:center;gap:4px;text-align:center}
.hl-hub-listup .prose .cmp-ic{display:grid;place-items:center;width:84px;height:84px;margin-bottom:6px;border-radius:24px;background:#f2f5ff;transition:width .2s,height .2s,margin .2s}
.hl-hub-listup .prose .cmp-ic svg{width:44px;height:44px;fill:none;stroke:var(--blue);stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.hl-hub-listup .prose .cmp-c b{font-size:21px;font-weight:700;letter-spacing:-.3px;color:var(--ink)}
.hl-hub-listup .prose .cmp-c a{font-size:14px;font-weight:600;color:var(--blue);text-decoration:none}
.hl-hub-listup .prose .cmp-c a::after{content:' ›'}
.hl-hub-listup .prose .cmp-g{padding:34px 0 30px;border-bottom:1px solid var(--line)}
.hl-hub-listup .prose .cmp-gt{display:flex;align-items:center;gap:8px;margin:0 0 22px;font-size:24px;line-height:1.35;font-weight:700;letter-spacing:-.4px;color:var(--ink)}
.hl-hub-listup .prose .cmp-gt img{width:22px;height:22px;margin:0;border-radius:5px}
.hl-hub-listup .prose .cmp-r{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;text-align:center}
.hl-hub-listup .prose .cmp-r + .cmp-r{margin-top:14px}
.hl-hub-listup .prose .cmp-r span{font-size:16px;line-height:1.55;font-weight:600;color:var(--ink);word-break:keep-all}
.hl-hub-listup .prose .cmp-r.big span{font-size:36px;line-height:1.1;font-weight:700;letter-spacing:-1.2px}
.hl-hub-listup .prose .cmp-r.big span small{display:block;margin-top:12px;font-size:16px;line-height:1.55;font-weight:600;letter-spacing:0;color:var(--ink)}
.hl-hub-listup .prose .cmp-r .no{font-size:14px;font-weight:500;color:#6b7280}
.hl-hub-listup .prose .cmp-r .ok{display:flex;flex-direction:column;align-items:center;gap:6px}
.hl-hub-listup .prose .cmp-r .ok svg{width:30px;height:30px;padding:5px;border-radius:50%;background:var(--blue);fill:none;stroke:#fff;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}
.hl-hub-listup .prose .cmp-r .ok b{font-size:16px;color:var(--ink)}
.hl-hub-listup .prose .cmp-g.hs{border-bottom:0;padding-bottom:0}
.hl-hub-listup .prose .cmp-g.hs .cmp-gt{color:var(--blue)}
/* 소제목도 비교 묶음 제목처럼(32 → 30, 아래 1px 선), 회색 칸은 바탕 없이 선으로 */
.hl-hub-listup .prose > .mag-restored > h2{margin-top:72px;padding:0 0 14px;border:0;border-bottom:1px solid var(--line);font-size:30px;line-height:1.35;font-weight:700}
.hl-hub-listup .prose > .mag-restored > h2::before,.hl-hub-listup .prose > .mag-restored > h2::after{content:none}
.hl-hub-listup .prose .diag{gap:0;border-top:1px solid var(--line)}
.hl-hub-listup .prose .diag .dg{padding:20px 4px;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;box-shadow:none}
@media (min-width:1280px){
  .hl-hub-listup .prose .cmp-head{position:sticky;top:67px;z-index:6}
  .hl-hub-listup .prose .cmp-head.stuck .cmp-ic{width:0;height:0;margin:0;overflow:hidden}
  .hl-hub-listup .prose .cmp-head.stuck .cmp-c a{display:none}
}
@media (max-width:640px){
  /* 휴대폰은 항목별 가로 비교 대신 방식별 한 장씩(직접 개발 → 전체 외주 → 부분 외주) 위에서 아래로 읽게: 묶음을 풀고(display:contents) order 로 다시 줄 세움.
     order = 방식 번호 × 100 + 항목 번호, 항목 이름은 묶음 순서(nth-child)로 붙임(사장님 10-18 '위에서 아래로 자연스럽게 읽혀야') */
  .hl-hub-listup .prose .cmp{display:flex;flex-direction:column;margin:28px 0 44px}
  .hl-hub-listup .prose :is(.cmp-head,.cmp-g,.cmp-r){display:contents}
  .hl-hub-listup .prose .cmp-gt{display:none}
  .hl-hub-listup .prose .cmp-c{flex-direction:row;align-items:center;gap:12px;margin-top:30px;padding:18px 0 14px;border-top:2px solid var(--ink);text-align:left}
  .hl-hub-listup .prose .cmp-c:nth-child(1){order:100;margin-top:0}
  .hl-hub-listup .prose .cmp-c:nth-child(2){order:200}
  .hl-hub-listup .prose .cmp-c:nth-child(3){order:300}
  .hl-hub-listup .prose .cmp-ic{width:46px;height:46px;margin:0;border-radius:13px}
  .hl-hub-listup .prose .cmp-ic svg{width:26px;height:26px}
  .hl-hub-listup .prose .cmp-c b{font-size:21px}
  .hl-hub-listup .prose .cmp-c a{margin-left:auto;font-size:13.5px}
  .hl-hub-listup .prose .cmp-r span{display:grid;grid-template-columns:86px 1fr;gap:12px;padding:12px 0;border-top:1px solid var(--line);font-size:15px;line-height:1.55;text-align:left}
  .hl-hub-listup .prose .cmp-r span::before{font-size:13px;font-weight:700;color:#6b7280;letter-spacing:0;line-height:1.75}
  .hl-hub-listup .prose .cmp-g:nth-child(2) span::before{content:'개발 담당'}
  .hl-hub-listup .prose .cmp-g:nth-child(3) span::before{content:'미리 정할 일'}
  .hl-hub-listup .prose .cmp-g:nth-child(4) span::before{content:'비용 항목'}
  .hl-hub-listup .prose .cmp-g:nth-child(5) span::before{content:'주의할 점'}
  .hl-hub-listup .prose .cmp-g:nth-child(6) span::before{content:'출시 후 운영'}
  .hl-hub-listup .prose .cmp-g.hs span::before{content:'흐름소프트';color:var(--blue);text-decoration:none}
  .hl-hub-listup .prose .cmp-g.hs span{text-decoration:none}
  .hl-hub-listup .prose .cmp-g:nth-child(2) span:nth-child(1){order:101}
  .hl-hub-listup .prose .cmp-g:nth-child(3) span:nth-child(1){order:102}
  .hl-hub-listup .prose .cmp-g:nth-child(4) span:nth-child(1){order:103}
  .hl-hub-listup .prose .cmp-g:nth-child(5) span:nth-child(1){order:104}
  .hl-hub-listup .prose .cmp-g:nth-child(6) span:nth-child(1){order:105}
  .hl-hub-listup .prose .cmp-g:nth-child(7) span:nth-child(1){order:106}
  .hl-hub-listup .prose .cmp-g:nth-child(2) span:nth-child(2){order:201}
  .hl-hub-listup .prose .cmp-g:nth-child(3) span:nth-child(2){order:202}
  .hl-hub-listup .prose .cmp-g:nth-child(4) span:nth-child(2){order:203}
  .hl-hub-listup .prose .cmp-g:nth-child(5) span:nth-child(2){order:204}
  .hl-hub-listup .prose .cmp-g:nth-child(6) span:nth-child(2){order:205}
  .hl-hub-listup .prose .cmp-g:nth-child(7) span:nth-child(2){order:206}
  .hl-hub-listup .prose .cmp-g:nth-child(2) span:nth-child(3){order:301}
  .hl-hub-listup .prose .cmp-g:nth-child(3) span:nth-child(3){order:302}
  .hl-hub-listup .prose .cmp-g:nth-child(4) span:nth-child(3){order:303}
  .hl-hub-listup .prose .cmp-g:nth-child(5) span:nth-child(3){order:304}
  .hl-hub-listup .prose .cmp-g:nth-child(6) span:nth-child(3){order:305}
  .hl-hub-listup .prose .cmp-g:nth-child(7) span:nth-child(3){order:306}
  .hl-hub-listup .prose .cmp-r.big span{font-size:17px;font-weight:700;letter-spacing:-.2px;line-height:1.55}
  .hl-hub-listup .prose .cmp-r.big span small{grid-column:2;margin-top:0;font-size:14px;font-weight:500;color:#4b5160}
  .hl-hub-listup .prose .cmp-r .no{font-size:15px}
  .hl-hub-listup .prose .cmp-r .ok{display:grid;flex-direction:row;gap:12px}
  .hl-hub-listup .prose .cmp-r .ok svg{display:none}
  .hl-hub-listup .prose .cmp-r .ok b{font-size:15px;color:var(--blue)}
  .hl-hub-listup .prose > .mag-restored > h2{font-size:24px}
}

/* ───────── 04 견적과 제안 검토 = 점검표(Front-End Checklist 실측: https://frontendchecklist.io/checklists/launch-checklist —
   위 안내 상자 두 칸(쓰는 때·결과 / 대상·구성), 줄마다 네모 체크 + 항목 + 오른쪽 분류 뱃지, 줄 사이 1px 선, 화면 아래 고정 진행 띠 '0 / N' + 구간별 색 막대) ───────── */
.hl-hub-verify{--c-a:#2e5bff;--c-b:#8aa2ff;--c-c:#1d3fc4;--c-d:#c8d3fb;--c-e:#1b1f3a}
.hl-hub-verify .prose .ck-meta{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;margin:28px 0 8px;padding:22px 26px;border:0;border-radius:18px;background:#f2f5ff}
.hl-hub-verify .prose .ck-mk{display:block;margin-bottom:2px;font-size:13.5px;font-weight:800;color:var(--ink)}
.hl-hub-verify .prose .ck-meta p{margin:0 0 14px;font-size:14.5px;line-height:1.55;color:var(--sub)}
.hl-hub-verify .prose .ck-meta div p:last-child{margin-bottom:0}
.hl-hub-verify .prose .ck-chips{display:flex;flex-wrap:wrap;gap:6px}
.hl-hub-verify .prose .ck-chips i{padding:2px 9px;border-radius:999px;background:#e9eeff;font-style:normal;font-size:12.5px;font-weight:700;color:#1d3fc4}
.hl-hub-verify .prose > .mag-restored > h2{margin-top:64px;padding:0 0 12px;border:0;border-bottom:1px solid var(--line);font-size:26px}
.hl-hub-verify .prose > .mag-restored > h2::before,.hl-hub-verify .prose > .mag-restored > h2::after{content:none}
.hl-hub-verify .prose .ck{margin:0 0 26px;padding:0;list-style:none}
.hl-hub-verify .prose .ck li{margin:0;padding:0;border-bottom:1px solid #eceef3}
.hl-hub-verify .prose .ck li::before{content:none}
.hl-hub-verify .prose .ck label{display:flex;align-items:center;gap:14px;padding:13px 2px;cursor:pointer}
.hl-hub-verify .prose .ck input{flex:none;appearance:none;-webkit-appearance:none;width:20px;height:20px;margin:0;border:2px solid #b4bccd;border-radius:6px;background:#fff;display:grid;place-items:center;cursor:pointer;transition:background .12s,border-color .12s}
.hl-hub-verify .prose .ck input::after{content:'';width:10px;height:5px;margin-top:-3px;border:solid #fff;border-width:0 0 2.5px 2.5px;transform:rotate(-45deg);opacity:0}
.hl-hub-verify .prose .ck input:checked{background:var(--blue);border-color:var(--blue)}
.hl-hub-verify .prose .ck input:checked::after{opacity:1}
.hl-hub-verify .prose .ck input:focus-visible{outline:3px solid #ffd84d;outline-offset:2px}
.hl-hub-verify .prose .ck-t{flex:1;font-size:17px;line-height:1.5;font-weight:600;color:var(--ink);transition:color .12s}
.hl-hub-verify .prose .ck input:checked ~ .ck-t{color:#9aa1b1;text-decoration:line-through;text-decoration-thickness:1.5px}
.hl-hub-verify .prose .ck-tag{flex:none;padding:3px 10px;border-radius:999px;border:0;font-size:12px;font-weight:700;background:#eef2ff;color:#1d3fc4}
/* 아래 고정 진행 띠(본문 안에서만 붙음) */
.hl-hub-verify .prose .ck-bar{position:sticky;bottom:0;z-index:8;display:flex;align-items:center;gap:14px;margin:40px -14px 0;padding:10px 14px;border-top:1px solid var(--line);background:rgba(255,255,255,.96);backdrop-filter:blur(6px)}
.hl-hub-verify .prose .ck-n{flex:none;font-size:14px;font-weight:700;color:var(--sub);font-variant-numeric:tabular-nums}
.hl-hub-verify .prose .ck-n b{color:var(--ink)}
.hl-hub-verify .prose .ck-seg{flex:1;display:flex;gap:3px;height:8px}
.hl-hub-verify .prose .ck-seg i{position:relative;height:100%;border-radius:2px;background:#eceef3;overflow:hidden}
.hl-hub-verify .prose .ck-seg i b{position:absolute;left:0;top:0;bottom:0;width:0;transition:width .25s}
.hl-hub-verify .prose .ck-reset{flex:none;padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font:inherit;font-size:12.5px;font-weight:700;color:var(--sub);cursor:pointer}
/* 관련 글 = 점검표의 '자세히' 줄처럼 그림 없는 한 줄 링크 */
.hl-hub-verify .prose .hub-cards{display:block;margin:6px 0 18px;border-top:1px solid #eceef3}
.hl-hub-verify .prose .hub-cards li{border-bottom:1px solid #eceef3}
.hl-hub-verify .prose .hub-cards .hc{display:flex;justify-content:space-between;padding:10px 2px;border:0;border-radius:0;background:none;box-shadow:none;transform:none}
.hl-hub-verify .prose .hub-cards .hc:hover{transform:none;box-shadow:none}
.hl-hub-verify .prose .hub-cards .hc-pic{display:none}
.hl-hub-verify .prose .hub-cards .hc-t{font-size:15px;font-weight:600;color:var(--sub)}
.hl-hub-verify .prose .hub-cards .hc::after{content:'읽기 →';flex:none;margin-left:12px;font-size:13px;font-weight:700;color:var(--blue)}
.hl-hub-verify .prose .hub-cards .hc:hover .hc-t{color:var(--ink)}
.hl-hub-verify .prose .hub-cards li.more{display:none}
.hl-hub-verify .prose .hub-cards.open li.more{display:block}
/* 진행 방식 상자 = 점검표 안내 상자처럼 1px 테두리 + 연한 바탕 */

@media (max-width:640px){
  .hl-hub-verify .prose .ck-meta{grid-template-columns:1fr;padding:16px 18px}
  .hl-hub-verify .prose .ck label{flex-wrap:wrap;gap:6px 12px;padding:12px 0}
  .hl-hub-verify .prose .ck-t{flex:1 1 calc(100% - 34px);font-size:16px}
  .hl-hub-verify .prose .ck-tag{display:none}
  .hl-hub-verify .prose .ck-bar{margin:32px -16px 0;padding:10px 16px}
}

/* ───────── 05 계약 = 계약서 지면(Common Paper 표준 계약 실측: https://commonpaper.com/standards/cloud-service-agreement/2.0/ —
   본문 811 + 오른쪽 안내 칸 343(바탕 #fbf9f5, 안 24, 각진 모서리), 안내 상자 바탕 #f7f2ec 왼쪽 8px 선 #cc9e75 안 32, 정의어는 청록 바탕 rgba(168,229,227,.25) 글자 #326f84 600, 조 제목 24/36 600)
   — 한국 계약서 형식으로: 소제목 = 제N조(…), 문단 = ①②③ 항, 진행 방식 상자 = 별지, 서명란 ───────── */
@counter-style hl-circled{system:fixed;symbols:'①' '②' '③' '④' '⑤' '⑥' '⑦' '⑧' '⑨' '⑩';suffix:''}
@counter-style hl-ganada{system:fixed;symbols:'가.' '나.' '다.' '라.' '마.' '바.';suffix:''}
.hl-hub-contract .prose > .mag-restored{counter-reset:art ann}
.hl-hub-contract .prose .cv-note{margin:28px 0 12px;padding:28px 32px;border:0;border-left:6px solid var(--blue);border-radius:0 18px 18px 0;background:#f2f5ff;font-style:normal;quotes:none}
.hl-hub-contract .prose .cv-note::before,.hl-hub-contract .prose .cv-note::after{content:none}
.hl-hub-contract .prose .cv-note b{display:block;margin-bottom:6px;font-size:15px;font-weight:800;color:var(--blue)}
.hl-hub-contract .prose .cv-note p{margin:0 0 14px;font-size:16px;line-height:1.6;color:var(--ink)}
.hl-hub-contract .prose .cv-note dl{display:flex;flex-wrap:wrap;gap:6px 28px;margin:0;font-size:14.5px}
.hl-hub-contract .prose .cv-note dl div{display:flex;gap:8px}
.hl-hub-contract .prose .cv-note dt{font-weight:800;color:var(--blue)}
.hl-hub-contract .prose .cv-note dd{margin:0;color:var(--ink)}
/* 제N조(…) */
.hl-hub-contract .prose > .mag-restored > h2{counter-increment:art;counter-reset:cl;margin-top:56px;padding:0;border:0;font-size:24px;line-height:1.5;font-weight:700;letter-spacing:-.3px}
.hl-hub-contract .prose > .mag-restored > h2::before{content:'제' counter(art) '조(';position:static;display:inline;width:auto;height:auto;margin:0;border:0;background:none;color:var(--ink);font-weight:800}
.hl-hub-contract .prose > .mag-restored > h2::after{content:')';position:static;display:inline;width:auto;height:auto;border:0;background:none}
/* ①②③ 항: 조 다음 문단(인용 줄 제외)에 매달린 번호 */
.hl-hub-contract .prose > .mag-restored > h2 ~ p:not(.pull){counter-increment:cl;position:relative;padding-left:30px}
.hl-hub-contract .prose > .mag-restored > h2 ~ p:not(.pull)::before{content:counter(cl,hl-circled);position:absolute;left:0;top:0;font-size:19px;font-weight:700;color:var(--blue)}
/* 정의어(굵은 글자) = 청록 바탕 */
.hl-hub-contract .prose > .mag-restored strong{padding:0 3px;background:#e9eeff;color:#1d3fc4;font-weight:700}
/* 단계 넷 = 가. 나. 다. 라. 세부 항목 */
.hl-hub-contract .prose .tl{counter-reset:sub;margin:10px 0 26px 30px;padding:0;border:0;background:none;display:block}
.hl-hub-contract .prose .tl::before{content:none}
.hl-hub-contract .prose .tli{counter-increment:sub;position:relative;margin:0 0 14px;padding:0 0 0 30px;border:0;background:none;box-shadow:none}
.hl-hub-contract .prose .tl .tli::before{content:counter(sub,hl-ganada);position:absolute;left:0;top:0;width:auto;height:auto;border:0!important;border-radius:0;background:none!important;box-shadow:none;font-size:16px;font-weight:800;color:var(--ink)}
.hl-hub-contract .prose .tli::after{content:none}
.hl-hub-contract .prose .tld{display:inline;margin:0 8px 0 0;padding:0;background:none;font-size:16px;font-weight:800;color:var(--ink)}
.hl-hub-contract .prose .tlt{display:inline;font-size:16px;font-weight:600;color:var(--sub)}
.hl-hub-contract .prose .tlx{margin-top:4px;font-size:16px;line-height:1.65;color:var(--ink)}
/* 진행 방식 상자 = 별지 */
.hl-hub-contract .prose .hub-we{counter-increment:ann;margin:36px 0 12px;padding:26px 28px;border:1px solid #dfe5f5;border-radius:20px;background:#f7f9ff}
.hl-hub-contract .prose .hub-we .we-k{padding-bottom:12px;border-bottom:1px solid #dfe5f5}
.hl-hub-contract .prose .hub-we .we-k::before{content:'별지 ' counter(ann);margin-right:4px;padding:2px 9px;border-radius:999px;background:var(--navy);font-size:12px;font-weight:800;color:#fff}
.hl-hub-contract .prose .hub-we .we-t{margin-top:16px}
/* 관련 글 = 안내 칸(베이지, 각진) — 넓은 화면은 본문 오른쪽 여백으로 */
.hl-hub-contract .prose .cn-side{margin:20px 0 24px;padding:20px 22px;border-radius:18px;background:#f7f9ff;border:1px solid #e3e9fb}
.hl-hub-contract .prose .cn-side > p{margin:0 0 8px;font-size:14px;font-weight:800;color:var(--blue)}
.hl-hub-contract .prose .cn-side .hub-cards{display:block;margin:0 0 18px}
.hl-hub-contract .prose .cn-side .hub-cards:last-child{margin-bottom:0}
.hl-hub-contract .prose .cn-side .hub-cards li{margin:0;padding:6px 0;border-bottom:1px solid #e3e9fb}
.hl-hub-contract .prose .cn-side .hc{display:block;padding:0;border:0;border-radius:0;background:none;box-shadow:none;transform:none}
.hl-hub-contract .prose .cn-side .hc-pic{display:none}
.hl-hub-contract .prose .cn-side .hc-t{font-size:14px;line-height:1.5;font-weight:600;color:var(--ink)}
.hl-hub-contract .prose .cn-side .hc:hover .hc-t{text-decoration:underline}
.hl-hub-contract .prose .cn-side .hub-cards li.more{display:none}
.hl-hub-contract .prose .cn-side .hub-cards.open li.more{display:block}
.hl-hub-contract .prose .cn-side .hc-more{margin:-10px 0 14px;padding:8px;border-color:#dfe5f5;border-radius:12px;background:#fff;font-size:13px;color:var(--blue)}
/* 서명 전 확인 = 네모 칸 + 서명란 */
.hl-hub-contract .prose .checklist{border-top:2px solid var(--ink)}
.hl-hub-contract .prose .sign{display:grid;grid-template-columns:1fr 1fr;gap:30px;margin:26px 0 8px;padding:22px 0 0;border-top:1px solid var(--line)}
.hl-hub-contract .prose .sign div{display:flex;align-items:flex-end;gap:10px;font-size:15px;font-weight:700;color:var(--ink)}
.hl-hub-contract .prose .sign i{flex:1;height:1px;margin-bottom:5px;background:var(--ink)}
.hl-hub-contract .prose .sign em{font-style:normal;font-weight:500;color:var(--sub)}
@media (min-width:1440px){
  .hl-hub-contract .prose > .mag-restored{display:grid;grid-template-columns:760px 280px;column-gap:40px;margin-right:-320px;align-items:start}
  .hl-hub-contract .prose > .mag-restored > *{grid-column:1;min-width:0}
  .hl-hub-contract .prose > .mag-restored > p{margin-top:0}
  .hl-hub-contract .prose > .mag-restored > .cn-side{grid-column:2;grid-row:span 14;margin:0}
}
@media (max-width:640px){
  .hl-hub-contract .prose .cv-note{padding:20px 20px}
  .hl-hub-contract .prose > .mag-restored > h2{font-size:21px}
  .hl-hub-contract .prose .tl{margin-left:0}
  .hl-hub-contract .prose .hub-we{padding:20px 16px}
  .hl-hub-contract .prose .sign{grid-template-columns:1fr;gap:18px}
}

/* ───────── 06 출시 후 운영 = 시간 축(GOV.UK 단계별 안내 실측: https://www.gov.uk/learn-to-drive-a-car — 단계 왼쪽 60 들여씀,
   번호 원 35 테두리 1px #cecece 흰 바탕 19 굵게(위 11), 단계 제목 24/33.6 굵게, 세로 선으로 단계 연결, 단계마다 접고 펼침, 위 '모든 단계' 조절) ───────── */
.hl-hub-after .prose .sbs-ctl{margin:30px 0 6px;padding-left:60px}
.hl-hub-after .prose .sbs-all{padding:0;border:0;background:none;font:inherit;font-size:16px;font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.hl-hub-after .prose .sbs{margin:0 0 30px;padding:0;list-style:none}
.hl-hub-after .prose .sbs-s{position:relative;margin:0;padding:0 0 26px 60px}
.hl-hub-after .prose .sbs-s::before{content:'';position:absolute;left:16.5px;top:46px;bottom:-11px;width:2px;background:#dfe5f5}
.hl-hub-after .prose .sbs-s:last-child::before{bottom:auto;height:30px}

.hl-hub-after .prose .sbs-h{position:relative;padding:10px 0 4px;cursor:pointer}
.hl-hub-after .prose .sbs-n{position:absolute;left:-60px;top:11px;display:grid;place-items:center;width:35px;height:35px;box-sizing:border-box;border:2px solid var(--blue);border-radius:50%;background:#fff;font-size:17px;font-weight:800;color:var(--blue)}
.hl-hub-after .prose .sbs-w{display:block;font-size:14px;font-weight:800;color:var(--blue)}
.hl-hub-after .prose .sbs-h h2{margin:2px 0 6px;padding:0;border:0;font-size:24px;line-height:1.4;font-weight:800;letter-spacing:-.4px}
.hl-hub-after .prose .sbs-h h2::before,.hl-hub-after .prose .sbs-h h2::after{content:none}
.hl-hub-after .prose .sbs-t{display:inline-flex;align-items:center;gap:6px;padding:0;border:0;background:none;font:inherit;font-size:15px;font-weight:700;color:var(--blue);cursor:pointer}
.hl-hub-after .prose .sbs-t::before{content:'';width:7px;height:7px;margin-top:4px;border:solid currentColor;border-width:2px 2px 0 0;transform:rotate(-45deg);transition:transform .2s}
.hl-hub-after .prose .sbs-s.shut .sbs-t::before{transform:rotate(135deg);margin-top:-4px}
.hl-hub-after .prose .sbs-p{padding-top:10px}
.hl-hub-after .prose .sbs-s.shut .sbs-p{display:none}
.hl-hub-after .prose .sbs-s.shut{padding-bottom:14px}
.hl-hub-after .prose .sbs-p > p:first-child{margin-top:0}
/* 단계 안 관련 글 = 글자 목록(GOV.UK 단계 안 링크처럼) */
.hl-hub-after .prose .sbs .hub-cards{display:block;margin:4px 0 20px;padding:0 0 0 18px;list-style:disc}
.hl-hub-after .prose .sbs .hub-cards li{margin:0 0 6px;padding:0;list-style:disc}
.hl-hub-after .prose .sbs .hub-cards li::before{content:none}
.hl-hub-after .prose .sbs .hub-cards li.more{display:none}
.hl-hub-after .prose .sbs .hub-cards.open li.more{display:list-item}
.hl-hub-after .prose .sbs .hc{display:inline;padding:0;border:0;border-radius:0;background:none;box-shadow:none;transform:none}
.hl-hub-after .prose .sbs .hc-pic{display:none}
.hl-hub-after .prose .sbs .hc-t{font-size:16px;font-weight:600;color:var(--blue);text-decoration:underline;text-underline-offset:3px}
.hl-hub-after .prose .sbs .hc-more{width:auto;margin:-8px 0 18px 18px;padding:0;border:0;background:none;font-size:15px;text-decoration:underline;text-underline-offset:3px}
@media (max-width:640px){
  .hl-hub-after .prose .sbs-ctl{padding-left:46px}
  .hl-hub-after .prose .sbs-s{padding-left:46px}
  .hl-hub-after .prose .sbs-n{left:-46px;width:30px;height:30px;font-size:16px}
  .hl-hub-after .prose .sbs-s::before{left:14px;top:42px}
  .hl-hub-after .prose .sbs-h h2{font-size:21px}
}

/* ───────── 07 공공 사업 = 두 갈래(에어비앤비 도움말 센터 실측: https://www.airbnb.co.kr/help — 위 탭 줄(게스트 / 숙소 호스트), 글자 14~16 600,
   고른 탭 아래 검은 선 2px, 탭 줄 아래 1px 선, 탭마다 내용이 바뀜) — 발주기관 담당자 / 사업 참여 업체 ───────── */
.hl-hub-public .prose .tw-bar{position:sticky;top:67px;z-index:7;display:flex;gap:28px;margin:44px 0 0;padding:0;border-bottom:1px solid var(--line);background:#fff}
.hl-hub-public .prose .tw-bar button{display:inline-flex;align-items:center;gap:8px;margin:0 0 -1px;padding:16px 2px 14px;border:0;border-bottom:2px solid transparent;background:none;font:inherit;font-size:17px;font-weight:700;color:var(--sub);cursor:pointer;transition:color .15s,border-color .15s}
.hl-hub-public .prose .tw-bar button svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}
.hl-hub-public .prose .tw-bar button:hover{color:var(--ink)}
.hl-hub-public .prose .tw-bar button[aria-selected="true"]{color:var(--blue);border-bottom-color:var(--blue)}
.hl-hub-public .prose .tw-p{padding-top:8px}
.hl-hub-public .prose .tw-p[hidden]{display:none}
.hl-hub-public .prose .tw-p > h2:first-child{margin-top:36px}
/* 탭 안 소제목 = 도움말 글 제목처럼 간결하게 */
.hl-hub-public .prose > .mag-restored h2{padding:0;border:0;font-size:24px;letter-spacing:-.4px}
.hl-hub-public .prose > .mag-restored h2::before,.hl-hub-public .prose > .mag-restored h2::after{content:none}
/* 관련 글 = 도움말 '추천 도움말' 두 칸 목록(그림 없이 제목, 아래 1px 선) */
.hl-hub-public .prose .hub-cards{grid-template-columns:1fr 1fr;gap:0 28px;margin:10px 0 22px}
.hl-hub-public .prose .hub-cards li{border-bottom:1px solid var(--line)}
.hl-hub-public .prose .hub-cards .hc{padding:14px 0;border:0;border-radius:0;background:none;box-shadow:none;transform:none}
.hl-hub-public .prose .hub-cards .hc-pic{display:none}
.hl-hub-public .prose .hub-cards .hc-t{font-size:15.5px;font-weight:600;color:var(--ink)}
.hl-hub-public .prose .hub-cards .hc:hover .hc-t{text-decoration:underline}
@media (max-width:1279px){.hl-hub-public .prose .tw-bar{top:calc(var(--hy,0px) + 52px)}}
@media (max-width:640px){
  .hl-hub-public .prose .tw-bar{gap:18px;top:0}
  .hl-hub-public .prose .tw-bar button{font-size:15.5px;padding:14px 0 12px}
  .hl-hub-public .prose .hub-cards{grid-template-columns:1fr}
}
/* 02 보강(10-15 '진행'): 단계 안 구성 요소를 '문서 한 장' 카드로 통일 — 흰 종이, 오른쪽 위 접힌 모서리, 위 문서 이름(data-doc). 관련 글은 문서 파일 목록 */
.hl-hub-method .prose [data-doc],.hl-hub-method .prose .split,.hl-hub-method .prose .callout{position:relative;margin:28px 0;padding:46px 24px 22px;border:1px solid #e4e8f2;border-radius:10px 26px 10px 10px;background:#fff;box-shadow:0 22px 44px -38px rgba(27,31,58,.5)}
.hl-hub-method .prose .split,.hl-hub-method .prose .callout{padding-top:22px}
.hl-hub-method .prose [data-doc]::before{content:attr(data-doc);position:absolute;left:24px;top:15px;padding-left:20px;font-size:12.5px;font-weight:800;color:var(--blue);line-height:16px;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%232e5bff' stroke-width='1.6'%3E%3Cpath d='M3.5 1.5h6l3 3v10h-9z'/%3E%3Cpath d='M9.5 1.5v3h3M5.5 8.5h5M5.5 11h5'/%3E%3C/svg%3E") 0 0/15px 15px no-repeat}
.hl-hub-method .prose [data-doc]::after,.hl-hub-method .prose .split::after,.hl-hub-method .prose .callout::after{content:'';position:absolute;top:-1px;right:-1px;width:26px;height:26px;border-radius:0 26px 0 8px;background:linear-gradient(225deg,#fff 50%,#e4e8f2 50%)}
.hl-hub-method .prose figure[data-doc] .figcap{margin:12px 0 0;text-align:left}
.hl-hub-method .prose .diag[data-doc]{display:grid;gap:0}
.hl-hub-method .prose .diag[data-doc] .dg{margin:0;padding:14px 0;border:0;border-top:1px solid #eef0f5;border-radius:0;background:none;box-shadow:none}
.hl-hub-method .prose .diag[data-doc] .dg:first-child{border-top:0;padding-top:4px}
.hl-hub-method .prose .compare[data-doc]{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.hl-hub-method .prose .callout{border-left:1px solid #e4e8f2}
.hl-hub-method .prose .pull{margin:36px 0;padding:0 0 0 20px;border-left:4px solid var(--blue);border-radius:0}
.hl-hub-method .prose .mag-sequence,.hl-hub-method .prose .mag-stage-map{max-width:none}
.hl-hub-method .prose .hub-cards{grid-template-columns:1fr 1fr;gap:8px 12px}
.hl-hub-method .prose .hub-cards .hc{gap:12px;padding:12px 14px;border:1px solid #e4e8f2;border-radius:10px;box-shadow:none}
.hl-hub-method .prose .hub-cards .hc:hover{transform:none;border-color:var(--blue)}
.hl-hub-method .prose .hub-cards .hc-pic{width:30px;height:36px;border-radius:3px 9px 3px 3px;background:#f2f5ff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 36' fill='none' stroke='%232e5bff' stroke-width='1.6'%3E%3Cpath d='M8 14h14M8 19h14M8 24h9'/%3E%3C/svg%3E") center/30px 36px no-repeat}
.hl-hub-method .prose .hub-cards .hc-pic img{display:none}
.hl-hub-method .prose .hub-cards .hc-t{font-size:14.5px}
@media (max-width:640px){
  .hl-hub-method .prose [data-doc]{padding:44px 16px 18px}
  .hl-hub-method .prose .compare[data-doc]{grid-template-columns:1fr}
  .hl-hub-method .prose .hub-cards{grid-template-columns:1fr}
}
/* 06 보강(10-15 '진행'): 단계마다 할 일 한 줄(본문에서 옮긴 문장, 같은 문장은 한 곳에만), 진행 방식 상자는 접어도 보이게 단계 끝에 둠, 처음에는 모두 접힘(스크립트가 없으면 모두 펼침) */
.hl-hub-after .prose .sbs-do{position:relative;display:block;margin:4px 0 10px;padding:14px 18px 14px 48px;border-radius:14px;background:#f2f5ff;font-size:17px;line-height:1.55;font-weight:700;color:var(--ink)}
.hl-hub-after .prose .sbs-do::before{content:'';position:absolute;left:18px;top:16px;width:20px;height:20px;border-radius:50%;background:var(--blue) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20' fill='none' stroke='%23fff' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 10.5l2.8 2.8L14.5 7.5'/%3E%3C/svg%3E") center/20px no-repeat}
.hl-hub-after .prose .sbs-do strong{font-weight:800}
.hl-hub-after .prose .sbs-s > .hub-we{margin:18px 0 6px}
.hl-hub-after .prose .sbs-s.shut .sbs-h{padding-bottom:0}
