/* 메인 패키지/단과 강좌 — 모바일(≤834) Swiper 중앙 정렬 전용
   PC(≥835)는 기존 bxSlider/정적 레이아웃(contents.css)을 그대로 사용 */

.course-swiper-nav {
	display: none;
	align-items: center;
	justify-content: center;
	gap: 6px;
	margin-top: 10px;
}
.course-swiper-nav__btn {
	width: 34px;
	height: 28px;
	border: 1px solid #d5dbe6;
	border-radius: 10px;
	background: #fff;
	color: #475569;
	font-size: 16px;
	line-height: 1;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	cursor: pointer;
	transition: border-color .2s ease, color .2s ease;
}
.course-swiper-nav__btn:hover { border-color: #94a3b8; color: #1e293b; }
.course-swiper-nav__btn.swiper-button-disabled { opacity: .35; cursor: default; }
.course-swiper-nav__icon { display: inline-block; line-height: 1; }

@media (min-width: 835px) {
	.course-swiper-nav {
		display: none !important;
	}
}

@media (max-width: 834px) {
	/* 패키지(section_bg)와 단과(section_pad) 하단 여백 맞춤 */
	.section-new-subject > .section_bg {
		padding-bottom: 40px;
	}
	.section-new-subject > .section.section_pad {
		margin-bottom: 0;
		position: relative;
		z-index: 3;
		/* 단과: 바깥 .section 패딩/클리핑이 슬라이더를 가두지 않도록 */
		overflow: visible !important;
	}
	.course-swiper-nav {
		position: relative;
		z-index: 5;
		display: flex;
		margin-top: 16px;
		margin-bottom: 8px;
	}

	/* 합격수기처럼 peek가 화면 끝까지 — 내부 .section 좌우 패딩·overflow 해제 */
	#wrapmain .section-new-subject .section-best-subject > .section,
	.section-new-subject .section-best-subject > .section {
		padding-left: 0 !important;
		padding-right: 0 !important;
		overflow: visible !important;
		max-width: 100% !important;
		width: 100% !important;
	}

	.section-best-subject .course_1Wrap .courseBox,
	.section-best-subject .course_2Wrap .courseBox,
	.section-new-subject .course_1Wrap .courseBox,
	.section-new-subject .course_2Wrap .courseBox {
		width: 100%;
		overflow: visible;
	}

	/* 단과 바깥 .section 패딩(8px)까지 뚫고 뷰포트 full-bleed */
	.section-best-subject .course-swiper-wrap,
	.section-new-subject .course-swiper-wrap {
		position: relative;
		width: 100vw;
		max-width: 100vw;
		margin-left: calc(50% - 50vw);
		margin-right: calc(50% - 50vw);
		box-sizing: border-box;
		overflow: visible;
	}

	.section-best-subject .course-swiper-wrap .swiper-course-card,
	.section-new-subject .course-swiper-wrap .swiper-course-card {
		overflow: hidden;
		width: 100%;
		/* 카드 하단 그림자만 안쪽에 수용 (양옆 peek는 유지) */
		padding-bottom: 12px;
		margin-bottom: -4px;
	}

	.section-best-subject .course-swiper-wrap .swiper-wrapper,
	.section-new-subject .course-swiper-wrap .swiper-wrapper {
		align-items: stretch;
	}

	.section-best-subject .course-swiper-wrap .course_1Slider > li,
	.section-best-subject .course-swiper-wrap .course_2Slider > li,
	.section-new-subject .course-swiper-wrap .course_1Slider > li,
	.section-new-subject .course-swiper-wrap .course_2Slider > li {
		float: none;
		margin-right: 0;
		margin-bottom: 0;
		width: auto;
		flex: none;
		max-width: none;
		padding: 0;
		box-sizing: border-box;
		height: auto;
	}

	.section-best-subject .course-swiper-wrap .swiper-slide,
	.section-new-subject .course-swiper-wrap .swiper-slide {
		/* 너비는 Swiper slidesPerView(1.15)가 계산 — CSS로 덮어쓰지 않음 */
		height: auto;
		box-sizing: border-box;
		display: flex;
		align-items: flex-start;
		min-width: 0;
		padding: 6px 0 10px !important;
	}

	.section-best-subject .course-swiper-wrap .swiper-slide .bs-source-subjcet,
	.section-new-subject .course-swiper-wrap .swiper-slide .bs-source-subjcet {
		height: auto !important;
		width: 100%;
		min-width: 0;
	}

	.section-best-subject .course-swiper-wrap .swiper-slide .bs-source-subjcet > ul > li,
	.section-new-subject .course-swiper-wrap .swiper-slide .bs-source-subjcet > ul > li {
		width: 100%;
		float: none;
		margin: 0;
	}

	.section-best-subject .course-swiper-wrap .swiper-slide .ns-ss-all,
	.section-new-subject .course-swiper-wrap .swiper-slide .ns-ss-all,
	.section-best-subject .course-swiper-wrap .swiper-slide .bs-ss-all,
	.section-new-subject .course-swiper-wrap .swiper-slide .bs-ss-all {
		width: 100%;
		max-width: none;
		margin: 0;
		box-sizing: border-box;
	}

	/* 기존 course_2 FOUC 규칙이 Swiper 슬라이드를 가리지 않도록 */
	.course_2Wrap .course-swiper-wrap .course_2Slider > li,
	.course_2Wrap .course-swiper-wrap .course_2Slider > li:not(:first-child),
	.course_1Wrap .course-swiper-wrap .course_1Slider > li,
	.course_1Wrap .course-swiper-wrap .course_1Slider > li:not(:first-child) {
		display: flex !important;
		visibility: visible !important;
		opacity: 1 !important;
	}
	.course_2Wrap .course-swiper-wrap,
	.course_1Wrap .course-swiper-wrap,
	.course_2Wrap.course_2--ready .courseBox,
	.course_1Wrap .courseBox {
		opacity: 1 !important;
		visibility: visible !important;
		overflow: visible !important;
		pointer-events: auto !important;
		min-height: 0 !important;
	}
}
