

:root {
	--cnvs-themecolor: #E4572E;
	--cnvs-themecolor-rgb: 228, 87, 46;
	--cnvs-subcolor:#fbb48d;

	--cnvs-mainslide1:#fbb48d;
	--cnvs-mainslide2:#a7d5ea;
	--cnvs-mainslide3:#b5e4a6;

	--cc-ink: #1C1917;
	--cc-ink-soft: #000;
	--cc-paper: #FBF9F5;
	--cc-sand: #f4e6d3;
	--cc-line: #E6DED2;
	--cc-gold: #F2A93B;
	--cc-deep: #171412;
	--cc-white:#FFFFFF;
	--cc-black:#000000;
	--cc-themedark:#aa3513;
	--cc-rank-tag: #faa58c;
	--cc-page-active: #faa58c;

	--cc-display: "Fraunces", Georgia, serif;
	--cc-body: "Pretendard Variable", Pretendard, -apple-system, BlinkMacSystemFont, system-ui, Roboto, "Helvetica Neue", "Segoe UI", "Apple SD Gothic Neo", "Noto Sans KR", "Malgun Gothic", "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", sans-serif;

	--primary: #2563eb;
	--danger: #dc2626;
	--warning: #d97706;
	--safe: #16a34a;
	--bg: #f8fafc;


    --surface-2: #f1f2f6;
    --text: #1c1f2a;
    --muted: #6b7280;
    --amber: #E4572E;
    --amber-soft: #f4e3cf;
    --teal: #1f7d7a;
    --teal-soft: #dcf0ef;
	--line:#ddd; 

	--ease-out: cubic-bezier(0.23, 1, 0.32, 1);
	--ease-in-out: cubic-bezier(0.77, 0, 0.175, 1);
}

.btn-theme {
  --bs-btn-color: #fff;
  --bs-btn-bg: #E4572E;
  --bs-btn-border-color: #E4572E;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: rgb(11.05, 93.5, 215.05);
  --bs-btn-hover-border-color: rgb(10.4, 88, 202.4);
  --bs-btn-focus-shadow-rgb: 49, 132, 253;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: rgb(10.4, 88, 202.4);
  --bs-btn-active-border-color: rgb(9.75, 82.5, 189.75);
  --bs-btn-active-shadow: inset 0 3px 5px rgba(0, 0, 0, 0.125);
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #E4572E;
  --bs-btn-disabled-border-color: #E4572E;
}

body {
	font-family: var(--cc-body);
	background-color: #FBF9F5 !important;
	color: var(--cc-ink);
}

h1 {
	font-family: var(--cc-display);
	font-size: clamp(1.9rem, 3.4vw, 2.7rem);
	font-weight: 600;
	line-height: 1.15;
	margin-bottom: 1rem;
	letter-spacing:-2px;
}

h2, h3, .cc-display {
	font-family: var(--cc-display);
	text-wrap: balance;
	letter-spacing: -0.02em;
	color: var(--cc-ink);
}

* { box-sizing: border-box; }

.table {}
.table tr th { padding:15px 15px;}
.table tr td { padding:15px 15px;}

.table tr td a { color:#000;}
.table tr td a:hover { color:#E4572E;}

.table tr th.th-width { max-width:100px !important; min-width:100px !important; width:100px !important; }

.required::after {
content: " *";
color: #fb071e;
font-size:17px;
}

.hr05 { margin-top: 5px !important; margin-bottom: 5px !important; opacity:0.5; }

.line10 {
	clear: both;
	position: relative;
	width: 100%;
	margin: 10px 0;
	border-top: 1px solid #ddd;
}

/* Å©·Ò, »çÆÄ¸®, ¿ÀÆä¶ó, ¿§Áö */
.form-control::-webkit-input-placeholder {
    font-size: 0.9rem;
	color:#999;
}

/* ÆÄÀÌ¾îÆø½º 19+ */
.form-control::-moz-placeholder {
    font-size: 0.9rem;
	color:#999;
}

/* ÀÎÅÍ³Ý ÀÍ½ºÇÃ·Î·¯ 10+ */
.form-control:-ms-input-placeholder {
    font-size: 0.9rem;
	color:#999;
}

/* Ç¥ÁØ ºê¶ó¿ìÀú */
.form-control::placeholder {
    font-size: 0.9rem;
	color:#999;
}

/* ¦¡¦¡ Header ¦¡¦¡ */
#header {
	--cnvs-primary-menu-color: var(--cc-ink);
	background-color: var(--cc-paper);
	border-bottom: 1px solid var(--cc-line);
}
#header .menu-link div {
	font-family: var(--cc-body);
	font-weight: 700;
	font-size: 1.05rem;
	letter-spacing: 0.01em;
}

#header .menu-link:hover div,
#header .menu-link.active div { color: var(--cnvs-themecolor); }

#header .menu-link--cta {
	background-color: var(--cnvs-themecolor); 
	color: #ffffff !important;
	border-radius: 4px;
	padding: 8px 16px;
}
#header .menu-link--cta:hover {
	background-color: #159a80;
}

#header .sub-menu-link div {
	font-weight: 600 !important;
	font-size: 0.95rem !important;
	letter-spacing: -0.01em;
}

.cc-main-color { color: var(--cnvs-themecolor); }

/* ¦¡¦¡ Buttons ¦¡¦¡ */
.cc-btn {
	display: inline-flex;
	align-items: center;
	gap: 0.55rem;
	font-family: var(--cc-body);
	font-weight: 700;
	font-size: 1rem;
	line-height: 1;
	padding: 1.05rem 1.5rem;
	border-radius: 999px;
	border: 2px solid transparent;
	cursor: pointer;
	transition: transform 160ms var(--ease-out), background-color 160ms var(--ease-out), color 160ms var(--ease-out), border-color 160ms var(--ease-out);
	text-decoration: none;
}
.cc-btn:active { transform: scale(0.97); }
.cc-btn-primary {
	background-color: var(--cnvs-themecolor);
	color: #fff;
	text-align:center;
}
.cc-btn-dark {
	background-color: var(--cnvs-black);
	color: #fff;
}

@media (hover: hover) and (pointer: fine) {
	.cc-btn-primary:hover { background-color: #C7451F; color: #fff; }
	.cc-btn-dark:hover { background-color: #333; color: #fff; }
}
.cc-btn-ghost {
	background-color: transparent;
	color: var(--cc-ink);
	border-color: var(--cc-ink);
}
@media (hover: hover) and (pointer: fine) {
	.cc-btn-ghost:hover { background-color: var(--cc-ink); color: var(--cc-paper); }
}
.cc-btn-light {
	background-color: var(--cc-paper);
	color: var(--cc-ink);
}
@media (hover: hover) and (pointer: fine) {
	.cc-btn-light:hover { background-color: #fff; }
}
.cc-btn-sm { padding: 0.7rem 1.3rem; font-size: 0.9rem; }

a:focus-visible, button:focus-visible, summary:focus-visible, .cc-btn:focus-visible {
	outline: 3px solid rgba(var(--cnvs-themecolor-rgb), 0.55);
	outline-offset: 2px;
	border-radius: 6px;
}


.cc-btn-naver {
	background-color: #03A94D;
	color: #fff;
}
@media (hover: hover) and (pointer: fine) {
	.cc-btn-naver:hover { background-color: #03873e; color: #fff; }
}

.cc-btn-kakao {
	background-color: #FEE500;
	color: #000;
}
@media (hover: hover) and (pointer: fine) {
	.cc-btn-kakao:hover { background-color: #dfc903; color: #000; }
}

/* ¦¡¦¡ Hero ¦¡¦¡ */

.cc-box { 
    position: relative; /* ÇÊ¼ö: ÇÏÀ§ Àý´ë À§Ä¡ ÅÂ±×ÀÇ ±âÁØÁ¡ */
    padding: 20px 20px 0px 20px; 
    background: #fff; 
    border-radius: 6px; 
    box-shadow: 0 2px 4px rgba(3, 27, 78, 0.08); /* ¿ÀÅ¸ ¼öÁ¤µÈ °ª */
    border: 1px solid #e5e8ed; 
}
.cc-box h5 { height:50px;}
.cc-box p span { font-size:17px; font-weight:600;}
/* ¼øÀ§ ÅÂ±× ½ºÅ¸ÀÏ */
.cc-box .rank-tag {
    position: absolute;
    top: 0;
    left: 0;
    width: 50px;      /* Å©±â Á¶Á¤ °¡´É */
    height: 40px;     /* Å©±â Á¶Á¤ °¡´É */
    background: var(--cnvs-themecolor); 
    color: #fff;
    font-size: 18px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    border-top-left-radius: 5px;   /* ¹Ú½º ¶ó¿îµå¿Í ¸ÂÃã */
    border-bottom-right-radius: 5px; /* »ç°¢Çü ÇüÅÂ¸¦ À§ÇÑ µðÀÚÀÎ */
    z-index: 10;
}

.cc-slide1 {
	background-color: var(--cnvs-mainslide1);
	padding: 5.5rem 0 5rem;
	position: relative;
	overflow: hidden;
}

.cc-slide2 {
	background-color: var(--cnvs-mainslide2);
	padding: 5.5rem 0 5rem;
	position: relative;
	overflow: hidden;
}

.cc-slide3 {
	background-color: var(--cnvs-mainslide3);
	padding: 5.5rem 0 5rem;
	position: relative;
	overflow: hidden;
}


.cc-hero {
	background: #fbb690 url('/images/main/main_bg_4.png') no-repeat center center;
	background-size: cover;
	padding: 5.5rem 0 5rem;
	position: relative;
	overflow: hidden;
}

/* Äµ¹ö½º¸¦ ¹è°æÀ¸·Î ¹èÄ¡ */
.hero-bg-canvas {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none; /* ¸¶¿ì½º ÀÌº¥Æ® ¹æÇØ ±ÝÁö */
  z-index: 1;
}

/* ÅØ½ºÆ® ¹× ¹öÆ° ÄÜÅÙÃ÷¸¦ Äµ¹ö½º À§·Î ¹èÄ¡ */
.hero-content {
  position: relative;
  z-index: 2;
}

.cc-hero-kicker {
	display: inline-flex;
	align-items: center;
	gap: 0.5rem;
	font-size: 1.1rem;
	font-weight: 600;
	letter-spacing: 0em;
	color: var(--cc-themedark);
	margin-bottom: 0.8rem;
}
.cc-hero-kicker i { font-size: 0.9rem; }
.cc-hero h3 {
	font-size: clamp(2.4rem, 5vw, 3.9rem);
	font-weight: 600;
	line-height: 1.08;
	margin-bottom: 1rem;
}
.cc-hero h1 em {
	font-style: normal;
	color: var(--cnvs-themecolor);
}
.cc-hero-sub {
	font-size: 1.1rem;
	line-height: 1.5;
	color: var(--cc-ink-soft);
	max-width: 40rem;
	margin-bottom: 2rem;
}
.cc-hero-ctas { 
	display: flex; 
	flex-wrap: wrap; 
	gap: 0.5rem; 
	align-items: center; 
	margin-bottom: 1rem; 
}

.cc-seatmeter { max-width: 26rem; }
.cc-seatmeter-label {
	display: flex;
	justify-content: space-between;
	font-size: 0.88rem;
	font-weight: 700;
	margin-bottom: 0.45rem;
}
.cc-seatmeter-label strong { color: var(--cnvs-themecolor); }
.cc-seatmeter-track {
	height: 10px;
	border-radius: 999px;
	background-color: rgba(28, 25, 23, 0.12);
	overflow: hidden;
}
.cc-seatmeter-fill {
	height: 100%;
	width: 75%;
	border-radius: 999px;
	background-color: var(--cnvs-themecolor);
}
.cc-seatmeter-note { font-size: 0.82rem; color: var(--cc-ink-soft); margin-top: 0.5rem; }

.cc-hero-proof {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 1.25rem;
	margin-top: 2.25rem;
	font-size: 0.92rem;
	font-weight: 700;
}
.cc-hero-proof .cc-stars { color: var(--cc-gold); letter-spacing: 0.1em; }

.cc-hero-media { position: relative; }
.cc-hero-media img {
	width: 100%;
	aspect-ratio: 3 / 4;
	max-height: 520px;
	object-fit: cover;
	object-position: top;
	border-radius: 14px;
	display: block;
}
.cc-hero-badge {
	position: absolute;
	bottom: 1.25rem;
	left: 1.25rem;
	right: 1.25rem;
	background-color: var(--cc-paper);
	border-radius: 12px;
	padding: 0.9rem 1.1rem;
	display: flex;
	align-items: center;
	gap: 0.8rem;
}
.cc-hero-badge i { font-size: 1.4rem; color: var(--cnvs-themecolor); }
.cc-hero-badge strong { display: block; font-size: 0.95rem; }
.cc-hero-badge span { font-size: 0.82rem; color: var(--cc-ink-soft); }

/* ¦¡¦¡ Section scaffolding ¦¡¦¡ */
.cc-section { padding: 5.5rem 0; background:#f8f0e6;}
.cc-footer-custom { padding: 3rem 0; }
.cc-section-tight { padding: 4.5rem 0; }
.cc-section-label {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.16em;
	text-transform: uppercase;
	color: var(--cnvs-themecolor);
	margin-bottom: 0.9rem;
}
.cc-section-title {
	font-size: clamp(1.9rem, 3.4vw, 2.7rem);
	font-weight: 600;
	line-height: 1.15;
	margin-bottom: 1rem;
	letter-spacing:-2px;
}
.cc-section-lead {
	font-size: 1.08rem;
	line-height: 1.7;
	color: var(--cc-ink-soft);
	max-width: 50rem;
}

/* ¦¡¦¡ Outcomes ¦¡¦¡ */
.cc-outcome {
	display: flex;
	gap: 1.1rem;
	align-items: flex-start;
	background-color: #fff;
	border: 2px solid #E4572E;
	border-radius: 14px;
	padding: 1.5rem 1.6rem;
	height: 100%;
	transition: transform 200ms var(--ease-out), border-color 200ms var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
	.cc-outcome:hover { transform: translateY(0px); border-color: var(--cnvs-themecolor); }
}

.cc-outcome i{ font-size: 1.25rem; color: var(--cnvs-themecolor); }

.cc-outcome-icon {
	flex: 0 0 auto;
	border-radius: 12px;
	background-color: rgba(var(--cnvs-themecolor-rgb), 0.12);
	color: var(--cnvs-themecolor);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.25rem;
}
.cc-outcome h3 { font-size: 1.3rem; color: var(--cnvs-themecolor); font-weight: 600; margin-bottom: 0.35rem; letter-spacing:-1px;}
.cc-outcome p { font-size: 1.08rem; line-height: 1.7; color: var(--cc-ink-soft); margin: 0; }

/* ¦¡¦¡ Curriculum ¦¡¦¡ */
.cc-curriculum { background-color: var(--cc-sand); }
.cc-module {
	display: flex;
	gap: 1.4rem;
	align-items: flex-start;
	background-color: var(--cc-white) !important;
	border: 2px solid var(--cc-line);
	border-radius: 14px;
	padding: 1.4rem 1rem;
	transition: transform 200ms var(--ease-out), border-color 200ms var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
	.cc-module:hover { transform: translateX(0px); border-color: var(--cnvs-themecolor); }
}
.cc-module-num {
	flex: 0 0 auto;
	font-family: var(--cc-display);
	font-size: 1.5rem;
	font-weight: 600;
	color: var(--cnvs-themecolor);
	width: 2rem;
	line-height: 1.2;
}
.cc-module h3 { font-size: 1.3rem; font-weight: 600; margin-bottom: 0.3rem; letter-spacing:-1px;}
.cc-module p { font-size: 1.08rem; line-height: 1.6; color: var(--cc-ink-soft); margin-bottom: 0.5rem; }
.cc-module-meta {
	font-size: 0.8rem;
	font-weight: 700;
	letter-spacing: 0.04em;
	text-transform: uppercase;
	color: var(--cc-ink-soft);
	display: flex;
	gap: 1rem;
}
.cc-module-meta i { color: var(--cnvs-themecolor); margin-right: 0.3rem; }

@media (min-width: 992px) {
	.cc-curriculum-side { position: sticky; top: 6rem; }
}
.cc-curriculum-side img {
	width: 100%;
	aspect-ratio: 16 / 11;
	object-fit: cover;
	border-radius: 14px;
	display: block;
}

.cc-curriculum-side1 img {
	width: 100%;
	aspect-ratio: 40 / 45;
	object-fit: cover;
	border-radius: 14px;
	display: block;
}

.cc-curriculum-facts { list-style: none; padding: 0; margin: 1.5rem 0 0; }
.cc-curriculum-facts li {
	display: flex;
	align-items: center;
	gap: 0.7rem;
	font-weight: 700;
	font-size: 0.98rem;
	padding: 0.65rem 0;
	border-bottom: 1px solid var(--cc-line);
}
.cc-curriculum-facts li:last-child { border-bottom: 0; }
.cc-curriculum-facts i { color: var(--cnvs-themecolor); font-size: 1.1rem; }


.cc-instructor-faq img {
	width: 100%;
	aspect-ratio: 10 / 12;
	object-fit: cover;
	object-position: top;
	border-radius: 14px;
	display: block;
}

.cc-instructor-cus img {
	width: 100%;
	aspect-ratio: 10 / 13;
	object-fit: cover;
	object-position: top;
	border-radius: 14px;
	display: block;
}

/* ¦¡¦¡ Instructor ¦¡¦¡ */
.cc-instructor-photo img {
	width: 100%;
	aspect-ratio: 3 / 4;
	object-fit: cover;
	object-position: top;
	border-radius: 14px;
	display: block;
}
.cc-cred {
	display: flex;
	gap: 0.9rem;
	align-items: flex-start;
	padding: 1rem 0;
	border-bottom: 1px solid var(--cc-line);
}
.cc-cred:last-of-type { border-bottom: 0; }
.cc-cred i { color: var(--cnvs-themecolor); font-size: 1.3rem; margin-top: 0.15rem; }
.cc-cred strong { display: block; font-family: var(--cc-display); font-size: 1.3rem; color: var(--cnvs-themecolor); margin-bottom: 0.15rem; }
.cc-cred span { font-size: 1.08rem; color: var(--cc-ink-soft); line-height: 1.6; }

.cc-statband {
	background-color: var(--cc-deep);
	border-radius: 14px;
	padding: 2rem;
	margin-top: 2.5rem;
}
.cc-statband .cc-stat { text-align: center; padding: 0.5rem 0; }
.cc-stat-num {
	font-family: var(--cc-display);
	font-size: clamp(2rem, 4vw, 2.8rem);
	font-weight: 600;
	color: var(--cc-paper);
	line-height: 1.1;
}
.cc-stat-num em { color: var(--cnvs-themecolor); font-style: normal; }
.cc-stat-label {
	font-size: 0.85rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: rgba(251, 249, 245, 0.6);
	margin-top: 0.3rem;
}

/* ¦¡¦¡ Testimonials ¦¡¦¡ */
.cc-review-card {
	background-color: #fff;
	border: 1px solid var(--cc-line);
	border-radius: 14px;
	overflow: hidden;
	height: 100%;
	display: flex;
	flex-direction: column;
	transition: transform 200ms var(--ease-out), border-color 200ms var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
	.cc-review-card:hover { transform: translateY(-4px); border-color: var(--cnvs-themecolor); }
}
.cc-review-thumb {
	position: relative;
	display: block;
	cursor: pointer;
}
.cc-review-thumb img {
	width: 100%;
	aspect-ratio: 1 / 1;
	object-fit: cover;
	display: block;
}
.cc-review-play {
	position: absolute;
	inset: 0;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cc-review-play span {
	width: 62px;
	height: 62px;
	border-radius: 50%;
	background-color: var(--cnvs-themecolor);
	color: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 1.4rem;
	transition: transform 200ms var(--ease-out);
}
@media (hover: hover) and (pointer: fine) {
	.cc-review-thumb:hover .cc-review-play span { transform: scale(1.1); }
}
.cc-review-dur {
	position: absolute;
	bottom: 0.8rem;
	right: 0.8rem;
	background-color: rgba(23, 20, 18, 0.85);
	color: var(--cc-paper);
	font-size: 0.75rem;
	font-weight: 800;
	padding: 0.25rem 0.6rem;
	border-radius: 999px;
}
.cc-review-body { padding: 1.4rem 1.5rem 1.6rem; flex: 1; display: flex; flex-direction: column; }
.cc-review-body .cc-stars { color: var(--cc-gold); letter-spacing: 0.12em; margin-bottom: 0.6rem; }
.cc-review-quote {
	font-size: 0.98rem;
	line-height: 1.65;
	color: var(--cc-ink);
	flex: 1;
}
.cc-review-who { margin-top: 1rem; font-size: 0.9rem; }
.cc-review-who strong { display: block; }
.cc-review-who span { color: var(--cc-ink-soft); }

.cc-stat-note { font-size: 0.8rem; color: var(--cc-ink-soft); margin: 1rem 0 0; }

/* ¦¡¦¡ Guarantee ¦¡¦¡ */
.cc-guarantee { background-color: var(--cc-deep); }
.cc-guarantee .cc-section-title { color: var(--cc-paper); }
.cc-guarantee p { color: rgba(251, 249, 245, 0.75); }
.cc-guarantee-lead { font-size: 1.08rem; line-height: 1.75; max-width: 46rem; margin-bottom: 0; }
.cc-guarantee-shield {
	width: 84px;
	height: 84px;
	border-radius: 50%;
	background-color: rgba(var(--cnvs-themecolor-rgb), 0.16);
	color: var(--cnvs-themecolor);
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2.4rem;
	margin-bottom: 1.5rem;
}

/* ¦¡¦¡ Pricing ¦¡¦¡ */
.cc-price-card {
	color: var(--cc-black);
	background-color: #fff;
	border: 2px solid var(--cc-themedark);
	border-radius: 16px;
	padding: 2.5rem;
	position: relative;
	height: 100%;
}

.cc-price-card span {
	color: var(--cc-black) !important;
}

.cc-price-card .list-check { color: var(--cnvs-themecolor) !important; font-weight:600; }

.cc-price-flag {
	position: absolute;
	top: -18px;
	left: 50%;
	transform: translateX(-50%);
	background-color: var(--cnvs-themecolor);
	color: #fff;
	font-size: 0.95rem;
	font-weight: 600;
	padding: 0.35rem 1rem;
	border-radius: 999px;
	white-space: nowrap;
}
.cc-price-plan {
	font-size: 0.95rem;
	font-weight: 700;
	color: var(--cc-ink-soft);
	margin-bottom: 0.75rem;
}
.cc-price-amount {
	font-size: clamp(1.5rem, 4vw, 2rem);
	font-weight: 700;
	line-height: 1;
	letter-spacing:-1px;
}
.cc-price-amount small {
	font-size: 1rem;
	font-weight: 700;
	color: var(--cc-ink-soft);
}
.cc-price-note { font-size: 0.9rem; color: var(--cc-ink-soft); margin: 0.5rem 0 1.5rem; }
.cc-price-list { list-style: none; padding: 0; margin: 0 0 1.75rem; }
.cc-price-list li {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	font-size: 0.96rem;
	font-weight: 600;
	padding: 0.45rem 0;
}
.cc-price-list i { color: var(--cnvs-themecolor); margin-top: 0.2rem; }
.cc-price-alt {
	text-align: center;
	font-size: 0.92rem;
	color: var(--cc-ink-soft);
	margin-top: 1rem;
}
.cc-price-alt strong { color: var(--cc-ink); }

/* ¦¡¦¡ FAQ ¦¡¦¡ */
.cc-faq details {
	background-color: #fff;
	border: 1px solid var(--cc-line);
	border-radius: 12px;
	margin-bottom: 0.9rem;
	overflow: hidden;
}
.cc-faq summary {
	cursor: pointer;
	list-style: none;
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 1rem;
	font-weight: 600;
	font-size: 1.2rem;
	padding: 1.15rem 1.4rem;
	transition: color 160ms var(--ease-out);
}
.cc-faq summary::-webkit-details-marker { display: none; }
.cc-faq summary i {
	flex: 0 0 auto;
	color: var(--cnvs-themecolor);
	transition: transform 250ms var(--ease-out);
}
.cc-faq details[open] summary i { transform: rotate(45deg); }
.cc-faq details[open] summary { color: var(--cnvs-themecolor); }
.cc-faq .cc-faq-answer {
	padding: 0 1.4rem 1.3rem;
	font-size: 1.1rem;
	line-height: 1.7;
	color: var(--cc-ink-soft);
}

/* ¦¡¦¡ Final CTA ¦¡¦¡ */
.cc-final {
	background-color: var(--cnvs-themecolor);
	color: #fff;
	text-align: center;
}
.cc-final h2 { color: #fff; font-size: clamp(2rem, 4vw, 3rem); font-weight: 600; }
.cc-final h3 { color: #fff; font-size: clamp(1.8rem, 3vw, 2rem); font-weight: 600; }
.cc-final p { color: rgba(255, 255, 255, 0.85); font-size: 1.08rem; margin: 0 auto 2rem; }
.cc-final-note { font-size: 0.88rem; color: rgba(255, 255, 255, 0.75); margin: 1rem 0 0; }

/* ¦¡¦¡ Sticky buy bar ¦¡¦¡ */
.cc-stickybar {
	position: fixed;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 990;
	background-color: var(--cc-deep);
	border-top: 1px solid rgba(251, 249, 245, 0.12);
	padding: 0.85rem 0;
	transform: translateY(110%);
	transition: transform 350ms var(--ease-in-out);
}
.cc-stickybar.visible { transform: translateY(0); }
.cc-stickybar-inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 1rem;
}
.cc-stickybar-copy { color: var(--cc-paper); }
.cc-stickybar-copy strong { display: block; font-size: 0.98rem; }
.cc-stickybar-copy span { font-size: 0.82rem; color: rgba(251, 249, 245, 0.65); }
.cc-stickybar-price {
	color: var(--cc-paper);
	font-family: var(--cc-display);
	font-size: 1.5rem;
	font-weight: 600;
	white-space: nowrap;
}
.cc-stickybar-price small {
	font-family: var(--cc-body);
	font-size: 0.8rem;
	font-weight: 700;
	color: rgba(251, 249, 245, 0.6);
	text-decoration: line-through;
	margin-right: 0.4rem;
}
@media (max-width: 575.98px) {
	.cc-stickybar-copy span { display: none; }
	.cc-stickybar-copy strong { font-size: 0.88rem; }
}

/* ¦¡¦¡ Footer ¦¡¦¡ */
#footer {
	--cnvs-footer-bg: #221611;
	--cnvs-footer-top-border: 1px solid rgba(251, 249, 245, 0.08);
	--cnvs-copyrights-link-color: rgba(251, 249, 245, 0.55);
}
.cc-footer-tag {
	font-size: 0.95rem;
	line-height: 1.7;
	color: rgba(251, 249, 245, 0.65);
	max-width: 22rem;
}
.cc-footer-head {
	font-size: 0.78rem;
	font-weight: 800;
	letter-spacing: 0.14em;
	text-transform: uppercase;
	color: rgba(251, 249, 245, 0.5);
	margin-bottom: 1rem;
}
.cc-footer-links { list-style: none; padding: 0; margin: 0; }
.cc-footer-links li { margin-bottom: 0.55rem; }
.cc-footer-links a {
	color: rgba(251, 249, 245, 0.8);
	font-size: 0.94rem;
	font-weight: 600;
	text-decoration: none;
	transition: color 160ms var(--ease-out);
}
.cc-footer-links a:hover { color: var(--cnvs-themecolor); }
.cc-footer-contact li {
	display: flex;
	gap: 0.65rem;
	align-items: flex-start;
	color: rgba(251, 249, 245, 0.8);
	font-size: 0.94rem;
	margin-bottom: 0.7rem;
}
.cc-footer-contact i { color: var(--cnvs-themecolor); margin-top: 0.15rem; }
.cc-news-form { display: flex; gap: 0.5rem; }
.cc-news-form input {
	flex: 1;
	background-color: rgba(251, 249, 245, 0.08);
	border: 1px solid rgba(251, 249, 245, 0.15);
	border-radius: 999px;
	color: var(--cc-paper);
	font-size: 0.92rem;
	padding: 0.7rem 1.1rem;
	min-width: 0;
}
.cc-news-form input::placeholder { color: rgba(251, 249, 245, 0.45); }
.cc-news-form input:focus {
	outline: none;
	border-color: var(--cnvs-themecolor);
	box-shadow: 0 0 0 3px rgba(var(--cnvs-themecolor-rgb), 0.35);
}
.cc-news-form button {
	border: 0;
	border-radius: 999px;
	background-color: var(--cnvs-themecolor);
	color: #fff;
	font-weight: 800;
	font-size: 0.9rem;
	padding: 0.7rem 1.3rem;
	cursor: pointer;
	transition: background-color 160ms var(--ease-out), transform 160ms var(--ease-out);
}
.cc-news-form button:hover { background-color: #C7451F; }
.cc-news-form button:active { transform: scale(0.97); }

.cp-marquee-track {
  display: flex;
  width: max-content;
  animation: cp-marquee 22s linear infinite;
}

.facility-card {
  position: relative;
  border-radius: 12px;
  overflow: hidden;
  border:1px solid #ddd;
}
.facility-card img {
  width: 100%;
  height: 360px;
  object-fit: cover;
  display: block;
  transition: transform 0.4s ease;
}
.facility-card:hover img {
  transform: scale(1.06);
}
.facility-label {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  padding: 14px 20px;
  background: rgba(255, 255, 255, 1);
  border-top: 3px solid var(--cnvs-themecolor);
}
.facility-label h6 {
  margin: 0;
  font-size: 1.3rem;
  font-weight: 600;
  color: var(--cnvs-contrast-900);
  letter-spacing: 0.01em;
}
.facility-label span {
  font-size: 0.86rem;
  color: var(--cnvs-contrast-700);
}


.fade-container { font-size: 1rem; font-weight: bold; }
#fade-text  {opacity: 1; transition: opacity 0.8s ease-in-out; /* ÆäÀÌµå Áö¼Ó ½Ã°£ ¹× ÀÌÂ¡ ÇÔ¼ö ¼³Á¤ */ }
#fade-text.fade-out { opacity: 0; }


#timeline .tl-track-wrap {
  position:relative;
  padding:0 0 30px;
}
#timeline .tl-line {
  position:absolute;
  top:34px;
  left:calc(10% + 27px);
  right:calc(10% + 27px);
  height:1px;
  background:linear-gradient(90deg,#E4572E 0%,#E4572E 50%,#E4572E 100%);
  z-index:0;
}
#timeline .tl-line-progress {
  position:absolute;
  top:34px;
  left:calc(10% + 27px);
  width:calc(20% + 27px);
  height:1px;
  background:linear-gradient(90deg,#D4AE72 0%,#E4572E 100%);
  z-index:1;
}
#timeline .tl-nodes {
  position:relative;
  z-index:2;
  display:flex;
  justify-content:space-between;
  padding:0 10%;
}
#timeline .tl-node {
  display:flex;
  flex-direction:column;
  align-items:center;
  text-align:center;
  flex:1;
}
#timeline .tl-circle {
  width:68px;
  height:68px;
  border-radius:50%;
  border:1.5px solid #E4572E;
  background:#E4572E;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:24px;
  flex-shrink:0;
}
#timeline .tl-circle.active {
  border-color:#E4572E;
  background:#E4572E;
}
#timeline .tl-circle i {
  font-size:28px;
  color:#FFF;
}
#timeline .tl-date {
  font-size:20px;
  font-weight:500;
  color:#E4572E;
  letter-spacing: -1px;
  line-height:1;
  margin-bottom: 10px;
}
#timeline .tl-milestone {
  font-size:0.95rem;
  font-weight:600;
  letter-spacing: 0px;
  color:#000;
  margin-bottom:10px;
}
#timeline .tl-desc {
  font-size:0.8125rem;
  font-weight:300;
  color:#9E9990;
  line-height:1.6;
  max-width:120px;
}

@media (max-width:991px) {
  #timeline .tl-nodes { padding:0 0; flex-wrap:wrap; gap:48px; justify-content:center; }
  #timeline .tl-node { flex:0 0 40%; }
  #timeline .tl-line, #timeline .tl-line-progress { display:none; }
  #timeline .tl-h2 { font-size:38px; }
  #timeline .tl-track-wrap { padding-bottom:0; }
}
@media (max-width:575px) {
  #timeline .tl-node { flex:0 0 100%; }
}


.gallery-filters {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 8px;
	margin-bottom: 48px;
}

.filter-btn {
	position: relative;
	background: transparent;
	border: 1px solid #000;
	color: #000;
	padding: 8px 24px;
	font-size: 0.9rem;
	font-weight: 600;
	letter-spacing: 0em;
	text-transform: uppercase;
	transition: all 0.3s ease;
	border-radius: 0;
	outline: none;
}

.filter-btn:hover {
	border:1px solid #E4572E;
	color: #E4572E;
}

.filter-btn.active {
	border:1px solid #E4572E;
	color: #E4572E;
}


.masonry-grid {
	column-count: 3;
	column-gap: 4px;
	padding: 0 10px;
}

@media (max-width: 991px) {
	.masonry-grid { column-count: 2; }
}

@media (max-width: 575px) {
	.masonry-grid { column-count: 1; }
}

.gallery-card {
	position: relative;
	overflow: hidden;
	break-inside: avoid;
	margin-bottom: 10px;
	padding: 5px;
	display: block;
	cursor: pointer;
}

.gallery-card img {
	width: 100%;
	height: auto;
	display: block;
	transition: transform 0.6s cubic-bezier(0.25, 0.46, 0.45, 1);
}

.gallery-card:hover img {
	transform: scale(1);
}

.gallery-card-overlay {
	position: absolute;
	inset: 0;
	background: rgba(0,0,0,0);
	transition: background 0.4s ease;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 30px;
}

.gallery-card:hover .gallery-card-overlay {
	background: rgba(0,0,0,0.5);
}

.gallery-card-overlay .cat-tag {
	font-family: var(--cnvs-secondary-font);
	font-size: 0.6rem;
	font-weight: 600;
	letter-spacing: 0em;
	text-transform: uppercase;
	color: #FFF;
	opacity: 0;
	transform: translateY(8px);
	transition: all 0.4s ease 0.1s;
	margin-bottom: 6px;
}

.gallery-card-overlay .img-title {
	font-family: var(--cnvs-primary-font);
	font-size: 1.2rem;
	font-weight: 400;
	color: #fff;
	opacity: 0;
	transform: translateY(8px);
	transition: all 0.4s ease 0.18s;
}

.gallery-card-overlay .plus-icon {
	position: absolute;
	top: 18px;
	right: 18px;
	width: 32px;
	height: 32px;
	border: 1px solid rgba(255,255,255,0.5);
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	font-size: 1.1rem;
	opacity: 0;
	transform: scale(0.8);
	transition: all 0.4s ease;
}

.gallery-card:hover .cat-tag,
.gallery-card:hover .img-title {
	opacity: 1;
	transform: translateY(0);
}

.gallery-card:hover .plus-icon {
	opacity: 1;
	transform: scale(1);
}


.q-card { background: #fff; border: 1px solid #e2e8f0; border-radius: 8px; padding: 20px; margin-bottom: 20px; box-shadow: 0 1px 3px rgba(0,0,0,0.05); }
.q-title { font-weight: 700; font-size: 1.1rem; margin-bottom: 8px; color: #0f172a; }
.q-desc { font-size: 1rem; color: #475569; background: #f1f5f9; padding: 10px 12px; border-radius: 6px; margin-bottom: 14px; line-height: 1.4; }
.options label { margin-right: 20px; cursor: pointer; font-size: 0.95rem; font-weight: 500; }
.btn-submit { display: block; width: 100%; background: var(--primary); color: #fff; border: none; padding: 14px; font-size: 1.1rem; font-weight: 600; border-radius: 8px; cursor: pointer; margin-top: 20px; transition: background 0.2s; }
.btn-submit:hover { background: #1d4ed8; }
#result-box { display: none; margin-top: 30px; background: #fff; border-radius: 8px; padding: 25px; border-top: 5px solid var(--primary); box-shadow: 0 4px 6px rgba(0,0,0,0.05); }
.score-highlight { font-size: 1.3rem; font-weight: bold; margin-bottom: 10px; }

#resultDesc { font-size: 1.15rem; font-weight: 600; line-height: 1.6; }



/* ¿Â¶óÀÎ °ßÀû °è»ê */

 .eyebrow{
    font-size:12px;letter-spacing:0.14em;color:var(--amber);
    text-transform:uppercase;margin-bottom:14px;
    display:flex;align-items:center;gap:10px;
  }
  .eyebrow::before{
    content:'';width:7px;height:7px;border-radius:50%;
    background:var(--teal);box-shadow:0 0 0 3px rgba(79,176,174,0.18);
  }
  h1{font-size:clamp(24px,4vw,34px);font-weight:700;letter-spacing:-0.01em;margin-bottom:10px;}
  .sub{color:var(--muted);font-size:15px;line-height:1.6;max-width:640px;margin-bottom:40px;}

  .section-title{
    font-size:11px;letter-spacing:0.1em;text-transform:uppercase;
    color:var(--amber);margin-bottom:14px;
  }
  .section-title .n{color:var(--muted);}

  .form-select, .form-select:focus{
    background-color:var(--surface-2);
    border-color:var(--line);
    color:var(--text);
    box-shadow:none;
  }
  .form-select:focus{border-color:var(--teal);}
  .form-label{font-size:13.5px;font-weight:500;color:var(--text);}

  /* chip-style checkboxes using btn-check */
  .btn-check + .btn-chip{
    background:var(--surface-2);
    border:1px solid var(--line);
    color:var(--text);
    border-radius:999px;
    font-size:13.5px;
    padding:9px 14px;
    display:inline-flex;
    align-items:center;
    gap:7px;
  }
  .btn-check:checked + .btn-chip{
    background:var(--teal-soft);
    border-color:var(--teal);
    color:var(--teal);
    font-weight:600;
  }
  .btn-chip .price{color:var(--muted);font-size:11.5px;}
  .btn-check:checked + .btn-chip .price{color:var(--teal);}

  .receipt-head{border-bottom:1px dashed var(--line);padding:22px 26px 18px;}
  .receipt-head .label{font-size:11px;letter-spacing:0.1em;color:var(--muted);text-transform:uppercase;margin-bottom:6px;}
  .total{font-size:38px;font-weight:700;color:var(--amber);letter-spacing:-0.01em;line-height:1.1;}
  .total span{font-size:17px;color:var(--muted);font-weight:400;margin-left:4px;}

  .lines{padding:18px 26px 8px;}
  .line_est{
    display:flex;justify-content:space-between;align-items:baseline;
    font-size:13px;padding:7px 0;color:var(--muted);
    border-bottom:1px solid var(--line);
  }
  .line_est .l-name{color:var(--text);}
  .line_est .l-val{white-space:nowrap;margin-left:12px;}
  .line_est .l-val.neg{color:var(--teal);}

  .receipt-foot{padding:16px 26px 24px;}
  .btn-cta{
    background:var(--amber);border-color:var(--amber);
    color:#fff;font-weight:700;font-size:14.5px;
  }
  .btn-cta:hover{background:var(--amber);filter:brightness(1.1);color:#fff;}
  .disclaimer{font-size:11.5px;color:var(--muted);line-height:1.6;margin-top:14px;padding-top:14px;border-top:1px solid var(--line);}

  .badge-consult{
    font-size:11px;color:var(--danger);
    background:#faeae5;
    border:1px solid #f0c9bc;
    padding:5px 10px;border-radius:999px;margin-bottom:10px;
    display:inline-block;
  }


/* Testimonials Carousel
-----------------------------------------------------------------*/
.testimonials-carousel .owl-stage {
	padding: 2rem 0 1.5rem;
}

.testimonials-carousel .owl-item {
	opacity: .5;
	transition: transform .3s ease;
	transform: scale(0.8);
}

.testimonials-carousel .owl-item.active.center {
	opacity: 1;
	transform: scale(1);
	border:2px solid var(--cnvs-themecolor);
	border-radius: 8px;
}

.testimonial {
	border: 0;
	box-shadow: 0 0 35px rgba(140, 152, 164, 0.2);
	border-radius: 0.25rem;
	padding: 25px;
}

.testimonial-image {
	width: 5rem !important;
	height: auto !important;
	margin: -2.5rem auto 0;
}


.badge1 {
  display: inline-block;
  padding: 10px 20px;
  font-size: 13px;
  font-weight: 500;
  line-height: 1;
  text-align: center;
  white-space: nowrap;
  vertical-align: baseline;
  border-radius: 0px;
}

.text-bg-m1 {
  color: #1d5ebe !important;
  background-color:#cfe2ff !important;
  border:1px solid #9ec5fe !important;
}

.text-bg-m2 {
  color: #19a666 !important;
  background-color:#d1e7dd  !important;
  border:1px solid #a3cfbb !important;
}

.text-bg-m3 {
  color: #b41f2f !important;
  background-color:#f8d7da  !important;
  border:1px solid #f1aeb5 !important;
}

.text-bg-m4 {
  color: #1d90a7 !important;
  background-color:#cff4fc  !important;
  border:1px solid #9eeaf9 !important;
}

.text-bg-step {
  color: #FFF !important;
  background-color:#979696  !important;
  
}

.text-bg-pay {
  color: #FFF !important;
  background-color:#4b6dec  !important;
}

.text-bg-done {
  color: #FFF !important;
  background-color:#979696  !important;
}

.text-bg-start {
  color: #FFF !important;
  background-color:#979696  !important;
}

.text-bg-ing {
  color: #FFF !important;
  background-color:#f79810  !important;
}

.text-bg-hold {
  color: #FFF !important;
  background-color:#a34af6  !important;
}

.text-bg-end {
  color: #FFF !important;
  background-color:#63bd54  !important;
}

.pagination {}
.pagination .page-item a { color:#000 !important;}
.pagination .page-item a:hover { color:#fff !important;}
.pagination .active > .page-link { color:#FFF !important; border:1px solid #d98168 !important; background-color:#faa58c !important;}
.pagination .page-link { color:#000 !important;}



@media (max-width: 767.98px) {
.container { max-width: 100% !important; overflow-x: hidden !important; }
.side-push-panel #side-panel-trigger-close a { color: var(--cnvs-themecolor) !important; }
.cc-hero { padding: 2rem 0 1rem; }
.cc-hero h1{ color: var(--cnvs-themecolor) !important;  font-size:24px !important; line-height:36px !important; margin-bottom:10px !important;}
.cc-hero-kicker { font-size:15px !important; margin-bottom:10px !important;}
.cc-hero-sub { font-size:15px !important; margin-bottom:10px !important;}
.cc-hero-media img { width: 100%; aspect-ratio: 4 / 3; max-height: 520px; object-fit: cover; object-position: top; border-radius: 14px; display: block;}
.cc-instructor-faq img { width: 100%; aspect-ratio: 4 / 4; object-fit: cover; object-position: top; border-radius: 14px; display: block; }
.cc-section { padding: 2rem 0; }
.cc-faq summary { font-size:1.1rem;}
.cc-module { padding: 1.4rem 1.4rem; }
.cc-module p { font-size: 1rem; line-height: 1.4; }
.cc-outcome p { font-size: 1rem; line-height: 1.4; }
.cc-cred span { font-size: 1rem; line-height: 1.4; }
.cc-price-card { position: relative; color: var(--cc-black); background-color: #fff; border: 2px solid var(--cc-themedark); border-radius: 16px; padding: 1rem; height: 100%;}

.grid-filter { border: var(--cnvs-grid-filter-border) solid var(--cnvs-grid-filter-border-color); border-radius: var(--cnvs-grid-filter-border-radius); }
.grid-filter li a { border-left: var(--cnvs-grid-filter-border) solid var(--cnvs-grid-filter-border-color); border-top: var(--cnvs-grid-filter-border) solid var(--cnvs-grid-filter-border-color); border-radius: 0;}
.bothsidebar .grid-filter li a { padding: 12px 14px; }
.copyright-links a { font-size:12px !important;}
.cc-final h3 { font-size:24px;}
.cc-final p { font-size:15px;}
#footer .footer-widgets-wrap  { padding: 2rem 0; }

.table {}
.table tr th { padding:10px 4px; }
.table tr td { padding:10px 4px; }
.table tr th.th-width { font-size:14px; max-width:70px !important; min-width:70px !important; width:70px !important;  }
}

.form-check .form-check-label { font-size:14px !important; margin-bottom:0px !important;}
.form-check .form-check-label1 { font-size:17px !important; margin-bottom:0px !important;}

@media (max-width: 1024px) {
    .side-panel-trigger.header-misc-icon {
        display: block !important;
    }
}



/* ¦¡¦¡ Reveal polish ¦¡¦¡ */
[data-animate] { will-change: transform, opacity; }

@media (prefers-reduced-motion: reduce) {
	*, *::before, *::after {
		transition-duration: 0.01ms !important;
		animation-duration: 0.01ms !important;
	}
	.cc-stickybar { transition: none; }
}

.content-wrap {
	padding-top: 0;
	padding-bottom: 0;
}

.section {
	margin-top: 0;
	margin-bottom: 0;
}

/* »ö»óº¯°æ */

.bg-overlay-bg {
    background-color: rgba(250, 90, 20, 0.8) !important; 
}



/* floating À» ÇØÁ¦ÇÏ±â À§ÇÑ Å¬·¡½º Ãß°¡, ÀÇ¹Ì¾ø´Â clear¸¸ ÀÖ´Â gabage source Á¦°Å */
.clearfix:after {content:".";display:block;height:0;clear:both;visibility:hidden;}
.clearfix {display: inline-block; }
/* Hides from IE-mac \*/
* html .clearfix {height: 1px; }
.clearfix {display: block;}
/* End hide from IE-mac */

.letter_spacing-0 { letter-spacing:0px !important; }
.letter_spacing-1 { letter-spacing:-1px !important; }
.letter_spacing-2 { letter-spacing:-0.08em !important; }
.letter_spacing-3 { letter-spacing:-3px !important; }
.letter_spacing-4 { letter-spacing:-4px !important; }

.lineheight14 { line-height:14px !important; }
.lineheight15 { line-height:15px !important; }
.lineheight16 { line-height:16px !important; }
.lineheight17 { line-height:17px !important; }
.lineheight18 { line-height:18px !important; }
.lineheight19 { line-height:19px !important; }
.lineheight20 { line-height:20px !important; }
.lineheight21 { line-height:21px !important; }
.lineheight22 { line-height:22px !important; }
.lineheight23 { line-height:23px !important; }
.lineheight24 { line-height:24px !important; }
.lineheight25 { line-height:25px !important; }
.lineheight26 { line-height:26px !important; }
.lineheight27 { line-height:27px !important; }
.lineheight28 { line-height:28px !important; }
.lineheight29 { line-height:29px !important; }
.lineheight30 { line-height:30px !important; }
.lineheight31 { line-height:31px !important; }
.lineheight32 { line-height:32px !important; }

.lineheight40 { line-height:40px !important; }
.lineheight46 { line-height:46px !important; }
.lineheight50 { line-height:50px !important; }
.lineheight60 { line-height:60px !important; }
.lineheight66 { line-height:66px !important; }

.opacity1 { opacity: 0.1 !important; }
.opacity2 { opacity: 0.2 !important; }
.opacity3 { opacity: 0.3 !important; }
.opacity4 { opacity: 0.4 !important; }
.opacity5 { opacity: 0.5 !important; }
.opacity6 { opacity: 0.6 !important; }
.opacity7 { opacity: 0.7 !important; }
.opacity8 { opacity: 0.8 !important; }
.opacity9 { opacity: 0.9 !important; }
.opacity10 { opacity: 1 !important; }


.bgcolor_gray { background:#e9ecef !important;}
.bgcolor_gray1 { background:#f1f1f1 !important;}
.bgcolor_gray2 { background:#f5f5f5 !important;}
.bgcolor_blue { background:#e7f2f7 !important;}
.bgcolor_yellow { background:#fcf8e3 !important;}
.bgcolor_yellow1 { background:#f3f0e4 !important;}
.bgcolor_main { background:#0b339c !important;}
.bgcolor_white { background:#ffffff !important;}
.bgcolor_com { background:#F3EDE4 !important;}

.border-radius-0 { border-radius:0px !important;}
.border-radius-1 { border-radius:1px !important;}
.border-radius-2 { border-radius:2px !important;}
.border-radius-3 { border-radius:3px !important;}
.border-radius-4 { border-radius:4px !important;}
.border-radius-5 { border-radius:5px !important;}
.border-radius-10 { border-radius:10px !important;}

.border1 { border:1px solid #ddd;}

.radius-left-none { border-radius: 0px 10px 10px 0px !important;}
.radius-right-none { border-radius: 10px 0px 0px 10px !important;}
.radius-none { border-radius: 0 !important;}

.t300 { font-weight: 300 !important; }
.t400 { font-weight: 400 !important; }
.t500 { font-weight: 500 !important; }
.t600 { font-weight: 600 !important; }
.t700 { font-weight: 700 !important; }

.text-left { text-align: left !important; }
.text-right { text-align: right !important; }
.text-center { text-align: center !important; }

.text-over { display: block; overflow:hidden;white-space:nowrap;text-overflow:ellipsis; width: 100%;}
.text-over1 { overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;line-height:1.5em;max-height:1.5em}
.text-over2 { overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.5em;min-height:3em}
.text-over3 { overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;line-height:1.5em;min-height:4.5em}

.text-short100 {width:100px; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden;}
.text-short200 {width:200px; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden;}
.text-short300 {width:300px; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden;}
.text-short400 {width:400px; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden;}
.text-short500 {width:500px; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden;}
.text-short600 {width:600px; text-overflow:ellipsis; white-space:nowrap; word-wrap:normal; overflow:hidden;}

.width10 { width:10% !important;}
.width15 { width:15% !important;}
.width16 { width:16.666666666666% !important;}
.width17 { width:17.5% !important;}
.width20 { width:20% !important;}
.width24 { width:24.3% !important;}
.width25 { width:25% !important;}
.width30 { width:30% !important;}
.width40 { width:40% !important;}
.width50 { width:50% !important;}
.width60 { width:60% !important;}
.width70 { width:70% !important;}
.width80 { width:80% !important;}
.width90 { width:90% !important;}
.width100 { width:100% !important;}

.height5 { height:5px !important;}
.height10 { height:10px !important;}
.height20 { height:20px !important;}
.height30 { height:30px !important;}
.height40 { height:40px !important;}
.height50 { height:50px !important;}
.height60 { height:60px !important;}
.height70 { height:70px !important;}
.height80 { height:80px !important;}
.height90 { height:90px !important;}
.height100 { height:100px !important;}

.w50 { width:50px !important; }
.w60 { width:60px !important; }
.w70 { width:70px !important; }
.w80 { width:80px !important; }
.w90 { width:90px !important; }
.w100 { width:100px !important; }
.w110 { width:110px !important; }
.w120 { width:120px !important; }
.w130 { width:130px !important; }
.w140 { width:140px !important; }
.w150 { width:150px !important; }
.w160 { width:160px !important; }
.w170 { width:170px !important; }
.w180 { width:180px !important; }
.w190 { width:190px !important; }
.w200 { width:200px !important; }
.w210 { width:210px !important; }
.w220 { width:220px !important; }
.w230 { width:230px !important; }
.w240 { width:240px !important; }
.w250 { width:250px !important; }
.w260 { width:260px !important; }
.w270 { width:270px !important; }
.w280 { width:280px !important; }
.w290 { width:290px !important; }
.w300 { width:300px !important; }
.w310 { width:310px !important; }
.w320 { width:320px !important; }
.w330 { width:330px !important; }
.w340 { width:340px !important; }
.w350 { width:350px !important; }
.w360 { width:360px !important; }
.w370 { width:370px !important; }
.w380 { width:380px !important; }
.w390 { width:390px !important; }
.w400 { width:400px !important; }
.w500 { width:500px !important; }
.w600 { width:600px !important; }


.mw10 { min-width:10px !important; }
.mw20 { min-width:20px !important; }
.mw30 { min-width:30px !important; }
.mw40 { min-width:40px !important; }
.mw50 { min-width:50px !important; }
.mw60 { min-width:60px !important; }
.mw70 { min-width:70px !important; }
.mw80 { min-width:80px !important; }
.mw90 { min-width:90px !important; }
.mw100 { min-width:100px !important; }
.mw110 { min-width:110px !important; }
.mw120 { min-width:120px !important; }
.mw130 { min-width:130px !important; }
.mw140 { min-width:140px !important; }
.mw150 { min-width:150px !important; }
.mw160 { min-width:160px !important; }
.mw170 { min-width:170px !important; }
.mw180 { min-width:180px !important; }
.mw190 { min-width:190px !important; }
.mw200 { min-width:200px !important; }
.mw210 { min-width:210px !important; }
.mw220 { min-width:220px !important; }
.mw230 { min-width:230px !important; }
.mw240 { min-width:240px !important; }
.mw250 { min-width:250px !important; }
.mw260 { min-width:260px !important; }
.mw270 { min-width:270px !important; }
.mw280 { min-width:280px !important; }
.mw290 { min-width:290px !important; }
.mw300 { min-width:300px !important; }
.mw310 { min-width:310px !important; }
.mw320 { min-width:320px !important; }
.mw330 { min-width:330px !important; }
.mw340 { min-width:340px !important; }
.mw350 { min-width:350px !important; }
.mw360 { min-width:360px !important; }
.mw370 { min-width:370px !important; }
.mw380 { min-width:380px !important; }
.mw390 { min-width:390px !important; }
.mw400 { min-width:400px !important; }
.mw500 { min-width:500px !important; }
.mw600 { min-width:600px !important; }


.padding2 {padding: 2px 2px 2px 2px !important;}
.padding5 {padding: 10px 5px 10px 5px !important;}
.padding10 {padding: 10px !important;}
.padding15 {padding: 15px !important;}
.padding20 {padding: 20px !important;}
.padding30 {padding: 30px !important;}
.padding40 {padding: 40px !important;}
.padding50 {padding: 50px !important;}

.paddingtop0 {padding-top: 0px !important;}
.paddingtop5 {padding-top: 5px !important;}
.paddingtop8 {padding-top: 8px !important;}
.paddingtop9 {padding-top: 9px !important;}
.paddingtop10 {padding-top: 10px !important;}
.paddingtop15 {padding-top: 15px !important;}
.paddingtop20 {padding-top: 20px !important;}
.paddingtop30 {padding-top: 30px !important;}
.paddingtop40 {padding-top: 40px !important;}
.paddingtop50 {padding-top: 50px !important;}

.paddingbot5 {padding-bottom: 5px !important;}
.paddingbot8 {padding-bottom: 8px !important;}
.paddingbot10 {padding-bottom: 10px !important;}
.paddingbot15 {padding-bottom: 15px !important;}
.paddingbot20 {padding-bottom: 20px !important;}
.paddingbot30 {padding-bottom: 30px !important;}
.paddingbot40 {padding-bottom: 40px !important;}
.paddingbot50 {padding-bottom: 50px !important;}
.paddingbot60 {padding-bottom: 60px !important;}
.paddingbot70 {padding-bottom: 70px !important;}
.paddingbot80 {padding-bottom: 80px !important;}
.paddingbot90 {padding-bottom: 90px !important;}

.clear-paddingleft {padding-left:0px !important;}
.clear-paddingright {padding-right:0px !important;}
.clear-paddingtop {padding-top:0px !important;}
.clear-paddingbot {padding-bottom:0px !important;}

.paddingleft2 {padding-left:2px !important;}
.paddingleft5 {padding-left:5px !important;}
.paddingleft10 {padding-left:10px !important;}
.paddingleft15 {padding-left:15px !important;}
.paddingleft20 {padding-left:20px !important;}

.paddingright2 {padding-right:2px !important;}
.paddingright5 {padding-right:5px !important;}
.paddingright10 {padding-right:10px !important;}
.paddingright15 {padding-right:15px !important;}
.paddingright20 {padding-right:20px !important;}
.paddingright100 {padding-right:100px !important;}

.clear-marginbot{ margin-bottom:0 !important;}

.margin5 { margin-top:5px !important; margin-bottom:5px !important; margin-left:10px !important; margin-right:10px !important;}

.marginbot0{	margin-bottom:0px !important;}
.marginbot5{	margin-bottom:5px !important;}
.marginbot10{ margin-bottom:10px !important;}
.marginbot15{ margin-bottom:15px !important;}
.marginbot20{ margin-bottom:20px !important;}
.marginbot25{ margin-bottom:25px !important;}
.marginbot30{ margin-bottom:30px !important;}
.marginbot35{ margin-bottom:35px !important;}
.marginbot40{ margin-bottom:40px !important;}
.marginbot45{ margin-bottom:45px !important;}
.marginbot50{ margin-bottom:50px !important;}
.marginbot55{ margin-bottom:55px !important;}
.marginbot100{ margin-bottom:50px !important;}

.clear-margintop{ margin-top:0 !important;}
.margintop0{	margin-top:0px !important;}
.margintop3{	margin-top:3px !important;}
.margintop5{	margin-top:5px !important;}
.margintop7{ margin-top:7px !important;}
.margintop8{ margin-top:8px !important;}
.margintop10{ margin-top:10px !important;}
.margintop15{ margin-top:15px !important;}
.margintop16{ margin-top:16px !important;}
.margintop17{ margin-top:17px !important;}
.margintop18{ margin-top:18px !important;}
.margintop19{ margin-top:19px !important;}
.margintop20{ margin-top:20px !important;}
.margintop30{ margin-top:30px !important;}
.margintop40{ margin-top:40px !important;}
.margintop50{ margin-top:50px !important;}
.margintop100{ margin-top:100px !important;}

.clear-marginleft { margin-left:0 !important;}
.marginleft0{ margin-left:0px !important;}
.marginleft5{ margin-left:5px !important;}
.marginleft10{ margin-left:10px !important;}
.marginleft15{ margin-left:15px !important;}
.marginleft20{ margin-left:20px !important;}
.marginleft25{ margin-left:25px !important;}
.marginleft30{ margin-left:30px !important;}
.marginleft35{ margin-left:35px !important;}
.marginleft40{ margin-left:40px !important;}
.marginleft45{ margin-left:45px !important;}
.marginleft50{ margin-left:50px !important;}
.marginleft55{ margin-left:55px !important;}
.marginleft120{ margin-left:120px !important;}

.clear-marginright {margin-right:0 !important;}
.marginright0	{margin-right:0px !important;}
.marginright5	{margin-right:5px !important;}
.marginright10	{margin-right:10px !important;}
.marginright15	{margin-right:15px !important;}
.marginright20	{margin-right:20px !important;}
.marginright25	{margin-right:25px !important;}
.marginright30	{margin-right:30px !important;}
.marginright35	{margin-right:35px !important;}
.marginright40	{margin-right:40px !important;}
.marginright45	{margin-right:45px !important;}
.marginright50	{margin-right:50px !important;}
.marginright55	{margin-right:55px !important;}

.fontsize8 {font-size:8px !important;}
.fontsize9 {font-size:9px !important;}
.fontsize10 {font-size:10px !important;}
.fontsize11 {font-size:11px !important;}
.fontsize12 {font-size:12px !important;}
.fontsize13 {font-size:13px !important;}
.fontsize14 {font-size:14px !important;}
.fontsize15 {font-size:15px !important;}
.fontsize16 {font-size:16px !important;}
.fontsize17 {font-size:17px !important;}
.fontsize18 {font-size:18px !important;}
.fontsize19 {font-size:19px !important;}
.fontsize20 {font-size:20px !important;}
.fontsize21 {font-size:21px !important;}
.fontsize22 {font-size:22px !important;}
.fontsize23 {font-size:23px !important;}
.fontsize24 {font-size:24px !important;}
.fontsize25 {font-size:25px !important;}
.fontsize26 {font-size:26px !important;}
.fontsize27 {font-size:27px !important;}
.fontsize28 {font-size:28px !important;}
.fontsize29 {font-size:29px !important;}
.fontsize30 {font-size:30px !important;}
.fontsize31 {font-size:31px !important;}
.fontsize32 {font-size:32px !important;}
.fontsize33 {font-size:33px !important;}
.fontsize34 {font-size:34px !important;}
.fontsize35 {font-size:35px !important;}
.fontsize36 {font-size:36px !important;}
.fontsize37 {font-size:37px !important;}
.fontsize38 {font-size:38px !important;}
.fontsize39 {font-size:39px !important;}
.fontsize40 {font-size:40px !important;}
.fontsize41 {font-size:41px !important;}
.fontsize42 {font-size:42px !important;}
.fontsize43 {font-size:43px !important;}
.fontsize44 {font-size:44px !important;}
.fontsize45 {font-size:45px !important;}
.fontsize46 {font-size:46px !important;}
.fontsize47 {font-size:47px !important;}
.fontsize48 {font-size:48px !important;}
.fontsize49 {font-size:49px !important;}
.fontsize50 {font-size:50px !important;}

.fontsize-bold12 {font-size:12px; font-weight:bold !important;}
.fontsize-bold13 {font-size:13px; font-weight:bold !important}
.fontsize-bold14 {font-size:14px; font-weight:bold !important;}
.fontsize-bold15 {font-size:15px; font-weight:bold !important;}
.fontsize-bold16 {font-size:16px; font-weight:bold !important;}
.fontsize-bold17 {font-size:17px; font-weight:bold !important;}
.fontsize-bold18 {font-size:18px; font-weight:bold !important;}
.fontsize-bold19 {font-size:19px; font-weight:bold !important;}
.fontsize-bold20 {font-size:20px; font-weight:bold !important;}
.fontsize-bold21 {font-size:21px; font-weight:bold !important;}
.fontsize-bold22 {font-size:22px; font-weight:bold !important;}
.fontsize-bold23 {font-size:23px; font-weight:bold !important;}
.fontsize-bold24 {font-size:24px; font-weight:bold !important;}
.fontsize-bold25 {font-size:25px; font-weight:bold !important;}


.fontcolor_red {color:#e22113 !important;}
.fontcolor_blue {color:#3675de !important;}
.fontcolor_white {color:#fff !important;}


.fontcolor-default {color:#41200b !important;}
.fontcolor-red {color:#e22113 !important;}
.fontcolor-blue {color:#3675de !important;}
.fontcolor-orange {color:#fa6f13 !important;}
.fontcolor-black {color:#000 !important;}
.fontcolor-white {color:#fff !important;}
.fontcolor-222 {color:#222 !important;}
.fontcolor-gray {color:#666 !important;}
.fontcolor-808080 {color:#808080 !important;}
.fontcolor-666 {color:#666 !important;}
.fontcolor-ddd {color:#ddd !important;}
.fontcolor-bbb {color:#bbbbbb !important;}
.fontcolor-mint1 {color:#19dec3 !important;}
.fontcolor-mint2 {color:#3ab4a5 !important;}
.fontcolor-mint3 {color:#ddd !important;}
.fontcolor-brown {color:#ae817f !important;}
.fontcolor-themedark { color:var(--cc-themedark);}

.fontbold { font-weight:bold;}

.responsive-container-img {
  width: 100%; /* ºÎ¸ð ÄÁÅ×ÀÌ³Ê ³Êºñ¿¡ µû¶ó Å©±â Á¶Á¤ */
  aspect-ratio: 16 / 12; /* ¿øÇÏ´Â ºñÀ² ¼³Á¤ (¿¹: 16:9) */
  overflow: hidden; /* ³ÑÄ¡´Â ³»¿ë ¼û±â±â */
}

.responsive-container-img img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* ºñÀ² À¯ÁöÇÏ¸ç Àß¶ó³»±â */
}

.responsive-container-img-square {
  width: 100%; /* ºÎ¸ð ÄÁÅ×ÀÌ³Ê ³Êºñ¿¡ µû¶ó Å©±â Á¶Á¤ */
  aspect-ratio: 16 / 16; /* ¿øÇÏ´Â ºñÀ² ¼³Á¤ (¿¹: 16:9) */
  overflow: hidden; /* ³ÑÄ¡´Â ³»¿ë ¼û±â±â */
}

.responsive-container-img-square img {
  width: 100%;
  height: 100%;
  object-fit: cover; /* ºñÀ² À¯ÁöÇÏ¸ç Àß¶ó³»±â */
}

.line10 { clear: both; position: relative; width: 100%; margin: 10px 0; border-top: 1px solid #ddd; }
.line-zero { border: none; height: 1px; background-color: #f37124; margin: 0; padding: 0; }
.line-zero-white { border: none; height: 1px; background-color: #FFF; margin: 0; padding: 0; }
.line-zero-black { border: none; height: 1px; background-color: #000; margin: 0; padding: 0; }

.floatright { float:right; }
.floatleft { float:left; }
.floatnone { float:none; }

.title_line { border-bottom: 1px solid #ddd; font-size: 19px; font-weight: 600; margin:10px 0 10px 0; padding: 0 0 5px; position: relative; letter-spacing:-1px; }
.title_line span { position: absolute; right:0px; margin-top:5px;}


.btn{
    color: #fff;
}
.btn-default{
    background:#2e3092;
    color:#fff !important;
    border:none;
    border-radius:4px;
    transition:all 0.3s ease-in-out;
    -webkit-transition:all 0.3s ease-in-out;
    -moz-transition:all 0.3s ease-in-out;
    -ms-transition:all 0.3s ease-in-out;
    -o-transition:all 0.3s ease-in-out;
}
.btn-default:hover{
    background:#12135f;
    color:#fff !important;
}

.btn-member{
    background:#000;
    color:#fff !important;
    border:none;
    border-radius:4px;
    transition:all 0.3s ease-in-out;
    -webkit-transition:all 0.3s ease-in-out;
    -moz-transition:all 0.3s ease-in-out;
    -ms-transition:all 0.3s ease-in-out;
    -o-transition:all 0.3s ease-in-out;
}
.btn-member:hover{
    background:#393838;
    color:#fff !important;
}

.btn-find{
    background:#5e5d5d;
    color:#fff !important;
    border:none;
    border-radius:4px;
    transition:all 0.3s ease-in-out;
    -webkit-transition:all 0.3s ease-in-out;
    -moz-transition:all 0.3s ease-in-out;
    -ms-transition:all 0.3s ease-in-out;
    -o-transition:all 0.3s ease-in-out;
}
.btn-find:hover{
    background:#7c7c7c;
    color:#fff !important;
}

.btn-list1{
    background:#6e767d;
    color:#fff !important;
    border:none;
    border-radius:2px;
    transition:all 0.3s ease-in-out;
    -webkit-transition:all 0.3s ease-in-out;
    -moz-transition:all 0.3s ease-in-out;
    -ms-transition:all 0.3s ease-in-out;
    -o-transition:all 0.3s ease-in-out;
}
.btn-list1:hover{
    background:#545e66;
    color:#fff !important;
}

.btn-normal1 {
    background-color:#2e3092;
}

.btn-normal2 {
    background-color:#3453a2;
}

.btn-normal3 {
    background-color:#2abbe3;
}

.btn-normal4 {
    background-color:#2abbe3;
}

.btn-normal5 {
    background-color:#2abbe3;
}

.btn-normal6 {
    background-color:#4f4f4f;
}

.btn-normal7 {
    background-color:#e30404;
}

.btn-normal1:hover,
.btn-normal2:hover,
.btn-normal3:hover,
.btn-normal4:hover,
.btn-normal5:hover,
.btn-normal6:hover,
.btn-normal7:hover
{
    background:#333333 !important;
    color:#FFFFFF !important;
}

.btn-login-side {
  color: #000 !important;
  font-size: 16px;
  padding:5px 10px;
  font-weight: 500;
  letter-spacing: -0.05em;
  border-radius: 50px;
  background-color: #FFF;
  border-color: #ddd;
}

.btn-login-side:hover {
  color: #FFF !important;
  background-color: #555555;
  border-color: #555555;
}

.flow-btn {
  background: linear-gradient(270deg, #f37124, #d2570d, #d22e0d, #d2810d);
  background-size: 400% 400%;
  animation: gradientFlow 6s ease infinite;
}

@keyframes gradientFlow {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}

.flow-btn-orange {
  /* #f37124¸¦ Áß½ÉÀ¸·Î ÇÑ ±×¶óµ¥ÀÌ¼Ç */
  background: linear-gradient(270deg, #ff8c42, #f37124, #e05e00, #ff4800);
  background-size: 400% 400%;
  animation: gradientFlowOrange 6s ease infinite;
  /* ¹öÆ° ÅØ½ºÆ®°¡ Àß º¸ÀÌµµ·Ï »ìÂ¦ ±×¸²ÀÚ Ãß°¡ */
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.3);
}

@keyframes gradientFlowOrange {
  0% { background-position: 0% 50%; }
  50% { background-position: 100% 50%; }
  100% { background-position: 0% 50%; }
}


.shimmer-btn-orange {
  position: relative;
  overflow: hidden;
  background-color: #E4572E; 
}

/* ºû È¿°ú ·¹ÀÌ¾î */
.shimmer-btn-orange::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  /* Åõ¸íµµ°¡ µé¾î°£ ÇÏ¾á»ö ´ë°¢¼± ±×¶óµ¥ÀÌ¼Ç */
  background: linear-gradient(
    60deg,
    transparent 30%,
    rgba(255, 255, 255, 0.9) 60%, /* ºûÀÇ ¹à±â Á¶Àý */
    transparent 70%
  );
  transform: rotate(30deg) translateX(-100%);
  animation: shimmerOrange 3s infinite;
}

@keyframes shimmerOrange {
  0% { transform: rotate(30deg) translateX(-100%); }
  50% { transform: rotate(30deg) translateX(100%); }
  100% { transform: rotate(30deg) translateX(100%); }
}


/* board item card */
.board-item {
  border: 0px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 0.5rem;
  min-height: 177px;
  overflow: hidden;
  background: var(--at-neutral-0, #fefefe);
  transition: box-shadow 0.2s ease;
}
.board-item:hover {
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05);
}
.board-item__inner {
  padding: 9px 39px;
  min-height: 177px;
}
.board-item__left {
  gap: 29px;
}
.board-item__check-label {
  cursor: pointer;
  flex-shrink: 0;
}
.board-item__check-wrap {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 4px;
  background: var(--at-neutral-0, #fefefe);
  transition: border-color 0.2s ease, background-color 0.2s ease;
}
.board-item__check-icon {
  width: 10px;
  height: 9px;
  opacity: 0;
  transition: opacity 0.2s ease;
  -o-object-fit: contain;
     object-fit: contain;
}
.board-item .board-item-check:checked + .board-item__check-wrap {
  background: var(--at-neutral-900, #1d1d1d);
  border-color: var(--at-neutral-900, #1d1d1d);
}
.board-item .board-item-check:checked + .board-item__check-wrap .board-item__check-icon {
  opacity: 1;
  filter: brightness(0) invert(1);
}
.board-item__main {
  gap: 23px;
}
.board-item__img-wrap {
  width: 140px;
  height: 159px;
  flex-shrink: 0;
  border-radius: 8px;
  background: var(--at-neutral-50, #f2f2f2);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.board-item__img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.board-item__info {
  display: flex;
  flex-direction: column;
  gap: 13px;
  min-width: 0;
  max-width: 306px;
}
.board-item__title {
  font-size: 24px;
  font-weight: 600;
  letter-spacing: -1.2px;
  line-height: 1;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0;
}
.board-item__meta {
  font-size: 14px;
  font-weight: 500;
  letter-spacing: -0.28px;
  color: var(--at-neutral-500, #585959);
  margin: 0;
}
.board-item__price {
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.9px;
  color: var(--at-neutral-900, #1d1d1d);
  margin: 0;
}
.board-item__right {
  width: 298px;
  flex-shrink: 0;
}
.board-item__qty {
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  width: 155px;
  height: 50px;
  padding: 0 19.5px;
  border: 1px solid var(--at-neutral-100, #dfdfdf);
  border-radius: 100px;
  background: var(--at-neutral-0, #fefefe);
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.36px;
  color: var(--at-neutral-900, #1d1d1d);
}
.board-item-qty-minus, .board-item-qty-plus {
  width: 32px;
  height: 32px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  color: inherit;
  font-size: inherit;
  cursor: pointer;
  transition: opacity 0.2s ease;
  padding: 0;
  line-height: 1;
}
.board-item-qty-minus:hover, .board-item-qty-plus:hover {
  opacity: 0.7;
}
.board-item-qty-val {
  min-width: 24px;
  text-align: center;
}
.board-item-delete {
  width: 24px;
  height: 24px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: none;
  background: none;
  color: var(--at-neutral-900, #1d1d1d);
  cursor: pointer;
  padding: 0;
  transition: color 0.2s ease, opacity 0.2s ease;
}
.board-item-delete:hover {
  opacity: 0.7;
  color: var(--at-neutral-700);
}
.board-item-delete i {
  font-size: 18px;
}
@media only screen and (min-width: 768px) and (max-width: 991px) {
  .board-item__inner {
    padding: 16px 20px;
    flex-wrap: wrap;
    gap: 16px;
  }
  .board-item__right {
    width: 100%;
    justify-content: flex-start;
    gap: 16px;
  }
  .board-item__info {
    max-width: 100%;
  }
  .board-item__title {
    font-size: 20px;
  }
}
@media (max-width: 574.98px) {
  .board-item__inner {
    padding: 12px 16px;
  }
  .board-item__img-wrap {
    width: 100px;
    height: 114px;
  }
  .board-item__left {
    gap: 16px;
  }
  .board	-item__main {
    gap: 12px;
  }
}


.terms-box {
height: 200px;
overflow-y: auto;
background-color: #f8f9fa;
border: 1px solid #dee2e6;
padding: 1.25rem;
font-size: 0.9rem;
line-height: 1.6;
}
.terms-box .text-danger {
font-weight: bold;
}

#refresh-indicator {
position: fixed;
top: -50px;
left: 0;
width: 100%;
height: 50px;
display: flex;
align-items: center;
justify-content: center;
background-color: #f1f3f5;
font-size: 14px;
color: #495057;
transition: transform 0.2s ease;
z-index: 999;
}


#toast-message {
    visibility: hidden;
    min-width: 280px;
    background-color: #333;
    color: #fff;
    text-align: center;
    border-radius: 4px;
    padding: 12px;
    position: absolute;
    z-index: 1000;
    left: 50%;
    bottom: 320px;
    transform: translateX(-50%);
    font-size: 13px;
    opacity: 0;
    transition: opacity 0.3s ease-in-out;
}
#toast-message.show {
    visibility: visible;
    opacity: 1;
}



