/* 신규 20페이지 공통 베이스. 페이지별 색·글꼴·히어로는 assets/css/s2/NN-slug.css 에서 변수와 클래스를 재정의한다. */
body.s2{--a:#16803c;--b:#0f3d22;--c:#e6f4ea;--ink2:#10202f;--fh:"Noto Sans KR",sans-serif;--fb:"Noto Sans KR",sans-serif;--blue:var(--a);--blue-dark:var(--b);--blue-pale:var(--c);font-family:var(--fb);overflow-x:hidden}
body.s2 h1,body.s2 h2,body.s2 h3{font-family:var(--fh);word-break:keep-all;overflow-wrap:break-word}
.s2-wrap{max-width:1120px;margin:0 auto;padding:0 24px}
.s2-sec{padding:56px 0}
.s2-sec h2{font-size:clamp(1.4rem,3.4vw,2rem);margin-bottom:18px}
.s2-eyebrow{font-size:.8rem;font-weight:800;letter-spacing:.12em;color:var(--a);margin:0 0 6px}
.s2-sec p,.s2-sec li{overflow-wrap:break-word}
/* 정사각형 사진 묶음: 동일 크기, 모바일 2열 */
.s2-photos{display:grid;gap:12px}
.s2-photos--2{grid-template-columns:repeat(2,1fr)}.s2-photos--3{grid-template-columns:repeat(3,1fr)}.s2-photos--4{grid-template-columns:repeat(4,1fr)}
.s2-fig{margin:0;min-width:0}
.s2-fig img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;border-radius:8px;background:#e8edf2;display:block}
.s2-fig figcaption{font-size:.85rem;font-weight:600;color:#4a5b6c;margin-top:6px;line-height:1.4}
body.s2 .pstrip-item img{aspect-ratio:1/1}
body.s2 .pstrip--feature .pstrip-item:first-child img{aspect-ratio:16/9}
body.s2 .pstrip--feature .pstrip-grid{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.s2-photos--3,.s2-photos--4{grid-template-columns:repeat(2,1fr)}.s2-wrap{padding:0 20px}.s2-sec{padding:40px 0}}
@media(max-width:560px){body.s2 .pstrip-grid,body.s2 .pstrip--row .pstrip-grid,body.s2 .pstrip--grid .pstrip-grid{grid-template-columns:repeat(2,1fr)}body.s2 .pstrip--feature .pstrip-grid{grid-template-columns:repeat(2,1fr)}body.s2 .pstrip--feature .pstrip-item:first-child{grid-column:1/-1}body.s2 .pstrip--feature .pstrip-item:first-child img{aspect-ratio:16/10}}
@media(max-width:340px){.s2-photos,.s2-photos--2,.s2-photos--3,.s2-photos--4{grid-template-columns:1fr}}
/* 표: 모바일에서 카드형으로 쌓임 (td에 data-label 지정) */
.s2-table{width:100%;border-collapse:collapse;font-size:.95rem}
.s2-table th,.s2-table td{padding:11px 13px;border:1px solid #d9e1ea;text-align:left;vertical-align:top;overflow-wrap:break-word}
.s2-table thead th{background:var(--b);color:#fff;font-weight:700}
.s2-table tbody tr:nth-child(even){background:rgba(0,0,0,.025)}
@media(max-width:640px){.s2-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.s2-table,.s2-table tbody,.s2-table tr,.s2-table td{display:block;width:100%}.s2-table tr{border:1px solid #d9e1ea;border-radius:8px;margin-bottom:10px;overflow:hidden}.s2-table td{border:0;border-bottom:1px solid #eef2f6;padding:9px 12px}.s2-table td::before{content:attr(data-label);display:block;font-size:.75rem;font-weight:800;color:var(--a);margin-bottom:2px}}
/* 흐름도: 노드가 가로로 이어지고 모바일에서 세로로 쌓임 */
.s2-flow{list-style:none;margin:0;padding:0;display:flex;gap:10px;align-items:stretch}
.s2-flow li{flex:1 1 0;min-width:0;background:#fff;border:2px solid var(--a);border-radius:10px;padding:14px;position:relative;font-size:.92rem}
.s2-flow li strong{display:block;color:var(--b);margin-bottom:4px}
.s2-flow li:not(:last-child)::after{content:"▶";position:absolute;right:-13px;top:50%;transform:translateY(-50%);color:var(--a);font-size:.8rem;z-index:1}
@media(max-width:760px){.s2-flow{flex-direction:column}.s2-flow li:not(:last-child)::after{content:"▼";right:auto;left:50%;top:auto;bottom:-14px;transform:translateX(-50%)}}
.s2-steps{counter-reset:s;list-style:none;margin:0;padding:0}
.s2-steps li{counter-increment:s;position:relative;padding:12px 14px 12px 56px;margin-bottom:10px;background:#fff;border:1px solid #dfe6ee;border-radius:10px}
.s2-steps li::before{content:counter(s);position:absolute;left:12px;top:12px;width:32px;height:32px;border-radius:50%;background:var(--a);color:#fff;font-weight:800;display:grid;place-items:center}
.s2-steps li strong{display:block;color:var(--b)}
.s2-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin:0;padding:0;list-style:none}
.s2-stats li{background:#fff;border:1px solid #dfe6ee;border-top:4px solid var(--a);border-radius:8px;padding:14px}
.s2-stats strong{display:block;font-size:1.05rem;color:var(--b)}.s2-stats span{font-size:.88rem;color:#52637a}
.s2-callout{border-left:5px solid var(--a);background:var(--c);padding:16px 18px;border-radius:0 10px 10px 0;margin:18px 0;font-weight:600;color:var(--ink2)}
.s2-checklist{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.s2-checklist li{padding:10px 12px 10px 40px;position:relative;background:#fff;border:1px solid #dfe6ee;border-radius:8px}
.s2-checklist li::before{content:"✓";position:absolute;left:12px;top:9px;width:20px;height:20px;border-radius:4px;background:var(--a);color:#fff;font-size:.8rem;font-weight:800;display:grid;place-items:center}
.s2-cols{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.s2-cols--3{grid-template-columns:repeat(3,1fr)}
@media(max-width:760px){.s2-cols,.s2-cols--3{grid-template-columns:1fr}}
.s2-card{background:#fff;border:1px solid #dfe6ee;border-radius:12px;padding:18px;min-width:0}
.s2-card h3{font-size:1.05rem;margin-bottom:6px;color:var(--b)}
/* 관련링크·FAQ·CTA·업체정보 */
.s2-links{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:10px}
.s2-links a{display:block;padding:12px 14px;border:1px solid #d9e1ea;border-radius:8px;background:#fff;font-weight:600;min-height:44px}
.s2-links a:hover{border-color:var(--a);color:var(--a)}
.s2-faq .faq-list{max-width:820px}
.s2-cta-box{display:flex;gap:24px;align-items:center;justify-content:space-between;background:var(--b);color:#fff;border-radius:16px;padding:32px}
.s2-cta-box h2{color:#fff;margin-bottom:6px}.s2-cta-box p{margin:0;opacity:.9}
.s2-cta-btns{display:flex;gap:10px;flex-wrap:wrap}.s2-cta-btns .btn{min-height:48px}
.s2-cta-btns .btn-outline{color:#fff;border-color:rgba(255,255,255,.7)}
@media(max-width:760px){.s2-cta-box{flex-direction:column;align-items:stretch;padding:24px}.s2-cta-btns .btn{flex:1 1 140px;text-align:center}}
.s2-company h3{margin:22px 0 8px;font-size:1.05rem}
.s2-chips{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:8px}.s2-chips li{padding:6px 12px;border-radius:99px;background:var(--c);color:var(--b);font-weight:700;font-size:.9rem}
.s2-sites{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:10px}
.s2-sites a{display:block;padding:12px 14px;border:1px solid #d9e1ea;border-radius:10px;background:#fff;height:100%}
.s2-sites strong{display:block;color:var(--b)}.s2-sites span{font-size:.85rem;color:#52637a}
.s2-sites a:hover{border-color:var(--a)}
.s2-biz{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px;margin:0}
.s2-biz div{background:#fff;border:1px solid #dfe6ee;border-radius:8px;padding:10px 12px}.s2-biz dt{font-size:.75rem;font-weight:800;color:var(--a)}.s2-biz dd{margin:0;font-weight:600}
.s2-note{font-size:.9rem;color:#52637a;margin-top:14px}.s2-note a{text-decoration:underline}
body.s2 .site-footer{overflow-wrap:break-word}
