/* Editorial images used on the visitor landing page. */
.sales-checkin__showcase {
	position: relative;
	display: grid;
	gap: 22px;
}
.sales-checkin-photo,
.sales-video-card__photo {
	margin: 0;
	overflow: hidden;
	border-radius: 24px;
}
.sales-checkin-photo {
	border: 1px solid rgba(8, 47, 104, .12);
	background: #fff;
	box-shadow: 0 18px 42px rgba(6, 44, 42, .11);
}
.sales-checkin-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 8;
	object-fit: cover;
}
.sales-checkin-photo figcaption {
	padding: 14px 18px 16px;
	color: #315d53;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.5;
}
.sales-checkin__showcase .sales-checkin__mock {
	box-sizing: border-box;
}
.sales-focus {
	position: relative;
	margin-top: -1px;
	padding: 26px 0;
	background: #062c62;
	color: #fff;
}
.sales-focus__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
}
.sales-focus__grid article {
	display: flex;
	align-items: center;
	gap: 17px;
	min-width: 0;
	padding: 14px 32px;
	border-right: 1px solid rgba(255, 255, 255, .2);
}
.sales-focus__grid article:first-child { padding-left: 0; }
.sales-focus__grid article:last-child { border-right: 0; }
.sales-focus__number {
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 42px;
	place-items: center;
	border-radius: 50%;
	background: #20dc95;
	color: #062c62;
	font-size: 14px;
	font-weight: 900;
}
.sales-focus__grid strong,
.sales-focus__grid p { display: block; }
.sales-focus__grid strong { font-size: 20px; }
.sales-focus__grid p { margin: 4px 0 0; color: #c3d4e6; font-size: 15px; line-height: 1.45; }
.sales-day-photo {
	position: relative;
	margin: 28px 0 0;
	overflow: hidden;
	border-radius: 22px;
	box-shadow: 0 18px 42px rgba(7, 53, 42, .13);
}
.sales-day-photo::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(90deg, rgba(5, 43, 89, .6), rgba(5, 43, 89, .04) 75%);
	content: "";
}
.sales-day-photo img {
	display: block;
	width: 100%;
	aspect-ratio: 16 / 8;
	object-fit: cover;
}
.sales-day-photo figcaption {
	position: absolute;
	left: 24px;
	bottom: 22px;
	z-index: 1;
	max-width: 310px;
	color: #fff;
}
.sales-day-photo figcaption strong,
.sales-day-photo figcaption span { display: block; }
.sales-day-photo figcaption strong { font-size: 25px; }
.sales-day-photo figcaption span { margin-top: 5px; color: #ecfbf4; font-size: 16px; line-height: 1.5; }

/* Keep the light hero readable even before the optional entrance motion finishes. */
.sales-home .sales-hero__proof strong {
	color: #08275b !important;
	text-shadow: none;
}
.sales-home .sales-hero__proof span { color: #456a63 !important; }
.sales-video-card {
	grid-template-columns: minmax(240px, 1.1fr) minmax(180px, .78fr) minmax(190px, .9fr) auto;
}
.sales-video-card__visuals {
	display: grid;
	gap: 10px;
	align-self: stretch;
}
.sales-video-card__photo,
.sales-video-card__teacher {
	align-self: stretch;
	margin: 0;
	overflow: hidden;
	border: 1px solid rgba(255, 255, 255, .2);
	border-radius: 16px;
	background: #d7e6e2;
}
.sales-video-card__teacher {
	position: relative;
	min-height: 210px;
	background: #e6e4dc;
}
.sales-video-card__teacher::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(0deg, rgba(3, 34, 76, .76), rgba(3, 34, 76, .02) 68%);
	content: "";
}
.sales-video-card__teacher img,
.sales-video-card__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.sales-video-card__teacher img { position: absolute; inset: 0; }
.sales-video-card__teacher figcaption {
	position: absolute;
	left: 15px;
	right: 15px;
	bottom: 13px;
	z-index: 1;
}
.sales-video-card__teacher strong,
.sales-video-card__teacher span { display: block; }
.sales-video-card__teacher strong { color: #fff; font-size: 16px; line-height: 1.4; }
.sales-video-card__teacher span { margin-top: 3px; color: #dbf5e8; font-size: 13px; line-height: 1.4; }
.sales-video-card__photo { min-height: 96px; }

/* Keep the before/after comparison cards on one shared desktop height. */
@media (min-width: 541px) {
	.sales-change__compare { align-items: stretch; }
	.sales-change__compare article { box-sizing: border-box; display: flex; flex-direction: column; height: 100%; }
	.sales-change__compare .sales-change__arrow { align-self: center; }
}
.sales-change__takeaways { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 32px; }
.sales-change__takeaways > div { display: grid; gap: 7px; min-height: 120px; padding: 18px 15px; border: 1px solid rgba(175, 211, 235, .22); border-radius: 16px; background: rgba(255, 255, 255, .075); }
.sales-change__takeaways b { color: #2be6a2; font-size: 22px; line-height: 1; }
.sales-change__takeaways span { color: #d8e6ef; font-size: 14px; font-weight: 700; line-height: 1.55; }

/* A compact lesson preview keeps the landing page informative even before video assets are uploaded. */
.sales-preview { overflow: hidden; background: linear-gradient(120deg, #fbfaf5 0%, #f0f8f5 100%); }
.sales-preview__grid { display: grid; grid-template-columns: minmax(320px, .95fr) minmax(0, 1.05fr); gap: clamp(38px, 8vw, 112px); align-items: center; }
.sales-preview__visual { position: relative; min-height: 470px; }
.sales-preview__visual figure { position: absolute; inset: 0 30px 28px 0; margin: 0; overflow: hidden; border-radius: 28px; box-shadow: 0 24px 54px rgba(8, 47, 72, .17); }
.sales-preview__visual figure::after { position: absolute; inset: 0; background: linear-gradient(135deg, rgba(6, 44, 98, .14), rgba(6, 44, 98, .01) 65%); content: ""; }
.sales-preview__visual img { width: 100%; height: 100%; object-fit: cover; }
.sales-preview__quote { position: absolute; right: 0; bottom: 0; width: min(82%, 330px); padding: 24px; border: 1px solid rgba(8, 47, 72, .1); border-radius: 20px; background: #fff; box-shadow: 0 18px 40px rgba(8, 47, 72, .14); }
.sales-preview__quote span { display: block; margin-bottom: 9px; color: #07885d; font-size: 13px; font-weight: 900; letter-spacing: .08em; }
.sales-preview__quote strong { display: block; color: #082f68; font-size: 20px; line-height: 1.45; }
.sales-preview__quote p { margin: 7px 0 0; color: #607b74; font-size: 15px; }
.sales-preview__copy h2 { margin: 12px 0 18px; color: #082f68; font-size: clamp(36px, 4vw, 57px); line-height: 1.22; letter-spacing: -.055em; }
.sales-preview__copy > p:not(.eyebrow) { max-width: 630px; margin: 0; color: #5d7770; font-size: 18px; line-height: 1.75; }
.sales-preview__steps { display: grid; gap: 0; margin: 29px 0 24px; padding: 0; list-style: none; }
.sales-preview__steps li { display: grid; grid-template-columns: 48px 1fr; gap: 15px; align-items: center; padding: 15px 0; border-top: 1px solid #d9e7e2; }
.sales-preview__steps li:last-child { border-bottom: 1px solid #d9e7e2; }
.sales-preview__steps b { display: grid; width: 39px; height: 39px; place-items: center; border-radius: 50%; background: #daf5e9; color: #008a5a; font-size: 13px; }
.sales-preview__steps strong, .sales-preview__steps small { display: block; }
.sales-preview__steps strong { color: #183e45; font-size: 17px; }
.sales-preview__steps small { margin-top: 3px; color: #70847f; font-size: 14px; line-height: 1.45; }
.sales-preview .text-link { color: #087b59; font-size: 16px; font-weight: 900; }

.challenge-sample-list { display: grid; grid-template-columns: minmax(250px, .72fr) minmax(0, 1.28fr); gap: 30px; align-items: center; margin-top: 32px; padding: 30px; border: 1px solid #cfe9dd; border-radius: 24px; background: #effaf5; }
.challenge-sample-list h3 { margin: 8px 0 10px; color: #082f68; font-size: 26px; line-height: 1.35; }
.challenge-sample-list > div > p:last-child { margin: 0; color: #617970; font-size: 16px; line-height: 1.65; }
.challenge-sample-list .course-grid { grid-template-columns: minmax(0, 1fr); margin: 0; }
.challenge-sample-list .course-card { min-height: 0; }

/* Real (anonymized) challenge participation and review area. */
.sales-participation { background: linear-gradient(135deg, #effaf6 0%, #e4f5f4 52%, #eef6fa 100%); }
.sales-participation__grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(420px, 1.1fr); gap: clamp(34px, 7vw, 100px); align-items: center; }
.sales-participation__copy h2 { margin: 9px 0 17px; color: #062c62; font-size: clamp(31px, 3.2vw, 48px); line-height: 1.22; letter-spacing: -.055em; }
.sales-participation__copy > p:not(.eyebrow) { max-width: 570px; color: #496b68; font-size: 18px; line-height: 1.75; }
.sales-participation__actions { display: flex; flex-wrap: wrap; gap: 18px; align-items: center; margin-top: 27px; }
.sales-participation__feed { overflow: hidden; border: 1px solid rgba(10, 68, 82, .12); border-radius: 25px; background: rgba(255, 255, 255, .91); box-shadow: 0 20px 42px rgba(7, 59, 73, .10); }
.sales-participation__feed-head { display: flex; justify-content: space-between; gap: 12px; align-items: center; padding: 21px 24px; border-bottom: 1px solid #e5efeb; color: #103a42; font-size: 17px; }
.sales-participation__feed-head span { padding: 6px 10px; border-radius: 999px; background: #ecf8f4; color: #15815d; font-size: 12px; font-weight: 800; }
.sales-participation__feed article { display: flex; align-items: center; gap: 13px; padding: 17px 24px; border-bottom: 1px solid #e9f0ed; }
.sales-participation__feed article:last-child { border-bottom: 0; }
.sales-participation__avatar { display: grid; width: 37px; height: 37px; flex: 0 0 37px; place-items: center; border-radius: 50%; background: #dff7ee; color: #098a60; font-weight: 900; }
.sales-participation__feed article div { min-width: 0; flex: 1; }
.sales-participation__feed article strong, .sales-participation__feed article small { display: block; }
.sales-participation__feed article strong { color: #173f46; font-size: 15px; }
.sales-participation__feed article small { margin-top: 4px; color: #6e8581; font-size: 13px; }
.sales-participation__feed article b { padding: 6px 10px; border-radius: 999px; background: #eff4f1; color: #54706a; font-size: 12px; }
.sales-participation__feed article b.is-approved { background: #e1f7ec; color: #087d55; }
.sales-participation__feed article b.is-rejected { background: #fff0e9; color: #b55a2d; }
.sales-participation__empty { display: grid; gap: 7px; padding: 36px 24px; color: #66817b; line-height: 1.55; }
.sales-participation__empty strong { color: #174851; font-size: 17px; }
.sales-reviews { overflow: hidden; background: #fbfaf8; }
.sales-reviews__heading { margin-bottom: 25px; }
.sales-review-sources { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; margin-bottom: 26px; }
.sales-review-sources a { display: grid; gap: 6px; min-height: 136px; padding: 21px; border: 1px solid #e6e7e3; border-radius: 18px; background: #fff; box-shadow: 0 8px 22px rgba(20, 47, 45, .04); color: inherit; text-decoration: none; transition: transform .2s ease, box-shadow .2s ease; }
.sales-review-sources a:hover { transform: translateY(-3px); box-shadow: 0 14px 28px rgba(20, 47, 45, .10); }
.sales-review-sources span { color: #697b77; font-size: 13px; font-weight: 800; }
.sales-review-sources strong { color: #123a43; font-size: 18px; line-height: 1.36; }
.sales-review-sources small { color: #84918e; font-size: 12px; }
.sales-review-marquee { width: 100vw; margin-left: calc(50% - 50vw); overflow: hidden; }
.sales-review-marquee__track { display: flex; width: max-content; gap: 16px; padding: 5px 8px 18px; animation: b180-review-scroll 46s linear infinite; }
.sales-review-marquee:hover .sales-review-marquee__track { animation-play-state: paused; }
.sales-review-card { display: flex; width: min(330px, calc(100vw - 48px)); min-height: 252px; flex-direction: column; padding: 24px; border: 1px solid #e7e8e4; border-radius: 20px; background: #fff; box-shadow: 0 9px 26px rgba(16, 41, 39, .06); }
.sales-review-card__stars { color: #fb9a12; font-size: 15px; letter-spacing: 2px; }
.sales-review-card h3 { margin: 12px 0 8px; color: #153b43; font-size: 18px; line-height: 1.42; }
.sales-review-card__body { color: #5f716e; font-size: 14px; line-height: 1.62; }
.sales-review-card__body p { margin: 0; }
.sales-review-card > p { display: flex; gap: 6px; flex-wrap: wrap; margin: auto 0 0; padding-top: 15px; color: #7a8986; font-size: 13px; }
.sales-review-card > p strong { color: #385b55; }
.sales-review-card > a { margin-top: 8px; color: #07845b; font-size: 13px; font-weight: 800; }
.sales-reviews__notice { padding: 20px 22px; border: 1px dashed #b8cfc5; border-radius: 16px; color: #5c726d; background: #f6fbf8; font-size: 15px; }
.free-pdf-hero { padding: 104px 0 78px; background: linear-gradient(135deg, #e7f7f0, #eef5fb); text-align: center; }
.free-pdf-hero h1 { margin: 10px 0 14px; color: #062c62; font-size: clamp(36px, 5vw, 60px); letter-spacing: -.06em; }
.free-pdf-hero p:not(.eyebrow) { max-width: 620px; margin: 0 auto 25px; color: #4c7069; font-size: 18px; line-height: 1.65; }
.free-pdf-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; }
.free-pdf-card { display: flex; min-height: 250px; flex-direction: column; padding: 28px; border: 1px solid #e1eae6; border-radius: 21px; background: #fff; }
.free-pdf-card > span { color: #09865d; font-size: 13px; font-weight: 900; letter-spacing: .08em; }
.free-pdf-card h2 { margin: 10px 0; color: #113b44; font-size: 23px; }
.free-pdf-card > div { color: #627671; line-height: 1.6; }
.free-pdf-card .button { align-self: flex-start; margin-top: auto; }
.free-pdf-card__notice { margin-top: auto; color: #7a8b87; font-size: 14px; }
.free-pdf-empty { padding: 65px 24px; border: 1px dashed #b9d0c6; border-radius: 20px; text-align: center; color: #5b716a; }
@keyframes b180-review-scroll { to { transform: translateX(calc(-50% - 8px)); } }
@media (prefers-reduced-motion: reduce) { .sales-review-marquee { overflow-x: auto; } .sales-review-marquee__track { animation: none; } }
@media (prefers-reduced-motion: no-preference) {
	.sales-home .sales-focus__grid article,
	.sales-home .sales-routine__grid article,
	.sales-home .sales-fit__grid article,
	.sales-home .sales-trust__grid article,
	.sales-home .sales-day__weeks article {
		opacity: 0;
		transform: translateY(22px);
		transition: opacity .6s ease, transform .6s cubic-bezier(.2, .7, .2, 1);
	}
	.sales-home .landing-motion-visible {
		opacity: 1;
		transform: translateY(0);
	}
}
@media (max-width: 1100px) {
	.sales-video-card { grid-template-columns: 1fr 1fr; }
	.sales-video-card__visuals { grid-template-columns: 1fr 1fr; }
	.sales-video-card__teacher,
	.sales-video-card__photo { min-height: 230px; }
	.sales-video-card .button { grid-column: auto; }
	.sales-participation__grid { grid-template-columns: 1fr; gap: 30px; }
	.sales-review-sources { grid-template-columns: 1fr; }
	.free-pdf-grid { grid-template-columns: repeat(2, 1fr); }
	.sales-preview__grid { grid-template-columns: 1fr; }
	.sales-preview__visual { max-width: 680px; width: 100%; }
	.challenge-sample-list { grid-template-columns: 1fr; }
}
@media (max-width: 680px) {
	.sales-home .sales-hero__copy.reveal {
		opacity: 1 !important;
		transform: none !important;
	}
	.sales-home .sales-hero__proof strong { font-size: 20px; }
	.sales-focus { padding: 10px 0; }
	.sales-focus__grid { grid-template-columns: 1fr; }
	.sales-focus__grid article,
	.sales-focus__grid article:first-child { padding: 16px 0; border-right: 0; border-bottom: 1px solid rgba(255, 255, 255, .18); }
	.sales-focus__grid article:last-child { border-bottom: 0; }
	.sales-focus__grid strong { font-size: 19px; }
	.sales-focus__grid p { font-size: 14px; }
	.sales-day-photo { margin-top: 24px; border-radius: 19px; }
	.sales-day-photo img { aspect-ratio: 4 / 3; }
	.sales-day-photo figcaption { left: 19px; bottom: 18px; }
	.sales-day-photo figcaption strong { font-size: 22px; }
	.sales-day-photo figcaption span { font-size: 15px; }
	.sales-checkin-photo { border-radius: 20px; }
	.sales-checkin-photo figcaption { font-size: 15px; }
	.sales-video-card { grid-template-columns: 1fr; }
	.sales-video-card__visuals { grid-template-columns: 1fr; }
	.sales-video-card__teacher { min-height: 260px; }
	.sales-video-card__photo { min-height: 190px; }
	.sales-change__takeaways { gap: 8px; margin-top: 25px; }
	.sales-change__takeaways > div { min-height: 100px; padding: 14px 10px; }
	.sales-change__takeaways b { font-size: 19px; }
	.sales-change__takeaways span { font-size: 12px; }
	.sales-preview__visual { min-height: 390px; }
	.sales-preview__visual figure { right: 18px; bottom: 22px; border-radius: 21px; }
	.sales-preview__quote { width: min(86%, 290px); padding: 18px; border-radius: 17px; }
	.sales-preview__quote strong { font-size: 17px; }
	.sales-preview__copy h2 { font-size: 34px; }
	.sales-preview__copy > p:not(.eyebrow) { font-size: 16px; }
	.sales-preview__steps strong { font-size: 16px; }
	.sales-preview__steps small { font-size: 13px; }
	.challenge-sample-list { padding: 23px 18px; border-radius: 19px; }
	.challenge-sample-list h3 { font-size: 22px; }
	.sales-participation__copy h2 { font-size: 31px; }
	.sales-participation__copy > p:not(.eyebrow) { font-size: 16px; }
	.sales-participation__feed { border-radius: 20px; }
	.sales-participation__feed-head, .sales-participation__feed article { padding-left: 17px; padding-right: 17px; }
	.sales-review-sources a { min-height: 108px; padding: 18px; }
	.sales-review-sources strong { font-size: 16px; }
	.free-pdf-hero { padding: 76px 0 55px; }
	.free-pdf-hero p:not(.eyebrow) { font-size: 16px; }
	.free-pdf-grid { grid-template-columns: 1fr; }
	.kakao-floating-contact {
		right: max(12px, env(safe-area-inset-right));
		bottom: max(14px, env(safe-area-inset-bottom));
		min-width: 56px;
		min-height: 56px;
		padding: 7px;
	}
	.kakao-floating-contact__icon {
		width: 30px;
		height: 24px;
		flex-basis: 30px;
	}
}
