main,figure{display:block}
:root{
  --green:#1f7a4d; --green-d:#155c39; --green-l:#e8f4ec;
  --ink:#1c2420; --sub:#56625b; --line:#dde5df; --bg:#ffffff; --soft:#f6f9f7;
  --accent:#f2a900;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;font-family:"Pretendard","Apple SD Gothic Neo","Noto Sans KR","Malgun Gothic",sans-serif;color:#1c2420;background:#ffffff;line-height:1.75;font-size:17px;word-break:keep-all}
a{color:#1f7a4d}
.wrap{max-width:960px;margin:0 auto;padding:0 16px}
h1{font-size:1.9rem;line-height:1.35;margin:28px 0 12px}
h2{font-size:1.4rem;line-height:1.4;margin:44px 0 14px;padding-left:12px;border-left:5px solid #1f7a4d}
h3{font-size:1.1rem;margin:0 0 6px}
p{margin:0 0 14px}
.lead{font-size:1.08rem;color:#56625b}
small{color:#56625b}

/* header */
.top{position:sticky;top:0;z-index:10;background:#fff;border-bottom:1px solid #dde5df}
.top-in{display:flex;align-items:center;justify-content:space-between;height:60px}
.logo{display:flex;align-items:center;gap:8px;font-weight:800;font-size:1.1rem;color:#1c2420;text-decoration:none}
.logo b{color:#1f7a4d}
.logo-mark{width:22px;height:22px;border-radius:50%;background:#1f7a4d;box-shadow:inset -5px -5px 0 rgba(255,255,255,.35)}
.gnb{background:#f6f9f7;border-top:1px solid #dde5df}
.gnb-in{display:flex;gap:4px;overflow-x:auto;white-space:nowrap;scrollbar-width:none}
.gnb-in::-webkit-scrollbar{display:none}
.gnb a{display:block;padding:10px 12px;color:#56625b;text-decoration:none;font-size:.95rem;border-bottom:3px solid transparent}
.gnb a.on,.gnb a:hover{color:#155c39;border-bottom-color:#1f7a4d;font-weight:700}

/* buttons */
.btn{display:inline-block;background:#1f7a4d;color:#fff;text-decoration:none;font-weight:700;border-radius:8px;padding:10px 18px;border:2px solid #1f7a4d}
.btn:hover{background:#155c39;border-color:#155c39}
.btn-sm{padding:6px 14px;font-size:.92rem}
.btn-lg{padding:14px 24px;font-size:1.05rem}
.btn-line{background:#fff;color:#1f7a4d}
.btn-line:hover{background:#e8f4ec;color:#155c39}

/* hero */
.hero{padding:36px 0 8px}
.hero h1{font-size:2.2rem;margin-top:8px}
.eyebrow{display:inline-block;background:#e8f4ec;color:#155c39;font-size:.85rem;font-weight:700;padding:4px 10px;border-radius:999px}
.hero-btns{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}

.facts{list-style:none;padding:0;margin:28px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:10px}
.facts li{background:#f6f9f7;border:1px solid #dde5df;border-radius:12px;padding:16px 8px;text-align:center}
.facts b{display:block;font-size:1.5rem;color:#155c39}
.facts span{font-size:.9rem;color:#56625b}

.check{list-style:none;padding:0;margin:0 0 14px}
.check li{position:relative;padding:8px 0 8px 30px;border-bottom:1px dashed #dde5df}
.check li:before{content:"";position:absolute;left:4px;top:15px;width:14px;height:8px;border-left:3px solid #1f7a4d;border-bottom:3px solid #1f7a4d;transform:rotate(-45deg)}

.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}
.card{display:block;border:1px solid #dde5df;border-radius:12px;padding:18px;text-decoration:none;color:#1c2420;background:#fff}
.card:hover{border-color:#1f7a4d;box-shadow:0 4px 14px rgba(31,122,77,.12)}
.card p{color:#56625b;font-size:.95rem;margin-bottom:8px}
.card span{color:#1f7a4d;font-weight:700;font-size:.92rem}

.tbl{width:100%;border-collapse:collapse;margin:0 0 14px;font-size:.98rem}
.tbl th,.tbl td{border:1px solid #dde5df;padding:10px 12px;text-align:left;vertical-align:top}
.tbl tbody th{width:28%;background:#f6f9f7;font-weight:700}
.tbl thead th{background:#1f7a4d;color:#fff;border-color:#1f7a4d}
.tbl-wide td,.tbl-wide th{font-size:.94rem}

.cta-box{margin:44px 0 8px;background:#e8f4ec;border:1px solid #cfe6d8;border-radius:14px;padding:26px 20px;text-align:center}
.cta-box h2{border:0;padding:0;margin:0 0 8px;font-size:1.3rem}
.cta-box p{color:#56625b}

.note{background:#fff8e6;border-left:4px solid #f2a900;padding:12px 14px;border-radius:6px}

.video{position:relative;padding-top:56.25%;border-radius:12px;overflow:hidden;background:#000}
.video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

.cur-group{border:1px solid #dde5df;border-radius:12px;padding:18px;margin-bottom:12px}
.cur-group h3 small{font-weight:400;margin-left:6px}
.cur-group p{color:#56625b;font-size:.95rem}
.cur-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,1fr);gap:6px 16px}
.cur-list li{font-size:.97rem}
.cur-list em{font-style:normal;display:inline-block;min-width:44px;color:#155c39;font-weight:700}

.steps{list-style:none;padding:0;margin:0}
.steps li{display:flex;gap:14px;padding:16px 0;border-bottom:1px solid #dde5df}
.step-no{flex:0 0 40px;height:40px;border-radius:50%;background:#1f7a4d;color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center}
.steps p{margin:0;color:#56625b}

.faq{border:1px solid #dde5df;border-radius:10px;margin-bottom:8px;background:#fff}
.faq summary{cursor:pointer;padding:14px 16px;font-weight:700;list-style:none;position:relative;padding-right:40px}
.faq summary::-webkit-details-marker{display:none}
.faq summary:before{content:"Q. ";color:#1f7a4d}
.faq summary:after{content:"+";position:absolute;right:16px;top:12px;font-size:1.3rem;color:#1f7a4d}
.faq[open] summary:after{content:"−"}
.faq p{padding:0 16px 14px;margin:0;color:#56625b}

.crumb{font-size:.88rem;color:#56625b;margin-top:18px}
.crumb a{color:#56625b}
.crumb span{margin:0 4px}

.foot{margin-top:48px;background:#1c2420;color:#b9c4bd;font-size:.88rem;padding:28px 0}
.foot a{color:#e1e9e4}
.foot-nav a{text-decoration:none}

@media (max-width:640px){
  body{font-size:16px}
  h1{font-size:1.55rem}
  .hero h1{font-size:1.7rem}
  h2{font-size:1.25rem}
  .facts{grid-template-columns:repeat(2,1fr)}
  .cards{grid-template-columns:1fr}
  .cur-list{grid-template-columns:1fr}
  .tbl tbody th{width:34%}
  .hero-btns .btn{width:100%;text-align:center}
}

/* hero with photo */
.hero{display:grid;grid-template-columns:1fr 360px;grid-template-areas:"head img" "body img";grid-template-rows:auto 1fr;column-gap:36px;align-items:start}
.hero-head{grid-area:head}
.hero-body{grid-area:body}
.hero-img{grid-area:img;margin:8px 0 0}
.hero-img img{display:block;width:100%;height:auto;aspect-ratio:649/811;object-fit:cover;border-radius:16px;box-shadow:0 8px 24px rgba(21,92,57,.18)}
@media (max-width:760px){
  .hero{grid-template-columns:1fr;grid-template-areas:"head" "img" "body"}
  .hero-img{margin:4px 0 18px}
  .hero-img img{aspect-ratio:4/3;object-position:50% 20%}
}

/* top band */
.topband{background:#155c39;color:#fff;text-align:center;font-size:.86rem;font-weight:700;padding:6px 16px;letter-spacing:.02em}
.topband span{opacity:.5;margin:0 6px}

/* 구형 엣지 등 호환: gap·inset 미지원 대비 */
.video iframe{top:0;left:0}
.hero-btns .btn{margin:0}
@supports not (gap:10px){
  .hero-btns .btn{margin:0 10px 10px 0}
  .gnb-in a{margin-right:4px}
}

/* 중간 폭(윈도우 배율 125~150%, 작은 노트북) */
@media (min-width:761px) and (max-width:1060px){
  .hero{grid-template-columns:1fr 280px;column-gap:28px}
  .hero h1{font-size:1.75rem}
  .eyebrow{font-size:.8rem}
  .lead{font-size:1rem}
  .hero-btns{flex-wrap:nowrap}
  .hero-btns .btn-lg{padding:12px 16px;font-size:.98rem;white-space:nowrap}
  .facts b{font-size:1.3rem}
  .gnb a{padding:10px 9px;font-size:.92rem}
}

/* 추가 페이지 */
.scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;margin-bottom:14px}
.cards-3{grid-template-columns:repeat(3,1fr)}
@media (max-width:640px){.cards-3{grid-template-columns:1fr}}

/* ===== Internet Explorer 11 / 엣지 IE 모드 전용 보정 ===== */
@media all and (-ms-high-contrast:none),(-ms-high-contrast:active){
  main,figure,header,footer,nav,section{display:block}
  .top{position:relative}
  .gnb-in{display:block}
  .gnb a{display:inline-block}
  .hero{display:block;overflow:hidden}
  .hero-img{float:right;width:340px;margin:8px 0 20px 32px}
  .hero-btns{display:block}
  .hero-btns .btn{margin:0 10px 10px 0}
  .facts{display:block;overflow:hidden;clear:both}
  .facts li{float:left;width:23.5%;margin:0 2% 0 0}
  .facts li:last-child{margin-right:0}
  .cards{display:block;overflow:hidden}
  .card{float:left;width:48.5%;margin:0 3% 12px 0}
  .card:nth-child(2n){margin-right:0}
  .cur-list{display:block}
  .cur-list li{display:inline-block;width:48%;vertical-align:top}
  .steps li{display:block;overflow:hidden}
  .step-no{float:left;width:40px;margin-right:14px;line-height:40px;text-align:center}
  .faq p{display:block}
  .video{height:0}
}
