@font-face { font-family: 'SUIT'; src: url('https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT-Light.woff2') format('woff2'); font-weight: 300; font-display: swap; }
@font-face { font-family: 'SUIT'; src: url('https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT-Regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'SUIT'; src: url('https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT-Medium.woff2') format('woff2'); font-weight: 500; font-display: swap; }
@font-face { font-family: 'SUIT'; src: url('https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT-SemiBold.woff2') format('woff2'); font-weight: 600; font-display: swap; }
@font-face { font-family: 'SUIT'; src: url('https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT-Bold.woff2') format('woff2'); font-weight: 700; font-display: swap; }
@font-face { font-family: 'SUIT'; src: url('https://cdn.jsdelivr.net/gh/sun-typeface/SUIT@2/fonts/static/woff2/SUIT-ExtraBold.woff2') format('woff2'); font-weight: 800; font-display: swap; }
@font-face { font-family: 'Pretendard'; src: url('https://cdn.jsdelivr.net/npm/pretendard@1.3.9/dist/web/static/woff2/Pretendard-Regular.woff2') format('woff2'); font-weight: 400; font-display: swap; }
@font-face { font-family: 'Pretendard'; src: url('https://cdn.jsdelivr.net/npm/pretendard@1.3.9/dist/web/static/woff2/Pretendard-Medium.woff2') format('woff2'); font-weight: 500; font-display: swap; }

/* =====================
   CSS Variables / Reset
   (K-skill 프로젝트 css/landing.css에서 이 사이트가 실제로 쓰는 변수만 가져옴)
===================== */
:root {
  --blue: #02a590;
  --black: #050505;
  --dark: #191919;
  --darker: #0f0f0f;
  --white: #ffffff;
  --gray: #888888;
  --body-bg: var(--white);
  --max-w: 1440px;
  --pad-x: clamp(24px, 5vw, 120px);
  --transition: 0.4s cubic-bezier(0.25, 0.46, 0.45, 0.94);
}

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }

html {
  font-size: 16px;
  scroll-behavior: smooth;
}

body {
  font-family: 'SUIT', -apple-system, BlinkMacSystemFont, sans-serif;
  font-weight: 400;
  color: var(--black);
  background: var(--body-bg);
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

img, video { max-width: 100%; display: block; }

/* =====================
   Footer
===================== */
#footer {
  position: relative;
  z-index: 2;
  background: var(--darker);
  padding: clamp(40px, 4.17vw, 80px) clamp(24px, 13.5vw, 120px);
}
.footer-inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 10px;
  width: 100%;
}
.footer-logo {
  display: flex;
  align-items: center;
  height: 50px;
}
.footer-logo img {
  width: auto;
  height: 32px;
}
.footer-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  gap: 24px;
  flex-wrap: wrap;
}
.footer-sub {
  font-family: 'SUIT', sans-serif;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.8;
  color: rgba(255, 255, 255, 0.65);
}
.footer-copy {
  font-family: 'Pretendard', 'SUIT', sans-serif;
  font-size: 12px;
  font-weight: 400;
  line-height: 1.19;
  color: rgba(255, 255, 255, 0.5);
}

/* =====================
   Back to Top
===================== */
#back-top {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 999;
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.9);
  backdrop-filter: blur(5px);
  -webkit-backdrop-filter: blur(5px);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 4px;
  cursor: pointer;
  border: none;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s, transform 0.3s;
}
#back-top.visible {
  opacity: 1;
  pointer-events: all;
}
#back-top:hover { transform: translateY(-3px); }
.back-top-icon {
  width: 18px;
  height: 19px;
  transition: transform 0.3s ease;
}
#back-top:hover .back-top-icon {
  transform: translateY(-2px);
}
.back-top-label {
  font-family: 'SUIT', sans-serif;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 1px;
  text-transform: uppercase;
  color: var(--white);
  line-height: 1;
  max-height: 0;
  opacity: 0;
  overflow: hidden;
  transition: opacity 0.3s ease, max-height 0.3s ease;
}
#back-top:hover .back-top-label {
  opacity: 1;
  max-height: 14px;
}

/* =====================
   준비중 화면 (요금제 / 도입문의)
===================== */
.coming-soon {
  min-height: 70vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  gap: 16px;
  padding: 140px 24px 80px;
}
.coming-soon-eyebrow {
  font-size: clamp(13px, 1.2vw, 15px);
  font-weight: 600;
  color: var(--blue);
  letter-spacing: 0.02em;
}
.coming-soon-title {
  font-size: clamp(28px, 4vw, 42px);
  font-weight: 700;
  color: var(--black);
}
.coming-soon-desc {
  font-size: clamp(15px, 1.6vw, 18px);
  color: var(--gray);
  line-height: 1.6;
  max-width: 480px;
}
.coming-soon-actions {
  margin-top: 12px;
}

@media (max-width: 768px) {
  .footer-bottom { flex-direction: column; align-items: flex-start; }
}
