/* GreenPro 홈페이지 — 공통 스타일 (2안 디자인 시스템) */
/* Pretendard: 실제 사이트는 CDN으로 로드 (아티팩트 미리보기와 달리 정상 적용됨) */
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");

:root{
  --blue:#0049F0; --blue-dark:#0038C0; --blue-soft:#EAF0FF;
  --ink:#0B1017; --muted:#69727F; --faint:#98A0AC;
  --line:#ECEEF1; --soft:#FBFBFC; --num:800;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;scroll-padding-top:96px;}
body{margin:0;background:#fff;color:var(--ink);font-family:"Pretendard","Noto Sans KR",-apple-system,system-ui,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.65;}
a{color:inherit;text-decoration:none;}
.wrap{max-width:1200px;margin:0 auto;padding:0 28px;}
.sec{padding:clamp(64px,9vw,120px) 0;}
h1,h2,h3{margin:0;letter-spacing:-.6px;}
.eyebrow{display:block;margin-left:2px;font-size:13px;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--blue);}
.num{font-weight:var(--num);font-feature-settings:"tnum";}
.btn{display:inline-flex;align-items:center;justify-content:center;text-align:center;line-height:1.3;font-weight:700;border-radius:10px;transition:.18s;cursor:pointer;}
.btn-blue{background:var(--blue);color:#fff;padding:15px 28px;font-size:16px;}
.btn-blue:hover{background:var(--blue-dark);transform:translateY(-1px);}
.btn-ghost{color:var(--ink);padding:15px 22px;font-size:16px;border:1px solid #D9DDE3;background:#fff;}
.btn-ghost:hover{border-color:var(--blue);color:var(--blue);}
h2.big{font-size:clamp(26px,3.4vw,40px);font-weight:800;letter-spacing:-1px;line-height:1.2;}
.lead{font-size:clamp(15px,1.4vw,18px);color:var(--muted);}
.kg{max-width:660px;}

.topbar{background:var(--blue);color:#EAF0FF;font-size:13px;text-align:center;padding:9px 12px;}
.topbar b{color:#fff;font-weight:600;}

header{position:sticky;top:0;z-index:60;background:rgba(255,255,255,.92);backdrop-filter:saturate(180%) blur(12px);border-bottom:1px solid var(--line);}
.nav{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;}
.logo{font-weight:900;font-size:30px;line-height:1;color:var(--blue);letter-spacing:.3px;}
.menu{display:flex;flex:1;justify-content:center;gap:56px;font-size:20px;color:var(--ink);font-weight:700;}
.menu a{padding:3px 0;border-top:2px solid transparent;border-bottom:2px solid transparent;}
.menu a:hover{color:var(--blue);}
.menu a.active{color:var(--blue);border-bottom-color:var(--blue);}
.nav-cta{background:var(--blue);color:#fff;font-weight:700;font-size:17px;padding:12px 22px;border-radius:8px;white-space:nowrap;}
.nav-cta:hover{background:var(--blue-dark);}
.burger{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;}
.burger span{width:24px;height:2px;background:var(--ink);display:block;}
.mmenu{display:none;flex-direction:column;padding:6px 0 14px;border-top:1px solid var(--line);}
.mmenu.open{display:flex;}
.mmenu a{padding:12px 4px;font-size:16px;border-bottom:1px solid #F3F4F6;}

.hero.sec{padding-top:0;padding-bottom:clamp(24px,4vh,48px);min-height:calc(100svh - 112px);}
.hero-grid{padding:clamp(24px,6vh,72px) 0 clamp(28px,4vw,44px);max-width:860px;}
.hero h1{font-size:clamp(32px,5vw,56px);line-height:1.35;font-weight:800;letter-spacing:-1.5px;text-wrap:balance;}
.hero h1 .b{color:var(--blue);}
.hero .sub{font-size:clamp(16px,1.5vw,18px);color:var(--muted);max-width:480px;margin-top:22px;}
.hero .btns{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap;}

.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:38px;}
.stat{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px 24px;}
.stat .n{font-size:clamp(28px,3.6vw,40px);font-weight:var(--num);color:var(--blue);line-height:1;letter-spacing:-1px;}
.stat .n .u{color:var(--ink);}
.stat .l{font-size:14px;color:var(--muted);margin-top:12px;}

.sol{display:grid;grid-template-columns:repeat(2,1fr);gap:0 60px;margin-top:40px;}
.sol .row{display:grid;grid-template-columns:30px 1fr;gap:18px;padding:26px 0;border-top:1px solid var(--line);align-items:baseline;}
.sol .row:nth-child(1),.sol .row:nth-child(2){border-top:0;padding-top:0;}
.sol .row .no{font-size:17px;font-weight:800;color:var(--blue);line-height:1.5;}
.sol .row .t{font-size:19px;font-weight:700;line-height:1.5;}
.sol .row .d{font-size:15px;color:var(--muted);margin-top:4px;}

.supp{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;}
.bar{display:flex;flex-direction:column;gap:14px;}
.bseg{display:flex;align-items:center;gap:16px;}
.bseg .cap{width:96px;font-size:14px;color:var(--muted);}
.bseg .track{flex:1;height:46px;border-radius:10px;background:#fff;border:1px solid var(--line);position:relative;overflow:hidden;}
.bseg .fill{position:absolute;inset:0;display:flex;align-items:center;padding-left:18px;font-weight:800;}
.chks{display:flex;flex-direction:column;gap:16px;margin-top:28px;}
.chk{display:flex;gap:12px;align-items:flex-start;font-size:16px;}
.chk .t{font-weight:600;}

.proc{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:48px;}
.step{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px 26px;display:flex;gap:16px;align-items:center;}
.step .no{font-size:20px;font-weight:800;color:var(--blue);min-width:28px;line-height:1.2;}
.step .t{font-size:17px;font-weight:700;line-height:1.35;}

.bignum{font-size:clamp(44px,6.5vw,64px);font-weight:var(--num);color:var(--blue);line-height:1;letter-spacing:-1.5px;}
.rec-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;}
.tbl-wrap{margin-top:40px;overflow-x:auto;border:1px solid var(--line);border-radius:16px;background:#fff;}
table.rec{width:100%;border-collapse:collapse;min-width:560px;}
table.rec th{background:var(--ink);color:#fff;font-weight:600;font-size:14px;text-align:left;padding:16px 20px;}
table.rec td{padding:16px 20px;font-size:15px;border-top:1px solid var(--line);}
table.rec tr td:first-child{font-weight:700;}
table.rec .kw{color:var(--blue);font-weight:800;}
.tbl-note{font-size:17px;font-weight:700;color:var(--ink);margin-top:20px;text-align:center;}
.cases{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px;}
.case{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:#fff;transition:.2s;}
.case:hover{border-color:#C7D6FF;transform:translateY(-3px);box-shadow:0 12px 30px -14px rgba(11,16,23,.16);}
.case .ph{height:150px;background:#EEF1F6;display:flex;align-items:center;justify-content:center;color:#9AA3B2;font-size:14px;}
.case .ph img{width:100%;height:100%;object-fit:cover;}
.case .bd{padding:22px;}
.case .co{font-size:17px;font-weight:700;}
.case .me{font-size:14px;color:var(--muted);margin-top:6px;}
.case .kw{font-size:22px;font-weight:800;color:var(--blue);margin-top:12px;letter-spacing:-.5px;}

.cards3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:44px;}
.fcard{border:1px solid var(--line);border-radius:16px;padding:30px 26px;background:#fff;}
.fcard .ic{color:var(--blue);}
.fcard .t{font-size:18px;font-weight:700;margin-top:16px;}
.fcard .d{font-size:15px;color:var(--muted);margin-top:8px;}

.svc{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center;margin-top:8px;}
.svc ul{list-style:none;padding:0;margin:18px 0 0;}
.svc li{display:flex;gap:12px;align-items:flex-start;padding:10px 0;font-size:16px;}
.svc li svg{flex:none;margin-top:3px;}
.panel{background:var(--soft);border:1px solid var(--line);border-radius:18px;padding:32px;}
.seg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-top:8px;}
.segbox{border-radius:12px;padding:22px 16px;text-align:center;}
.segbox .c{font-size:13px;}
.segbox .v{font-weight:800;font-size:22px;margin-top:8px;letter-spacing:-.5px;}

.target{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:24px;}
.tbox{border:1px solid var(--line);border-radius:14px;padding:24px;background:#fff;}
.tbox .tag{display:inline-block;font-size:12px;font-weight:700;color:var(--blue);background:var(--blue-soft);padding:5px 12px;border-radius:999px;}
.tbox .t{font-size:18px;font-weight:700;margin-top:12px;}
.tbox .d{font-size:15px;color:var(--muted);margin-top:6px;}

.hp-field{position:absolute;left:-9999px;top:-9999px;width:1px;height:1px;overflow:hidden;}
.form{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px;}
.field{display:flex;flex-direction:column;gap:8px;}
.field.full{grid-column:1 / -1;}
.field label{font-size:14px;font-weight:600;}
.field input,.field textarea{font-family:inherit;font-size:15px;padding:14px 16px;border:1px solid #D9DDE3;border-radius:10px;background:#fff;color:var(--ink);}
.field input:focus,.field textarea:focus{outline:none;border-color:var(--blue);box-shadow:0 0 0 3px var(--blue-soft);}
.field textarea{min-height:130px;resize:vertical;}
.agree{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--muted);margin-top:6px;}
.agree a{color:var(--blue);text-decoration:underline;}
.form-ok{display:none;background:var(--blue-soft);border:1px solid #BBD1FF;color:#0038C0;border-radius:12px;padding:18px 20px;font-weight:600;margin-top:8px;}
.contact-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:48px;}
.info-list{display:flex;flex-direction:column;gap:20px;}
.info-item .k{font-size:13px;color:var(--faint);font-weight:600;letter-spacing:.5px;}
.info-item .v{font-size:17px;font-weight:600;margin-top:4px;}
.offer{background:var(--blue);color:#fff;border-radius:16px;padding:26px;margin-bottom:8px;}
.offer .t{font-weight:800;font-size:18px;}
.offer .d{color:#D6E2FF;font-size:14px;margin-top:8px;}

.brand{background:var(--blue);color:#fff;text-align:center;overflow:hidden;}
.brand .in{padding:clamp(60px,8vw,100px) 0 0;}
.brand h2{font-size:clamp(24px,3vw,34px);font-weight:800;color:#fff;}
.brand p{color:#CFE0FF;font-size:clamp(15px,1.5vw,18px);margin:16px auto 28px;max-width:560px;}
.brand p b{color:#fff;font-weight:800;}
.brand .btn-white{background:#fff;color:var(--blue);font-weight:800;padding:15px 30px;border-radius:10px;display:inline-flex;align-items:center;justify-content:center;line-height:1.3;}
.wordmark{font-weight:900;font-size:clamp(44px,12.5vw,168px);line-height:.95;color:#2E6BFF;letter-spacing:-3px;margin-top:clamp(24px,4vw,44px);padding-bottom:clamp(10px,2vw,24px);user-select:none;white-space:nowrap;}

.prose{max-width:820px;}
.prose h3{font-size:17px;font-weight:700;margin:26px 0 8px;}
.prose p,.prose li{font-size:14.5px;color:#3A4453;line-height:1.75;}
.prose ul{padding-left:18px;}

footer{background:#0B111C;color:#8A94A6;}
.foot{display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap;padding:52px 0;}
.foot .fl{font-weight:900;font-size:20px;color:#fff;}
.foot .fi{font-size:14px;line-height:1.9;margin-top:12px;}
.foot .fr{text-align:right;font-size:14px;}
.foot .fr a{color:#B9C1CF;}

@media(max-width:900px){
  .supp,.svc,.contact-grid,.form{grid-template-columns:1fr;gap:28px;}
  .sol,.proc,.cases,.cards3,.target{grid-template-columns:1fr;}
  .form .field.full{grid-column:auto;}
  .sol .row:nth-child(2){border-top:1px solid var(--line);padding-top:26px;}
  .logo{font-size:26px;}
  .menu{gap:24px;font-size:17px;}
  .nav-cta{font-size:15px;padding:10px 16px;}
}
@media(max-width:640px){
  .menu{display:none;}
  .logo{font-size:24px;}
  .nav-cta{font-size:14px;padding:9px 14px;}
  .burger{display:flex;}
  .stats{grid-template-columns:1fr;gap:12px;}
  html{scroll-padding-top:140px;}
  .hero.sec{min-height:calc(100svh - 140px);}
  .tbl-note{font-size:15px;}
}
