/* iWebple Footer v1.8.2 — 새 푸터 모양 (s2 ~ s8)
   기본 모양(.iwf-footer)과 섞이지 않게 독립 클래스(.iwfx · .iwfx-sN). 이 파일은 새 모양을 고른 사이트에서만 실린다.
   글자 크기 · 색은 기본 모양과 같은 변수(1.7.1)를 읽는다:
     --iwf-bg · --iwf-tx · --iwf-maxw · --iwf-hi(강조 · 기본 흰색) · --iwf-cta-bg · --iwf-cta-fg
     --iwf-vsz · --iwf-lbsz · --iwf-botsz · --iwf-introsz (+ 모바일 *-mo → 파일 맨 뒤 768px 미디어쿼리)
   반응형 1024 · 768 기준. 지도는 넣지 않는다. */

.iwfx{
  --iwf-u-vsz:var(--iwf-vsz, 14px);--iwf-u-lbsz:var(--iwf-lbsz, 12px);
  --iwf-u-bot:var(--iwf-botsz, 13px);--iwf-u-copy:var(--iwf-botsz, 12.5px);--iwf-u-intro:var(--iwf-introsz, 13px);
  --iwf-u-logoh:var(--iwf-logoh);--iwf-u-cr:var(--iwf-crsz, var(--iwf-u-copy));   /* v1.8.1 */
  --iwfx-hi:var(--iwf-hi, #fff);
  --iwfx-line:color-mix(in srgb, var(--iwfx-hi) 14%, transparent);
  background:var(--iwf-bg, #1a1f2b);color:var(--iwf-tx, #c7ccd6);
  font-family:'Pretendard','Noto Sans KR',sans-serif;font-size:14px;line-height:1.7;
  padding:52px 0 34px;
}
.iwfx *,.iwfx *::before,.iwfx *::after{box-sizing:border-box;}
.iwfx-in{max-width:var(--iwf-maxw, 1600px);margin:0 auto;padding:0 4%;}
.iwfx a{color:inherit;text-decoration:none;}
.iwfx p{margin:0;}

/* ---------- 공통 조각 ---------- */
.iwfx-brand{min-width:0;}
.iwfx-logo{display:block;max-height:44px;width:auto;}
/* v1.8.1 로고 높이 (정했을 때만 · has-logoh) — 모양별 기본 크기보다 우선 */
.iwfx.has-logoh .iwfx-logo{height:var(--iwf-u-logoh, auto);max-height:var(--iwf-u-logoh, 44px);width:auto;max-width:100%;}
.iwfx-logo-text{display:block;font-size:20px;font-weight:800;letter-spacing:.5px;line-height:1.3;color:var(--iwfx-hi);}
/* 로고 클릭 시 로그인 — 링크로 감싸도 모양은 그대로 (기본 모양과 같은 규칙) */
.iwfx-logo-link,.iwfx-logo-link:hover,.iwfx-logo-link:focus,.iwfx-logo-link:active{display:block;width:fit-content;max-width:100%;color:inherit;text-decoration:none;cursor:auto;opacity:1;border:0;box-shadow:none;background:none;-webkit-tap-highlight-color:transparent;}
.iwfx-intro{margin-top:12px;font-size:var(--iwf-u-intro);opacity:.85;}

.iwfx-info{display:flex;flex-direction:column;gap:6px;}
.iwfx-row{display:flex;gap:12px;align-items:flex-start;}
.iwfx-lb{flex:0 0 max(56px, calc(var(--iwf-u-lbsz) * 4.67));font-size:var(--iwf-u-lbsz);font-weight:700;letter-spacing:.04em;color:var(--iwfx-hi);opacity:.55;white-space:nowrap;padding-top:1px;}
.iwfx-val{flex:1;min-width:0;font-size:var(--iwf-u-vsz);opacity:.92;}
/* 한 줄 정보 — 항목을 이어서, 항목명은 작게 */
.iwfx-info--inline{flex-direction:row;flex-wrap:wrap;gap:4px 22px;}
.iwfx-info--inline .iwfx-row{gap:8px;}
.iwfx-info--inline .iwfx-lb{flex:none;}
.iwfx-info--inline .iwfx-val{flex:none;}

.iwfx-links{display:flex;flex-wrap:wrap;align-items:center;gap:4px 22px;}
.iwfx-links a,.iwfx-links .iwfx-pol{
  position:relative;font-size:var(--iwf-u-bot);font-weight:500;color:var(--iwf-tx, #c7ccd6);opacity:.85;transition:opacity .2s,color .2s;
}
.iwfx-links .iwfx-pol{appearance:none;-webkit-appearance:none;background:none;border:0;padding:0;margin:0;font-family:inherit;line-height:inherit;cursor:pointer;}
/* 첫 약관(개인정보처리방침 등)은 굵게 · 강조색 — 공공 사이트 관례 */
.iwfx-links .iwfx-pol:first-child{font-weight:700;color:var(--iwfx-hi);opacity:1;}
.iwfx-links a:hover,.iwfx-links .iwfx-pol:hover{opacity:1;color:var(--iwfx-hi);}
.iwfx-links > *:not(:last-child)::after{content:'';position:absolute;right:-11px;top:50%;width:1px;height:11px;transform:translateY(-50%);background:color-mix(in srgb, var(--iwfx-hi) 25%, transparent);}

.iwfx-copy{font-size:var(--iwf-u-copy);opacity:.6;letter-spacing:.01em;}
/* v1.8.1 제작사 표기 — 오른쪽 = 같은 줄 오른쪽 끝 · 아래 = 카피라이트 밑. 모양마다 정렬만 맞춘다 */
/* ★ v1.8.2 자리 — pair(s3 · s6 · s7): 카피라이트 줄 끝에 나란히 · foot(s2 · s4 · s5): 맨 아래 마무리 줄(카피라이트 왼쪽 · 표기 오른쪽 끝)
   center(s8) · 아래: 카피라이트 바로 밑(같은 시작선 · s8 은 가운데) */
.iwfx-copyline--right{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:flex-end;gap:4px 14px;}
.iwfx-copyline--below{display:flex;flex-direction:column;align-items:flex-start;gap:4px;}
.iwfx-foot{display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 18px;margin-top:24px;padding-top:16px;border-top:1px solid var(--iwfx-line);}
.iwfx-foot .iwfx-credit{margin-left:auto;}
/* 색 — 테마 a 규칙에 지지 않게 .iwfx 범위로 · 안쪽 요소까지 같은 색 */
.iwfx .iwfx-credit,.iwfx .iwfx-credit:link,.iwfx .iwfx-credit:visited,.iwfx .iwfx-credit *{color:inherit;text-decoration:none;}
.iwfx .iwfx-credit{font-size:var(--iwf-u-cr);opacity:.6;letter-spacing:.01em;white-space:nowrap;transition:opacity .2s,color .2s;}
.iwfx .iwfx-credit.has-c,.iwfx .iwfx-credit.has-c:link,.iwfx .iwfx-credit.has-c:visited{color:var(--iwf-crc);opacity:1;}
.iwfx .iwfx-credit:hover,.iwfx .iwfx-credit:focus-visible{color:var(--iwfx-hi);opacity:1;}

.iwfx-sns{display:flex;flex-wrap:wrap;gap:10px;}
.iwfx-sns a{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;
  background:color-mix(in srgb, var(--iwfx-hi) 8%, transparent);color:var(--iwf-tx, #c7ccd6);transition:background .2s,color .2s;}
.iwfx-sns a:hover{background:color-mix(in srgb, var(--iwfx-hi) 18%, transparent);color:var(--iwfx-hi);}

.iwfx-cta{display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 22px;border-radius:999px;white-space:nowrap;
  background:var(--iwf-cta-bg, var(--iwfx-hi));color:var(--iwf-cta-fg, #1a1f2b) !important;font-size:14px;font-weight:700;transition:opacity .2s,transform .2s;}
.iwfx-cta:hover{opacity:.9;transform:translateY(-1px);}
.iwfx-cta-arr{font-size:13px;}

.iwfx-jump{position:relative;flex:0 1 auto;}
.iwfx-jump-sel{
  -webkit-appearance:none;-moz-appearance:none;appearance:none;display:block;width:100%;min-width:170px;max-width:240px;height:42px;padding:0 38px 0 18px;
  border:1.5px solid color-mix(in srgb, var(--iwfx-hi) 45%, transparent);border-radius:6px;background:transparent;color:var(--iwfx-hi);
  font-family:inherit;font-size:14px;font-weight:600;line-height:1.2;cursor:pointer;outline:none;transition:border-color .2s,background .2s;
}
.iwfx-jump-sel:hover{border-color:var(--iwfx-hi);background:color-mix(in srgb, var(--iwfx-hi) 8%, transparent);}
.iwfx-jump-sel:focus-visible{border-color:var(--iwfx-hi);box-shadow:0 0 0 3px color-mix(in srgb, var(--iwfx-hi) 18%, transparent);}
.iwfx-jump-sel option{color:#1a1f2b;background:#fff;}
.iwfx-jump-arr{position:absolute;right:16px;top:50%;width:8px;height:8px;margin-top:-6px;pointer-events:none;
  border-right:1.5px solid color-mix(in srgb, var(--iwfx-hi) 75%, transparent);border-bottom:1.5px solid color-mix(in srgb, var(--iwfx-hi) 75%, transparent);transform:rotate(45deg);}

/* =========================================================
   s2 한 줄 띠 — 얇은 정보 줄 + 로고 · 링크 · 카피라이트 · (SNS · 버튼 · 패밀리사이트) 한 줄
   ========================================================= */
.iwfx-s2{padding:26px 0 26px;}
.iwfx-s2-info{padding-bottom:16px;margin-bottom:18px;border-bottom:1px solid var(--iwfx-line);}
.iwfx-s2-bar{display:flex;align-items:center;gap:16px 30px;flex-wrap:wrap;}
.iwfx-s2 .iwfx-logo{max-height:34px;}
.iwfx-s2 .iwfx-logo-text{font-size:17px;}
.iwfx-s2 .iwfx-copy{flex:1 1 auto;min-width:0;}
.iwfx-s2 .iwfx-copyline--below{flex:1 1 auto;min-width:0;}
.iwfx-s2 .iwfx-foot{margin-top:16px;padding-top:12px;}
.iwfx-s2-end{display:flex;align-items:center;gap:12px;margin-left:auto;flex-wrap:wrap;}
.iwfx-s2 .iwfx-cta,.iwfx-s2 .iwfx-jump-sel{height:38px;}

/* =========================================================
   s3 오른쪽 정렬 — 왼쪽 로고 · 패밀리사이트 / 오른쪽 링크 · SNS · 정보 · 카피라이트를 오른쪽 끝에
   ========================================================= */
.iwfx-s3 .iwfx-in{display:flex;justify-content:space-between;gap:40px 60px;}
.iwfx-s3-l{flex:0 0 auto;display:flex;flex-direction:column;gap:22px;max-width:320px;}
.iwfx-s3-r{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:flex-end;gap:16px;text-align:right;}
.iwfx-s3-r .iwfx-links{justify-content:flex-end;}
.iwfx-s3-act{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end;}
.iwfx-s3 .iwfx-info{align-items:flex-end;}
.iwfx-s3 .iwfx-row{justify-content:flex-end;}
.iwfx-s3 .iwfx-lb{flex:none;}
.iwfx-s3 .iwfx-val{flex:none;}
/* 오른쪽 맞춤 칸(s3 · s6 · s7) 안의 「아래」 묶음 — 묶음은 오른쪽 끝, 안은 카피라이트와 같은 시작선 */

/* =========================================================
   s4 사이트맵 펼침 — 위 상단 메뉴 칸별 · 오른쪽 패밀리사이트 / 선 아래 로고 · 정보 · 링크
   ========================================================= */
.iwfx-s4-top{display:flex;justify-content:space-between;gap:30px 50px;padding-bottom:34px;margin-bottom:28px;border-bottom:1px solid var(--iwfx-line);}
.iwfx-map{flex:1 1 0;min-width:0;display:grid;grid-template-columns:repeat(auto-fill, minmax(130px, 1fr));gap:22px 30px;}
.iwfx-map-t{font-size:15px;font-weight:700;color:var(--iwfx-hi);margin-bottom:12px !important;}
.iwfx-map ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px;}
.iwfx-map li a{font-size:calc(var(--iwf-u-bot) + 0px);opacity:.75;transition:opacity .2s,color .2s;}
.iwfx-map a:hover{opacity:1;color:var(--iwfx-hi);}
.iwfx-s4-side{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:12px;}
.iwfx-s4-bot{display:flex;align-items:flex-start;gap:20px 40px;flex-wrap:wrap;}
.iwfx-s4-mid{flex:1 1 360px;min-width:0;display:flex;flex-direction:column;gap:10px;}
.iwfx-s4-end{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:14px;}

/* =========================================================
   s5 로고 줄 + 3칸 — 맨 위 로고 · 문의 버튼 / 선 아래 정보 · 링크 · 패밀리사이트
   ========================================================= */
.iwfx-s5-head{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:24px;margin-bottom:26px;border-bottom:1px solid var(--iwfx-line);}
.iwfx-s5 .iwfx-intro{max-width:520px;}
.iwfx-s5-body{display:grid;grid-template-columns:minmax(0, 1.6fr) minmax(0, 1fr) auto;gap:24px 40px;align-items:start;}
.iwfx-s5-a{display:flex;flex-direction:column;gap:14px;}
.iwfx-s5-b .iwfx-links{gap:8px 22px;}
.iwfx-s5-c{display:flex;flex-direction:column;align-items:flex-end;gap:14px;}

/* =========================================================
   s6 두 단 띠 — 밝은 윗단(링크 · 패밀리사이트 · SNS) / 바탕색 아랫단(로고 · 주소 · 카피라이트)
   윗단은 바탕색을 아주 옅게 섞은 밝은 색 · 글자는 바탕색(진하게) — 아랫단은 예전처럼 바탕색 · 글자색
   ========================================================= */
.iwfx-s6{padding:0;}
.iwfx-s6-up{background:color-mix(in srgb, var(--iwf-bg, #1a1f2b) 5%, #fff);color:var(--iwf-bg, #1a1f2b);border-top:1px solid color-mix(in srgb, var(--iwf-bg, #1a1f2b) 10%, #fff);}
.iwfx-s6-upin,.iwfx-s6-downin{max-width:var(--iwf-maxw, 1600px);margin:0 auto;padding:0 4%;}
.iwfx-s6-upin{display:flex;align-items:center;justify-content:space-between;gap:12px 30px;flex-wrap:wrap;padding-top:18px;padding-bottom:18px;}
.iwfx-s6-up .iwfx-links a,.iwfx-s6-up .iwfx-links .iwfx-pol{color:var(--iwf-bg, #1a1f2b);opacity:.75;}
.iwfx-s6-up .iwfx-links .iwfx-pol:first-child{color:var(--iwf-bg, #1a1f2b);opacity:1;}
.iwfx-s6-up .iwfx-links a:hover,.iwfx-s6-up .iwfx-links .iwfx-pol:hover{color:var(--iwf-bg, #1a1f2b);opacity:1;}
.iwfx-s6-up .iwfx-links > *:not(:last-child)::after{background:color-mix(in srgb, var(--iwf-bg, #1a1f2b) 25%, transparent);}
.iwfx-s6-end{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
.iwfx-s6-up .iwfx-jump-sel{color:var(--iwf-bg, #1a1f2b);border-color:color-mix(in srgb, var(--iwf-bg, #1a1f2b) 30%, transparent);height:38px;}
.iwfx-s6-up .iwfx-jump-arr{border-color:color-mix(in srgb, var(--iwf-bg, #1a1f2b) 60%, transparent);}
.iwfx-s6-up .iwfx-sns a{background:color-mix(in srgb, var(--iwf-bg, #1a1f2b) 8%, transparent);color:var(--iwf-bg, #1a1f2b);}
.iwfx-s6-up .iwfx-cta{height:38px;background:var(--iwf-cta-bg, var(--iwf-bg, #1a1f2b));color:var(--iwf-cta-fg, #fff) !important;}
.iwfx-s6-down{padding:34px 0 36px;}
.iwfx-s6-downin{display:flex;align-items:center;justify-content:space-between;gap:20px 50px;flex-wrap:wrap;}
.iwfx-s6-txt{display:flex;flex-direction:column;align-items:flex-end;gap:8px;text-align:right;}
.iwfx-s6 .iwfx-info--inline{justify-content:flex-end;}

/* =========================================================
   s7 둥근 패널 — 위 모서리 둥근 큰 패널 (바탕은 패널, 패널 밖은 투명) · 위 로고 · 정보 / 오른쪽 패밀리사이트 · 카피라이트 / 선 아래 링크 · SNS
   ========================================================= */
.iwfx-s7{background:transparent;padding:0;}
.iwfx-s7 .iwfx-in{padding:0;max-width:none;}
.iwfx-s7-panel{background:var(--iwf-bg, #1a1f2b);border-radius:clamp(24px, 3vw, 48px) clamp(24px, 3vw, 48px) 0 0;padding:52px max(4%, calc((100% - var(--iwf-maxw, 1600px)) / 2 + 2%)) 36px;}
.iwfx-s7-top{display:flex;justify-content:space-between;gap:30px 60px;padding-bottom:28px;}
.iwfx-s7-l{display:flex;flex-direction:column;gap:18px;min-width:0;}
.iwfx-s7-r{flex:0 0 auto;display:flex;flex-direction:column;align-items:flex-end;gap:14px;}
.iwfx-s7 .iwfx-jump-sel{border-radius:999px;}
.iwfx-s7-bot{display:flex;align-items:center;justify-content:space-between;gap:14px 30px;flex-wrap:wrap;padding-top:22px;border-top:1px solid var(--iwfx-line);}

/* =========================================================
   s8 가운데 정렬 — 한 줄씩 가운데
   ========================================================= */
.iwfx-s8 .iwfx-in{display:flex;flex-direction:column;align-items:center;gap:18px;text-align:center;}
.iwfx-s8 .iwfx-logo-link{margin:0 auto;}
.iwfx-s8 .iwfx-logo{margin:0 auto;}
.iwfx-s8 .iwfx-intro{max-width:640px;margin-left:auto;margin-right:auto;}
.iwfx-s8 .iwfx-links{justify-content:center;}
.iwfx-s8 .iwfx-info--inline{justify-content:center;}
.iwfx-s8-act{display:flex;align-items:center;justify-content:center;gap:12px;flex-wrap:wrap;}
.iwfx-s8 .iwfx-copy{padding-top:16px;border-top:1px solid var(--iwfx-line);width:100%;}
.iwfx-s8 .iwfx-copyline--below{align-items:center;width:100%;padding-top:16px;border-top:1px solid var(--iwfx-line);}
.iwfx-s8 .iwfx-copyline--below .iwfx-copy{padding-top:0;border-top:0;width:auto;}

/* =========================================================
   반응형
   ========================================================= */
@media (max-width:1024px){
  .iwfx-s3 .iwfx-in{gap:30px 36px;}
  .iwfx-s4-top{flex-direction:column;}
  .iwfx-s4-side{flex-direction:row;align-items:center;flex-wrap:wrap;}
  .iwfx-s5-body{grid-template-columns:minmax(0, 1fr) minmax(0, 1fr);}
  .iwfx-s5-c{grid-column:1 / -1;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;}
  .iwfx-s7-top{flex-direction:column;}
  .iwfx-s7-r{align-items:flex-start;}
}
@media (max-width:768px){
  .iwfx{padding:40px 0 28px;}
  .iwfx-row{flex-direction:column;gap:2px;}
  .iwfx-lb{flex:none;}
  .iwfx-info--inline{flex-direction:column;gap:6px;}
  .iwfx-jump-sel{max-width:none;}
  .iwfx-links{gap:4px 18px;}
  .iwfx-links > *:not(:last-child)::after{right:-9px;}
  /* v1.8.1 제작사 표기 — 오른쪽 → 아래로 (가운데 정렬 모양은 가운데) */
  /* v1.8.2 오른쪽 → 카피라이트 아래 왼쪽 정렬 (s8 은 가운데 그대로) */
  .iwfx-copyline--right{flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:4px;}
  .iwfx-foot{flex-direction:column;align-items:flex-start;gap:4px;margin-top:20px;}
  .iwfx-foot .iwfx-credit{margin-left:0;}
  /* s2 */
  .iwfx-s2{padding:28px 0;}
  .iwfx-s2-bar{flex-direction:column;align-items:flex-start;gap:14px;}
  .iwfx-s2-end{margin-left:0;width:100%;}
  /* s3 — 한 칸으로 · 왼쪽 정렬 */
  .iwfx-s3 .iwfx-in{flex-direction:column;}
  .iwfx-s3-l{max-width:none;}
  .iwfx-s3-r{align-items:flex-start;text-align:left;}
  .iwfx-s3-r .iwfx-links,.iwfx-s3-act,.iwfx-s3 .iwfx-row{justify-content:flex-start;}
  .iwfx-s3 .iwfx-info{align-items:flex-start;}
  /* s4 — 사이트맵 두 칸 */
  .iwfx-map{grid-template-columns:repeat(2, minmax(0, 1fr));gap:20px;}
  .iwfx-s4-bot{flex-direction:column;}
  .iwfx-s4-mid{flex-basis:auto;}
  .iwfx-s4-end{align-items:flex-start;}
  /* s5 */
  .iwfx-s5-head{flex-direction:column;align-items:flex-start;}
  .iwfx-s5-body{grid-template-columns:minmax(0, 1fr);}
  /* s6 */
  .iwfx-s6-upin{flex-direction:column;align-items:flex-start;}
  .iwfx-s6-down{padding:28px 0 30px;}
  .iwfx-s6-downin{flex-direction:column;align-items:flex-start;}
  .iwfx-s6-txt{align-items:flex-start;text-align:left;}
  .iwfx-s6 .iwfx-info--inline{justify-content:flex-start;}
  /* s7 */
  .iwfx-s7-panel{padding:36px 6% 28px;border-radius:24px 24px 0 0;}
  .iwfx-s7-bot{flex-direction:column;align-items:flex-start;}
  /* s8 */
  .iwfx-s8 .iwfx-info--inline{align-items:center;}
  .iwfx-s8 .iwfx-row{align-items:center;}
}

/* 모바일(768px 이하) 글자 크기 — 기본 모양과 같은 규칙, 파일 맨 뒤(1.7.1) */
@media (max-width:768px){
  .iwfx{
    --iwf-u-vsz:var(--iwf-vsz-mo, var(--iwf-vsz, 14px));
    --iwf-u-lbsz:var(--iwf-lbsz-mo, var(--iwf-lbsz, 12px));
    --iwf-u-bot:var(--iwf-botsz-mo, var(--iwf-botsz, 13px));
    --iwf-u-copy:var(--iwf-botsz-mo, var(--iwf-botsz, 12.5px));
    --iwf-u-intro:var(--iwf-introsz-mo, var(--iwf-introsz, 13px));
    --iwf-u-logoh:var(--iwf-logoh-mo, var(--iwf-logoh));                       /* v1.8.1 */
    --iwf-u-cr:var(--iwf-crsz-mo, var(--iwf-crsz, var(--iwf-u-copy)));        /* v1.8.1 */
  }
}
