*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:'Noto Sans KR',system-ui,sans-serif;color:#1C1B19;background:#FBF8F3;line-height:1.6;word-break:keep-all}
a{color:#1F5E4A}
h1,h2,h3,p{margin:0}
.wrap{max-width:1200px;margin:0 auto;padding:0 24px}
section{padding:96px 0}
.alt{background:#F2ECE2}
.dark{background:#1C1B19;color:#FBF8F3}
.eyebrow{color:#1F5E4A;font-weight:700;font-size:15px;margin-bottom:8px}
h2{font-size:36px;font-weight:900;letter-spacing:-1px;margin-bottom:16px}
.lead{font-size:17px;color:#4A463F;max-width:640px;margin-bottom:48px}
.center{text-align:center}
.center .lead{margin-left:auto;margin-right:auto}
.grid{display:grid;gap:20px}
.g4{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.g3{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}
.g2{grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:24px}
.card{background:#fff;border:1px solid #E7E1D6;border-radius:20px;padding:32px}
.card h3{font-size:21px;margin:16px 0 8px}
.card p{color:#4A463F;font-size:15px}
.btn{display:inline-block;text-decoration:none;font-weight:700;border-radius:12px;padding:16px 28px;font-size:17px}
.btn-primary{background:#1F5E4A;color:#fff}
.btn-primary:hover{background:#174A3A;color:#fff}
.btn-ghost{background:#fff;color:#1C1B19;border:1px solid #D9D2C5}

/* header */
header{border-bottom:1px solid #E7E1D6;background:#FBF8F3;position:sticky;top:0;z-index:10}
.nav{display:flex;flex-wrap:wrap;gap:16px;align-items:center;justify-content:space-between;padding:16px 24px;max-width:1200px;margin:0 auto}
.logo{text-decoration:none;color:#1C1B19;font-weight:900;font-size:22px;letter-spacing:-.5px}
.logo span{color:#1F5E4A}
.menu{display:flex;flex-wrap:wrap;gap:24px;align-items:center;font-size:15px;font-weight:500}
.menu a{color:#3D3A35;text-decoration:none}
.menu a.call{background:#1F5E4A;color:#fff;padding:10px 20px;border-radius:999px;font-weight:700}

/* hero */
.hero{padding:88px 0 96px}
.hero .wrap{display:flex;flex-wrap:wrap;gap:56px;align-items:center}
.hero-text{flex:1 1 520px;min-width:0}
.badge{display:inline-block;background:#E6EFEA;color:#1F5E4A;font-weight:700;font-size:14px;padding:6px 14px;border-radius:999px;margin-bottom:20px}
.hero h1{font-size:52px;line-height:1.25;font-weight:900;letter-spacing:-1.5px;margin-bottom:24px}
.hero-text>p{font-size:19px;color:#4A463F;max-width:520px;margin-bottom:36px}
.actions{display:flex;flex-wrap:wrap;gap:12px}
.hero-card{flex:1 1 420px;min-width:0}
.report{background:#fff;border:1px solid #E7E1D6;border-radius:24px;padding:28px;box-shadow:0 24px 48px -24px rgba(60,45,20,.25)}
.report-title{font-size:14px;font-weight:700;color:#6B665C;margin-bottom:16px}
.report .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:20px}
.stat{background:#F5F1EA;border-radius:14px;padding:18px}
.stat p{font-size:13px;color:#6B665C}
.stat strong{display:block;font-size:20px;margin-top:4px}
.checks{display:flex;flex-direction:column;gap:10px;font-size:15px}
.checks div{display:flex;gap:10px;align-items:center}
.note{margin-top:12px;font-size:13px;color:#6B665C;text-align:center}

/* pain */
.pain{background:#2A2925;border-radius:18px;padding:28px}
.pain h3{font-size:20px;margin-bottom:8px}
.pain p{color:#C9C3B8;font-size:15px}

/* industries */
.ind{background:#fff;border-radius:24px;padding:36px}
.ind .tag-label{font-size:14px;font-weight:700;color:#1F5E4A;margin-bottom:6px}
.ind h3{font-size:22px;margin-bottom:12px}
.ind>p{color:#4A463F;font-size:15px;margin-bottom:20px}
.ind ul{margin:0 0 20px;padding-left:20px;color:#3D3A35;font-size:15px}
.tags{display:flex;flex-wrap:wrap;gap:8px}
.tags span{background:#F5F1EA;padding:6px 12px;border-radius:999px;font-size:13px}

/* pricing */
.plan{background:#fff;border:1px solid #E7E1D6;border-radius:24px;padding:36px;display:flex;flex-direction:column;gap:20px}
.plan h3{font-size:22px;margin-bottom:4px}
.plan .sub{color:#6B665C;font-size:15px}
.price{font-size:34px;font-weight:900}
.price small{font-size:16px;font-weight:500;color:#6B665C}
.plan ul{margin:0;padding-left:18px;display:flex;flex-direction:column;gap:8px;font-size:15px;flex-grow:1}
.plan .btn{text-align:center;background:#F5F1EA;color:#1C1B19;padding:14px}
.plan.best{background:#1F5E4A;color:#fff;border-color:#1F5E4A}
.plan.best .sub,.plan.best .price small{color:#CFE3D9}
.plan.best .btn{background:#fff;color:#1F5E4A}
.pick{display:inline-block;background:#fff;color:#1F5E4A;font-size:12px;font-weight:700;padding:4px 10px;border-radius:999px;margin-bottom:10px}

/* process */
.step .num{font-size:40px;font-weight:900;color:#1F5E4A;margin-bottom:12px}
.step h3{font-size:19px;margin-bottom:6px}
.step p{color:#4A463F;font-size:15px}

/* contact */
.contact{background:#1F5E4A;color:#fff;border-radius:28px;padding:56px 48px;display:flex;flex-wrap:wrap;gap:32px;align-items:center;justify-content:space-between}
.contact h2{margin-bottom:12px}
.contact p{color:#CFE3D9;font-size:17px;max-width:560px}
.contact .tel{display:inline-block;background:#fff;color:#1F5E4A;text-decoration:none;font-weight:900;font-size:26px;padding:18px 32px;border-radius:16px}
.contact .hours{margin-top:10px;font-size:14px;color:#CFE3D9;text-align:center}

/* footer */
footer{background:#1C1B19;color:#C9C3B8;padding:48px 0;font-size:14px}
footer .wrap{display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}
footer .name{color:#FBF8F3;font-weight:900;font-size:18px;margin-bottom:6px}
footer .links{display:flex;gap:20px;align-items:flex-end}
footer .links a{color:#FBF8F3}

/* legal pages */
.legal{max-width:820px;margin:0 auto;padding:64px 24px 96px}
.legal h1{font-size:34px;font-weight:900;margin-bottom:24px}
.legal h2{font-size:20px;letter-spacing:0;margin:40px 0 12px}
.legal p,.legal li{font-size:15px;color:#3D3A35}
.legal table{width:100%;border-collapse:collapse;margin:12px 0;font-size:14px}
.legal th,.legal td{border:1px solid #E0D9CC;padding:10px 12px;text-align:left;vertical-align:top}
.legal th{background:#F2ECE2}

/* illustrations */
.hero-art svg{width:100%;height:auto;display:block}
.ind-icon{width:64px;height:64px;border-radius:18px;background:#E6EFEA;display:flex;align-items:center;justify-content:center;margin-bottom:18px}
.ind.c2 .ind-icon{background:#FBE7DA}
.ind.c3 .ind-icon{background:#E3E8F4}
.contact-icon{width:72px;height:72px;border-radius:50%;background:#fff;display:flex;align-items:center;justify-content:center;flex:none}
.contact-main{display:flex;gap:24px;align-items:center;flex:1 1 420px;min-width:0}
.contact-side{display:flex;flex-direction:column;gap:10px;align-items:center}
.contact .num{font-weight:900;font-size:28px;color:#fff;letter-spacing:.5px}
.btn-white{background:#fff;color:#1F5E4A;border:0;cursor:pointer;font:inherit;font-weight:700}

/* call dialog */
dialog.call{border:0;border-radius:24px;padding:0;width:min(420px,calc(100% - 32px));box-shadow:0 30px 60px -20px rgba(0,0,0,.35)}
dialog.call::backdrop{background:rgba(28,27,25,.55)}
.call-body{padding:36px 32px 28px;text-align:center}
.call-body .ic{width:64px;height:64px;border-radius:50%;background:#E6EFEA;display:flex;align-items:center;justify-content:center;margin:0 auto 16px}
.call-body h2{font-size:22px;letter-spacing:0;margin-bottom:6px}
.call-body .desc{color:#4A463F;font-size:15px;margin-bottom:20px}
.call-body .big{font-size:32px;font-weight:900;color:#1F5E4A;margin-bottom:4px;letter-spacing:.5px}
.call-body .hrs{font-size:14px;color:#6B665C;margin-bottom:24px}
.call-actions{display:flex;flex-direction:column;gap:10px}
.call-actions button,.call-actions a{font:inherit;font-weight:700;font-size:16px;padding:14px;border-radius:12px;border:0;cursor:pointer;text-decoration:none;text-align:center}
.copy{background:#1F5E4A;color:#fff}
.dial{background:#1F5E4A;color:#fff;display:none}
.close{background:#F5F1EA;color:#1C1B19}
@media (hover:none) and (pointer:coarse){
  .dial{display:block}
  .copy{background:#F5F1EA;color:#1C1B19}
}

@media (max-width:640px){
  section{padding:64px 0}
  .hero{padding:56px 0 64px}
  .hero h1{font-size:36px}
  h2{font-size:28px}
  .contact{padding:40px 24px}
  .menu{gap:14px;font-size:14px}
  .menu a.hide-sm{display:none}
}
