:root{--ink:#111;--mut:#555;--accent:#4F787C;--soft:#E4EEF0;--line:#E5E5E5;--w:1200px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:120px}
body{margin:0;font-family:Pretendard,"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",-apple-system,sans-serif;color:var(--ink);background:#fff;line-height:1.75;font-size:16px;word-break:keep-all;overflow-wrap:break-word;line-break:strict}
p,li,h1,h2,h3,h4,a,button,.card,footer,nav{word-break:keep-all;overflow-wrap:break-word;line-break:strict}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
.in{max-width:var(--w);margin:0 auto;padding:0 24px}
.ic{vertical-align:-3px;margin-right:8px;flex:none}
/* 헤더 */
.hd{position:sticky;top:0;z-index:50;background:#fff}
.hd-top{height:3px;background:var(--accent)}
.hd-brand{display:flex;align-items:center;gap:20px;max-width:var(--w);margin:0 auto;padding:12px 24px 8px}
.ln{flex:1;display:flex;align-items:center;gap:14px;font-size:12px;color:var(--mut);letter-spacing:.08em}
.ln::after{content:"";flex:1;height:1px;background:#000}
.ln:first-child{flex-direction:row-reverse}
.ln i{font-style:normal;white-space:nowrap}
.emb{display:flex;align-items:center;gap:10px;text-decoration:none;color:var(--accent)}
.emb b{color:var(--ink);font-size:22px;letter-spacing:-.02em;white-space:nowrap}
.hd-nav{display:flex;justify-content:center;gap:40px;align-items:center;border-bottom:1px solid #000;padding:6px 24px 10px}
.hd-nav a{text-decoration:none;font-size:15px;font-weight:500;white-space:nowrap}
.hd-nav a:hover{color:var(--accent)}
.hd-nav .cta{background:var(--accent);color:#fff;padding:7px 20px;font-weight:600}
.hd-nav .cta:hover{color:#fff;opacity:.9}
/* 버튼 */
.btn{display:inline-block;background:var(--accent);color:#fff;border:1px solid var(--accent);padding:12px 28px;font-weight:600;text-decoration:none;font-size:15px;cursor:pointer;font-family:inherit;white-space:nowrap}
.btn:hover{opacity:.9}
.btn.ghost{background:transparent;color:var(--ink);border-color:#000}
.btn.ghost:hover{background:#000;color:#fff;opacity:1}
/* 히어로 ggg-split */
.hero{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #000;border-bottom:1px solid #000;min-height:560px}
.hero-img{border-right:1px solid #000;overflow:hidden;position:relative}
.hero-img img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0;cursor:zoom-in}
.hero-txt{padding:64px 56px;display:flex;flex-direction:column;justify-content:center}
.eyebrow{margin:0 0 18px;font-size:13px;color:var(--accent);font-weight:600;letter-spacing:.06em}
.hero h1{margin:0 0 22px;font-size:clamp(40px,5vw,64px);line-height:1.15;letter-spacing:-.03em;white-space:nowrap}
.lead{font-size:17.5px;color:#222;margin:0 0 20px}
.acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:12px}
/* 섹션 */
.sec{padding:84px 0}
.s-a{background:#F9F7F3}.s-b{background:#fff}.s-c{background:#F4F8FC}.s-d{background:#FAF7EE}
.sh{margin-bottom:40px}
.lab{display:flex;align-items:center;margin:0 0 8px;font-size:12px;letter-spacing:.2em;color:var(--accent);font-weight:700}
.sh h2{margin:0;font-size:clamp(22px,2.6vw,32px);letter-spacing:-.02em;line-height:1.35;white-space:nowrap;color:var(--ink)}
.lab .ic{margin-right:8px}
.sd{margin:10px 0 0;color:var(--mut)}
.grid2,.grid3,.grid4{display:grid;gap:28px}
.grid3{grid-template-columns:repeat(3,1fr)}
.grid2{grid-template-columns:repeat(2,1fr);margin-top:28px}
.grid4{grid-template-columns:repeat(4,1fr)}
.grid1{display:grid;gap:28px}
.more-box[hidden]{display:none}
.morewrap{text-align:center;margin:36px 0 0}
.card{display:flex;flex-direction:column;background:#fff;border:1px solid var(--line);text-decoration:none;transition:border-color .2s}
.card:hover{border-color:#000}
.card .th{aspect-ratio:4/3;overflow:hidden;background:#eee}
.card .th img{width:100%;height:100%;object-fit:cover}
.card .bd{padding:20px 22px 24px;display:flex;flex-direction:column;gap:6px;flex:1}
.badge{align-self:flex-start;background:var(--soft);color:var(--accent);font-size:12px;font-weight:700;padding:2px 10px}
.card h3{margin:4px 0 0;font-size:20px;letter-spacing:-.02em;line-height:1.35}
.card p{margin:0;color:var(--mut);font-size:14.5px}
.more{margin-top:auto;padding-top:10px;font-size:14px;font-weight:600;color:var(--accent)}
/* 과정 */
.steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);gap:20px}
.steps li{background:#fff;padding:26px 20px;border-top:3px solid var(--accent);display:flex;flex-direction:column;gap:8px;color:var(--accent)}
.steps .ic{margin:0 0 6px}
.steps b{color:var(--ink);font-size:17px}
.steps span{color:var(--mut);font-size:14.5px}
.split{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center}
.sp-img{aspect-ratio:4/3;overflow:hidden}
.sp-img img{width:100%;height:100%;object-fit:cover;cursor:zoom-in}
.sp-tx p{margin:0 0 14px}
/* FAQ */
.faqs{display:grid;gap:0;border-top:1px solid #000}
.faqs details{border-bottom:1px solid var(--line);padding:4px 0}
.faqs summary{cursor:pointer;list-style:none;padding:16px 0;display:flex;justify-content:space-between;gap:16px}
.faqs summary::-webkit-details-marker{display:none}
.faqs summary::after{content:"+";font-size:22px;color:var(--accent);line-height:1}
.faqs details[open] summary::after{content:"−"}
.faqs h3{margin:0;font-size:17px;font-weight:600}
.faqs p{margin:0 0 18px;color:#333}
/* Closing */
.closing{position:relative;min-height:650px;background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;text-align:center;color:#fff}
.closing::before{content:"";position:absolute;inset:0;background:rgba(19,19,19,.55)}
.cl-in{position:relative;padding:0 24px}
.closing h2{margin:0 0 22px;font-size:clamp(20px,2.6vw,34px);white-space:nowrap;letter-spacing:-.02em;color:#fff}
.closing p{margin:0 0 34px;font-size:17px;color:#f1f1f1}
.cl-btn{display:inline-block;border:1px solid #fff;color:#fff;padding:14px 46px;text-decoration:none;font-weight:600;border-radius:0}
.cl-btn:hover{background:#fff;color:#111}
/* 푸터 */
.ft{background:#fff;border-top:1px solid var(--line);padding:56px 0 40px;font-size:14px;color:#222}
.fcols{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px}
.fbrand b{display:block;font-size:20px;margin-bottom:6px}
.fbrand span{color:var(--mut)}
.ft h4{margin:0 0 12px;font-size:14px}
.fcols a{display:block;text-decoration:none;color:var(--mut);padding:3px 0}
.fcols a:hover{color:var(--accent)}
.biz{font-style:normal;margin-top:32px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:6px 22px;color:var(--mut)}
.nw{white-space:nowrap}
.cp{margin:18px 0 0;color:var(--mut)}
/* 서브페이지 */
.wrap{max-width:900px;margin:0 auto;padding:28px 24px 0}
.wrap2{max-width:900px;margin:0 auto;padding:0 24px}
.wrap>.sec,.wrap>.closing{margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);width:100vw}
.wrap h1{font-size:clamp(28px,4vw,42px);line-height:1.25;letter-spacing:-.03em;margin:14px 0 18px}
.crumb{font-size:13px;color:var(--mut)}
.crumb a{text-decoration:none}.crumb em{font-style:normal;color:var(--ink)}
.tx{margin:40px 0}
.tx h2{font-size:clamp(20px,2.4vw,26px);letter-spacing:-.02em;margin:0 0 14px;line-height:1.4}
.tx h3{font-size:18px;margin:22px 0 6px}
.tx p{margin:0 0 12px}
.tx a{color:var(--accent);font-weight:600}
.chk{list-style:none;margin:0;padding:0;display:grid;gap:10px}
.chk li{display:flex;gap:4px;align-items:flex-start;padding:12px 16px;background:#F9F7F3}
.chk .ic{color:var(--accent);margin-top:5px}
.olist{margin:0;padding-left:24px}
.olist li{margin:6px 0}
.ctab{background:var(--soft);padding:32px;text-align:center}
.ctab .btn{margin-top:6px}
.gal h2,.ba h2{font-size:20px;margin:36px 0 14px}
.gal-g{display:grid;gap:12px;grid-template-columns:repeat(3,1fr)}
.gal-g.n2{grid-template-columns:repeat(2,1fr)}
.gal-g.n4{grid-template-columns:repeat(2,1fr)}
.gal-g.n5,.gal-g.n6{grid-template-columns:repeat(3,1fr)}
.gal figure,.ba figure{margin:0}
.gal-g img{width:100%;aspect-ratio:3/4;object-fit:cover;cursor:zoom-in}
.ba-g{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ba-g img{width:100%;aspect-ratio:4/3;object-fit:cover;cursor:zoom-in}
figcaption{font-size:13px;color:var(--mut);padding-top:6px;text-align:center}
.minis{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.mini{display:flex;flex-direction:column;gap:4px;padding:16px 18px;border:1px solid var(--line);text-decoration:none;color:var(--ink)!important;font-weight:400!important}
.mini:hover{border-color:#000}
.mini b{font-size:17px}
.mini span{font-size:13.5px;color:var(--mut)}
.rel{background:#F9F7F3;margin-top:56px}
.rel:nth-of-type(odd){background:#F4F8FC}
.rel .grid3,.rel .grid4,.rel .grid2,.rel .grid1{max-width:var(--w);margin:0 auto}
.rel .in .sh{margin-bottom:28px}
.nopad{padding-top:12px!important}
.nopad .grid3{max-width:none}
.rel.nopad{background:#fff;margin-top:20px;padding:20px 0 60px}
.faq{background:#fff}
.wrap>.faq,.wrap>.rel{padding:56px 0}
.gh{padding:56px 0 80px}
.gh .grid3{max-width:1100px;margin:0 auto}
.tbl{width:100%;border-collapse:collapse}
.tbl th,.tbl td{border-top:1px solid var(--line);padding:12px 10px;text-align:left;vertical-align:top}
.tbl th{width:34%;font-weight:600;background:#FAF7EE}
.tbl tr:last-child th,.tbl tr:last-child td{border-bottom:1px solid var(--line)}
/* 라이트박스 */
.lb{position:fixed;inset:0;background:rgba(0,0,0,.85);z-index:999;display:flex;align-items:center;justify-content:center;cursor:zoom-out}
.lb img{max-width:92vw;max-height:90vh;object-fit:contain;cursor:default;width:auto;height:auto}
.lb button{position:absolute;background:none;border:0;color:#fff;font-size:44px;cursor:pointer;padding:12px 20px;line-height:1}
.lb .x{top:6px;right:8px}.lb .pv{left:6px;top:50%}.lb .nx{right:6px;top:50%}
@media(max-width:1000px){
 .hero{grid-template-columns:1fr;min-height:0}
 .hero-img{aspect-ratio:4/3;border-right:0;border-bottom:1px solid #000}
 .hero-txt{padding:36px 24px}
 .steps{grid-template-columns:repeat(2,1fr)}
 .split{grid-template-columns:1fr;gap:28px}
 .hd-nav{gap:26px}
}
@media(max-width:767px){
 body{font-size:15px}
 .ln i{display:none}
 .hd-brand{padding:10px 16px 6px;justify-content:center}
 .ln::after{display:none}
 .ln{flex:0}
 .emb b{font-size:19px}
 .hd-nav{display:grid;grid-template-columns:repeat(4,1fr);gap:0;padding:0;text-align:center}
 .hd-nav a{padding:10px 2px;font-size:14px;border-right:1px solid var(--line)}
 .hd-nav a:last-child{border-right:0}
 .hd-nav .cta{padding:10px 2px}
 .in{padding:0 18px}
 .sec{padding:56px 0}
 .grid3,.grid4,.grid2,.minis,.gal-g,.gal-g.n2,.gal-g.n5{grid-template-columns:1fr}
 .grid3,.grid4,.grid2{gap:20px}
 .gal-g.n3,.gal-g.n4,.gal-g.n6{grid-template-columns:repeat(2,1fr)}
 .ba-g{grid-template-columns:1fr 1fr}
 .steps{grid-template-columns:1fr}
 .hero h1{font-size:36px}
 .sh h2{font-size:19px}
 .closing{min-height:480px}
 .closing h2{font-size:clamp(14px,4.4vw,20px)}
 .fcols{grid-template-columns:1fr 1fr;gap:24px}
 .fbrand{grid-column:1/-1}
 .wrap{padding:20px 18px 0}.wrap2{padding:0 18px}
 .gal-g img{aspect-ratio:1/1}
 .biz{flex-direction:column;gap:4px}
}
@media(max-width:380px){.hd-nav a{font-size:13px}.sh h2{font-size:17px}}
.tx a.btn{color:#fff;font-weight:600}.tx a.btn.ghost{color:var(--ink)}.tx a.btn.ghost:hover{color:#fff}
