@charset "utf-8";

@import url("./font.css");
/* @import url("./reset.css"); */

/** root */
:root {
    --primary-color: #2563eb;
    --secondary-color: #1e293b;
    --accent-color: #f59e0b;
    --text-main: #1e293b;
    --text-muted: #64748b;
    --bg-light: #f8fafc;
    --white: #ffffff;
    --border-color: #e2e8f0;
	--page-desc: #525252;
    --touch-min: 44px;
    --spacing-mobile: 16px;
}


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

html, body {
    min-width: 0;
}

body {
    font-family: 'SCoreDream', 'Pretendard', sans-serif;
    font-size: 14px;
    color: var(--text-main);
    line-height: 1.6;
    word-break: keep-all;
	
	-webkit-text-size-adjust: none;
	text-size-adjust: none;
}

a {
    text-decoration: none;
    color: inherit;
}

ul {
    list-style: none;
}

img {
    max-width: 100%;
    height: auto;
    display: block;
}

.container {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 var(--spacing-mobile, 16px);
}

.inner {
    max-width: 1320px;
    margin: 0 auto;
}



/*
* HEADER 
*/

.header {
    position: sticky;
    top: 0;
    z-index: 900;
    background: #fff;
}

.header-top,
.header-bottom {
    display: flex;
    align-items: center;
    align-self: stretch;
    background: #fff;
}

.header-container {
    display: flex;
    align-items: center;
    gap: 40px;
	
	position: relative; 
    width: 100%;
}

.header-top {
	height: 48px;
}

/* 상단 로고 영역 (PC: height 90, padding-top 24.5, padding-bottom 23) */
.header-container--logo {
    justify-content: space-between;
}

/* 하단 메뉴 영역 (PC: height 66) */
.header-container--nav {
    justify-content: flex-start;
	overflow-x: auto;
}

.logo {
    display: flex;
    align-items: center;
    gap: 10px;
	width: 150px;
	height: auto; 
}
.logo img {width: 100%; height: 100%; object-fit: contain;}
.pc-logo {display: block; }
.mob-logo {display: none; }

.header-call {
	flex-shrink: 0; 
	display: none; 
	
	position: absolute; 
	right: 20px; 
	width: 24px;
	height: 24px; 
	background: url('/include/img/icon_header_call.svg') no-repeat center/ contain;
}

.logo-mark {
    width: 40px;
    height: 40px;
    border-radius: 12px;
    background: linear-gradient(135deg, #2563eb, #4f46e5);
}

.header-container nav {
	width: 100%; 
}

.nav ul {
    display: flex;
	justify-content: space-between; 
    gap: 30px;
}

.nav a {
    display: inline-flex;
    align-items: center;
	gap: 6px;
    height: 46px;
    font-size: 15px;
    font-weight: 500;
    color: var(--text-main);
    padding: 0; 
    border-bottom: 2px solid transparent;
    transition: color 0.2s, border-color 0.2s;
	white-space: nowrap;
}

.header-sub .nav a.active {
    color: var(--primary-color);
    border-bottom-color: var(--primary-color);
	font-weight: 600; 
}
.nav .nav-onepick:before {
	display: block; clear: both; content: ''; 
	flex-shrink: 0; 
	width: 16px; height: 16px; 
	background: url('/include/img/icon_header_onepick.svg') no-repeat center/ contain;
}
.nav .nav-immediate:before {
	display: block; clear: both; content: ''; 
	flex-shrink: 0; 
	width: 16px; height: 16px; 
	background: url('/include/img/icon_header_immediate.svg') no-repeat center/ contain;
}



/*
* FOOTER 
*/
/* Footer (관리자 tbl_config 연동, 항목명·여백·빨간 경고문) */
.footer {
    background: rgb(37, 37, 38, 1); 
    color: #94a3b8;
}

.footer-inner {
    max-width: 1320px;
    margin: 0 auto;
    padding: 0 var(--spacing-mobile, 16px);
}

.footer-head {background: rgb(0, 0, 0, 0.2); }

.footer-links {
    display: flex;
	align-items: center;
    flex-wrap: wrap;
    gap: 16px;
	
	min-height: 50px; 
	padding: 15px 0; 
}

.footer-links a {
    color: rgba(255, 255, 255, 0.9);
    font-size: 14px;
}

.footer-links a:hover {
    color: #fff;
}

/* .footer-links a.bold {font-weight: 600; } */
.footer-links hr {width: 1px; height: 10px; margin: 0; background: rgb(255,255,255,0.2); }

.footer-body {padding: 24px 0; }

.footer-brand {
	display: none; 
}

.footer-logo {
    font-size: 22px;
    font-weight: 800;
    color: var(--primary-color);
}

.footer-logo-en {
    font-size: 13px;
    font-weight: 600;
    color: rgba(59, 130, 246, 0.85);
    letter-spacing: 0.05em;
}

.footer-info {
    margin: 0 0 14px;
    padding: 0;
}

.footer-info-line {
	display: flex; 
	align-items: center; 
	flex-wrap: wrap; 
	gap: 10px 28px; 
	
	margin-bottom: 10px; 
	
    line-height: 1.2;
    color: #94a3b8;
}

.footer-info-line li {display: flex; align-items: center; gap: 6px; position: relative; }
.footer-info-line li:after {display: block; clear: both; content: ''; position: absolute; left: 100%; width: 1px; height: 10px; margin-left: 14px; background: #FFF; opacity: 0.2; }
.footer-info-line li:last-of-type:after {display: none; }
.footer-info-line:first-of-type li:nth-of-type(2):after {display: none; }

.footer-info-line p {flex-shrink: 0; color: #FFF; opacity: 0.5; }
/* .footer-info-line span {color: #FFF; font-weight: 500; letter-spacing: -0.02em;} */
.footer-info-line span {color: #FFF; opacity: 0.7; letter-spacing: -0.02em;}

.footer-info-line:last-child {
    margin-bottom: 0;
}

.footer-foot {border-top: 1px solid rgb(255,255,255,0.1)}

.footer-copy-wrap {
    display: flex;
	flex-direction: column; 
	align-items: flex-start;
    flex-wrap: wrap;
    gap: 14px;
	
	padding: 20px 0 24px; 
    font-size: 14px;
	line-height: 1; 
}

.footer-copy {
    color: #94a3b8;
}

.footer-warning {
	line-height: 19px; 
	padding: 0 5px; 
	background: #D21414; 
    color: #FFF;
	
    font-weight: 600;
}




/** go top */
#go-top {
	position: fixed; bottom: 60px; right: 30px; 
	width: 80px; height: 80px; border-radius: 80px; border: none; background: url('/include/img/btn_go_top.svg') no-repeat center /contain, #196EFF;
	box-shadow: 2px 4px 12px 0px rgb(0,0,0,0.2); cursor: pointer;
	z-index: 10; 
	opacity: 0;
	transition: opacity 0.3s ease-in-out; 
	pointer-events: none;
	
}
#go-top.show {opacity: 1; pointer-events: auto;}


/*
* form
*/

.form-item {
	display: flex; 
	flex-direction: column; 
	gap: 8px; 
}

.form-item label {
	display: flex; 
	align-items: center; 
	color: #242424; 
	font-size: 11px;
	font-weight: 500;
}

.form-item label.required:after,
.form-item label.require:after {
	content: '*'; 
	color: var(--primary-color);
}

.form-item input[type="text"], 
.form-item input[type="tel"] {
	width: 100%; 
	height: 46px; 
	padding: 0 14px;
	border: 1px solid #DCDEE4;
	border-radius: 6px; 
	font-size: 14px; 
	font-weight: 500; 
	outline: none; 
	transition: border-color 0.2s;
}

.form-item input[type="text"]:focus, 
.form-item input[type="tel"]:focus {
	border-color: var(--primary-color);
}

.form-row {
	display: flex; 
	flex-direction: row; 
	gap: 10px; 
	
	margin-bottom: 16px; 
}
.form-row > .form-item {
	flex: 1;
}

.auth-input-wrap {
	display: flex; 
	align-items: center; 
	
	position: relative; 
}
.auth-input-wrap .timer {
	position: absolute;
	right: 10px;
}

.agree-item {
	display: flex;
	flex-direction: row;
	justify-content: space-between; 
	align-items: center; 
	gap: 10px; 
	
	margin-top: 30px; 
	margin-bottom: 24px; 
}
.agree-item .checkbox-label {
	display: flex; 
	align-items: center; 
	gap: 8px; 
	color: #3D3D3D; 
	font-size: 13px; 
	font-weight: 500;
}
.agree-item input[type="checkbox"] {
	flex-shrink: 0; 
	width: 18px; 
	height: 18px; 
	accent-color: var(--primary-color);
}
.agree-item .chk-txt {
	/* display: flex; 
	align-items: center;  */
}
.agree-item .btn-show-terms {
	display: flex; 
	justify-content: center;
	align-items: center; 
	min-width: auto; 
	height: 20px; 
	min-height: auto;
	line-height: 1; 
	padding: 0 7px; 
	border: none;
	border-radius: 4px; 
	background: #F5F5F7; 
	color: #666; 
	font-size: 12px;
	font-weight: 500; 
	
	cursor: pointer; 
}



/*
* FIXED 버튼
*/

/** PC 우측 FIXED 버튼 */
.pc-floating-consult-bar {
    display: flex;
    flex-direction: column;
    gap: 18px;
	
    position: fixed;
    right: 30px;
    top: 50%;
    transform: translateY(round(down, -50%, 1px));
    -webkit-transform: translateY(round(down, -50%, 1px));
    z-index: 999;
	
	width: 240px;
	padding: 12px; 
	border-radius: 18px; 
	background: #FFF; 
	box-shadow: 3px 6px 18px 0px rgb(12, 55, 129, 0.2);
}
.pc-floating-consult-bar {

}

.floating-cb-btn {
	display: flex; 
	align-items: center;
	
	height: 46px;
	line-height: normal;
	border: none; 
	border-radius: 10px;
	background: none; 
	color: #FFF; 
	font-family: inherit;
	font-size: 14px; 
	cursor: pointer;
}
.floating-cb-btn span {
	flex: 1; 
	display: block;
	text-align: center; 
}

.floating-consult {
	display: flex; 
	flex-direction: column; 
	
	padding: 12px 10px; 
	border-radius: 10px;
	background: #E8F1FF; 
}
.floating-consult-header {
	display: flex; 
	justify-content: center; 
	align-items: center;
	gap: 8px; 
	
	margin-top: 12px; 
}
.floating-consult-header:before {
	display: block; clear: both; content: '';
	width: 13px;
	height: 16px;
	margin-top: 2px; 
	background: url('/include/img/icon_float_consult_header.svg') no-repeat center/contain;
}
.floating-consult-header span {
	line-height: normal;
	color: var(--primary-color);
	font-size: 16px; 
}
.floating-consult fieldset {
	margin-top: 24px; 
	border: none; 
}
.floating-consult .form-row {
	margin-bottom: 10px; 
}
.floating-consult .form-item {
	flex-direction: row;
}
.floating-consult .form-item label {
	flex: 1; 
	font-size: 12px;
}
.floating-consult .form-item input[type="text"], 
.floating-consult .form-item input[type="tel"] {
	width: 144px;
	min-height: auto;
	height: 42px;
	border: none;
	font-size: 12px; 
}
/* 우측 배너 인증번호: 타이머가 플레이스홀더와 겹치지 않도록 */
.floating-consult .auth-input-wrap {
	display: flex;
	align-items: center;
	position: relative;
	width: 100%;
	max-width: 144px;
}
.floating-consult .auth-input-wrap input {
	width: 100%;
	padding-right: 38px;
	font-size: 12px;
	height: 42px;
	box-sizing: border-box;
}
.floating-consult .auth-input-wrap .timer {
	position: absolute;
	right: 8px;
	top: 50%;
	transform: translateY(-50%);
	font-size: 11px;
	font-weight: 600;
	color: #ef4444;
	pointer-events: none;
}
.floating-consult .agree-item {
	margin-top: 16px;
	margin-bottom: 16px; 
}
.floating-consult .agree-item .checkbox-label {
	gap: 5px; 
	font-size: 11px;
	letter-spacing: -0.04em; 
}
.floating-consult .agree-item .btn-show-terms {
	background: rgb(25, 110, 255, 0.1);
	color: #394352; 
	font-size: 11px; 
}
.floating-consult-submit {
	background: var(--primary-color);
	font-weight: 600; 
}

.floating-contacts {
	padding: 12px 10px; 
	border-radius: 10px;
	background: #EFF1F4; 
}
.floating-contacts-desc {
	line-height: 1; 
	margin-top: 12px; 
	padding: 0 5px;
	color: #525252; 
	font-size: 12px;
}
.floating-contacts-phone {
	display: flex; 
	align-items: center; 
	gap: 4px; 
	
	line-height: 1; 
	margin-top: 12px;
	padding: 0 5px;
	color: #242424; 
	font-size: 20px; 
	font-weight: 600; 
}
.floating-contacts-phone:before {
	display: block; clear: both; content: '';
	
	width: 18px;
	height: 18px; 
	background: url('/include/img/icon_float_numbers.svg') no-repeat center/ contain;
}
.floating-contacts-btn {
	display: flex; 
	flex-direction: column; 
	gap: 8px; 
	
	margin-top: 24px; 
}
.floating-contacts-btn .floating-cb-btn {
	background: #33425C; 
	font-weight: 500; 
}
.floating-contacts-btn .floating-cb-btn:before {
	display: block; clear: both; content: ''; 
	width: 26px; height: 26px; margin-left: 12px;
}
.floating-contacts-btn .fconsult-kakao:before {
	background: url('/include/img/icon_float_kakaotalk_white.svg') no-repeat center;
}
.floating-contacts-btn .fconsult-phone:before {
	background: url('/include/img/icon_float_call_white.svg') no-repeat center;
}


/** MOBILE 하단 FIXED 버튼 */
.mob-floating-consult-bar {
	display: none;
	position: fixed; 
	bottom: 24px; 
	left: 50%; 
	transform: translateX(-50%);
	z-index: 10; 
	
	width: calc(100% - 40px);
	max-width: 400px;
	border-radius: 50px; 
	background: #FDEC00;
	box-shadow: 0px 2px 10px rgb(0,0,0,0.1);
}
.floating-bottom-btn {
	display: flex; 
	height: 66px; 
	padding: 0 38px 12px; 
}
.floating-bt-btn {
	flex: 1; 
	display: flex; 
	flex-direction: column; 
	justify-content: flex-end; 
	align-items: center; 
	gap: 7px; 
}
.floating-bt-btn p {
	line-height: 1; 
	color: #242424; 
	font-size: 13px; 
	font-weight: 500; 
}
.floating-bt-btn i {
	flex-shrink: 0; 
	display: block; 
	width: 26px;
	height: 26px; 
}
.floating-bt-btn.bt-btn-kakao i {
	background: url('/include/img/icon_float_bottom_kakao.svg') no-repeat center/contain;
}
.floating-bt-btn.bt-btn-phone i {
	background: url('/include/img/icon_float_bottom_call.svg') no-repeat center/contain;
}
.bt-btn-consult {
	flex: 1; 
	display: flex;
	justify-content: center;
	
	position: relative; 
	width: 100%;
}
.bt-btn-consult button {
	display: flex;
	justify-content: center;
	align-items: center;
	
	position: absolute; 
	bottom: 0; 
	width: 60px; 
	height: 60px; 
	border: none; 
	background: none; 
}
.bt-btn-consult .shadow {
	position: absolute; 
	width: 100%; 
	height: 100%; 
	border-radius: 60px;
	box-shadow: 0 10px 15px -3px rgb(25, 110, 255,0.6), 0 4px 6px -4px rgb(25, 110, 255,0.6);
	animation: shadowSpin 1s linear infinite;
}
.bt-btn-consult .img {
	position: relative;
	width: 100%; 
	height: 100%;
	border: 4px solid #FFF; 
	border-radius: 60px;
	background: url('/include/img/icon_float_bottom_consult.svg') no-repeat center/20px auto, var(--primary-color);
}
@keyframes shadowSpin {
	100% {
		transform: rotate(1turn);
	}
}




/*
* SUB PAGE 
*/
/* 서브 페이지: 헤더 메뉴 액티브 (출고후기/FAQ/프로모션 등) */
.header-sub .nav a.active {
    color: var(--primary-color);
    font-weight: 700;
    border-bottom: 2px solid var(--primary-color);
}

/* 서브 페이지: 컨텐츠 영역 상하 여백 통일 (프로모션/출고후기/FAQ/약관) */
.sub-main {
    padding-top: 30px;
    padding-bottom: 60px;
    min-height: 60vh;
}
.sub-main-with-footer-space {
    padding-bottom: 120px !important;
}

.page-breadcrumb {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 56px;
    font-size: 13px;
    color: #9CA3AF;
}

.page-breadcrumb-home {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #9CA3AF;
}

.page-breadcrumb-home:before {
	display: block; clear: both; content: ''; 
	width: 15px; height: 13px; background: url('/include/img/icon_breadcrumb_home.svg') no-repeat center/ contain; 
}

.page-breadcrumb-sep {
    width: 6px; height: 9px; background: url('/include/img/icon_breadcrumb_arrow.svg') no-repeat center/ contain;
}
.page-breadcrumb-page {
	line-height: normal;
	color: #666; 
	font-size: 12px; 
}
.page-breadcrumb-current {
	line-height: normal;
    color: var(--primary-color);
	font-size: 12px; 
    font-weight: 500;
}

.page-title-wrap {padding-bottom: 60px; }
.page-title {
	color: #121212; 
	font-size: 28px; 
	font-weight: 600;
}
.page-desc {
	padding-top: 16px; 
	color: #525252; 
	font-size: 16px; 
	font-weight: 400; 
}

.page-list-total {}

.page-list-total {
    padding: 36px 0 32px;
	line-height: normal; 
    font-size: 14px;
	font-weight: 500; 
    color: #121212;
}
.page-list-total span {
	color: #196EFF; 
	font-weight: 600;
}


/*
* MODAL 
*/

/* 메인 페이지: 빠른 상담 신청 팝업 */
.quick-consult-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.quick-consult-modal.is-open {
    opacity: 1;
    visibility: visible;
}
.quick-consult-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}
.quick-consult-box {
    position: relative;
    width: 100%;
    max-width: 528px;
	padding: 36px 30px 30px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}
.quick-consult-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 30px; 
    border-bottom: 1px solid #e2e8f0;
}

.quick-consult-header-left {
	display: flex; 
	align-items: center;
	gap: 16px;
}
.quick-consult-header-left: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;
}
.quick-consult-title {
	margin: 0;
	color: #242424;
    font-size: 20px;
    font-weight: 600;
}
.quick-consult-close {
	position: absolute;
	right: -14px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 20px;
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.2s, color 0.2s;
}
.quick-consult-close:before {
	display: block; clear: both; content: ''; 
	flex-shrink: 0; 
	width: 16px; 
	height: 16px; 
	background: url('/include/img/icon_modal_close.svg') no-repeat center/ contain;
}
.quick-consult-form {
}
.quick-consult-form .form-row {
	margin-bottom: 24px; 
}
.quick-consult-form label {
    font-size: 13px;
}
.quick-consult-form .form-input-group {
	display: flex; 
	flex-direction: column; 
	gap: 5px; 
}
.quick-consult-form .form-item input[type="text"],
.quick-consult-form .form-item input[type="tel"] {
	height: 50px; 
}

.quick-consult-form .quick-auth-verify-item {
    display: flex;
    flex-direction: column;
    gap: 8px;
    margin-bottom: 0;
}
.quick-consult-form .quick-auth-verify-item label {
    font-size: 13px;
}
.quick-consult-form .auth-input-wrap {
    position: relative;
}
.quick-consult-form .auth-input-wrap input {
    padding-right: 70px;
}
.quick-consult-form .auth-input-wrap .quick-consult-timer {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    font-size: 14px;
    color: #ef4444;
    font-weight: 700;
}
.quick-consult-form .agree-item {
	margin-top: 30px;
    margin-bottom: 30px;
}
.quick-consult-form .checkbox-label {
    gap: 10px;
    cursor: pointer;
}

.quick-consult-form .chk-txt a {
	position: relative; 
}
.quick-consult-form .chk-txt a:before {
	display: block; clear: both; content: '';
	position: absolute;
	bottom: 0; 
	
	width: 100%; 
	height: 1px; 
	background: #A4A4A4;
}
.btn-quick-consult-submit {
    width: 100%;
    height: 60px; 
    background: var(--primary-color);
    color: #fff;
    border: none;
    border-radius: 12px;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: opacity 0.2s, background 0.2s;
}

/** terms modal */
.quick-terms-modal {
    position: fixed;
    inset: 0;
    z-index: 10000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}
.quick-terms-modal.is-open {
    opacity: 1;
    visibility: visible;
}
.quick-terms-backdrop {
    position: absolute;
    inset: 0;
}

.quick-terms-backdrop.dark {
    position: absolute;
    inset: 0;
	background: rgb(0,0,0,0.5);
}

.quick-terms-box {
	display: flex; 
	flex-direction: column; 
    position: relative;
    width: 100%;
    max-width: 528px;
	min-height: 70dvh;
	max-height: 80dvh;
	padding: 36px 30px 30px;
    background: #FFF;
    border-radius: 20px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    overflow: hidden;
}
.quick-terms-header {
    display: flex;
    align-items: center;
    justify-content: center;
	position: relative;
	margin-bottom: 30px;
	padding: 0 30px 30px; 
    border-bottom: 1px solid #e2e8f0;
}
.quick-terms-title {
	margin: 0;
	color: #242424;
    font-size: 20px;
    font-weight: 600;
}
.quick-terms-close {
	position: absolute;
	right: -14px;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 20px;
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.2s, color 0.2s;
}
.quick-terms-close:before {
	display: block; clear: both; content: ''; 
	width: 16px; 
	height: 16px; 
	background: url('/include/img/icon_modal_close.svg') no-repeat center/ contain;
}

.quick-terms-body {
	flex: 1; 
	overflow: auto;
	margin-left: -30px; 
	margin-right: -30px; 
	padding-left: 30px;
	padding-right: 30px;
}



/* 출고 후기 상세 팝업 */
.review-modal {
    position: fixed;
    inset: 0;
    z-index: 9999;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 20px;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

.review-modal.is-open {
    opacity: 1;
    visibility: visible;
}

.review-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.5);
}

.review-modal-box {
    position: relative;
    width: 100%;
    max-width: 640px;
    max-height: 90vh; 
    background: #fff;
    border-radius: 16px;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.2);
    display: flex;
    flex-direction: column;
    overflow: hidden;
}

.review-modal-header {
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 36px 30px 30px;
	
	position: relative; 
}

.review-modal-title {
	text-align: center; 
    font-size: 20px;
    font-weight: 600;
    color: #121212;
    margin: 0;
}

.review-modal-close {
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    background: transparent;
    color: #64748b;
    font-size: 20px;
    cursor: pointer;
    border-radius: 8px;
    transition: background 0.2s, color 0.2s;
	
	position: absolute; 
	right: 20px; 
	font-size: 0; 
}

.review-modal-close i {
	font-size: 18px; 
}


.review-modal-body {
    padding: 0 30px;
	padding-bottom: 30px;
    overflow-y: auto;
    flex: 1;
}

.review-modal-img-wrap {
    position: relative;
    aspect-ratio: 4 / 3;
	width: 100%;
    min-height: 260px;
    background: #e5e7eb;
    border-radius: 12px;
    overflow: hidden;
    margin-bottom: 20px;
}

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

.review-modal-img-wrap .review-modal-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #9ca3af;
    font-size: 14px;
}

.review-modal-user {
	display: flex; 
	justify-content: space-between;
	align-items: center;
	
	padding-bottom: 24px; 
	border-bottom: 1px solid #EDEDED; 
}
.review-modal-info {
	display: flex; 
	align-items: center; 
	gap: 12px; 
	
}

.review-modal-profile {
	width: 42px;
	height: 42px;
	background: url('/include/img/no_profile.svg') no-repeat center/ contain;
}

.review-modal-author {
    font-size: 15px;
	font-weight: 500; 
    color: #3D3D3D;
    margin: 0;
}

.review-modal-car {
    font-size: 14px;
    color: #666666;
}

.review-modal-stars {
	display: flex; 
	align-items: center; 
	gap: 2px
}
.review-modal-stars .star {
	width: 24px; 
	height: 24px; 
	background: url('/include/img/icon_review_stars.svg') no-repeat center /contain; 
}

.review-modal-headline {
    font-size: 18px;
    font-weight: 600;
    color: #121212;
	padding-top: 24px;
	padding-bottom: 20px;
}

.review-modal-content {
    font-size: 14px;
    color: #3D3D3D;
}


.review-modal-footer {
    padding: 16px 24px;
    border-top: 1px solid #e2e8f0;
}

.btn-review-close {
    width: 100%;
    padding: 14px 24px;
    background: var(--secondary-color);
    color: #fff;
    border: none;
    border-radius: 8px;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
    transition: opacity 0.2s, background 0.2s;
}






/** min width */
@media (min-width: 568px) {
	/** FOOTER */
	.footer-info-line:first-of-type li:nth-of-type(2):after {display: block; }
	
}

@media (min-width: 768px) {
	.container { padding-left: 20px; padding-right: 20px; }
	
	/** HEADER */
	.header-top {height: 90px; border-bottom: 1px solid #EDEDED; }
	.header-bottom {border-bottom: 1px solid #EDEDED;}
	
	
	/** FOOTER */
	.footer-inner { padding-left: 20px; padding-right: 20px; }
	
	.footer-copy-wrap {flex-direction: row; align-items: center; gap: 12px; }
	.footer-copy {order: 1; }
	.footer-warning {order: 2; }
}

@media (min-width: 1024px) {
	.container { padding-left: 24px; padding-right: 24px; }
	
	/** HEADER */
    .header-top {
        height: 90px;
    }

    .header-container--logo {
        padding: 24.5px 0 23px;
    }

    .header-bottom {
        height: 66px;
    }
	
	
	
	/** FOOTER */
	.footer-inner { padding-left: 24px; padding-right: 24px; }
}

/** max width */


@media (max-width: 1024px) {
	.pc-floating-consult-bar {
		display: none; 
	}
	.mob-floating-consult-bar {
		display: block; 
		opacity: 1; 
		
		transition: opacity 0.3s ease-in-out;
	}
	.mob-floating-consult-bar.hide {
		opacity: 0; 
	}
	#go-top {
		right: 20px;
		bottom: 110px; 
		width: 60px; 
		height: 60px; 
		
	}
}
@media (max-width: 768px) {

	/** HEADER */
	.header-container--logo {
		justify-content: center; 
	}
	.pc-logo {display: none; }
	.mob-logo {display: block; }
	.logo {
		width: 100px;
		height: auto; 
	}
	.header-call {
		display: block; 
	}
	.nav ul {
		gap: 10px;
	}
	.nav li:last-of-type {
		display: none;
	}
	.nav .nav-onepick:before {
		display: none;
	}
	.nav .nav-immediate:before {
		display: none;
	}

	/** 우측 FIXED 버튼 */
	
	
	.footer-info-line { font-size: 12px; }
}

@media (max-width: 640px) {
	/** MODAL */
	/** quick modal */
	.quick-consult-box {
	}
	
	/** review modal */
    .review-modal-box {
        max-height: 85vh;
    }
}

@media (max-width: 480px) {
    .floating-consult-bar {
        right: 12px;
    }

    .floating-consult-bar .fconsult-item {
        padding: 12px 10px;
        min-width: 52px;
    }

    .floating-consult-bar .fconsult-item i {
        font-size: 20px;
    }
	
	.footer-links a {
		font-size: 13px; 
	}
}


/*
* hover 
*/
@media (hover: hover) {
	/** HEADER */
	.nav a:hover {
		color: var(--primary-color);
	}

	/** MODAL */
	/** quick modal */
	.quick-consult-close:hover {
		background: #f1f5f9;
		color: #1e293b;
	}
	.btn-quick-consult-submit:hover {
		background: #1d4ed8;
	}
	
	/** review modal */
	.review-modal-close:hover {
		background: #f1f5f9;
		color: #1e293b;
	}
	
	.btn-review-close:hover {
		opacity: 0.95;
		background: #334155;
	}
}