*, *::before, *::after { box-sizing: border-box; }
:root{
  --h: 82;
  --bg: hsl(var(--h) 20% 97%);
  --ink: hsl(var(--h) 25% 14%);
  --sub: hsl(var(--h) 12% 38%);
  --line: hsl(var(--h) 15% 84%);
  --brand: hsl(var(--h) 55% 38%);
  --brand-ink: hsl(var(--h) 55% 22%);
  --brand-soft: hsl(var(--h) 60% 95%);
  --radius: 4px;
}
html{-webkit-text-size-adjust:100%;}
body{margin:0;background:var(--bg);color:var(--ink);font-family:-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;line-height:1.7;font-size:16px;overflow-wrap:anywhere;}
.n20-12-wrap{max-width:1040px;margin:0 auto;padding:0 20px;}
img,svg,video{max-width:100%;display:block;}
a{color:inherit;}
:focus-visible{outline:3px solid var(--brand);outline-offset:2px;}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;animation:none!important;}}
.n20-12-header{border-bottom:1px solid var(--line);background:var(--bg);}
.n20-12-nav{max-width:1040px;margin:0 auto;padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;}
.n20-12-brand{font-weight:800;font-size:1.05rem;text-decoration:none;color:var(--brand-ink);}
.n20-12-nav ul{list-style:none;display:flex;gap:18px;margin:0;padding:0;flex-wrap:wrap;}
.n20-12-nav a{text-decoration:none;font-size:.92rem;color:var(--sub);}
.n20-12-nav a:hover{color:var(--brand-ink);}
.n20-12-hero{display:grid;grid-template-columns:1fr;}
@media (min-width:800px){.n20-12-hero{grid-template-columns:1.15fr .85fr;min-height:300px;}}
.n20-12-hero-text{padding:40px 20px 26px;max-width:1040px;margin:0 auto;width:100%;}
@media (min-width:800px){.n20-12-hero-text{padding:52px 40px 52px 20px;margin:0;}}
.n20-12-hero h1{font-weight:800;word-break:keep-all;line-height:1.3;margin:0 0 14px;font-size:clamp(1.7rem, 5vw, 3.2rem);overflow-wrap:anywhere;color:var(--ink);}
.n20-12-hero h1{font-family:Georgia,"Noto Serif KR",serif;}
.n20-12-lead{font-size:1.02rem;color:var(--sub);max-width:56ch;margin:0 0 16px;}
.n20-12-cta-mini{display:inline-flex;align-items:center;min-height:44px;padding:11px 20px;border-radius:var(--radius);background:var(--brand);color:#fff;text-decoration:none;font-weight:700;font-size:.92rem;}
.n20-12-hero-block{background:linear-gradient(155deg,var(--brand) 0%,var(--brand-ink) 100%);min-height:140px;}
@media (min-width:800px){.n20-12-hero-block{min-height:100%;}}
.n20-12-summary{max-width:1040px;margin:22px auto 0;padding:0 20px;}
.n20-12-summary-box{border:1px solid var(--line);border-left:4px solid var(--brand);background:#fff;border-radius:var(--radius);padding:18px 20px;}
.n20-12-summary-box p{margin:0 0 8px;font-weight:700;font-size:.92rem;color:var(--brand-ink);}
.n20-12-summary-box ul{margin:0;padding-left:1.1em;font-size:.94rem;color:var(--sub);}
.n20-12-gallery{max-width:1040px;margin:0 auto;padding:22px 20px 6px;}
.photos{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:16px;}
.photos figure{margin:0;min-width:0;border-radius:var(--radius);overflow:hidden;background:#f3f3f3;}
.photos img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:contain;background:#f3f3f3;}
.photos figcaption{font-size:.78rem;color:var(--sub);padding:6px 4px;}
@media (max-width:900px){.photos{grid-template-columns:repeat(2, minmax(0, 1fr));}}
.n20-12-body{max-width:760px;margin:0 auto;padding:34px 20px 10px;}
.n20-12-body h2{font-size:clamp(1.2rem,3.2vw,1.5rem);margin:36px 0 12px;padding-top:14px;border-top:1px solid var(--line);color:var(--ink);}
.n20-12-body h2:first-of-type{border-top:0;padding-top:0;margin-top:0;}
.n20-12-body p{margin:0 0 14px;color:var(--ink);}
.n20-12-tbl-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch;margin:0 0 16px;}
table{width:100%;table-layout:fixed;border-collapse:collapse;min-width:420px;font-size:.92rem;}
th,td{padding:12px;white-space:normal;border:1px solid var(--line);text-align:left;}
caption{text-align:left;font-weight:700;margin-bottom:8px;color:var(--brand-ink);font-size:.9rem;}
thead th{background:var(--brand-soft);}
.n20-12-checklist{margin:0 0 16px;padding-left:0;list-style:none;}
.n20-12-checklist li{position:relative;padding:6px 0 6px 26px;border-bottom:1px dashed var(--line);}
.n20-12-checklist li:last-child{border-bottom:0;}
.n20-12-checklist li::before{content:"";position:absolute;left:2px;top:13px;width:10px;height:10px;border:2px solid var(--brand);border-radius:2px;}
.n20-12-notice{font-size:.88rem;color:var(--sub);border:1px dashed var(--line);border-radius:var(--radius);padding:12px 14px;margin-top:6px;}
.n20-12-diagram{border:1px solid var(--line);border-radius:var(--radius);background:#fff;padding:18px 20px;margin:18px 0 22px;}
.n20-12-diagram-title{font-weight:700;color:var(--brand-ink);margin:0 0 12px;font-size:.94rem;}
.n20-12-diagram-flow{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;counter-reset:step;}
.n20-12-dstep{counter-increment:step;background:var(--brand-soft);border:1px solid var(--line);border-radius:var(--radius);padding:8px 14px;font-size:.86rem;position:relative;min-width:0;}
.n20-12-dstep::before{content:counter(step)". ";font-weight:800;color:var(--brand-ink);}
.n20-12-dstep:not(:last-child)::after{content:"→";position:absolute;right:-16px;top:50%;transform:translateY(-50%);color:var(--sub);}
.n20-12-diagram-note{margin:12px 0 0;font-size:.78rem;color:var(--sub);}
.n20-12-related{max-width:1040px;margin:26px auto 0;padding:0 20px;}
.n20-12-related h2{font-size:1.3rem;margin:0 0 16px;}
.n20-12-cards{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:12px;}
@media (min-width:640px){.n20-12-cards{grid-template-columns:repeat(3,1fr);}}
.n20-12-cards a{display:block;min-height:44px;border:1px solid var(--line);border-radius:var(--radius);padding:16px;text-decoration:none;background:#fff;height:100%;}
.n20-12-cards a:hover{border-color:var(--brand);}
.n20-12-cards strong{display:block;font-size:.98rem;margin-bottom:6px;color:var(--ink);}
.n20-12-cards span{display:block;font-size:.84rem;color:var(--sub);}
.n20-12-cta{background:var(--brand);color:#fff;margin-top:40px;}
.n20-12-cta-inner{max-width:1040px;margin:0 auto;padding:38px 20px;text-align:center;}
.n20-12-cta h2{margin:0 0 10px;font-size:1.4rem;}
.n20-12-cta p{margin:0 0 18px;opacity:.92;font-size:.96rem;}
.n20-12-cta a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;background:#fff;color:var(--brand-ink);padding:12px 26px;border-radius:var(--radius);text-decoration:none;font-weight:800;}
.n20-12-cta .n20-12-tel{display:block;margin-top:10px;font-size:.94rem;color:#fff;text-decoration:underline;}
.n20-12-faq{max-width:760px;margin:0 auto;padding:34px 20px 50px;}
.n20-12-faq h2{font-size:1.3rem;margin:0 0 16px;}
.n20-12-faq details{border:1px solid var(--line);border-radius:var(--radius);margin-bottom:10px;background:#fff;padding:2px 0;}
.n20-12-faq summary{cursor:pointer;padding:14px 16px;font-weight:700;list-style:none;font-size:.98rem;min-height:44px;display:flex;align-items:center;}
.n20-12-faq summary h3{margin:0;font:inherit;color:inherit;display:inline;}
.n20-12-faq summary::-webkit-details-marker{display:none;}
.n20-12-faq summary::after{content:"+";margin-left:auto;color:var(--brand);font-weight:800;}
.n20-12-faq details[open] summary::after{content:"\2013";}
.n20-12-faq .n20-12-faq-a{padding:0 16px 16px;color:var(--sub);font-size:.94rem;margin:0;}
.n20-12-footer{border-top:1px solid var(--line);background:#fff;padding:26px 20px;margin-top:0;}
.n20-12-footer-inner{max-width:1040px;margin:0 auto;}
.n20-12-biz-title{font-weight:800;margin:0 0 8px;font-size:.95rem;}
.n20-12-biz-list{list-style:none;margin:0;padding:0;font-size:.82rem;color:var(--sub);display:flex;flex-wrap:wrap;gap:4px 14px;}
@media (prefers-color-scheme:dark){
  :root{--bg:hsl(var(--h) 10% 10%);--ink:hsl(var(--h) 20% 92%);--sub:hsl(var(--h) 8% 68%);--line:hsl(var(--h) 8% 24%);--brand-soft:hsl(var(--h) 40% 16%);}
  .n20-12-summary-box,.n20-12-cards a,.n20-12-faq details,.n20-12-diagram,.photos img{background:hsl(var(--h) 10% 13%);}
  .n20-12-footer{background:hsl(var(--h) 10% 12%);}
}
