/*
   업종코드/산업분류 소개 페이지 공통 스타일
   bus_intro.html, ind_intro_renewal.html 사용
   + floating-cta -> all_intro.html 사용
*/

:root { --body-bg:#fff; --radius:20px; --primary-orange:#FF5D1A; --text-dark:#111; --text-gray:#333; --bg-light:#F2F4F8; }

#bizCodeGuide h2, #ksicGuide h2 { font-size:1.875rem; margin-top:20px; font-weight:700; word-break:keep-all; }
#bizCodeGuide h3, #ksicGuide h3 { font-size:1.375rem; }
#bizCodeGuide .intro-col-right p, #ksicGuide .intro-col-right p { margin: 0; color: var(--text-gray); line-height: 1.75; word-break: keep-all; font-size: 1.125rem; display: flex; align-items: flex-start;}
#bizCodeGuide, #ksicGuide { width:100%; max-width:none; margin:0; padding:0; font-size:1.2rem; line-height:1.75; letter-spacing:0.01em; background:var(--body-bg); }

.guide-qna-pre { color:var(--primary-orange); font-weight:700; }
.guide-qna-q { font-weight:600; }
.guide-qna-strong { font-weight:700; }

.introTop { position:relative; width:100%; padding:56px 0 48px; background:var(--bg-light); border-radius:0; overflow:visible; height:auto; color:var(--text-dark); text-align:left; }
.introTopInner { max-width:1500px; margin:0 auto; padding-left:24px; padding-right:24px; display:flex; flex-direction:column; align-items:flex-start; gap:20px; }
.introTop h1 { display:inline-flex; padding:10px 35px; justify-content:center; align-items:center; gap:10px; border-radius:36px; border:2px solid var(--primary-orange); background:var(--primary-orange); color:#fff; text-align:center; font-size:1.2rem; font-weight:600; line-height:1.25; white-space:nowrap; }
.introTop p { margin:0; font-weight:700; font-size:1.2rem; line-height:1.5; color:#2C2C2C; }
.introBold { color:var(--primary-orange); font-weight:700; font-size:1.375rem; }

.box-content { position:relative; background:var(--body-bg); padding:10px 0 70px; }

.intro-section { max-width:1455px; margin-left:auto; margin-right:auto; padding-left:24px; padding-right:24px; }
.intro-row { display:grid; grid-template-columns:200px 1fr; column-gap:32px; align-items:start; padding:50px 0; border-bottom:1px solid var(--primary-orange); }

.intro-col-left { grid-column:1; }
.intro-col-right { grid-column:2; }

.introOverlap { display:flex; align-items:flex-start; gap:12px; margin:7px 0; }
.introNumber { color:var(--primary-orange); font-weight:800; font-size:1.5rem; line-height:1; text-align:left; margin:0; }
.introText { margin:0; font-weight:600; font-size:1.15rem; color:var(--text-dark); line-height:1.25; }
.intro-pre-dot {  flex-shrink: 0; width: 1em; padding-right: 0.2rem; }

/* floating-cta */
.intro-floating-cta { opacity:.8; position:fixed; right:24px; top:50%; transform:translateY(-50%); display:flex; flex-direction:column; gap:10px; z-index:9999; }
.intro-floating-cta .cta-btn { display:inline-flex; align-items:center; justify-content:center; min-width:44px; height:44px; padding:0 12px; border-radius:12px; border:1px solid #e5e7eb; background:var(--body-bg); box-shadow:0 6px 20px rgba(0,0,0,.08); font-size:14px; line-height:1; color:#111827; text-decoration:none; white-space:nowrap; }
.intro-floating-cta .cta-btn:hover { box-shadow:0 8px 24px rgba(0,0,0,.12); transform:translateY(-1px); }
.intro-floating-cta .cta-btn:active { transform:none; box-shadow:0 4px 14px rgba(0,0,0,.10); }
.intro-floating-cta .ico { width:16px; height:16px; margin-right:6px; display:inline-block; }
.intro-floating-cta .cta-toggle { display:none; }

/* 반응형 */
@media (max-width:991px) {
    :root { --radius:16px; }
    #ksicGuide, #bizCodeGuide { font-size:1.14rem; }
    #ksicGuide h2, #bizCodeGuide h2 { font-size:1.625rem; }
    #ksicGuide h3, #bizCodeGuide h3 { font-size:1.1rem; }
    .introBold { font-size:1.1rem; }
    .intro-section { margin-left:0; margin-right:0; }
    .intro-pre-dot { padding-right:0; }
    .intro-floating-cta { right:12px; }
    .intro-floating-cta .cta-btn { height:40px; padding:0 10px; font-size:13px; }
    .intro-floating-cta .cta-toggle { display:inline-flex; }
    .intro-floating-cta:not(.is-open) .cta-btn:not(.cta-toggle) { display:none; }
    .intro-floating-cta.is-open .cta-toggle { display:none; }
    .intro-floating-cta.is-open .cta-btn:not(.cta-toggle) { display:inline-flex; }
    .intro-floating-cta .cta-btn { width:44px; min-width:44px; padding:0; border-radius:14px; justify-content:center; }
    .intro-floating-cta .cta-btn .ico { margin-right:0; }
    .intro-floating-cta .cta-btn span { display:none; }
    .intro-floating-cta.is-open .cta-btn { width:auto; padding:0 12px; }
    .intro-floating-cta.is-open .cta-btn .ico { margin-right:6px; }
    .intro-floating-cta.is-open .cta-btn span { display:inline; }
}

@media (max-width:767px) {
    #ksicGuide, #bizCodeGuide { font-size:1.07rem; }
    .introTop { padding:38px 0 30px; text-align:left; }
    .introTopInner { padding-left:16px; padding-right:16px; }
    .introTop h1 { font-size:16px; padding:8px 24px; }
    .introTop p { font-weight:600 !important; }
    .intro-section { padding-left:16px; padding-right:16px; }
    .intro-row { grid-template-columns:1fr; row-gap:16px; padding:22px 10px; }
    .intro-col-left, .intro-col-right { grid-column:1; }
    .introOverlap { flex-direction:row; align-items:flex-start; gap:12px; }
}
