:root{--ink:#1d2622;--ink2:#4b5851;--green:#1e4d3f;--green2:#2f6b57;--gold:#b38a35;--gold-d:#7a5c1a;--paper:#f6f1e6;--paper2:#ebe3d0;--line:#d9d1bc;--r:4px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font:16px/1.7 "Pretendard","Noto Sans KR","Noto Sans CJK KR","Apple SD Gothic Neo","Malgun Gothic",sans-serif;color:var(--ink);background:#fff;word-break:keep-all;overflow-wrap:break-word}
img,video{max-width:100%;height:auto;display:block}
a{color:var(--green);text-underline-offset:3px}
h1,h2,h3,p,ul,ol,dl,figure{margin:0}
ul,ol{padding:0;list-style:none}
.skip{position:absolute;left:-999px}.skip:focus{left:8px;top:8px;background:#fff;padding:8px;z-index:99}
.wrap{max-width:1120px;margin:0 auto;padding:0 24px}
/* header */
.hd{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line)}
.hd-in{display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:18px;color:var(--ink);text-decoration:none;letter-spacing:-.02em}
.nav-l{display:flex;align-items:center;gap:2px}
.nav-l>li{position:relative}
.nav-l>li>a{display:block;padding:20px 12px;color:var(--ink);text-decoration:none;font-size:15px;font-weight:600}
.nav-l>li>a:hover{color:var(--green2)}
.sub{display:none;position:absolute;left:0;top:100%;min-width:190px;background:#fff;border:1px solid var(--line);border-top:2px solid var(--gold);padding:6px 0}
.has:hover .sub,.has:focus-within .sub{display:block}
.sub a{display:block;padding:9px 16px;font-size:14.5px;color:var(--ink);text-decoration:none}
.sub a:hover{background:var(--paper)}
.nav-cta{margin-left:10px}.nav-cta .btn{min-height:40px;padding:0 18px;font-size:15px;color:#fff}
.burger{display:none;background:none;border:0;width:44px;height:44px;padding:11px;cursor:pointer}
.burger i{display:block;height:2px;background:var(--ink);margin:6px 0}
/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 24px;border-radius:var(--r);font:600 16px/1 inherit;text-decoration:none;border:1.5px solid transparent;cursor:pointer;text-align:center}
.btn-p{background:var(--green);color:#fff}.btn-p:hover{background:var(--green2)}
.btn-o{border-color:var(--green);color:var(--green);background:transparent}.btn-o:hover{background:var(--paper)}
.btn-g{background:var(--gold);color:#1d1a10}.btn-g:hover{background:#c49a42}
.btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
/* type */
.kick{font-size:14px;font-weight:700;color:var(--gold-d);letter-spacing:.02em;margin-bottom:10px}
h1{font-size:34px;line-height:1.25;letter-spacing:-.025em;font-weight:800}
.hero.home h1{font-size:44px;letter-spacing:-.035em}
h2{font-size:24px;line-height:1.35;letter-spacing:-.02em;font-weight:700;margin-bottom:12px}
h3{font-size:18px;line-height:1.45;font-weight:700;margin-bottom:6px}
.lede{font-size:17px;color:var(--ink2);margin-top:16px;max-width:620px}
.sec-lede{font-size:16px;color:var(--ink2);max-width:660px;margin-bottom:24px}
.fine{font-size:14px;color:var(--ink2);margin-top:12px}
.upd{font-size:14px;color:var(--ink2);margin-top:20px}
/* hero variants */
.hero{padding:44px 0 56px}
.hero .wrap{display:grid;grid-template-columns:1fr 1.15fr;gap:48px;align-items:center}
.hero.rev .wrap{grid-template-columns:1.15fr 1fr}.hero.rev .hero-t{order:2}
.hero-i img{width:100%;border-radius:var(--r)}
.hero.frame .hero-i{position:relative;z-index:0}
.hero.frame .hero-i::before{content:"";position:absolute;inset:22px -18px -18px 22px;background:var(--paper2);border-radius:var(--r);z-index:-1}
.facts{display:flex;flex-wrap:wrap;gap:6px 22px;margin-top:22px;font-size:14.5px;color:var(--ink2)}
.facts li{padding-left:16px;position:relative}.facts li::before{content:"";position:absolute;left:0;top:.7em;width:8px;height:2px;background:var(--gold)}
.hero.stack .hero-i{display:grid;gap:12px}
.glance{border-top:2px solid var(--green);background:var(--paper);padding:14px 18px;font-size:15px}
.glance li{padding:5px 0;border-bottom:1px dashed var(--line)}.glance li:last-child{border:0}
.glance b{display:inline-block;min-width:76px;color:var(--green)}
/* sections */
.s{padding:60px 0}.s.alt{background:var(--paper)}.s.dark{background:var(--green);color:#efeadb}.s.dark h2,.s.dark h3{color:#fff}.s.dark .sec-lede{color:#d5dccf}
.s.tight{padding:40px 0}
.two{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:start}
.two.wide-l{grid-template-columns:1.25fr 1fr}.two.wide-r{grid-template-columns:1fr 1.25fr}
.two img{border-radius:var(--r);width:100%}
.cap{font-size:14px;color:var(--ink2);margin-top:8px}
.list{display:grid;gap:0}
.list li{padding:11px 0 11px 22px;border-bottom:1px solid var(--line);position:relative;font-size:16px}
.list li::before{content:"";position:absolute;left:2px;top:1.2em;width:8px;height:8px;border:2px solid var(--gold);transform:rotate(45deg)}
.list.cols{grid-template-columns:1fr 1fr;column-gap:40px}
.list b{color:var(--green)}
.ck li::before{border:0;width:10px;height:6px;border-left:2px solid var(--green2);border-bottom:2px solid var(--green2);transform:rotate(-45deg);top:1.1em}
/* tables */
.tbl{width:100%;border-collapse:collapse;font-size:15px}
.tbl th,.tbl td{padding:13px 14px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.tbl thead th{background:var(--paper2);font-weight:700;font-size:14.5px;border-bottom:2px solid var(--green)}
.tbl tbody th{width:150px;color:var(--green);font-weight:700;background:transparent}
.s.alt .tbl thead th{background:var(--paper2)}
/* rows (자금 종류 등) */
.rows li{display:grid;grid-template-columns:200px 1fr auto;gap:18px;align-items:baseline;padding:15px 0;border-bottom:1px solid var(--line)}
.rows b{font-size:17px}.rows span{color:var(--ink2);font-size:15.5px}
.rows a.go{font-weight:700;text-decoration:none;white-space:nowrap}
.rows a.go::after{content:" →"}
/* situations */
.sit{display:grid;grid-template-columns:300px 1fr;column-gap:36px;align-items:start}
.sit>li{display:contents}
.sit button{grid-column:1;text-align:left;background:none;border:0;border-bottom:1px solid var(--line);padding:13px 4px 13px 16px;font:600 16px/1.4 inherit;color:var(--ink);cursor:pointer;position:relative;width:100%}
.sit button::before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent}
.sit button[aria-selected=true]{color:var(--green);background:var(--paper)}
.sit button[aria-selected=true]::before{background:var(--gold)}
.sit .sp{grid-column:2;grid-row:1/span 9;display:none;background:var(--paper);padding:28px 30px;border-top:2px solid var(--green)}
.sit .sp.on{display:block}
.sp h3{font-size:20px}.sp p{color:var(--ink2);margin:8px 0 14px}
.sp .ck li{font-size:15.5px;padding-top:7px;padding-bottom:7px}
.sp a.btn{margin-top:14px;min-height:42px}
.js .sit .sp{display:none}.js .sit .sp.on{display:block}
html:not(.js) .sit .sp{display:block;grid-column:1/-1;grid-row:auto;margin-bottom:12px}
/* factors */
.fx{display:grid;grid-template-columns:repeat(3,1fr);margin-top:8px}
.fx>div{padding:4px 28px;border-left:1px solid rgba(255,255,255,.22)}.fx>div:first-child{border-left:0;padding-left:0}
.fx h3{font-size:16px;color:#e6c77c}
.fx li{padding:5px 0;font-size:15.5px}
.note-d{margin-top:28px;padding-top:16px;border-top:1px solid rgba(255,255,255,.22);font-size:15px;color:#d5dccf;max-width:760px}
/* timeline */
.tl{border-left:2px solid var(--line);margin-left:7px}
.tl li{position:relative;padding:0 0 22px 28px}.tl li:last-child{padding-bottom:0}
.tl li::before{content:"";position:absolute;left:-8px;top:7px;width:14px;height:14px;border-radius:50%;background:#fff;border:3px solid var(--gold)}
.tl b{display:block;font-size:17px}.tl span{color:var(--ink2);font-size:15.5px}
/* flow */
.flow{display:flex;align-items:stretch;gap:0;flex-wrap:wrap;margin:6px 0 4px}
.flow>div{flex:1;min-width:150px;padding:14px 16px;background:var(--paper);border-top:2px solid var(--green);font-size:15px;position:relative}
.flow>div+div{margin-left:18px}
.flow>div+div::before{content:"→";position:absolute;left:-18px;top:14px;width:18px;text-align:center;color:var(--gold-d);font-weight:700}
.flow b{display:block;color:var(--green)}
/* statements (상황) */
.stm li{padding:16px 0 16px 20px;border-left:3px solid var(--gold);margin-bottom:12px;font-size:17px;background:linear-gradient(90deg,var(--paper),transparent)}
/* photo strip */
.strip{display:grid;grid-template-columns:1fr 1.5fr 1fr;gap:14px;align-items:end}
.strip figure img{width:100%;border-radius:var(--r)}
.strip figcaption{font-size:14px;color:var(--ink2);margin-top:6px}
.person{display:grid;grid-template-columns:200px 1fr;gap:28px;align-items:center}
.person img{border-radius:var(--r)}
.narrow{max-width:360px}
/* related */
.rel li{border-bottom:1px solid var(--line)}
.rel a{display:grid;grid-template-columns:96px 1fr;gap:16px;align-items:center;padding:14px 0;text-decoration:none;color:var(--ink)}
.rel img{border-radius:var(--r);width:96px}
.rel b{display:block;font-size:16.5px;color:var(--green)}.rel span{font-size:14.5px;color:var(--ink2)}
.rel.txt a{display:block;padding:13px 0}
/* faq */
.faq{border-top:2px solid var(--green)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;padding:16px 36px 16px 2px;font-weight:700;font-size:16.5px;line-height:1.5;position:relative}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";position:absolute;right:6px;top:12px;font-size:24px;font-weight:400;color:var(--gold-d)}
.faq details[open] summary::after{content:"−"}
.faq details>div{padding:0 4px 18px 2px;color:var(--ink2);font-size:15.5px;max-width:760px}
.fq-nav{display:flex;align-items:center;gap:14px;margin-top:18px;font-size:15px}
.fq-nav button{background:#fff;border:1.5px solid var(--green);color:var(--green);border-radius:var(--r);min-height:40px;padding:0 16px;font:600 15px/1 inherit;cursor:pointer}
.fq-nav button:disabled{opacity:.35;cursor:default}
.faq h3{display:inline;font:inherit;margin:0}
/* cta */
.cta{background:var(--green);color:#fff;padding:40px 0}
.cta .wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.cta h2{margin:0 0 4px;font-size:22px;color:#fff}.cta p{color:#d5dccf;font-size:15.5px}
.cta .btns{margin:0}.cta .btn-o{border-color:#e6c77c;color:#e6c77c}
/* form */
.form{display:grid;gap:16px;max-width:620px}
.form label{display:grid;gap:6px;font-weight:600;font-size:15px}.form small{font-weight:400;color:var(--ink2)}
.form input[type=text],.form input[type=tel],.form select,.form textarea{width:100%;font:16px/1.4 inherit;padding:11px 12px;border:1.5px solid var(--line);border-radius:var(--r);background:#fff;color:var(--ink)}
.form input:focus,.form select:focus,.form textarea:focus{outline:2px solid var(--gold);border-color:var(--gold)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.form .chk{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:14.5px}.chk input{margin-top:5px}
.hp{position:absolute;left:-9999px}
.notice{padding:12px 16px;border-radius:var(--r);font-size:15px;margin-bottom:16px}.notice.ok{background:#e4efe6;color:#1b4a2c}.notice.no{background:#f7e4df;color:#7a2b1a}
.legal h2{margin-top:28px;font-size:19px}.legal p,.legal li{font-size:15.5px;color:var(--ink2)}.legal ul{list-style:disc;padding-left:20px}
video{width:100%;border-radius:var(--r);background:#000}
/* footer */
.ft{background:#17211d;color:#b9c3bc;padding:40px 0 28px;font-size:13px;line-height:1.7}
.ft a{color:#d8dfd9;text-decoration:none}.ft a:hover{text-decoration:underline}
.ft-grid{display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:28px;padding-bottom:22px;border-bottom:1px solid rgba(255,255,255,.12)}
.ft strong{color:#fff;font-size:15px}.ft b{color:#fff;font-size:13px;display:block;margin-bottom:6px}
.ft li{padding:2px 0}
.ft-note{margin-top:14px;font-size:12.5px;color:#93a099;max-width:860px}
/* tablet/mobile */
@media(max-width:960px){
 .hero .wrap,.hero.rev .wrap,.two,.two.wide-l,.two.wide-r{grid-template-columns:1fr;gap:28px}
 .hero.rev .hero-t{order:0}
 .hero.frame .hero-i::before{inset:14px 0 -12px 14px}
 .ft-grid{grid-template-columns:1fr 1fr 1fr}.ft-brand{grid-column:1/-1}
 .fx{grid-template-columns:1fr}.fx>div{border-left:0;padding:16px 0;border-top:1px solid rgba(255,255,255,.22)}.fx>div:first-child{border-top:0;padding-top:0}
 .ft-grid{grid-template-columns:1fr 1fr}
 .strip{grid-template-columns:1fr 1fr}.strip figure:nth-child(2){grid-column:1/-1;order:-1}
}
@media(max-width:860px){
 .hd-in{height:58px}
 .burger{display:block}
 .nav{display:none;position:absolute;left:0;right:0;top:58px;background:#fff;border-bottom:1px solid var(--line);max-height:calc(100vh - 58px);overflow:auto}
 .nav.open{display:block}
 html:not(.js) .nav{display:block;position:static;width:100%}
 html:not(.js) .hd-in{height:auto;flex-wrap:wrap}
 .nav-l{display:block;padding:8px 20px 20px}
 .nav-l>li>a{padding:12px 0 4px;font-size:16px;color:var(--green)}
 .sub{display:block;position:static;border:0;padding:0 0 4px 0;min-width:0}
 .sub a{padding:7px 0 7px 12px;font-size:15.5px}
 .nav-cta{margin:12px 0 0}.nav-cta .btn{width:100%}
 .nav-l>li:first-child>a{padding-top:8px}
}
@media(max-width:720px){
 body{font-size:16px}
 .wrap{padding:0 20px}
 h1{font-size:28px}.hero.home h1{font-size:34px}
 h2{font-size:21px}
 .hero{padding:26px 0 36px}.s{padding:40px 0}
 .lede{font-size:16.5px}
 .list.cols{grid-template-columns:1fr}
 .rows li{grid-template-columns:1fr;gap:4px}
 .sit{display:block}
 .sit>li{display:block}
 .sit .sp{display:none;padding:20px 18px;margin-bottom:6px}.sit .sp.on{display:block}
 .person{grid-template-columns:110px 1fr;gap:16px}
 .row2{grid-template-columns:1fr}
 .flow>div{flex:1 1 100%}.flow>div+div{margin:18px 0 0}.flow>div+div::before{content:"↓";left:0;right:0;top:-18px;width:auto}
 .tbl,.tbl tbody,.tbl tr,.tbl td,.tbl th{display:block;width:100%}
 .tbl thead{position:absolute;left:-9999px}
 .tbl tr{border-bottom:2px solid var(--line);padding:8px 0}
 .tbl td,.tbl th{border:0;padding:5px 2px}
 .tbl tbody th{width:100%;font-size:16px}
 .tbl td[data-l]::before{content:attr(data-l);display:block;font-size:13.5px;font-weight:700;color:var(--gold-d)}
 .rel a{grid-template-columns:80px 1fr}.rel img{width:80px}
 .cta .btns,.cta .btn{width:100%}
 .btns .btn{flex:1 1 100%}
 .ft-grid{grid-template-columns:1fr 1fr}.ft-brand{grid-column:1/-1}
 .strip{grid-template-columns:1fr}
}
