@charset "UTF-8";

/* ── BUTTONS ── */
.btn-hero-primary {
	position:relative;
	display: inline-block;
	justify-content: center;
	align-items: center;
	margin-top: 30px;
	padding: 15px 25px;
	box-sizing: border-box;
	font-size: 18px;
	color: #FFF;
	letter-spacing: -0.02em;
	border: 1px solid #022D81;
	transition: all .3s;
	background: #022D81;
	z-index:1;
}
.btn-hero-primary:hover {
	color: #022D81;
	border: #022D81 1px solid;
	transition: all .3s;
	background: none;
}

.btn-white {
	display: inline-flex; align-items: center; justify-content: center;
	padding: 17px 40px; font-size: 1rem; font-weight: 700;
	color: #3BA3FD; background: #fff;
	border-radius: 100px; transition: all .25s ease;
}
.btn-white:hover {
	background: #ddd;
	transform: translateY(-2px);
	box-shadow: 0 8px 24px rgba(255,255,255,.2);
}


/* ── SECTION COMMON ── */
.section { padding: 100px 0; }
.container { max-width: 1080px; margin: 0 auto; padding: 0 24px; }

.section-label {
	display: inline-block; font-size: .75rem; font-weight: 700;
	text-transform: uppercase; letter-spacing: 1.5px;
	color: #3BA3FD; margin-bottom: 12px;
}

/* Tag Labels – 섹션 좌측 소형 뱃지 */
.tag-label {
	display: inline-block;
	font-size: 18px;
	font-weight: 400;
	padding: 5px 14px;
	border-radius: 25px;
	margin-bottom: 16px;
	background: #f3f4f6;
	border: 1px solid #ddd;
}

.tag-label-blue {
	background: #eff6ff;
	color: #3BA3FD;
	border-color: #3b82f626;
}

.tag-label-light {
	background: rgba(255,255,255,.1);
	color: rgba(255,255,255,.55);
	border-color: rgba(255,255,255,.15);
}

.section h2 {
	font-size: 2rem; font-weight: 800; line-height: 1.35;
	color: #222; letter-spacing: -.5px; margin-bottom: 20px;
}

.text-muted { color: #999; }
.text-accent { color: #3BA3FD; font-weight: 500; }
.text-red { color: #E96652;}


/* ========================================
   섹션 01: HERO
   풀폭 띠 배너 · 배경이미지(우측 시계) · 좌측 텍스트 오버레이
   ======================================== */
.hero-label {
	font-size: 16px;color:#3BA3FD;margin-bottom: 16px;
}

.common_ban.renew img.ban01 {
	max-width: 500px;
}

.ban01 {
	right: -150px;
}

/* ========================================
   섹션 02: 문제 제기
   짧은 대비 구조
   ======================================== */
.section-problem {
	padding: 80px 0;
	text-align: center;
}

.section-problem h2 {
	font-size: 1.85rem; max-width: 580px; margin: 0 auto 40px;
}

.problem-grid {
	display: flex; align-items: center; justify-content: center;
	width:100%;gap: 32px; margin: 50px 0; flex-wrap: wrap;
}

.problem-item {
	flex: 1;
	padding: 50px 36px;
	border-radius: 12px;
	border: 1px solid #ddd;
	text-align: center;
	min-width: 400px;
	background-color: #FAFAFA;
}

.problem-item strong {
	display: block;
	font-size: 28px;
	font-weight: 500;
	margin-bottom: 30px;
}

.problem-item p { font-size: 22px; }

.problem-item p ~ p {margin-top:15px;}

.problem-divider {
	font-size: 1.5rem; color: #999;
	display: flex; align-items: center;
}
.problem-divider::before { content: 'VS'; font-weight: 800; font-size: 24px; letter-spacing: 1px; }

.problem-bottom {
	font-size:20px;text-align:center;color: #777; margin: 0 auto;padding:0 20px; line-height:1.6;
}

/* ========================================
   섹션 03: 차별점 3포인트
   ======================================== */
.section-diff {
	background: #FAFAFA;
}

.section-diff h2 { text-align: center; }
.section-diff .section-label { display: block; text-align: center; }
.section-diff .m_txt01 {font-size: 54px;line-height:1.4;}

.diff-grid {
	display: grid; grid-template-columns: repeat(4, 1fr);
	gap: 24px; margin-top: 48px;
}
.diff-grid-img {padding-top:5rem;padding-bottom:5rem;}

.diff-card {
	padding: 40px 10px;
	border-radius: 12px;
	border: 1px solid #ddd;
	text-align: center;
	transition: all .25s ease;
	background-color: #fff;
}

.diff-card:hover {
	border-color: #3BA3FD;
	box-shadow: 0 8px 24px rgba(59,130,246,.08);
	transform: translateY(-3px);
}

.diff-icon {
	width: 56px; height: 56px; margin: 0 auto 20px;
	display: flex; align-items: center; justify-content: center;
	background: #eff6ff; border-radius: 14px;
}

.diff-icon i { font-size: 1.25rem; color: #3BA3FD; }

.diff-card h3 {
	font-size: 28px;font-weight: 500;margin-bottom: 20px;line-height:1.2;
}

.diff-card p {
	font-size: 18px; color: #777; line-height: 1.6; word-break: keep-all;
}

/* ========================================
   섹션 04: 성과 지표
   강한 숫자 강조
   ======================================== */
.section-stats {
	background: #1b2a4a;
	position: relative; overflow: hidden;
}
.section-stats::before {
	content: ''; position: absolute;
	top: -50%; right: -30%; width: 80%; height: 200%;
	background: radial-gradient(ellipse, rgba(59,130,246,.12), transparent 65%);
	pointer-events: none;
}

.section-stats .section-label { color: rgba(255,255,255,.5); }
.section-stats .m_txt01 { color: #fff; text-align: center; }

.highlight_txt {position:relative;z-index:1;}
.highlight_txt:after {
	content: "";
	display: block;
	position: absolute;
	width: 100%;
	height: 12px;
	left: 0;
	bottom: 0;
	background: #3ba3fd;
	border-radius: 32px;
	z-index: -1;
}
.highlight_txt.type2:after {
	bottom: -4px;
}

.stats-grid {
	display: grid; grid-template-columns: repeat(3, 1fr);
	width:100%; gap: 24px; margin-top: 48px;
	position: relative; z-index: 1;
}

.stat-card {
	background: rgba(255,255,255,.06);
	border: 1px solid rgba(255,255,255,.1);
	border-radius: 12px;
	padding: 44px 28px; text-align: center;
	transition: all .25s ease;
}

.stat-card:hover {
	background: rgba(255,255,255,.1);
	transform: translateY(-3px);
}

.stat-value { margin-bottom: 24px; }

.stat-num, .stat-num-static {
	font-size: 3.5rem; font-weight: 800;
	color: #3BA3FD; letter-spacing: -2px; line-height: 1;
}

.stat-unit {
	font-size: 1.5rem; font-weight: 700;
	color: #3BA3FD; margin-left: 2px;
}

.stat-card-accent .stat-num-static,
.stat-card-accent .stat-unit {
	color: #fff;
}

.stat-title {
	font-size: 28px;
	font-weight: 500;
	color: rgba(255,255,255,.9);
	margin-bottom: 6px;
}

.stat-desc {
	font-size: 18px; color: rgba(255,255,255,.45); line-height: 1.6;
}

.stats-note {
	text-align: center; margin-top: 50px;
	font-size: 20px; color: rgba(255,255,255,.3); word-break: keep-all;
	position: relative; padding:0 20px; line-height:1.6; z-index: 1;
}

/* ========================================
   섹션 05: 이런 경우라면
   ======================================== */
.section-fit {background:#FAFAFA;}
.section-fit.channel-type {background:#fff;}

.section-fit .m_txt01 { text-align: center; margin: 0 auto 40px; word-break: keep-all;}

.section-fit .fit-img {
	text-align: center;
	padding-top: 5rem;
}

.fit-grid {
	display: grid; grid-template-columns: repeat(2, 1fr);
	gap: 16px; width: 100%; margin: 0 auto;
}

.fit-item {
	display: flex; align-items: flex-start; gap: 14px;
	font-size:18px;
	background: #fff;
	padding: 24px 28px;
	border-radius: 12px;
	border: 1px solid #ddd;
	transition: all .25s ease;
}

.fit-item:hover {
	border-color: #3BA3FD;
	box-shadow: 0 4px 16px rgba(59,130,246,.06);
}

.fit-item i {
	color: #3BA3FD; font-size: .9rem;
	margin-top: 4px; flex-shrink: 0;
}

.fit-item p {
	line-height: 1.6;
	word-break: keep-all;
}

.fit-cta {
	text-align: center; margin-top: 48px;
}

/* ========================================
   섹션 06: FAQ
   ======================================== */
.section-faq .m_txt01 { text-align: center; margin-bottom: 40px; }

.faq-list {
	width:100%;
	margin: 0 auto;
}

.faq-item {
	border-bottom: 1px solid #ddd;
}

.faq-q {
	width: 100%; display: flex; align-items: center;
	justify-content: space-between; gap: 16px;
	padding: 22px 0; text-align: left;
	font-size: 20px; font-weight: 400;
	transition: color .25s ease;
	cursor: pointer;
	border: none;
	background: none;
	font-family: inherit;
}

.faq-q:hover { color: #3BA3FD; }

.faq-icon {
	font-size: 20px; color: #999;
	transition: all .25s ease; flex-shrink: 0;
}

.faq-item.active .faq-icon {
	transform: rotate(45deg); color: #3BA3FD;
}

.faq-a {
	max-height: 0; overflow: hidden;
	transition: max-height .35s ease, padding .35s ease;
	word-break: keep-all;
}

.faq-item.active .faq-a {
	max-height: 200px; padding-bottom: 22px;
}

.faq-a p {
	color: #777; line-height: 1.6;font-size: 18px;
}

/* ========================================
   섹션 07: 최종 CTA
   ======================================== */
.section-cta {
	background: linear-gradient(135deg, #0F1A30, #3BA3FD, #2D4373);
	position: relative; overflow: hidden;
}
.section-cta::before {
	content: ''; position: absolute;
	top: -40%; left: -20%; width: 70%; height: 180%;
	background: radial-gradient(ellipse, rgba(59,130,246,.15), transparent 60%);
	pointer-events: none;
}

.cta-block {
	text-align: center;
	max-width: 600px; margin: 0 auto;
	position: relative; z-index: 1;
}

.cta-block h2 {
	font-size: 2.1rem; color: #fff;
	margin-bottom: 16px;
}

.cta-block p {
	font-size: 1rem; color: rgba(255,255,255,.55);
	line-height: 1.7; margin-bottom: 40px;
}

.cta-note {
	display: block; margin-top: 16px;
	font-size: .82rem; color: rgba(255,255,255,.35);
}

/* ========================================
   footer CTA
   ======================================== */
.f_ban {
	height: 400px;
}

.f_ban .ban_txt01 {
	font-size: 16px;
	color:#757d8f;
	line-height: 1.5;
	margin-top:10px;
}

.f_ban .ban_txt01 br {
	display:none;
}

.f_ban .ban_txt02 {
	font-size: 30px;
	line-height: 1.5;
}

.f_ban .ban_txt03 {
	font-size: 16px;
	color: #757d8f;
	text-align: center;
	letter-spacing: -0.03em;
	line-height: 1.5;
}

.f_ban a {
	margin: 50px 0 20px 0;
	color: #06153C;
	border: 1px solid #fff;
	background:#fff;
}

.f_ban a:hover {
	color: #fff;
	border: 1px solid #fff;
	background: #06153C;
}

/* ── RESPONSIVE ── */
@media all and (max-width: 1024px) {
	/* ── BUTTONS ── */
	.btn-hero-primary {
		margin-top: 10px;
		padding: 10px 15px;
		font-size: 14px;
	}

	.problem-grid { flex-direction: column; gap: 16px; }
	.problem-divider { justify-content: center; }

	.problem-item strong {font-size: 20px;}
	.problem-item p {font-size: 18px;}
	.problem-bottom {font-size: 16px;}

	.diff-card h3 {font-size: 20px;}
	.diff-card p {font-size: 16px;}

	.section-diff .m_txt01 {font-size: 22px;}
	.section-diff .m_txt01 .highlight_txt:after {bottom:-4px;}
	.diff-grid { grid-template-columns: 1fr; max-width: 440px; margin-left: auto; margin-right: auto; }
	.stats-grid { grid-template-columns: 1fr; max-width: 440px; margin-left: auto; margin-right: auto; }
	.fit-grid { grid-template-columns: 1fr; }

	.stat-title {font-size: 20px;}
	.stat-desc {font-size: 16px;}
	.stats-note {font-size: 16px;}

	.fit-item {	font-size: 16px;}

	.faq-q {font-size: 18px;}
	.faq-a p {font-size: 16px;}

	/* ========================================
   footer CTA
   ======================================== */
	.f_ban {
		height: 300px;
	}

	.f_ban .ban_txt01 {
		font-size: 15px;
		margin-top:5px;
	}

	.f_ban .ban_txt01 br {
		display:block;
	}

	.f_ban .ban_txt02 {
		font-size: 22px;
	}

	.f_ban .ban_txt03 {
		font-size: 15px;
	}

	.f_ban a {
		margin: 16px 0 10px 0;
	}
}

@media all and (max-width: 768px) {
	.section { padding: 72px 0; }
	.section h2 { font-size: 1.55rem; }
	.section h2 br { display: none; }
	.cta-block h2 { font-size: 1.55rem; }
	.cta-block h2 br { display: none; }
	.btn-hero-primary,
	.btn-white { padding: 10px 15px; font-size: 13px; }
	.stat-num, .stat-num-static { font-size: 2.8rem; }
	.footer-inner { flex-direction: column; gap: 12px; text-align: center; }

	.problem-item {min-width:auto;width:calc(90% - 32px);padding:28px 15px;}

	.diff-grid {max-width: 100%;}
	.diff-grid-img {margin: 0 -20px;padding-top:2rem;padding-bottom:4rem;}

	.section-fit .fit-img {padding-top:2rem;}
}

@media all and (max-width: 480px) {
	.common_ban.renew.hero {height:300px;}
	.section h2 { font-size: 1.35rem; }
	.diff-card { padding: 28px 24px; }
	.stat-card { padding: 32px 20px; }
	.problem-bottom,.stats-note {font-size:15px;}
	.faq-q {font-size:16px;}
	.faq-item.active .faq-a {font-size:15px;}

	/* ========================================
	   섹션 02: 문제 제기
	   ======================================== */
	.problem-item strong {font-size:20px;}
	.problem-item p {font-size:15px;}

	/* ========================================
	   섹션 03: 차별점 3포인트
	   ======================================== */
	.diff-grid {width:100%;}
	.diff-grid-img {margin: 0 -16px;}

	/* ========================================
	   섹션 03: 차별점 3포인트
	   ======================================== */
	.diff-card h3 {font-size:20px;}
	.diff-card p {font-size:15px;}

	/* ========================================
	   섹션 04: 성과 지표
	   ======================================== */
	.stat-title {font-size:20px;}
	.stat-desc {font-size:15px;}

	/* ========================================
	   섹션 05: 이런 경우라면
	   ======================================== */
	.section-fit .btn-hero-primary, .btn-white {font-size:13px;padding:15px 20px;}
	.fit-item {font-size: 15px;}

	.faq-q {font-size: 16px;}
	.faq-a p {font-size: 15px;}

	.highlight_txt:after {
		bottom: -6px;
	}
	.highlight_txt.type2:after {
		bottom: -6px;
	}
}