@charset "utf-8";

/* Common Sections */
.section-common {
    padding: 80px 0;
}

.section-bg-light {
    background: var(--bg-light);
}

.section-title {
    position: relative;
	line-height: 1; 
}

.section-title h2 {
	display: flex;
	align-items: center; 
	gap: 4px; 
	
	color: #121212; 
    font-size: 28px;
    font-weight: 600;
}

.section-title h2:after {
	display: block; clear: both; content: ''; 
	
	width: 32px;
	height: 32px; 
}

.section-title p {
    color: #525252;
    font-size: 16px;
}

.section-title .btn-more {
    position: absolute;
    right: 0;
    top: 10px;
    font-size: 14px;
    color: var(--text-muted);
    display: flex;
    align-items: center;
    gap: 5px;
}

.btn-more-wrap {text-align: center; }
.btn-more-wrap .btn-more {
	display: inline-flex; 
	align-items: center; 
	gap: 8px; 
	
	height: 48px; 
	padding: 0 24px; 
	border: 1px solid #E7E9EB;
	border-radius: 50px; 
	background: #FFF; 
	color: #3D3D3D; 
	font-size: 16px; 
	font-weight: 500;
}
.btn-more-wrap .btn-more:after {
	display: block; clear: both; content: ''; 
	width: 14px; height: 10px; 
	background: url('/include/img/icon_main_more.svg') no-repeat center;
}

#onepick .btn-more, #promotion .btn-more {
	box-shadow: 0px 3px 12px 0px rgb(48, 48, 59, 0.06);
}

.category-tabs-wrap {
	display: flex; 
	margin-top: 24px; 
	margin-bottom: 40px; 
	
	overflow: hidden; 
}
.category-tabs {
	display: flex; 
	align-items: center; 
	
	padding: 6px;
	border-radius: 30px; 
	background: #F5F5F7; 
}
.category-tabs .tab-btn {
	height: 44px;
	padding: 0 24px; 
	border: none; 
	border-radius: 30px;
	background: none;
	color: #666; 
	font-family: inherit;
	font-size: 16px; 
	font-weight: 500;
	overflow: hidden; 
	cursor: pointer; 
	
	/* transition: color 0.2s, background 0.2s; */
}
.category-tabs .tab-btn.active {
	background: var(--primary-color);
	color: #FFF; 
}


/** SECTION 1 */
#banner-consult {
    padding: 40px 0;
	background: #EEF1F6;
}

.section-hero {
}

.container-hero {
    display: grid;
    grid-template-columns: 852fr 404fr;
    gap: 24px;
    align-items: stretch;
}

.hero-left {
	width: 100%; 
	aspect-ratio: 872/460;
    border-radius: 20px;
    overflow: hidden;
    box-shadow: 0 15px 35px rgba(0, 0, 0, 0.1);
}

.main-banner-swiper {
    height: 100%;
}
.main-banner-swiper .swiper-slide {
    border-radius: 20px;
	overflow: hidden; 
}
.main-banner-swiper .swiper-slide img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.main-banner-swiper .banner-remote {
	display: flex; 
	align-items: center; 
	
	position: absolute; 
	bottom: 40px;
	left: 40px; 
	height: 40px;
	padding: 0 10px; 
	border-radius: 40px; 
	background: rgb(0,0,0,0.3);
	z-index: 10; 
}
.main-banner-swiper .main-banner-button {
	flex-shrink: 0; 
	display: flex;
	justify-content: center;
	align-items: center; 
	
	width: 20px; 
	height: 20px; 
}
.main-banner-swiper .main-banner-button:before {
	display: block; clear: both; content: ''; 
	width: 7px;
	height: 12px;
}
.main-banner-swiper .main-banner-button.swiper-button-disabled {
}
.main-banner-swiper .main-banner-prev:before {
	background: url('/include/img/icon_main_banner_prev.svg') no-repeat center/ contain;
}

.main-banner-swiper .main-banner-next:before {
	background: url('/include/img/icon_main_banner_next.svg') no-repeat center/ contain;
}

.main-banner-swiper .main-banner-pagination {
	flex-shrink: 0;
	display: flex;
	align-items: center; 
	gap: 4px; 
	
	width: auto; 
	margin-top: -1px; 
	padding: 0 10px; 
	color: #FFF; 
	line-height: 20px; 
	font-size: 15px;
	font-weight: 500; 
}
.main-banner-swiper .main-banner-pagination b {
	font-weight: 500;
}
.main-banner-swiper .main-banner-pagination span {
	opacity: 0.3;
}

.hero-right {
	display: flex;
}

.consult-form-box {
	flex: 1; 
	display: flex; 
    border-radius: 20px;
    background: #FFF;
    box-shadow: 0 6px 24px rgba(48, 48, 59, 0.12);
    /* height: 100%; */ 
    overflow: hidden;
}

.consult-form-box h3 {
	display: flex; 
	align-items: center; 
	gap: 10px; 
	
	margin-bottom: 24px; 
	padding-bottom: 24px; 
	border-bottom: 1px solid #EDEDED;
	color: #242424; 
	line-height: 1; 
	font-size: 18px; 
	font-weight: 600;
}
.consult-form-box h3:before {
	display: block; clear: both; content: ''; 
    flex-shrink: 0;
    width: 30px;
    height: 30px;
    background: url('/include/img/icon_modal_consult_header.svg') no-repeat center/ contain;
}

#heroConsultForm {
	flex: 1; 
	display: flex; 
	flex-direction: column; 
}

.consult-form-box fieldset {
	flex: 1; 
	border: none; 
	padding: 30px 20px 0;
	
}

.consult-form-box p {
    display: none;
}

.btn-submit-hero {
	height: 56px; 
	border: none; 
	background: var(--primary-color);
	color: #FFF; 
	font-size: 16px; 
	font-weight: 600; 
	cursor: pointer;
}


/** SECTION 2 */
#reviews {
	padding-bottom: 70px; 
}
#reviews .section-title h2 {
	margin-bottom: 20px; 
}
#reviews .section-title h2:after {
	background: url('/include/img/icon_main_review_header.svg') no-repeat center/ contain;
}

.review-swiper {
    padding: 46px 0 36px;
}
.js-review-item {
	cursor: pointer; 
}
/* Review Cards (Premium Style) */
.review-card {
    background: var(--white);
    border-radius: 12px;
    overflow: hidden;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
    transition: all 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
    height: 100%;
    display: flex;
    flex-direction: column;
    border: 1px solid rgba(0, 0, 0, 0.03);
    position: relative;
}

/* 이용후기 이미지 영역 - 가시성 강화 */
.review-card .card-img {
    aspect-ratio: 4 / 3;
    min-height: 180px;
    overflow: hidden;
    position: relative;
    background: #f1f5f9;
}

.review-card .card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.5s ease;
    display: block;
}

/* Review Badge Removed (User Request) */

/* 이용후기 텍스트: 차량명 / 내용 / 고객명 구분 */
.review-card .card-body {
    padding: 0 14px;
    display: flex;
    flex-direction: column;
}
.review-card .card-title {
	margin-top: 24px;
	color: #242424; 
	font-size: 16px; 
	font-weight: 600;
	
	display: -webkit-box;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
}
.review-card .card-body .desc {
    font-size: 14px;
    color: #525252;
    line-height: 1.6;
    margin-top: 18px; 
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    min-height: 3.2em;
}
.review-card .card-user {
	display: flex; 
	align-items: center; 
	gap: 12px; 
	
	padding: 22px 0;
}
.review-card .card-user .usr-img {
	flex-shrink: 0;
	width: 42px;
	height: 42px; 
	border-radius: 50px;
	background: url('/include/img/no_profile.svg') no-repeat center /contain;
}
.review-card .card-user .usr-info {}
.review-card .card-user .usr-name {
    margin: 0;
    margin-top: auto;
	
    font-size: 14px;
    color: #3D3D3D;
    font-weight: 500;
}
.review-card .card-user .model-name {
    font-size: 13px;
    color: #666666;
    margin: 0;
}


@keyframes reviewRoll {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}


.review-car {
    font-size: 16px;
    font-weight: 800;
    color: #1e293b;
    margin: 0;
}

.star-rating {
    color: #f59e0b;
    /* Yellow */
    font-size: 13px;
    margin-bottom: 5px;
}

.review-text {
    font-size: 14px;
    color: #4b5563;
    line-height: 1.5;
    margin-bottom: 12px;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    height: 42px;
    /* 2줄 높이 고정 */
}

.review-meta {
    margin-top: auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 12px;
    color: #94a3b8;
    border-top: 1px solid #f1f5f9;
    padding-top: 12px;
}

.review-meta .customer {
    font-weight: 600;
    color: #64748b;
}



/** SECTION 3 */
#onepick {
	background: url('/include/img/bg_main_onepick.png') no-repeat bottom left, linear-gradient(to bottom, #EDF3FF, #D8E5FF); 
}

#onepick .section-title .recommend {
	display: flex; 
	justify-content: center; 
	align-items: center; 
	
	margin-bottom: 24px; 
}
#onepick .section-title .recommend span {
	display: flex;
	justify-content: center; 
	align-items: center;
	
	height: 40px; 
	padding: 0 20px; 
	border-radius: 40px; 
	background: #196EFF; 
	color: #FFF;
	font-size: 18px; 
	font-weight: 600;
}
#onepick .section-title h2 {
	justify-content: center;
	
	text-align: center; 
	color: #242424; 
	font-size: 36px; 
}
#onepick .section-title h2 > span {
	color: var(--primary-color);
}
#onepick .section-title h2:after {
	width: 27px; 
	height: 27px; 
	background: url('/include/img/icon_main_onepick_header.svg') no-repeat center/ contain;
}
#onepick .section-title .prepay {
	display: flex; 
	justify-content: center; 
	align-items: center; 
	
	margin-top: 16px;
}
#onepick .section-title strong {
	display: flex; 
	justify-content: center;
	align-items: center;
	
	color: #AEC2E5; 
	font-size: 14px; 
	font-weight: 500; 
}

.onepick-swiper-wrap {
}
.onepick-swiper {
	padding-top: 36px; 
	padding-bottom: 36px; 
}
.onepick-swiper .swiper-slide {}

/* 이달의 원픽 카드 (디자인 시안: 이미지·브랜드·모델·태그·가격·조건·버튼) */
.onepick-card {
    background: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
    height: 100%;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.3s, transform 0.3s;
}


/* .onepick-card-img {
    position: relative;
    aspect-ratio: 424 / 282;
    min-height: 200px;
    background: #e5e7eb;
    overflow: hidden;
}

.onepick-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
} */
.onepick-card-img {
    position: relative;
	padding: 32px 14px 0; 
    overflow: hidden;
}

.onepick-card-img img {
    width: 100%;
    aspect-ratio: 1280 / 600;
    object-fit: cover;
    display: block;
}

.onepick-card-img .badge {
	display: flex;
	align-items: center; 
	gap: 5px; 
	
	position: absolute; 
	top: 14px; 
	left: 14px;
	
	height: 28px; 
	padding: 0 8px; 
	border-radius: 30px; 
	background: var(--primary-color);
	color: #FFF; 
	
	font-size: 12px; 
	font-weight: 600; 
}
.onepick-card-img .badge:before {
	display: block; clear: both; content: ''; 
	width: 14px; height: 14px;
	background: url('/include/img/icon_quote_cate_onepick.svg') no-repeat center/ contain;
}

.onepick-card-sample .onepick-card-img {
    display: flex;
    align-items: center;
    justify-content: center;
    color: #9ca3af;
    font-size: 14px;
}

.onepick-card-body {
    padding: 24px 20px;
    display: flex;
    flex-direction: column;
}

.onepick-car-model {
	display: flex;
    flex-direction: column;
    align-items: flex-start;
	gap: 8px; 
}
.onepick-car-class {
	flex-shrink: 0; 
	display: flex;
	align-items: center; 
	
	height: 27px; 
	padding: 0 8px; 
	border: 1px solid #E69A44; 
	border-radius: 2px; 
	background: #FFF; 
	color: #F0B36D; 
	font-size: 12px;
	font-weight: 600; 
}
.onepick-brand-model {
	line-height: 1; 
	color: #121212; 
	font-size: 22px;
	font-weight: 600; 
}

.onepick-car-detail {
	margin-top: 18px; 
	color: #525252; 
	font-size: 13px;
}
.onepick-tag-group {
	display: flex;
	align-items: center; 
	gap: 6px; 
	flex-wrap: wrap; 
	margin-top: 16px; 
}
.onepick-tag-group span {
	display: flex;
	justify-content: center;
	align-items: center;
	
	height: 22px;
	padding: 0 6px;
	border-radius: 4px;
	background: #F2F5F8; 
	color: #626E81; 
	font-size: 12px;
}
.onepick-price {
	display: flex; 
	flex-direction: column;
	gap: 20px; 
	
	margin-top: 36px; 
}
.onepick-price dl {
	display: flex;
	justify-content: space-between; 
	align-items: center; 
	gap: 10px; 
	
	line-height: 1; 
	color: #8B8B8B; 
	font-size: 14px; 
	font-weight: 500;
}

.onepick-total dd {
	color: #3D3D3D; 
	font-size: 18px;
	font-weight: 500;
}

.onepick-monthly dd {
	color: var(--primary-color);
	font-size: 20px;
	font-weight: 600;
}
.onepick-btn-wrap {
    margin-top: 32px;
}
.onepick-btn {
    display: block;
    width: 100%;
	line-height: 50px; 
    text-align: center;
    background: var(--primary-color);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    border-radius: 12px;
    border: none;
    transition: background 0.2s;
}


/** SECTION 4 */
#immediate {
}
#immediate .section-title h2:after {
	/* background: url('/include/img/icon_main_immediate_header.svg') no-repeat center/ contain; */
    background: url('/include/img/ico_rocket.webp') no-repeat center/ contain;
}

.immediate-cont {
}
.immediate-swiper {
	width: 100%; 
	margin-top: -36px;
	padding: 36px 0; 
}
.immediate-swiper .swiper-slide {
	display: flex; gap: 24px; 
}
.immediate-swiper .empty_card {flex: 1; }
/* 즉시출고 카드 (디자인 시안: 이미지·브랜드·모델·트림태그·차량가격·조건·구분선·월납·버튼) */
.immediate-card {
	flex: 1; 
    background: var(--white);
    border: 1px solid var(--border-color);
    border-radius: 12px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.04);
    transition: box-shadow 0.3s, transform 0.3s;
}

/* .immediate-card-img {
    position: relative;
    aspect-ratio: 4 / 3;
    min-height: 200px;
    background: #e5e7eb;
    overflow: hidden;
    border-bottom: 1px solid var(--border-color);
}

.immediate-card-img img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.immediate-card-img .brand-img {
	position: absolute; 
	top: 6px; 
	left: 12px; 
	width: 40px;
	height: 40px; 
}
.immediate-card-img .brand-img img {
    object-fit: contain;
} */
 .immediate-card-img {
    position: relative;
	padding: 20px 0; 
    overflow: hidden;
    border-bottom: 1px solid var(--border-color);
}

.immediate-card-img img {
    width: 100%;
    aspect-ratio: 1280 / 600;
    object-fit: cover;
    display: block;
}

.immediate-card-img .brand-img {
	position: absolute; 
	top: 6px; 
	left: 12px;
	
	aspect-ratio: 1 / 1;
	width: 40px;
}
.immediate-card-img .brand-img img {
	width: 100%; 
	height: 100%;
    object-fit: contain;
}

.immediate-card-body {
	flex: 1; 
    display: flex;
    flex-direction: column;
	line-height: 1; 
    padding: 20px 16px;
}

.immediate-car-class {
	color: #525252; 
	font-size: 10px;
	font-weight: 500; 
}

.immediate-brand-model {
	flex: 1; 
	margin-top: 12px;
	color: #121212;
	font-size: 20px; 
	font-weight: 600;
}

.immediate-tag-group {
	display: flex; 
	flex-direction: column;
	gap: 8px; 
	
	margin-top: 16px; 
}
.immediate-tag-row {
	display: flex; 
	align-items: center; 
	gap: 2px; 
	flex-wrap: wrap; 
	
	color: #8B8B8B; 
	font-size: 12px; 
}
.immediate-tag-row hr {
	width: 1px; height: 10px; border: none; background: #DCDEE4; 
}
.immediate-tag-row span {
	flex-shrink: 0; 
}

.immediate-badge-wrap {
	display: flex; 
	
	margin-top: 16px; 
}
.immediate-badge {
	padding: 0 8px; 
	line-height: 18px; 
	border: 1px solid #FF5C2B;
	border-radius: 2px; 
	color: #FF5C2B;
	font-size: 10px; 
	font-weight: 500;
	
}

.immediate-monthly {
	display: flex; 
	justify-content: space-between; 
	align-items: center; 
	
	margin-top: 20px;
	padding-top: 24px; 
	border-top: 1px solid #DCDEE4;
	
    font-size: 14px;
    color: #374151;
}

.immediate-monthly dt {}
.immediate-monthly dd {
	font-size: 20px;
	font-weight: 600; 
}
.immediate-monthly dd span {
	color: var(--primary-color); 
}

.immediate-btn {
    display: block;
    width: 100%;
	line-height: 50px; 
    text-align: center;
    margin-top: 32px;
    background: var(--primary-color);
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    border-radius: 12px;
    border: none;
    transition: background 0.2s;
}

/** SECTION 5 */
#promotion {
	background: #F2F5F9;
}
#promotion h2 {
	margin-bottom: 20px; 
}
#promotion .section-title h2:after {
	background: url('/include/img/icon_main_promotion_header.svg') no-repeat center/ contain;
}

/* Promotion Grid (3-column) */
.promotion-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
	
	padding: 46px 0 36px; 
}

/* Image & Card Utils (Car & Promotion) */
.promotion-item {
    background: var(--white);
    border-radius: 16px;
    overflow: hidden;
    /* ... */
    box-shadow: 0 3px 12px rgba(48, 48, 59, 0.09);
    transition: 0.3s;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.thumb-box {
    aspect-ratio: 2 / 1;
    overflow: hidden;
    background: #f1f5f9;
}

.thumb-box img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.info-box {
    display: flex;
    flex-direction: column;
	
	line-height: normal; 
    padding: 26px 22px 28px;
	color: #121212; 
}
.info-box h3 {
	font-size: 18px; 
	font-weight: 600; 
}
.info-box .content {
	margin-top: 12px; 
	font-size: 14px;
}


/*
* SECTION 6 / SECTION 7 swiper 
*/
.car-swiper {
	margin-top: -36px;
	padding: 36px 0; 
}

.car-card {
    display: flex;
    flex-direction: column;
	
    height: 100%;
	border: 1px solid #EDEDED; 
    border-radius: 12px;
    background: var(--white);
    overflow: hidden;
	
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.05);
    transition: 0.3s;
}
.car-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
}
/* .car-card .card-img {
	position: relative; 
	width: 100%; 
	aspect-ratio: 248 / 165;
}

.car-card img {
	display: block; 
	width: 100%;
	height: 100%;
	object-fit: contain; 
}
.car-card .brand-img {
	position: absolute;
	top: 6px;
	left: 12px;
	
	width: 40px;
	height: 40px;
} */
 .car-card .card-img {
	position: relative; 
	width: 100%;
	/* padding: 32px 14px 0;  */
	padding: 32px 0 0; 
}

.car-card img {
	display: block; 
	width: 100%;
	aspect-ratio: 1280 / 600;
	object-fit: contain; 
}
.car-card .brand-img {
	position: absolute;
	top: 6px;
	left: 12px;
	
	aspect-ratio: 1 / 1;
	width: 40px;
}
.car-card .brand-img img {
	width: 100%; height: 100%; 
}
.car-card .card-body {
	padding: 20px 14px 24px; 
}

.car-brand-model {
	color: #121212;
	font-size: 14px; 
	font-weight: 500;
}
.car-monthly {
	display: flex; 
	justify-content: space-between;
	align-items: center; 
	
	margin-top: 16px; 
}
.car-monthly dt {
	color: #8B8B8B; 
	font-size: 14px; 
	font-weight: 500;
}
.car-monthly dd {
	color: #3D3D3D;
	font-size: 18px;
	font-weight: 600;
}
.car-monthly dd span {
	color: var(--primary-color);
}


/** SECTION 6 */
#price-range {
	padding-bottom: 50px; 
}

#price-range .section-title h2:after {
	background: url('/include/img/icon_main_price_header.svg') no-repeat center/ contain;
}

.price-swiper {
}


/** SECTION 7 */
#brand-category {
	padding-bottom: 70px; 
}
#brand-category .section-title h2:after {
	/* background: url('/include/img/icon_main_brand_header.svg') no-repeat center/ contain; */
    background: url('/include/img/ico_car.webp') no-repeat center/ contain;
    width:40px;
    height:40px;
    margin-top:-10px;
}

.brand-v-swiper {
}


/** SECTION 8 */
#howtouse {
	padding: 70px 0 80px;
	background: #EEF2F9; 
}
#howtouse h2 {
	margin-bottom: 40px; 
	text-align: center; 
	font-size: 24px;
}

.use-content {
	display: flex; 
	/* align-items: center;  */
	gap: 25px; 
}
.use-content .use-card {
	flex: 1; 
	display: flex; 
	flex-direction: column; 
	
	padding: 32px 24px 30px; 
	border-radius: 24px; 
	background: #FFF; 
	overflow: hidden;
}
.use-card .use-card-img {
	max-width: 114px;
	width: 100%; 
	aspect-ratio: 1/1;
	margin: 0 auto; 
}
.use-card .use-card-img img {
	display: block; 
	width: 100%;
	height: 100%; 
	object-fit: cover; 
}
.use-card .use-card-body {
	width: 100%; 
	text-align: center; 
}
.use-card .use-card-step {
	line-height: 1;
	padding: 14px 0;
	border-bottom: 2px solid var(--primary-color);
	color: var(--primary-color);
	font-size: 14px;
	font-weight: 600; 
}
.use-card .use-card-title {
	line-height: 1;
	margin-top: 26px; 
	color: #242424; 
	font-size: 18px; 
	font-weight: 600;
}
.use-card .use-card-content {
	line-height: 1.5;
	margin-top: 20px; 
	color: #242424;
	font-size: 14px;
}

.use-content .arrow {
	width: 19px;
	/* height: 33px;  */
	background: url('/include/img/icon_main_howtouse_arrow.svg') no-repeat center/contain;
}


/** SECTION 9 */
#faq {
	padding-bottom: 50px; 
}

/* 모바일 전용 FAQ 아코디언 - PC에서는 숨김 */
.faq-mo-accordion { display: none; }

/* FAQ - 질문만 기본 표시, 호버 시 답변 노출 + 애니메이션 (클릭 시 FAQ 페이지 해당 탭으로 이동) */
.faq-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px 24px;
	
	padding: 46px 0; 
}

.faq-item-link {
    display: block;
    color: inherit;
    text-decoration: none;
    cursor: pointer;
}

.faq-item {
	border-radius: 12px; 
	background: #F8F9FA; 
	overflow: hidden;
}

.faq-question {
    display: flex;
    align-items: center;
    gap: 6px;
	
    min-height: 64px;
	padding: 10px 24px; 
	color: #242424;
    font-size: 18px;
}

.faq-q {
    flex-shrink: 0;
	font-weight: 600;
}

.faq-question h4 {
	font-weight: 400;
}

.faq-answer {
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.45s ease, opacity 0.35s ease, padding 0.35s ease;
}

.faq-answer p {
    margin: 0;
    padding: 0 22px 22px 72px;
    font-size: 14px;
    line-height: 1.65;
    color: var(--text-muted);
    border-top: 1px solid #f1f5f9;
    padding-top: 14px;
    margin-top: 0;
}


/** SECTION 10 */
#partners {
}
#partners h2 {
	margin-bottom: 17px;
}
#partners .section-title {
	flex-shrink: 0; 
}
#partners .section-title p {
	line-height: normal;
	color: #666; 
	font-size: 15px; 
}
#partners .swiper-navigation {
	display: flex; 
	align-items: center; 
	gap: 16px; 
	margin-top: 50px;
}
#partners .swiper-navigation-button {
	width: 46px;
	height: 46px; 
	border-radius: 50px; 
	box-shadow: 0px 2px 6px 0px rgb(0,0,0,0.12);
	cursor: pointer;
}
#partners .partners-prev {
	background: url('/include/img/partners_prev_arrow.svg') no-repeat center/contain, #FFF;
}
#partners .partners-next {
	background: url('/include/img/partners_next_arrow.svg') no-repeat center/contain, #FFF;
}

.partners-grid {
	display: flex; 
	gap: 50px; 
	
	width: 100%; 
}
.partners-content {
	flex: 1; 
	display: flex; 
	flex-direction: column;
	gap: 12px;
	width: 100%; 
	padding-top: 26px;
	overflow: hidden; 
}
.partners-swiper {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	touch-action: pan-y;
	cursor: grab;
}
.partners-swiper:active {
	cursor: grabbing;
}
.partners-swiper .swiper-slide {
	height: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.partners-swiper .swiper-slide img {
	display: block; 
	width: 100%;
	height: 100%;
	object-fit: contain;
}




/** SECTION 11 */
#contacts {
}
#contacts .section-title {
	display: none;
}

/* Consult Channels */
.consult-channels {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 20px;
}

.channel-btn {
    display: flex;
    gap: 36px;
	
	position: relative; 
	height: 226px; 
	padding: 36px 46px;
    border-radius: 12px;
	background: #F4F5F5; 
}
.channel-btn p {
	color: #666; 
	font-size: 16px; 
	font-weight: 500;
}
.channel-btn h3 {
	display: flex; 
	align-items: center; 
	margin-top: 22px; 
	color: #121212; 
	font-size: 26px; 
	font-weight: 600;
}
.channel-btn i {
	flex-shrink: 0; 
	
	position: absolute; 
	right: 50px; 
	display: block;
	width: 100%;
}
.channel-btn.kakao h3 {
	gap: 10px;
}
.channel-btn.kakao h3:after {
	display: block; clear: both; content: ''; 
	flex-shrink: 0; 
	width: 9px; height: 15px; 
	background: url('/include/img/main_contacts_kakao_arrow.svg') no-repeat center/ contain;
}
.channel-btn.kakao i {
	bottom: 30px; 
	max-width: 104px; 
	aspect-ratio: 104/105;
	
	background: url('/include/img/main_contacts_kakao.svg') no-repeat center/ contain;
}

.channel-btn.phone h3 {
	gap: 6px;
}
.channel-btn.phone h3:before {
	display: block; clear: both; content: ''; 
	flex-shrink: 0; 
	width: 24px; height: 24px; 
	background: url('/include/img/main_contacts_call_icon.svg') no-repeat center/ contain;
}
.channel-btn.phone i {
	bottom: 40px; 
	max-width: 86px;
	aspect-ratio: 86 / 89;
	
	background: url('/include/img/main_contacts_call.svg') no-repeat center/ contain;
}




@media (hover: hover) {
	/* .category-tabs .tab-btn:hover {
		background: var(--primary-color);
		color: #FFF; 
	} */
	
	/** SECTION 2 */
	.review-card:hover {
		transform: translateY(-8px);
		box-shadow: 0 15px 30px rgba(0, 0, 0, 0.12);
	}
	.review-card:hover .card-img img {
		transform: scale(1.08);
	}
	.review-rolling-track:hover {
		animation-play-state: paused;
	}
	
	/** SECTION 3 */
	.onepick-card:hover {
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
		transform: translateY(-4px);
	}
	.onepick-btn:hover {
		background: #1D4ED8;
	}
	
	/** SECTION 4 */
	.immediate-card:hover {
		box-shadow: 0 8px 24px rgba(0, 0, 0, 0.08);
		transform: translateY(-4px);
	}
	.immediate-btn:hover {
		background: #1D4ED8;
	}
	
	/** SECTION 5 */
	.promotion-item:hover {
		transform: translateY(-5px);
		box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1);
	}
	
	
}

@media (max-width: 1199px) {
	.channel-btn {
		justify-content: space-between; 
	}
	.channel-btn i {
		position: static;
	}
}

@media (max-width: 1060px) {
	.immediate-monthly {
		flex-direction: column;
		justify-content: flex-end; 
		align-items: initial; 
		gap: 10px; 
	}
}
@media (max-width: 1024px) {
	/* Common Sections */
	.section-common {
		padding: 40px 0;
	}
	.category-tabs-wrap {
		margin-left: -16px;
		margin-right: -16px; 
	}
	.category-tabs {
        flex-wrap: nowrap;
		gap: 6px; 
        overflow-x: auto;
        overflow-y: hidden;
        -webkit-overflow-scrolling: touch;
        scrollbar-width: none;
		
		padding: 0 16px; 
		border-radius: 0; 
		background: none;
	}
	.category-tabs .tab-btn {
		flex-shrink: 0; 
		background: #F8F9FA; 
	}
	
	/** SECTION 1 */
	#banner-consult {
		padding: 0; 
	}
	.container-hero {
		grid-template-columns: 1fr;
		gap: 26px; 
		padding: 0; 
		padding-bottom: 26px; 
	}
	
	.hero-left {
		aspect-ratio: unset;
		padding: 24px 0; 
		border-radius: 0; 
		background: #FFF;
		
		overflow: hidden;
	}
	
	.main-banner-swiper {
		padding: 0 20px;
		overflow: visible !important;

	}
	
	.main-banner-swiper .swiper-slide {
		aspect-ratio: 350 / 200;
	}
	
	.hero-right {
		padding-left: 20px;
		padding-right: 20px; 
	}
	
	/** SECTION 2 */
	.review-swiper .swiper-slide {
		width: 240px !important; 
	}

	/** SECTION 3 */
	.onepick-swiper-wrap {
		margin-left: -16px;
		margin-right: -16px; 
		/* padding: 20px 0 24px; */
		
		overflow: hidden;
	}
	
	.onepick-swiper {
		padding: 24px 60px 30px;
		overflow: visible !important;
	}
	.onepick-swiper .swiper-slide .onepick-card {
		transform: translateZ(0) scale(0.9);
		opacity: 0.6; 
	}
	.onepick-swiper .swiper-slide-active .onepick-card {
		transform: translateZ(0) scale(1);
		opacity: 1; 
	}
	
	/** SECTION 4 */
	.immediate-swiper {
	}
	.immediate-swiper .swiper-slide {
		/* padding-right: 10px; */ 
		/* height: auto !important; */
	}
	.immediate-swiper .swiper-slide:nth-of-type(2n+1) {
		/* padding-bottom: 24px; */
	}
	
	.immediate-card { 
		height: auto; 
	}
	.immediate-card-body {
	}
	.immediate-btn {
		width: auto; 
		margin-left: -16px; 
		margin-right: -16px; 
		margin-bottom: -20px;
		
		border-radius: 0; 
		
	}
	
	/** SECTION 5 */
	#promotion {
	
	}
	#promotion .section-title {
		text-align: center; 
	}
	#promotion .section-title h2 {
		justify-content: center;
	}
	.promotion-grid {
		grid-template-columns: 1fr;
		gap: 20px; 
		padding: 36px 0 30px; 
	}
	
	/** SECTION 6 */
	#price-range {
		padding: 40px 0; 
		border-bottom: 8px solid #ECEDF0; 
	}
	
	/** SECTION 7 */
	#brand-category {
		padding: 40px 0; 
	}
	
	/** SECTION 8 */
	#howtouse {
		padding: 40px 0; 
	}
	.use-content {
		flex-direction: column; 
		gap: 16px; 
	}
	.use-content .arrow {
		display: none; 
	}
	.use-content .use-card {
		flex-direction: row; 
		align-items: center; 
		gap: 30px; 
		
		padding: 25px 22px;
	}
	.use-card .use-card-img {
		max-width: 74px; 
	}
	.use-card .use-card-body {
		text-align: left;
	}
	.use-card .use-card-step {
		padding: 0; 
		border-bottom: none; 
	}
	.use-card .use-card-title {
		margin-top: 18px; 
	}
	.use-card .use-card-content {
		margin-top: 12px; 
	}
	
	/** SECTION 9 */
	#faq {
		padding: 40px 0; 
		border-bottom: 8px solid #ECEDF0; 
	}
	.faq-grid {
		display: none;
	}
	.faq-mo-accordion {
		display: block;
		padding: 0;
		margin-top: 20px;
	}
	.faq-mo-item {
		border-top: 1px solid #EDEDED;
	}
	.faq-mo-item:first-child {
		border-top: 2px solid #242424;
	}
	.faq-mo-item:last-child {
		border-bottom: 1px solid #EDEDED;
	}
	.faq-mo-btn {
		display: flex;
		align-items: center;
		gap: 6px;
		width: 100%;
		background: none;
		border: none;
		padding: 20px 4px;
		padding-top: 24px;
		text-align: left;
		cursor: pointer;
		font-size: 15px;
		color: #242424;
	}
	#faq .btn-more-wrap {
		display: none;
	}
	.faq-mo-q {
		flex-shrink: 0;
		font-weight: 600;
	}
	.faq-mo-title {
		flex: 1;
		font-weight: 400;
		word-break: keep-all;
	}
	.faq-mo-icon {
		flex-shrink: 0;
		font-size: 20px;
		font-weight: 300;
		line-height: 1;
		color: #888;
		transition: transform 0.25s;
	}
	.faq-mo-item.is-open .faq-mo-icon {
		transform: rotate(45deg);
	}
	.faq-mo-answer {
		overflow: hidden;
		max-height: 0;
		transition: max-height 0.35s ease, padding 0.35s ease;
		padding: 0 4px;
	}
	.faq-mo-item.is-open .faq-mo-answer {
		max-height: 300px;
		padding-bottom: 16px;
	}
	.faq-mo-answer p {
		margin: 0;
		font-size: 14px;
		line-height: 1.65;
		color: #666;
		word-break: keep-all;
	}

	/** SECTION 10 */
	#partners {
		padding-top: 40px; 
	}
	#partners .section-title {
		text-align: center; 
	}
	#partners .section-title p {
		display: none;
	}
	#partners .swiper-navigation {
		display: none; 
	}
	.partners-grid {
		flex-direction: column; 
		gap: 30px; 
	}
	
	
	/** SECTION 11 */
	#contacts {
		padding-top: 60px; 
	}
	.consult-channels {
		grid-template-columns: 1fr;
	}
}

@media (max-width: 768px) {
	.section-title h2 {
		font-size: 22px;
	}
	.section-title h2:after {
		width: 24px; 
		height: 24px; 
	}
	.section-title p {
		font-size: 14px; 
	}
	
	.btn-more-wrap .btn-more {
		height: 42px; 
		padding: 0 20px; 
		line-height: normal; 
		font-size: 12px; 
	}
	
	/** SECTION 1 */
	.main-banner-swiper .banner-remote {
		left: 35px; 
		bottom: 15px; 
		height: 25px; 
	}
	.main-banner-swiper .main-banner-button {
		display: none;
	}
	
	.consult-form-box h3 {
		justify-content: center; 
	}
	.consult-form-box .form-item input[type="text"], 
	.consult-form-box .form-item input[type="tel"] {
		border: none; 
		background: #F8F9FA; 
	}
	
	/** SECTION 2 */
	#reviews h2 {
		margin-bottom: 14px; 
	}
	
	.review-card .card-title {
		margin-top: 22px; 
		font-size: 15px; 
	}
	.review-card .card-body .desc {
		margin-top: 15px; 
		font-size: 12px; 
	}
	.review-card .card-user .usr-img {
		width: 36px; 
		height: 36px; 
	}
	.review-card .card-user .usr-name {
		font-size: 13px; 
	}
	.review-card .card-user .model-name {
		font-size: 12px; 
	}
	
	
	/** SECTION 3 */
	#onepick {
		background-size: 960px auto;
	}
	#onepick .section-title .recommend {
		margin-bottom: 16px; 
	}
	#onepick .section-title .recommend span {
		height: 27px; 
		padding: 0 14px; 
		font-size: 14px;
		font-weight: 500; 
	}
	#onepick .section-title h2 {
		font-size: 22px; 
	}
	#onepick .section-title h2:after {
		width: 16px;
		height: 16px;
	}
	#onepick .section-title {
		margin-top: 10px; 
	}
	#onepick .section-title strong {
		font-size: 11px; 
	}
	
	
	/** SECTION 4 */
	.immediate-card-img {
		aspect-ratio: 170/114;
		min-height: auto; 
	}
	.immediate-card-body {
		padding: 12px 8px;
	}
	.immediate-car-class {
		font-size: 9px; 
	}
	.immediate-brand-model {
		margin-top: 6px;
		font-size: 16px; 
	}
	.immediate-tag-group {
		margin-top: 12px; 
	}
	.immediate-tag-row {
		gap: 7px; 
		font-size: 10px; 
	}
	.immediate-tag-row:nth-of-type(2) {
		flex-direction: column; 
		align-items: flex-start; 
		gap: 8px;
	}
	.immediate-tag-row:nth-of-type(2) hr {
		display: none; 
	}
	.immediate-tag-row h4 {
		height: 8px; 
	}
	
	.immediate-monthly {
		margin-top: 16px; 
		padding-top: 18px; 
	}
	.immediate-monthly dd {
		font-size: 12px;
		font-weight: 500; 
	}
	.immediate-monthly dd span {
		font-size: 14px;
		font-weight: 600; 
	}
	
	.immediate-btn {
		margin-top: 18px; 
		margin-left: -8px; 
		margin-right: -8px; 
		margin-bottom: -12px;
	}
	
	
	/** SECTION 11 */
	#contacts {
		/* padding: 60px 0 180px;  */
        padding: 30px 0 30px; 
	}
	.channel-btn {
		min-height: 130px;
		height: auto; 
		padding: 24px 20px; 
	}
	.channel-btn p {
		font-size: 12px; 
	}
	.channel-btn h3 {
		margin-top: 16px; 
		font-size: 16px; 
	}
	.channel-btn.phone h3:before {
		width: 16px;
		height: 16px; 
	}
	.channel-btn.kakao i {
		max-width: 61px; 
		aspect-ratio: 1 / 1; 
		
	}
	.channel-btn.phone i {
		max-width: 56px; 
		aspect-ratio: 1 / 1; 
	}

    /** SECTION 7 */
    #brand-category .section-title h2:after {
        width:30px;
        height:30px;
        margin-top:-7px;
    }
}

@media (max-width: 640px) {
	/** COMMON */
	.category-tabs-wrap {
		margin-left: -12px;
		margin-right: -12px; 
	}
	
	
	/** SECTION 2 */
    .review-rolling-item {
        width: 280px;
    }

    .review-rolling-track {
        gap: 16px;
        animation-duration: 40s;
    }
	
	/** */
	/** SECTION 3 */
	.onepick-swiper-wrap {
		margin-left: -12px;
		margin-right: -12px; 
	}
	.onepick-card-body {
		padding: 12px 10px; 
	}
	.onepick-car-model {
		flex-direction: column; 
		align-items: flex-start; 
	}
	.onepick-brand-model {
		font-size: 16px; 
	}
	.onepick-car-class {
		height: 24px;
		padding: 0 6px;
		font-size: 10px; 
		font-weight: 500;
	}
	.onepick-car-detail {
		margin-top: 12px; 
	}
	.onepick-tag-group {
		display: none; 
	}
	.onepick-price {
		margin-top: 12px; 
		gap: 6px; 
	}
	.onepick-total dd {
		font-size: 16px; 
	}
	.onepick-monthly dd {
		font-size: 18px; 
	}
	.onepick-btn-wrap {
		margin-top: 24px; 
		padding: 0 5px; 
	}
	.onepick-btn {
	}
	
	.immediate-card-img .brand-img {
		width: 32px; 
	}
	
	
	/*
	* SECTION 6 / SECTION 7 swiper 
	*/
	.car-monthly dd {
		font-size: 16px; 
	}
	.car-card .brand-img {
		width: 32px;
	}
}




@media (max-width: 550px) {
	.immediate-tag-row hr:last-of-type {
		display: none;
	}
	.immediate-tag-row span:last-of-type {
		width: 100%; 
	}
	
	
	.car-monthly {
		flex-direction: column; 
		justify-content: initial;
		align-items: initial; 
	}

}