:root{ 
  /* 더 크게 + 간격 넓게 */ 
  --container:1700px; 
  --maxw:1700px; 
  --cols:5; 
  --gap:50px; 
  --padX:30px; 
  --radius-xl:36px; 
  --radius-pill:250px; 
  
  /* 기본 색 */ 
  --bg:#ffffff; 
  --ink:#111111; 
  --brand:#374151; 
} 

*{box-sizing:border-box} 
html,body{ height:100%; margin:0; /* 푸터 하단 고정 레이아웃 */ 
  display:flex; flex-direction:column; } 
  body{ background:var(--bg); color:var(--ink); font-family:"Pretendard",-apple-system,BlinkMacSystemFont,system-ui,Roboto,"Apple SD Gothic Neo","Malgun Gothic",sans-serif; font-weight:400; line-height:1.45; } 
 
  main{ flex:1; } /* 본문이 늘어나서 푸터를 아래로 밀어냄 */ 
  
  /* Utilities */ 
  .light{font-weight:300}.medium{font-weight:500}.semibold{font-weight:600} 
  .bold{font-weight:700}.extrabold{font-weight:800}.black{font-weight:900} 
  
  .container{width:min(100%,var(--container)); padding-inline:var(--content-padX); margin-inline:auto} 
  
  /* ===== Topbar ===== */ 
  .topbar{ display:flex;align-items:center;justify-content:space-between; 
    padding:15px 70px; width:100%; margin-top:24px; /* 상단에서 아래로 내림 */ 
    margin-bottom:36px; /* 메뉴바와 본문 사이 간격 */ 
  } 
    
    .brand { flex-shrink:0; 
      text-decoration:none; 
      display:flex; 
      align-items:flex-start; 
    } 
    
    .brand img { height: 30px; /* 원하는 크기 */ 
      width: auto; 
    } 
    
    .nav { display:flex; 
      align-items:center; 
      gap:24px; 
      transform: translateX(-15px) ; /* 원하는 만큼만 오른쪽으로 이동 */
    } 
    
    .nav a { text-decoration:none; 
      color:#87909c; /* 기본 회색 */ 
      font-weight:600; transition: color .2s ease; 
    } 
    
    .nav a:hover { color:#111111; /* 마우스 오버 시 검은색 */ 
    } 
    
    .nav a.active { color:#111111; /* 현재 페이지도 분홍색 */ 
    }


/* ===== 구분선 ===== */
.section-divider{
  width:min(100%, var(--container));
  height:1px; background:#e5e7eb; margin:6px auto 16px; opacity:.9;
}

/* ===== Footer ===== */
.footer{ padding-block:12px 20px; margin-top:auto; }
.footer-inner{ display:flex; align-items:flex-end; justify-content:space-between; width:100%; max-width:none; padding:0 40px; }
.footer .addr{ margin-left:50px; color:var(--brand); }
.footer .sns{ margin-right:30px; transform:translateY(-25px); }
.sns img{ margin-left:7px; width:auto; height:23px; display:inline-block; margin-right:20px; object-fit:contain; }
.addr p{ margin:2px 0 6px 0; }
.addr .copy{ margin-top:30px; color:var(--brand); font-size:13px; }

/* 프레임워크 .nav와 충돌 방지용: 부모 스코프 한 단계만 올려서 우선순위 승리 */
.topbar .nav { transform: translateX(-15px); }
