/* ===== About Uppick 페이지 ===== */
body {
  background: #ffffff;
  color: #202020;
}

.ab {
  min-height: 100dvh;
  display: flex;
  flex-direction: column;
}

/* 헤더 */
.ab-header {
  flex: none;
  width: 100%;
  height: 84px;
  padding: 0 40px;
  background: #ffffff;
  border-bottom: 1px solid #f0f0f0;
}

.ab-header-inner {
  width: 100%;
  max-width: 1280px;
  height: 100%;
  margin: 0 auto;
  display: flex;
  align-items: center;
}

.ab-logo {
  color: var(--color-blue01);
  font-size: 27px;
  font-weight: 900;
  letter-spacing: -0.025em;
  line-height: 1;
}

/* 본문 */
.ab-body {
  flex: 1;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  padding: clamp(40px, 7vh, 80px) 24px 80px;
}

.ab-page-title {
  color: #202020;
  font-size: clamp(26px, 3vw, 36px);
  font-weight: 800;
  letter-spacing: -0.02em;
  margin-bottom: clamp(28px, 5vh, 48px);
}

.ab-block {
  margin-bottom: clamp(28px, 5vh, 44px);
}

.ab-block h2 {
  color: #202020;
  font-size: clamp(18px, 1.8vw, 23px);
  font-weight: 700;
  letter-spacing: -0.02em;
  line-height: 1.5;
  margin-bottom: 12px;
}

.ab-block p {
  color: #454545;
  font-size: clamp(15px, 1.3vw, 18px);
  font-weight: 400;
  line-height: 1.75;
  letter-spacing: -0.015em;
}

.ab-block p + p {
  margin-top: 12px;
}

.ab-contact {
  margin-top: clamp(32px, 6vh, 56px);
  color: #454545;
  font-size: clamp(15px, 1.3vw, 17px);
}

.ab-contact a {
  color: var(--color-blue01);
  font-weight: 600;
  text-decoration: underline;
}

.ab-back {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  margin-top: 28px;
  height: 52px;
  padding: 0 28px;

  border: 1px solid #6d6d6d;
  border-radius: 999px;

  color: #454545;
  font-size: 16px;
  font-weight: 600;
  transition: background .15s;
}

.ab-back:hover { background: #f6f6f6; }

/* 푸터 (메인과 동일 톤) */
.ab-footer {
  flex: none;
  padding: 28px 40px;
  background: #161616;
}

.ab-footer-wrap {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
}

.ab-footer-about {
  color: #ffffff;
  font-size: 15px;
  font-weight: 600;
}

.ab-footer-copy {
  color: #8a8a8a;
  font-size: 14px;
}

@media (max-width: 1000px) {
  .ab-header { height: 56px; padding: 0 16px; }
  .ab-logo { font-size: 20px; }
  .ab-body { padding: 28px 18px 56px; }
  .ab-footer { padding: 20px 16px; }
  .ab-footer-wrap { flex-direction: column; gap: 6px; text-align: center; }
}
