@charset "UTF-8";
/* ==========================================================================
   autobase — 아카데미 반응형 (모든 @media 는 이 파일에만)
   레퍼런스 변수 축소 단계(1680: h4 30 / 1280: 26 / 768: 22, pd2 100 …)를 사이트 브레이크포인트에 맞춤.
   ========================================================================== */

/* ── 1440 이하 ───────────────────────────────────────────────────────── */
@media (max-width: 1440px) {
  .ac-top__slogan { font-size: 38px; }
  .ac-head__tit, .ac-top__about-tit { font-size: 30px; }
  .ac-card__tit { font-size: 26px; }
  .ac-card__list li { font-size: 16px; }
}

/* ── 1200 이하 ───────────────────────────────────────────────────────── */
@media (max-width: 1200px) {
  .ac-curri, .ac-offline { padding: 120px 0; }
  .ac-cert { padding-bottom: 120px; }
  .ac-online, .ac-faq { padding: 100px 0; }
  .ac-card { padding: 28px; }
  .ac-card__list { margin-top: 40px; }
  .ac-step { padding: 28px 28px 0; }
  .ac-step__body { margin-top: 44px; }
  .ac-offitem__row { gap: 0 30px; padding: 28px 20px; }
}

/* ── 1024 이하 : 2단 → 세로 ─────────────────────────────────────────── */
@media (max-width: 1024px) {
  .ac { margin-top: 60px; }
  .ac-top__slogan { font-size: 32px; }
  .ac-head__tit, .ac-top__about-tit { font-size: 26px; }
  .ac-top__about { flex-direction: column; gap: 16px; }
  .ac-top__about-tit { flex-basis: auto; }

  .ac-cards { flex-direction: column; }
  .ac-steps { flex-direction: column; }
  .ac-step__body { margin-top: 28px; }

  .ac-cert__wrap { flex-direction: column; gap: 40px; }
  .ac-cert__list { flex-basis: auto; width: 100%; }

  .ac-online__wrap { flex-direction: column; }
  .ac-online__slider { flex-basis: auto; width: 100%; }

  .ac-offitem__row { grid-template-columns: minmax(0, 40%) minmax(0, 1fr); }
  .ac-offitem__btn { grid-column: 2; justify-self: start; align-self: start; margin-top: 16px; }

  .ac-banner__box { padding-top: 42%; }
  .ac-banner__tit { font-size: 24px; }
}

/* ── 768 이하 : 모바일 ───────────────────────────────────────────────── */
@media (max-width: 768px) {
  .ac { margin-top: 48px; }
  .ac-top__slogan { font-size: 24px; }
  .ac-top__img { margin-top: 20px; padding-top: 56%; border-radius: 16px; }
  .ac-top__about { margin-top: 24px; }
  .ac-head__tit, .ac-top__about-tit { font-size: 22px; }
  .ac-head__txt, .ac-top__txt { font-size: 14px; }
  .ac-top__desc { font-size: 16px; }

  .ac-curri, .ac-offline { padding: 80px 0; }
  .ac-cert { padding-bottom: 80px; }
  .ac-online, .ac-faq { padding: 64px 0; }

  .ac-card { padding: 22px; border-radius: 16px; }
  .ac-card__tit { font-size: 20px; }
  .ac-card__txt { font-size: 14px; }
  .ac-card__list { grid-template-columns: 1fr; gap: 6px; margin-top: 24px; }
  .ac-card__list li { font-size: 14px; }

  .ac-step { padding: 22px 22px 0; border-radius: 16px; }
  .ac-step__tit { font-size: 18px; }
  .ac-dots li { font-size: 14px; }

  .ac-cert__item { padding: 24px 0; }
  .ac-cert__mark { width: 64px; height: 64px; margin-bottom: 18px; font-size: 13px; }
  .ac-cert__tit { font-size: 18px; }
  .ac-cert__txt { font-size: 14px; }

  .ac-ocard__body { padding: 18px; }
  .ac-ocard__tit { font-size: 16px; margin-bottom: 16px; }
  .ac-ocard__cat { margin-top: 16px; }
  .ac-online__ctrl { margin-top: 20px; }

  .ac-offlist { margin-top: 20px; }
  .ac-offitem__row { grid-template-columns: 1fr; gap: 16px 0; padding: 20px 0; }
  .ac-offitem__btn { grid-column: 1; margin-top: 0; font-size: 14px; }
  .ac-offitem__tit { font-size: 18px; }
  .ac-offitem__badges { margin-bottom: 12px; }
  .ac-badge { font-size: 13px; }

  .ac-banner__box { padding-top: 0; min-height: 260px; border-radius: 16px; }
  .ac-banner__txt { max-width: calc(100% - 40px); }
  .ac-banner__tit { font-size: 20px; }
  .ac-banner__sub { font-size: 14px; }
  .ac-banner__txt
  .ac-faqlist { margin-top: 20px; }
  .ac-faqrow { border-radius: 24px; }
  .ac-faqrow.is-open { border-radius: 20px; }
  .ac-faqrow + .ac-faqrow { margin-top: 12px; }
  .ac-faqrow__q { padding: 20px 22px; }
  .ac-faqrow__tit { font-size: 16px; }
  .ac-faqrow__a { padding: 0 22px 20px; font-size: 14px; }
}
