/* =====================================================
   정부지원사업 안내 · 활용 상담 신청 전용 스타일
   (kr/about/promotion/gov-support/index, consult — #298)
   원본: Netlify 정부지원사업 안내·상담 페이지. 덧칠된 여러 겹의 재정의 중 최종 화면 값만 옮겼고,
   서체는 사이트 기본(Pretendard)을 쓴다.
   - 모든 선택자는 .gov-support 로 시작한다(서브 비주얼 배경 한 줄만 예외).
   - 클래스는 gs- 접두어를 쓴다. 사이트 전역 .wrap/.btn/.card/.inner/.num/.section/.step 등과
     body:has(.notice/.event/.main …) 규칙에 걸리지 않게 하기 위해서다.
   ===================================================== */

body:has(.gov-support) .sub-bg { background-image:url('/images/sub/sub-bg09.jpg'); }

/* ── 공통 바탕 (안내 페이지 팔레트) ── */
.gov-support {
    /* 글자색은 WCAG 2.1 AA 명도 대비 4.5:1 이상으로 맞췄다(#298). 원본 Netlify 보다 회색이 조금 진하다. */
    --gs-ink:#0F2340; --gs-ink-2:#2A3D5C; --gs-ink-3:#5B6B85; --gs-ink-4:#6B7585;
    --gs-line:#D9E3EF; --gs-line-2:#E8EFF7; --gs-paper:#ffffff;
    --gs-blue:#005BAC; --gs-blue-dark:#00498F; --gs-blue-soft:#E8F1FA; --gs-blue-line:#BFD7EE;
    --gs-cyan:#DCEAF8; --gs-navy:#003F78;
    --gs-shadow:0 14px 30px -16px rgba(0,59,120,.32);
    --gs-ease:cubic-bezier(.2,.7,.3,1);
    /* 본문 폭. 윈도우 배율을 쓰는 화면은 브라우저 100% 에서도 창이 1280~1536px 로 좁아져 여백이 줄어든다.
       넓은 창(1620px 이상)의 여백 비율(좌우 약 18%)을 좁은 창에서도 유지하되, 표와 3단 구성이 무너지지 않게 최소 폭을 둔다. */
    --gs-wrap-max:clamp(940px, calc(63vw + 60px), 1080px);
    background:#fff;
    color:var(--gs-ink);
    font-size:16.5px;
    line-height:1.85;
    letter-spacing:normal;
    word-break:keep-all;
    overflow-wrap:break-word;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing:grayscale;
}
/* .sub-container 의 위 여백을 없애 첫 밴드를 서브 비주얼에 붙인다.
   안내 페이지는 아래 여백도 없애 마무리 밴드를 푸터에 붙인다(상담 페이지는 사이트 기본 아래 여백을 둔다). */
.gov-support.sub-container { padding-top:0; }
.gov-support:not(.gov-support-consult).sub-container { padding-bottom:0; }

.gov-support .gs-wrap { max-width:var(--gs-wrap-max); margin:0 auto; padding:0 30px; }
@media (max-width:640px) { .gov-support .gs-wrap { padding:0 20px; } }

/* ── 버튼 ── */
.gov-support .gs-btn { display:inline-flex; align-items:center; gap:8px; white-space:nowrap; text-decoration:none; font-weight:600; font-size:15px; line-height:1.85; padding:13px 24px; border-radius:100px; border:1px solid transparent; letter-spacing:normal; transition:background .2s, color .2s, transform .2s var(--gs-ease), box-shadow .25s var(--gs-ease); }
.gov-support .gs-btn-pri { background:var(--gs-blue); color:#fff; border-color:var(--gs-blue); }
.gov-support .gs-btn-pri:hover { background:var(--gs-blue-dark); border-color:var(--gs-blue-dark); transform:translateY(-1px); box-shadow:0 10px 22px -12px rgba(0,73,143,.7); }
.gov-support .gs-btn-ghost { background:transparent; color:var(--gs-blue-dark); border-color:var(--gs-blue-line); }
.gov-support .gs-btn-ghost:hover { background:var(--gs-blue-soft); transform:translateY(-1px); }
.gov-support .gs-btn-light { background:#fff; color:var(--gs-navy); border-color:#fff; }
.gov-support .gs-btn-light:hover { background:var(--gs-blue-soft); transform:translateY(-1px); box-shadow:0 10px 22px -12px rgba(0,0,0,.4); }
.gov-support .gs-btn-outline { background:transparent; color:#fff; border-color:rgba(255,255,255,.45); }
.gov-support .gs-btn-outline:hover { background:rgba(255,255,255,.1); border-color:#fff; transform:translateY(-1px); }
.gov-support .gs-btn:active { transform:translateY(0) scale(.98); box-shadow:none; }
.gov-support .gs-btn:focus-visible,
.gov-support .gs-notice-terms-toggle:focus-visible { outline:3px solid var(--gs-blue); outline-offset:3px; }

/* ── 히어로: 하늘색 밴드 + 텍스트 좌 / 현장 사진 우 ── */
.gov-support .gs-hero-band { background:linear-gradient(180deg,#E4EFFA 0%,#FFFFFF 100%); border-bottom:1px solid var(--gs-line-2); }
.gov-support .gs-hero { max-width:var(--gs-wrap-max); margin:0 auto; display:grid; grid-template-columns:minmax(0,1.22fr) minmax(0,.78fr); gap:44px; align-items:center; padding:88px 30px 72px; }
.gov-support .gs-hero-tag { display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:500; letter-spacing:.04em; line-height:1.85; color:var(--gs-blue); padding:7px 15px; border:1px solid var(--gs-blue); border-radius:100px; margin-bottom:30px; background:#fff; }
.gov-support .gs-hero-tag::before { content:''; width:5px; height:5px; border-radius:50%; background:var(--gs-blue); }
.gov-support .gs-hero-title { font-weight:900; font-size:clamp(30px,4.4vw,46px); line-height:1.22; letter-spacing:-.035em; max-width:860px; margin-bottom:26px; color:var(--gs-ink); text-wrap:balance; }
.gov-support .gs-hero-title .gs-hl { color:var(--gs-blue); }
.gov-support .gs-hero-sub { font-size:16.5px; line-height:1.8; color:var(--gs-ink-2); max-width:none; text-wrap:pretty; }
.gov-support .gs-hero-cta { margin-top:30px; display:flex; gap:10px; flex-wrap:wrap; }
.gov-support .gs-hero-slot { border-radius:16px; border:1px solid var(--gs-line); background:#fff; box-shadow:var(--gs-shadow); overflow:hidden; }
.gov-support .gs-hero-slot img { display:block; width:100%; height:auto; }
@media (max-width:860px) {
    .gov-support .gs-hero { grid-template-columns:1fr; gap:32px; }
    .gov-support .gs-hero-slot { max-width:520px; }
}

/* ── 카드 + 3가지 질문 ── */
.gov-support .gs-why { margin-top:56px; }
.gov-support .gs-card { background:var(--gs-paper); border:1px solid var(--gs-line); border-radius:16px; padding:44px 44px 42px; position:relative; overflow:hidden; }
.gov-support .gs-card.gs-topline::before { content:''; position:absolute; top:0; left:0; width:100%; height:5px; background:var(--gs-blue); }
.gov-support .gs-kicker { font-size:13px; font-weight:500; letter-spacing:.02em; color:var(--gs-blue); margin-bottom:12px; }
.gov-support .gs-card h2,
.gov-support .gs-sec-h2 { font-size:clamp(22px,3vw,30px); font-weight:900; letter-spacing:-.03em; line-height:1.38; margin-bottom:18px; color:var(--gs-ink); text-wrap:balance; }
.gov-support .gs-card p { font-size:16.5px; color:var(--gs-ink-2); line-height:1.85; text-wrap:pretty; }
.gov-support .gs-card p strong { font-weight:700; box-shadow:inset 0 -9px 0 var(--gs-cyan); }
@media (max-width:640px) { .gov-support .gs-card { padding:30px 22px 30px; } }

.gov-support .gs-q-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:30px; border-top:1px solid var(--gs-line); }
.gov-support .gs-q { padding:26px 26px 26px 0; border-right:1px solid var(--gs-line-2); }
.gov-support .gs-q:last-child { border-right:0; }
.gov-support .gs-q + .gs-q { padding-left:26px; }
.gov-support .gs-q .gs-num { display:block; font-size:32px; font-weight:700; letter-spacing:-.02em; font-variant-numeric:tabular-nums; color:var(--gs-ink-4); line-height:1; margin-bottom:14px; }
.gov-support .gs-q h3 { font-size:16.5px; font-weight:700; letter-spacing:-.01em; line-height:1.45; margin-bottom:8px; color:var(--gs-ink); }
.gov-support .gs-q p { font-size:14.5px; color:var(--gs-ink-3); line-height:1.7; }
@media (max-width:760px) {
    .gov-support .gs-q-grid { grid-template-columns:1fr; }
    .gov-support .gs-q,
    .gov-support .gs-q + .gs-q { padding:20px 0; border-right:0; border-bottom:1px solid var(--gs-line-2); }
    .gov-support .gs-q:last-child { border-bottom:0; }
}

/* ── 섹션 공통 ── */
.gov-support .gs-sec { margin-top:88px; }
.gov-support .gs-sec-head { margin-bottom:26px; }
.gov-support .gs-lead { font-size:16.5px; color:var(--gs-ink-2); max-width:none; text-wrap:pretty; }
.gov-support .gs-lead strong { font-weight:700; }
.gov-support .gs-foot-note { font-size:12.5px; color:var(--gs-ink-4); line-height:1.65; margin-top:16px; display:flex; gap:7px; }
.gov-support .gs-foot-note::before { content:'※'; flex:none; }

/* ── 4단계 ── */
.gov-support .gs-steps { display:grid; grid-template-columns:repeat(4,1fr); gap:14px; margin-top:8px; }
.gov-support .gs-step { background:var(--gs-paper); border:1px solid var(--gs-line); border-radius:12px; padding:22px 20px 24px; position:relative; overflow:hidden; transition:transform .22s var(--gs-ease), box-shadow .22s, border-color .22s; }
.gov-support .gs-step::before { content:''; position:absolute; top:0; left:0; width:100%; height:3px; background:var(--gs-blue); }
.gov-support .gs-step:hover { transform:translateY(-3px); box-shadow:var(--gs-shadow); border-color:var(--gs-blue); }
.gov-support .gs-step .gs-num { width:32px; height:32px; border-radius:50%; background:var(--gs-blue); color:#fff; font-size:14px; font-weight:800; letter-spacing:-.02em; font-variant-numeric:tabular-nums; line-height:1; display:flex; align-items:center; justify-content:center; margin-bottom:16px; }
.gov-support .gs-step .gs-num i { display:none; }
.gov-support .gs-step h3 { font-size:16px; font-weight:700; letter-spacing:-.01em; margin-bottom:6px; line-height:1.4; color:var(--gs-ink); }
.gov-support .gs-step p { font-size:14px; color:var(--gs-ink-3); line-height:1.7; }
.gov-support .gs-step.gs-step-last { background:linear-gradient(180deg,#fff 0%,var(--gs-blue-soft) 100%); border-color:var(--gs-blue-line); }
@media (max-width:860px) { .gov-support .gs-steps { grid-template-columns:1fr 1fr; } }
@media (max-width:480px) { .gov-support .gs-steps { grid-template-columns:1fr; } }

/* ── 지원사업 표 (640px 이하에서 카드로 바뀐다) ── */
.gov-support .gs-pg-note { font-size:12px; font-weight:500; letter-spacing:.02em; line-height:1.85; color:var(--gs-blue-dark); background:var(--gs-cyan); display:inline-flex; padding:5px 12px; border-radius:100px; margin-bottom:14px; }
.gov-support .gs-table-scroll { overflow-x:auto; -webkit-overflow-scrolling:touch; background:var(--gs-paper); border:1px solid #d9e3ee; border-radius:16px; box-shadow:0 10px 32px rgba(20,63,110,.07); }
.gov-support .gs-pg-table { width:100%; min-width:0; table-layout:fixed; border-collapse:collapse; font-variant-numeric:tabular-nums; }
.gov-support .gs-pg-table th { font-size:15px; font-weight:700; letter-spacing:-.01em; line-height:1.4; color:#fff; background:var(--gs-blue-dark); padding:17px 16px; border:0; border-right:1px solid rgba(255,255,255,.16); text-align:left; vertical-align:middle; white-space:nowrap; }
.gov-support .gs-pg-table th:last-child { border-right:0; }
.gov-support .gs-pg-table td { font-size:15px; line-height:1.65; padding:20px 16px; vertical-align:top; border-top:1px solid #e3eaf1; color:var(--gs-ink-2); text-align:left; word-break:keep-all; }
.gov-support .gs-pg-table tbody tr:first-child td { border-top:0; }
.gov-support .gs-pg-table tbody tr:nth-child(even) td { background:#f7faff; }
.gov-support .gs-pg-table tbody tr:hover td { background:#eef6fd; }
.gov-support .gs-pg-table th:nth-child(4),
.gov-support .gs-pg-table th:nth-child(5),
.gov-support .gs-pg-table td:nth-child(4),
.gov-support .gs-pg-table td:nth-child(5) { text-align:center; }
.gov-support .gs-pg-table td:first-child { font-size:16px; font-weight:700; color:var(--gs-ink); }
.gov-support .gs-pg-table td + td { border-left:1px solid #edf1f5; }
.gov-support .gs-pg-table td.gs-when { color:var(--gs-ink-3); font-size:14px; letter-spacing:-.02em; }
.gov-support .gs-pg-table tbody tr:nth-child(2) td { vertical-align:middle; }
.gov-support .gs-pg-table tbody tr:nth-child(1) td:nth-child(n+3),
.gov-support .gs-pg-table tbody tr:nth-child(3) td:nth-child(n+3) { vertical-align:middle; }
.gov-support .gs-pg-table strong { font-weight:700; }
.gov-support .gs-pg-table td.gs-when strong { color:var(--gs-ink); font-weight:700; }
.gov-support .gs-pg-table td.gs-max { color:var(--gs-blue); font-weight:600; }
.gov-support .gs-pg-table td.gs-max strong,
.gov-support .gs-pg-table .gs-rate-value { color:var(--gs-blue); font-weight:800; font-size:18px; letter-spacing:-.01em; }
.gov-support .gs-pg-table .gs-max-type { color:var(--gs-ink-3); font-size:14px; font-weight:400; letter-spacing:-.02em; line-height:1.65; }
.gov-support .gs-pg-table .gs-cell-value { display:block; }
.gov-support .gs-pg-table .gs-rate-line { display:block; }
.gov-support .gs-pg-table .gs-rate-line + .gs-rate-line { margin-top:8px; }
.gov-support .gs-pg-table th:last-child,
.gov-support .gs-pg-table td:last-child { white-space:nowrap; }
.gov-support .gs-pg-table .gs-ratio-note { font-size:11px; font-weight:500; letter-spacing:0; opacity:.82; margin-left:4px; white-space:nowrap; }
.gov-support .gs-pg-table td.gs-when .gs-cell-value { white-space:nowrap; }
@media (max-width:640px) {
    .gov-support .gs-table-scroll { overflow:visible; border:0; background:transparent; border-radius:0; box-shadow:none; }
    .gov-support .gs-pg-table { min-width:0; table-layout:auto; }
    .gov-support .gs-pg-table colgroup,
    .gov-support .gs-pg-table thead { display:none; }
    .gov-support .gs-pg-table,
    .gov-support .gs-pg-table tbody,
    .gov-support .gs-pg-table tr,
    .gov-support .gs-pg-table td { display:block; width:100%; }
    .gov-support .gs-pg-table tr { border:1px solid #d9e3ee; border-radius:14px; margin-bottom:14px; overflow:hidden; background:var(--gs-paper); box-shadow:0 6px 20px rgba(20,63,110,.05); }
    .gov-support .gs-pg-table tbody tr:nth-child(even) td,
    .gov-support .gs-pg-table tbody tr:hover td { background:transparent; }
    .gov-support .gs-pg-table td { border:0; border-top:1px solid #edf1f5; padding:11px 16px; text-align:left !important; display:grid; grid-template-columns:105px minmax(0,1fr); align-items:start; gap:14px; font-size:14.5px; line-height:1.6; }
    .gov-support .gs-pg-table td + td { border-left:0; }
    .gov-support .gs-pg-table td:first-child { display:block; border:0; border-bottom:1px solid #d9e3ee; background:var(--gs-blue-soft) !important; padding:14px 16px; font-size:15.5px; }
    .gov-support .gs-pg-table td:not(:first-child)::before { content:attr(data-label); color:var(--gs-ink-3); font-weight:600; font-size:13.5px; padding-top:1px; }
    .gov-support .gs-pg-table .gs-cell-value { text-align:right; min-width:0; }
    .gov-support .gs-pg-table td.gs-when .gs-cell-value { white-space:normal; }
    .gov-support .gs-pg-table td.gs-max .gs-cell-value { color:var(--gs-blue); }
    .gov-support .gs-pg-table td:last-child { padding-bottom:13px; }
}

/* ── 공고 소식받기: 파란 그라데이션 패널 + 흰 폼 카드 ── */
.gov-support .gs-notice-signup { position:relative; isolation:isolate; max-width:min(var(--gs-wrap-max), calc(100% - 60px)); margin:96px auto 88px; padding:48px 42px 42px; scroll-margin-top:96px; background:linear-gradient(32deg,#111c70 0%,#1454ac 52%,#138fe2 100%); border:1px solid rgba(107,176,255,.32); border-radius:30px; box-shadow:0 14px 38px rgba(17,55,125,.12); color:#fff; }
.gov-support .gs-notice-signup .gs-sec-head { margin-bottom:28px; }
.gov-support .gs-notice-signup .gs-pg-note { position:relative; isolation:isolate; z-index:0; display:inline-flex; align-items:center; justify-content:center; min-height:39px; padding:6px 21px; margin:0 22px 18px 0; border:1.5px solid rgba(255,255,255,.3); border-radius:999px; background:rgba(255,255,255,.13); color:#fff; font-size:13px; font-weight:500; line-height:1.5; letter-spacing:.03em; box-shadow:none; }
.gov-support .gs-notice-signup .gs-sec-h2 { color:#fff; letter-spacing:-.035em; }
.gov-support .gs-notice-description { font-size:16.5px; color:#dceaff; margin:0; }
.gov-support .gs-notice-card { background:#fff; border:1px solid rgba(255,255,255,.7); border-radius:22px; padding:32px; box-shadow:0 10px 30px rgba(7,28,80,.1); }
.gov-support .gs-notice-fields { display:grid; grid-template-columns:1fr 1fr; gap:20px 24px; }
.gov-support .gs-notice-field-wide { grid-column:1 / -1; }
.gov-support .gs-notice-field { display:flex; flex-direction:column; gap:8px; font-size:14px; font-weight:700; line-height:1.85; color:#182342; }
.gov-support .gs-notice-field .gs-field-label { display:flex; align-items:center; gap:6px; }
.gov-support .gs-notice-required { color:#314e8a; font-size:10px; font-weight:400; }
.gov-support .gs-notice-optional { color:#68718a; font-size:10px; font-weight:400; }
.gov-support .gs-notice-field input { width:100%; min-width:0; height:auto; min-height:50px; border:1px solid #000; border-radius:12px; background:#fff; padding:12px 14px; font-family:inherit; font-size:15px; font-weight:400; line-height:1.5; letter-spacing:normal; color:#17213d; transition:none; }
.gov-support .gs-notice-field input::placeholder { color:#9198a8; font-weight:400; }
.gov-support .gs-notice-field input:focus { outline:3px solid #e1eaff; border-color:#000; background:#fff; }
.gov-support .gs-notice-consents { border-top:1px solid #000; margin-top:28px; padding-top:22px; display:grid; gap:12px; }
/* 체크박스 옆 글 덩어리(구분·제목·자세히 보기)는 한 줄 글처럼 흐른다. 좁으면 글 안에서 줄을 바꾸고 체크박스 아래로 떨어지지 않는다. */
.gov-support .gs-notice-consent { display:flex; align-items:flex-start; gap:6px; font-size:12px; line-height:1.8; color:#35405b; }
.gov-support .gs-notice-consent-text { flex:1 1 auto; min-width:0; }
.gov-support .gs-notice-consent label { cursor:pointer; font-size:13px; font-weight:600; color:#182342; }
.gov-support .gs-notice-consent-all label { font-weight:700; }
.gov-support .gs-notice-consent-item { display:grid; gap:2px; }
.gov-support .gs-notice-consent-desc { margin:0; padding-left:26px; font-size:12px; line-height:1.7; color:#53607b; }
.gov-support .gs-notice-hint { margin:0; font-size:12px; line-height:1.7; color:#53607b; }
.gov-support .gs-notice-hint-warn { color:#c62f2a; }
.gov-support .gs-notice-hint[hidden] { display:none; }
.gov-support .gs-notice-consent input { flex-shrink:0; width:18px; height:18px; margin:3px 2px 0 0; padding:0; line-height:normal; -webkit-appearance:none; appearance:none; border:1px solid #000; border-radius:3px; background:#fff; display:grid; place-content:center; cursor:pointer; transition:none; }
.gov-support .gs-notice-consent input:checked { background:#000; }
.gov-support .gs-notice-consent input:checked::before { content:""; width:8px; height:4px; border:solid #fff; border-width:0 0 2px 2px; transform:translateY(-1px) rotate(-45deg); }
.gov-support .gs-notice-consent input:focus-visible { outline:2px solid #000; outline-offset:3px; }
.gov-support .gs-notice-consent-kind { font-size:10px; font-weight:400; white-space:nowrap; color:#68718a; margin-right:4px; }
.gov-support .gs-notice-terms-toggle { margin-left:4px; -webkit-appearance:none; appearance:none; border:0; border-radius:0; background:none; padding:0; color:#254eac; font:inherit; letter-spacing:inherit; text-decoration:underline; text-underline-offset:3px; cursor:pointer; white-space:nowrap; }
.gov-support .gs-notice-terms-body { margin-top:8px; max-height:260px; overflow-y:auto; overscroll-behavior:contain; border:1px solid #000; border-radius:12px; padding:20px; background:#f5f7fc; color:#53607b; font-size:13px; line-height:1.9; white-space:pre-line; }
.gov-support .gs-notice-terms-body[hidden] { display:none; }
.gov-support .gs-notice-terms-body b { font-weight:700; color:#17213d; }
.gov-support .gs-notice-terms-body:focus-visible { outline:2px solid var(--gs-blue); outline-offset:3px; }
.gov-support .gs-notice-actions { display:flex; justify-content:center; margin-top:28px; }
.gov-support .gs-notice-signup .gs-notice-submit { position:relative; isolation:isolate; overflow:hidden; justify-content:center; gap:12px; min-width:0; min-height:50px; padding:13px 28px; font-family:inherit; font-size:15px; font-weight:700; line-height:1.5; cursor:pointer; color:#fff; border:1px solid rgba(205,225,245,.7); border-radius:999px; background:linear-gradient(115deg,#003c78,#124c87); box-shadow:inset 0 1px 0 rgba(255,255,255,.25),0 5px 15px rgba(0,43,86,.2); -webkit-backdrop-filter:blur(16px); backdrop-filter:blur(16px); text-shadow:0 1px 2px rgba(9,38,104,.2); }
.gov-support .gs-notice-signup .gs-notice-submit::before { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(255,255,255,.18),transparent 60%); pointer-events:none; }
.gov-support .gs-notice-signup .gs-notice-submit:hover { background:linear-gradient(115deg,#002f60,#0c3c70); border-color:rgba(224,238,255,.9); box-shadow:inset 0 1px 0 rgba(255,255,255,.3),0 7px 20px rgba(0,43,86,.25); transform:translateY(-1px); }
.gov-support .gs-notice-signup .gs-notice-submit:active { transform:translateY(0); }
.gov-support .gs-notice-signup .gs-notice-submit span { font-size:19px; line-height:1; }
.gov-support .gs-notice-signup .gs-btn:focus-visible,
.gov-support .gs-notice-signup .gs-notice-terms-toggle:focus-visible { outline-color:#355ed0; }
.gov-support .gs-notice-status { font-size:13px; color:#53607b; text-align:center; margin:16px 0 0; }
.gov-support .gs-notice-status[hidden] { display:none; }
@media (max-width:640px) {
    .gov-support .gs-notice-signup { max-width:calc(100% - 40px); margin-top:72px; margin-bottom:56px; padding:30px 20px 24px; border-radius:24px; }
    .gov-support .gs-notice-card { padding:24px 18px; border-radius:18px; }
    .gov-support .gs-notice-fields { grid-template-columns:1fr; gap:18px; }
    .gov-support .gs-notice-description { font-size:15px; }
    .gov-support .gs-notice-required,
    .gov-support .gs-notice-optional,
    .gov-support .gs-notice-consent-kind { font-size:9px; }
    .gov-support .gs-notice-terms-body { padding:16px; }
}

/* ── 마무리 밴드 ── */
.gov-support .gs-cta-band { background:var(--gs-navy); color:#fff; margin-top:110px; padding:64px 0 60px; scroll-margin-top:78px; }
.gov-support .gs-cta-band-row { display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:nowrap; }
.gov-support .gs-cta-band h2 { font-size:clamp(22px,3vw,30px); font-weight:800; letter-spacing:-.02em; line-height:1.4; margin-bottom:10px; color:#fff; text-wrap:balance; }
.gov-support .gs-cta-band p { color:#C6DCF2; font-size:15.5px; line-height:1.75; max-width:none; }
.gov-support .gs-cta-band-row > div { flex:1 1 0; min-width:0; }
.gov-support .gs-cta-band-row > .gs-cta-band-btns { display:flex; gap:10px; flex:none; }
@media (max-width:860px) {
    .gov-support .gs-cta-band-row { flex-direction:column; align-items:stretch; gap:24px; }
    .gov-support .gs-cta-band-row > div { flex:none; width:100%; }
    .gov-support .gs-cta-band-row > .gs-cta-band-btns { flex-wrap:wrap; }
}
@media (max-width:640px) {
    .gov-support .gs-cta-band { margin-top:72px; padding:40px 0; }
    .gov-support .gs-cta-band-row > .gs-cta-band-btns { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .gov-support .gs-cta-band-btns .gs-btn { justify-content:center; min-width:0; min-height:48px; padding:13px 12px; white-space:normal; text-align:center; font-size:14px; }
}


/* =====================================================
   활용 상담 신청 (consult)
   ===================================================== */
.gov-support-consult {
    background:linear-gradient(180deg,#EAF2FA 0,#FFFFFF 100vh);
    color:#102f52;
    font-size:16px;
    line-height:1.65;
}
.gov-support-consult :focus-visible { outline:3px solid #74a9dd; outline-offset:3px; }

.gov-support-consult .gs-consult-top { width:min(740px,calc(100% - 80px)); margin:0 auto; padding-top:28px; display:flex; justify-content:flex-end; }
.gov-support-consult .gs-back { font-size:14px; color:#526b87; text-decoration:none; }
.gov-support-consult .gs-back:hover { color:#005bac; }

.gov-support-consult .gs-consult-hero { padding:74px 28px 36px; text-align:center; }
.gov-support-consult .gs-consult-hero h2 { font-size:38px; line-height:1.4; letter-spacing:-1px; margin:0 0 14px; font-weight:700; color:#102f52; }
.gov-support-consult .gs-consult-hero p { font-size:16px; color:#5e7895; margin:0; line-height:1.85; }

.gov-support-consult .gs-consult-main { width:min(740px,calc(100% - 80px)); margin:38px auto 56px; }
.gov-support-consult .gs-form-card { background:#fff; border:2px solid #005bac; border-radius:16px; overflow:hidden; box-shadow:0 14px 38px #183b6510; }
.gov-support-consult .gs-card-title { background:#fff; color:#005bac; padding:28px 36px 0; font-weight:700; font-size:22px; line-height:1.45; text-align:center; margin:0; }
.gov-support-consult .gs-form-body { padding:10px 36px 32px; }
.gov-support-consult .gs-form-intro { text-align:center; color:#66768a; font-size:14px; line-height:1.8; margin:0 0 30px; }
.gov-support-consult .gs-form-section { padding:0 0 27px; border:0; border-bottom:1px solid #e6edf6; margin:0 0 26px; min-width:0; }
.gov-support-consult .gs-form-section h3 { font-size:18px; margin:0 0 20px; font-weight:700; color:#102f52; }
.gov-support-consult .gs-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px 24px; }
.gov-support-consult .gs-field-wide { grid-column:1 / -1; }
.gov-support-consult .gs-field label,
.gov-support-consult .gs-field-label { font-size:15px; font-weight:700; display:block; margin-bottom:7px; }
.gov-support-consult .gs-required { color:#d83d48; margin-left:4px; }
.gov-support-consult .gs-field input,
.gov-support-consult .gs-message textarea { width:100%; border:1px solid #d8e4f2; border-radius:7px; color:#173c63; background:#fff; padding:11px 13px; outline:none; font-family:inherit; font-size:16px; letter-spacing:normal; transition:none; }
.gov-support-consult .gs-field input { height:47px; line-height:1.5; }
.gov-support-consult .gs-field input::placeholder,
.gov-support-consult .gs-message textarea::placeholder { color:#8c9aae; font-size:14px; }
.gov-support-consult .gs-field input:focus,
.gov-support-consult .gs-message textarea:focus { border-color:#1262bb; box-shadow:0 0 0 3px #1262bb14; }
.gov-support-consult .gs-hint { font-size:13px; font-weight:400; color:#65768b; margin-left:5px; }

.gov-support-consult .gs-process-field { margin:0; padding:0; border:0; min-width:0; }
/* 사이트 공통 CSS 가 legend 를 화면 밖으로 숨기므로 legend 대신 이름표 요소를 쓴다. */
.gov-support-consult .gs-process-label { padding:0; margin-bottom:12px; font-size:15px; font-weight:700; }
.gov-support-consult .gs-choices { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
.gov-support-consult .gs-choice { display:flex; align-items:center; gap:7px; border:1px solid #dce7f5; border-radius:6px; padding:10px; min-height:46px; cursor:pointer; font-size:14px; line-height:1.45; background:#fff; transition:.15s; }
.gov-support-consult .gs-choice:last-child { grid-column:1 / -1; }
.gov-support-consult .gs-choice input { width:16px; height:16px; margin:0; padding:0; line-height:normal; accent-color:#005bac; flex:none; }
.gov-support-consult .gs-choice span { min-width:0; }
.gov-support-consult .gs-choice:has(input:checked) { background:#eaf3ff; border-color:#005bac; color:#005bac; }
.gov-support-consult .gs-choice:hover { border-color:#82abd4; }
.gov-support-consult .gs-process-field[aria-invalid=true] .gs-choices { outline:2px solid #d83d4860; outline-offset:5px; border-radius:4px; }
.gov-support-consult .gs-process-error { font-size:13px; color:#c9323d; margin:10px 0 0; }
.gov-support-consult .gs-process-error[hidden] { display:none; }
.gov-support-consult .gs-message { margin-top:24px; }
.gov-support-consult .gs-message textarea { display:block; height:auto; resize:vertical; min-height:110px; line-height:1.65; }

.gov-support-consult .gs-notes { background:#f5f7fa; border:1px solid #edf1f6; border-radius:7px; padding:14px 16px; color:#647182; font-size:12px; line-height:1.8; letter-spacing:-0.04em; margin:0 0 28px; }
.gov-support-consult .gs-notes p { margin:0; }
.gov-support-consult .gs-notes p + p { margin-top:5px; }
.gov-support-consult .gs-consents { display:grid; gap:22px; }
.gov-support-consult .gs-consent-line { display:flex; align-items:flex-start; gap:10px; font-size:13px; line-height:1.6; font-weight:700; letter-spacing:-0.04em; color:#173c63; cursor:pointer; }
.gov-support-consult .gs-consent-line input { margin:4px 0 0; padding:0; width:15px; height:15px; line-height:normal; accent-color:#005bac; flex:none; }
.gov-support-consult .gs-consent-copy { font-size:12px; color:#62778f; margin:6px 0 0 26px; line-height:1.8; letter-spacing:-0.04em; }

.gov-support-consult .gs-submit-status { font-size:13px; color:#526b87; margin:22px 0 0; }
.gov-support-consult .gs-submit-status.is-error { color:#bd2838; }
.gov-support-consult .gs-submit-status[hidden] { display:none; }
.gov-support-consult .gs-submit-row { text-align:center; border-top:1px solid #e6edf6; padding-top:26px; margin-top:28px; }
.gov-support-consult .gs-submit { border:0; border-radius:999px; background:#005bac; color:#fff; font-size:16px; font-weight:700; line-height:1.65; padding:13px 30px; min-height:50px; width:auto; max-width:100%; min-width:0; white-space:normal; cursor:pointer; }
.gov-support-consult .gs-submit:hover { background:#00498f; }
.gov-support-consult .gs-submit:disabled { opacity:.65; cursor:wait; }

.gov-support-consult .gs-dialog { border:1px solid #dce6f3; border-radius:14px; padding:28px; max-width:440px; width:calc(100% - 48px); color:#173c63; background:#fff; box-shadow:0 20px 80px #0b2c5233; font-size:16px; line-height:1.65; }
.gov-support-consult .gs-dialog::backdrop { background:#102b4b66; }
.gov-support-consult .gs-dialog h2 { font-size:22px; margin:0 0 12px; font-weight:700; }
.gov-support-consult .gs-dialog p { color:#62778f; font-size:15px; margin:15px 0; }
.gov-support-consult .gs-dialog button { border:0; background:#005bac; color:#fff; padding:10px 24px; border-radius:6px; float:right; font-size:16px; }

@media (max-width:600px) {
    .gov-support-consult .gs-consult-top { width:calc(100% - 28px); }
    .gov-support-consult .gs-back { font-size:12px; }
    .gov-support-consult .gs-consult-hero { padding:54px 22px 30px; }
    .gov-support-consult .gs-consult-hero h2 { font-size:29px; }
    .gov-support-consult .gs-consult-hero p { font-size:14px; }
    .gov-support-consult .gs-consult-hero p br { display:none; }
    .gov-support-consult .gs-consult-main { width:calc(100% - 28px); margin:24px auto 38px; }
    .gov-support-consult .gs-card-title { font-size:20px; padding:24px 20px 0; }
    .gov-support-consult .gs-form-body { padding:9px 20px 26px; }
    .gov-support-consult .gs-grid { grid-template-columns:1fr; gap:18px; }
    .gov-support-consult .gs-form-intro { font-size:13px; margin-bottom:26px; }
    .gov-support-consult .gs-choices { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; }
    .gov-support-consult .gs-choice { min-height:44px; padding:10px; font-size:13px; gap:7px; }
    .gov-support-consult .gs-hint { display:inline; }
    .gov-support-consult .gs-form-section h3 { font-size:17px; }
    .gov-support-consult .gs-consent-line { font-size:12px; }
    .gov-support-consult .gs-consent-copy { font-size:11px; }
    .gov-support-consult .gs-submit { width:auto; max-width:100%; padding:13px 24px; font-size:14px; }
}
