:root {
    --cw-font-sans-serif: 'Pretendard', system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans",
        Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji"; /* 산세리프 폰트 */
    --cw-font-monospace: SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace; /* 모노스페이스 폰트 */
    --cw-light-color: #999; /* Light Color */
    --cw-heading-color: #121212; /* Heading Color */
    --cw-point-color: #FF4600; /* Point Color */
    --cw-point-color-pri: #121212; /* Point Primary Color */
    --cw-point-color-blue: #227AFF; /* Point Blue Color */
    --cw-warning-40: #FFDA6A; /* Warning Color */
    --cw-error-color: #DC3545; /* Error Color */
    --cw-color-white: #ffffff; /* Neutral/white */
    --cw-color-10: #f6f6f6; /* Neutral/10 */
    --cw-color-20: #EDEDED; /* Neutral/20 */
    --cw-color-30: #dedede; /* Neutral/30 */
    --cw-color-40: #c2c2c2; /* Neutral/40 */
    --cw-color-50: #a9a9a9; /* Neutral/50 */
    --cw-color-60: #999999; /* Neutral/60 */
    --cw-color-80: #555555; /* Neutral/80 */
    --cw-color-70: #777777; /* Neutral/70 */
    --cw-color-90: #343434; /* Neutral/90 */

    --cw-border-radius: 4px;    /* btn input round */

    --cw-size-2: 0.125rem;
    --cw-size-3: 0.188rem;
    --cw-size-4: 0.25rem;
    --cw-size-5: 0.313rem;
    --cw-size-6: 0.375rem;
    --cw-size-7: 0.438rem;
    --cw-size-8: 0.5rem;
    --cw-size-9: 0.563rem;
    --cw-size-10: 0.625rem;
    --cw-size-11: 0.688rem;
    --cw-size-12: 0.75rem;
    --cw-size-13: 0.813rem;
    --cw-size-14: 0.875rem;
    --cw-size-15: 0.938rem;
    --cw-size-16: 1rem;
    --cw-size-17: 1.063rem;
    --cw-size-18: 1.125rem;
    --cw-size-19: 1.188rem;
    --cw-size-20: 1.25rem;
    --cw-size-22: 1.375rem;
    --cw-size-24: 1.5rem;
    --cw-size-26: 1.625rem;
    --cw-size-28: 1.75rem;
    --cw-size-30: 1.875rem;
    --cw-size-32: 2rem;
    --cw-size-34: 2.125rem;
    --cw-size-36: 2.25rem;
    --cw-size-38: 2.375rem;
    --cw-size-40: 2.5rem;
    --cw-size-42: 2.625rem;
    --cw-size-44: 2.75rem;
    --cw-size-46: 2.875rem;
    --cw-size-48: 3rem;
    --cw-size-50: 3.125rem;
    --cw-size-52: 3.25rem;
    --cw-size-54: 3.375rem;
    --cw-size-56: 3.5rem;
    --cw-size-58: 3.625rem;
    --cw-size-60: 3.75rem;
    --cw-size-62: 3.875rem;
    --cw-size-64: 4rem;
    --cw-size-66: 4.125rem;
    --cw-size-68: 4.25rem;
    --cw-size-70: 4.375rem;
    --cw-size-72: 4.5rem;
    --cw-size-74: 4.625rem;
    --cw-size-76: 4.75rem;
    --cw-size-78: 4.875rem;
    --cw-size-80: 5rem;
    --cw-size-90: 5.625rem;
    --cw-size-100: 6.25rem;
    --cw-size-110: 6.875rem;
    --cw-size-120: 7.5rem;
    --cw-size-130: 8.125rem;
    --cw-size-140: 8.75rem;
    --cw-size-150: 9.375rem;
    --cw-size-160: 10rem;
    --cw-size-170: 10.625rem;
    --cw-size-180: 11.25rem;
    --cw-size-190: 11.875rem;
    --cw-size-200: 12.5rem;
    --cw-size-210: 13.125rem;
    --cw-size-220: 13.75rem;
    --cw-size-230: 14.375rem;
    --cw-size-240: 15rem;
    --cw-size-250: 15.625rem;
    --cw-size-260: 16.25rem;
    --cw-size-270: 16.875rem;
    --cw-size-280: 17.5rem;
    --cw-size-290: 18.125rem;
    --cw-size-300: 18.75rem;
    --cw-size-310: 19.375rem;
    --cw-size-320: 20rem;
    --cw-size-330: 21.25rem;
    --cw-size-340: 21.875rem;
    --cw-size-350: 22.5rem;
    --cw-size-360: 22.5rem;
    --cw-size-370: 23.125rem;
    --cw-size-380: 23.75rem;
    --cw-size-390: 24.375rem;
    --cw-size-400: 25rem;
    --cw-size-410: 25.625rem;
    --cw-size-420: 26.25rem;
    --cw-size-430: 26.875rem;
    --cw-size-440: 27.5rem;
    --cw-size-450: 28.125rem;
    --cw-size-460: 28.75rem;
    --cw-size-470: 29.375rem;
    --cw-size-480: 30rem;
    --cw-size-490: 30.625rem;
    --cw-size-500: 31.25rem;
    --cw-size-540: 33.75rem;
    --cw-size-600: 37.5rem;
    --cw-size-670: 42rem;
    --cw-size-700: 43.75rem;
    --cw-size-750: 46.875rem;
    --cw-size-800: 50rem;
    --cw-size-850: 52.5rem;
    --cw-size-900: 56.25rem;
    --cw-size-950: 59.375rem;
    --cw-size-1000: 62.5rem;
    
    --rectangle-bg: #121212;
    --rectangle-border-color: rgba(0,0,0,0.15);
}

/* Pretendard 웹폰트 적용 */
@font-face {
	font-family: 'Pretendard';
	font-weight: 900;
	font-display: swap;
	src: local('Pretendard Black'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-Black.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-Black.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 800;
	font-display: swap;
	src: local('Pretendard ExtraBold'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-ExtraBold.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-ExtraBold.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 700;
	font-display: swap;
	src: local('Pretendard Bold'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-Bold.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-Bold.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 600;
	font-display: swap;
	src: local('Pretendard SemiBold'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-SemiBold.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-SemiBold.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 500;
	font-display: swap;
	src: local('Pretendard Medium'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-Medium.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-Medium.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 400;
	font-display: swap;
	src: local('Pretendard Regular'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-Regular.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-Regular.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 300;
	font-display: swap;
	src: local('Pretendard Light'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-Light.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-Light.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 200;
	font-display: swap;
	src: local('Pretendard ExtraLight'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-ExtraLight.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-ExtraLight.woff) format('woff');
}

@font-face {
	font-family: 'Pretendard';
	font-weight: 100;
	font-display: swap;
	src: local('Pretendard Thin'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff2/Pretendard-Thin.woff2) format('woff2'), url(//skin.makeshop.co.kr/skin/rw_shop/pretendard/woff/Pretendard-Thin.woff) format('woff');
}

/*!
 * Bootstrap Reboot v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
:root {
    /* Bootstrap 테마 색상 */
    --bs-primary: #0d6efd; /* 기본 색상 */
    --bs-secondary: #6c757d; /* 보조 색상 */
    --bs-success: #198754; /* 성공을 나타내는 색상 */
    --bs-info: #0dcaf0; /* 정보 색상 */
    --bs-warning: #ffc107; /* 경고 색상 */
    --bs-danger: #dc3545; /* 위험 색상 */
    --bs-light: #f8f9fa; /* 밝은 배경색 */
    --bs-dark: #212529; /* 어두운 배경색 */

    /* 폰트 패밀리 설정 */
    --bs-font-sans-serif: var(--cw-font-sans-serif);
    --bs-font-monospace: var(--cw-font-monospace);

    /* 그라디언트 설정 */
    --bs-gradient: linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0)); /* 그라디언트 효과 */

    /* 기본 텍스트 설정 */
    --bs-body-font-family: var(--bs-font-sans-serif); /* 기본 폰트 패밀리 */
    --bs-body-font-size: 1rem; /* 기본 폰트 크기 */
    --bs-body-font-weight: 400; /* 기본 폰트 두께 */
    --bs-body-line-height: 1.5; /* 기본 라인 높이 */
    --bs-body-color: #121212; /* 기본 텍스트 색상 */
    --bs-body-color-rgb: 33, 37, 41; /* 기본 텍스트 색상의 RGB 값 */
    --bs-body-bg: #fff; /* 기본 배경색 */
    --bs-body-bg-rgb: 255, 255, 255; /* 기본 배경색의 RGB 값 */

    /* 보조 텍스트 및 배경 색상 */
    --bs-secondary-color: rgba(33, 37, 41, 0.75); /* 보조 텍스트 색상 */
    --bs-secondary-color-rgb: 33, 37, 41; /* 보조 텍스트 색상의 RGB 값 */
    --bs-secondary-bg: #e9ecef; /* 보조 배경색 */
    --bs-secondary-bg-rgb: 233, 236, 239; /* 보조 배경색의 RGB 값 */

    /* 제목 색상 */
    --bs-heading-color: inherit; /* 제목 텍스트 색상 (상속됨) */

    /* 링크 색상 */
    --bs-link-color: #0d6efd; /* 링크 텍스트 색상 */
    --bs-link-color-rgb: 13, 110, 253; /* 링크 텍스트 색상의 RGB 값 */
    --bs-link-decoration: underline; /* 링크 텍스트의 장식 (밑줄) */
    --bs-link-hover-color: #0a58ca; /* 링크 텍스트의 호버 시 색상 */
    --bs-link-hover-color-rgb: 10, 88, 202; /* 링크 텍스트의 호버 시 RGB 값 */

    /* 코드 및 하이라이트 색상 */
    --bs-code-color: #d63384; /* 코드 텍스트 색상 */
    --bs-highlight-color: #212529; /* 하이라이트 텍스트 색상 */
    --bs-highlight-bg: #fff3cd; /* 하이라이트 배경색 */

    /* 기본 경계선 설정 */
    --bs-border-width: 1px; /* 기본 경계선 두께 */
    --bs-border-style: solid; /* 기본 경계선 스타일 */
    --bs-border-color: #a9a9a9; /* 기본 경계선 색상 */
    --bs-border-color-translucent: rgba(0, 0, 0, 0.175); /* 반투명 경계선 색상 */

    /* 경계선 반경 (둥근 모서리) */
    --bs-border-radius: 0.375rem; /* 기본 경계선 반경 */
    --bs-border-radius-sm: 0.25rem; /* 작은 경계선 반경 */
    --bs-border-radius-lg: 0.5rem; /* 큰 경계선 반경 */
    --bs-border-radius-xl: 1rem; /* 더 큰 경계선 반경 */
    --bs-border-radius-xxl: 2rem; /* 매우 큰 경계선 반경 */
    --bs-border-radius-2xl: var(--bs-border-radius-xxl); /* 2xl 크기의 경계선 반경 */
    --bs-border-radius-pill: 50rem; /* 완전 둥근 경계선 반경 (알약 모양) */
}


*,
*::before,
*::after {
    box-sizing: border-box;
}

@media (prefers-reduced-motion: no-preference) {
    :root {
        /* scroll-behavior: smooth; */
        scroll-behavior: auto;
    }
}

body {
    margin: 0;
    font-family: var(--bs-body-font-family);
    font-size: var(--bs-body-font-size);
    font-weight: var(--bs-body-font-weight);
    line-height: var(--bs-body-line-height);
    color: var(--bs-body-color);
    background-color: var(--bs-body-bg);
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

hr {
    margin: 1rem 0;
    color: inherit;
    border: 0;
    border-top: var(--bs-border-width) solid;
    opacity: 0.25;
}

h6,
h5,
h4,
h3,
h2,
h1 {
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 500;
    line-height: 1.2;
    color: var(--bs-heading-color);
}

h1 {
    font-size: calc(1.375rem + 1.5vw);
}
@media (min-width: 1200px) {
    h1 {
        font-size: 2.5rem;
    }
}

h2 {
    font-size: calc(1.325rem + 0.9vw);
}
@media (min-width: 1200px) {
    h2 {
        font-size: 2rem;
    }
}

h3 {
    font-size: calc(1.3rem + 0.6vw);
}
@media (min-width: 1200px) {
    h3 {
        font-size: 1.75rem;
    }
}

h4 {
    font-size: calc(1.275rem + 0.3vw);
}
@media (min-width: 1200px) {
    h4 {
        font-size: 1.5rem;
    }
}

h5 {
    font-size: 1.25rem;
}

h6 {
    font-size: 1rem;
}

p {
    margin-top: 0;
    margin-bottom: 0;
}

abbr[title] {
    -webkit-text-decoration: underline dotted;
    text-decoration: underline dotted;
    cursor: help;
    -webkit-text-decoration-skip-ink: none;
    text-decoration-skip-ink: none;
}

address {
    margin-bottom: 1rem;
    font-style: normal;
    line-height: inherit;
}

ol,
ul {
    list-style-type: none;
    padding-inline-start: 0;
}

ol,
ul,
dl {
    margin-top: 0;
    margin-bottom: 0;
}

ol ol,
ul ul,
ol ul,
ul ol {
    margin-bottom: 0;
}

dt {
    font-weight: 700;
}

dd {
    margin-bottom: 0;
    margin-left: 0;
}

blockquote {
    margin: 0 0 1rem;
}

b,
strong {
    font-weight: bolder;
}

small {
    font-size: 0.875em;
}

mark {
    padding: 0.1875em;
    color: var(--bs-highlight-color);
    background-color: var(--bs-highlight-bg);
}

sub,
sup {
    position: relative;
    font-size: 0.75em;
    line-height: 0;
    vertical-align: baseline;
}

sub {
    bottom: -0.25em;
}

sup {
    top: -0.5em;
}

a {
    color: rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 1));
    text-decoration: none;
}
a:hover {
    --bs-link-color-rgb: var(--bs-link-hover-color-rgb);
}

a:not([href]):not([class]),
a:not([href]):not([class]):hover {
    color: inherit;
    text-decoration: none;
}

pre,
code,
kbd,
samp {
    font-family: var(--bs-font-monospace);
    font-size: 1em;
}

pre {
    display: block;
    margin-top: 0;
    margin-bottom: 1rem;
    overflow: auto;
    font-size: 0.875em;
}
pre code {
    font-size: inherit;
    color: inherit;
    word-break: normal;
}

code {
    font-size: 0.875em;
    color: var(--bs-code-color);
    word-wrap: break-word;
}
a > code {
    color: inherit;
}

kbd {
    padding: 0.1875rem 0.375rem;
    font-size: 0.875em;
    color: var(--bs-body-bg);
    background-color: var(--bs-body-color);
    border-radius: 0.25rem;
}
kbd kbd {
    padding: 0;
    font-size: 1em;
}

figure {
    margin: 0 0 1rem;
}

img,
svg {
    vertical-align: middle;
}

table {
    caption-side: bottom;
    border-collapse: collapse;
}

caption {
    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    color: var(--bs-secondary-color);
    text-align: left;
}

th {
    text-align: inherit;
    text-align: -webkit-match-parent;
}

thead,
tbody,
tfoot,
tr,
td,
th {
    border-color: inherit;
    border-style: solid;
    border-width: 0;
}

label {
    display: inline-block;
}

button {
    border-radius: 0;
}

button:focus:not(:focus-visible) {
    outline: 0;
}

input,
button,
select,
optgroup,
textarea {
    margin: 0;
    font-family: inherit;
    font-size: inherit;
    line-height: inherit;
}

button,
select {
    text-transform: none;
}

[role="button"] {
    cursor: pointer;
}

select {
    word-wrap: normal;
}
select:disabled {
    opacity: 1;
}

[list]:not([type="date"]):not([type="datetime-local"]):not([type="month"]):not([type="week"]):not(
        [type="time"]
    )::-webkit-calendar-picker-indicator {
    display: none !important;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
    -webkit-appearance: button;
    appearance: button;
}
button:not(:disabled),
[type="button"]:not(:disabled),
[type="reset"]:not(:disabled),
[type="submit"]:not(:disabled) {
    cursor: pointer;
}

::-moz-focus-inner {
    padding: 0;
    border-style: none;
}

textarea {
    resize: vertical;
}

fieldset {
    min-width: 0;
    padding: 0;
    margin: 0;
    border: 0;
}

legend {
    float: left;
    width: 100%;
    padding: 0;
    margin-bottom: 0.5rem;
    font-size: calc(1.275rem + 0.3vw);
    line-height: inherit;
}
@media (min-width: 1200px) {
    legend {
        font-size: 1.5rem;
    }
}
legend + * {
    clear: left;
}

::-webkit-datetime-edit-fields-wrapper,
::-webkit-datetime-edit-text,
::-webkit-datetime-edit-minute,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-year-field {
    padding: 0;
}

::-webkit-inner-spin-button {
    height: auto;
}

[type="search"] {
    -webkit-appearance: textfield;
    appearance: textfiled;
    outline-offset: -2px;
}

/* rtl:raw:
 [type="tel"],
 [type="url"],
 [type="email"],
 [type="number"] {
   direction: ltr;
 }
 */
::-webkit-search-decoration {
    -webkit-appearance: none;
}

::-webkit-color-swatch-wrapper {
    padding: 0;
}

::-webkit-file-upload-button {
    font: inherit;
    -webkit-appearance: button;
}

::file-selector-button {
    font: inherit;
    -webkit-appearance: button;
    appearance: button;
}

output {
    display: inline-block;
}

iframe {
    border: 0;
}

summary {
    display: list-item;
    cursor: pointer;
}

progress {
    vertical-align: baseline;
}

[hidden] {
    display: none !important;
}

.img-fluid {
    max-width: 100%;
    height: auto;
}
  
.figure {
    display: inline-block;
}
  
.figure-img {
    margin-bottom: 0.5rem;
    line-height: 1;
}
  
.figure-caption {
    font-size: 0.875em;
    color: var(--bs-secondary-color);
}

.clearfix::after {
    display: block;
    clear: both;
    content: "";
}

/*!
 * Bootstrap Grid v5.3.3 (https://getbootstrap.com/)
 * Copyright 2011-2024 The Bootstrap Authors
 * Licensed under MIT (https://github.com/twbs/bootstrap/blob/main/LICENSE)
 */
.container,
.container-fluid,
.container-xxl,
.container-xl,
.container-lg,
.container-md,
.container-sm {
    --bs-gutter-x: 2rem;
    --bs-gutter-y: 0;
    width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 576px) {
    .container-sm,
    .container {
        --bs-gutter-x: 2rem;
        /* max-width: 540px; */
    }
}
@media (min-width: 768px) {
    .container-md,
    .container-sm,
    .container {
        --bs-gutter-x: 2rem;
        /* max-width: 720px; */
    }
}
@media (min-width: 992px) {
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        --bs-gutter-x: 3rem;
        /* max-width: 960px; */
    }
}
@media (min-width: 1200px) {
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        --bs-gutter-x: 5rem;
        /* max-width: 1140px; */
    }
}
@media (min-width: 1400px) {
    .container-xxl,
    .container-xl,
    .container-lg,
    .container-md,
    .container-sm,
    .container {
        --bs-gutter-x: 5rem;
        max-width: 1440px;
    }
}

.row {
    --bs-gutter-x: 2rem;
    --bs-gutter-y: 0;
    display: flex;
    flex-wrap: wrap;
    margin-top: calc(-1 * var(--bs-gutter-y));
    margin-right: calc(-0.5 * var(--bs-gutter-x));
    margin-left: calc(-0.5 * var(--bs-gutter-x));
}
.row > * {
    box-sizing: border-box;
    flex-shrink: 0;
    width: 100%;
    max-width: 100%;
    padding-right: calc(var(--bs-gutter-x) * 0.5);
    padding-left: calc(var(--bs-gutter-x) * 0.5);
    margin-top: var(--bs-gutter-y);
}

.col {
    flex: 1 0 0%;
}

.row-cols-auto > * {
    flex: 0 0 auto;
    width: auto;
}

.row-cols-1 > * {
    flex: 0 0 auto;
    width: 100%;
}

.row-cols-2 > * {
    flex: 0 0 auto;
    width: 50%;
}

.row-cols-3 > * {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.row-cols-4 > * {
    flex: 0 0 auto;
    width: 25%;
}

.row-cols-5 > * {
    flex: 0 0 auto;
    width: 20%;
}

.row-cols-6 > * {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-auto {
    flex: 0 0 auto;
    width: auto;
}

.col-1 {
    flex: 0 0 auto;
    width: 8.33333333%;
}

.col-2 {
    flex: 0 0 auto;
    width: 16.66666667%;
}

.col-3 {
    flex: 0 0 auto;
    width: 25%;
}

.col-4 {
    flex: 0 0 auto;
    width: 33.33333333%;
}

.col-5 {
    flex: 0 0 auto;
    width: 41.66666667%;
}

.col-6 {
    flex: 0 0 auto;
    width: 50%;
}

.col-7 {
    flex: 0 0 auto;
    width: 58.33333333%;
}

.col-8 {
    flex: 0 0 auto;
    width: 66.66666667%;
}

.col-9 {
    flex: 0 0 auto;
    width: 75%;
}

.col-10 {
    flex: 0 0 auto;
    width: 83.33333333%;
}

.col-11 {
    flex: 0 0 auto;
    width: 91.66666667%;
}

.col-12 {
    flex: 0 0 auto;
    width: 100%;
}

.offset-1 {
    margin-left: 8.33333333%;
}

.offset-2 {
    margin-left: 16.66666667%;
}

.offset-3 {
    margin-left: 25%;
}

.offset-4 {
    margin-left: 33.33333333%;
}

.offset-5 {
    margin-left: 41.66666667%;
}

.offset-6 {
    margin-left: 50%;
}

.offset-7 {
    margin-left: 58.33333333%;
}

.offset-8 {
    margin-left: 66.66666667%;
}

.offset-9 {
    margin-left: 75%;
}

.offset-10 {
    margin-left: 83.33333333%;
}

.offset-11 {
    margin-left: 91.66666667%;
}

.g-0,
.gx-0 {
    --bs-gutter-x: 0;
}

.g-0,
.gy-0 {
    --bs-gutter-y: 0;
}

.g-1,
.gx-1 {
    --bs-gutter-x: 0.25rem;
}

.g-1,
.gy-1 {
    --bs-gutter-y: 0.25rem;
}

.g-2,
.gx-2 {
    --bs-gutter-x: 0.5rem;
}

.g-2,
.gy-2 {
    --bs-gutter-y: 0.5rem;
}

.g-3,
.gx-3 {
    --bs-gutter-x: 1rem;
}

.g-3,
.gy-3 {
    --bs-gutter-y: 1rem;
}

.g-4,
.gx-4 {
    --bs-gutter-x: 1.5rem;
}

.g-4,
.gy-4 {
    --bs-gutter-y: 1.5rem;
}

.g-5,
.gx-5 {
    --bs-gutter-x: 3rem;
}

.g-5,
.gy-5 {
    --bs-gutter-y: 3rem;
}

@media (min-width: 576px) {
    .col-sm {
        flex: 1 0 0%;
    }
    .row-cols-sm-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-sm-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-sm-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-sm-3 > * {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .row-cols-sm-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-sm-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-sm-6 > * {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-sm-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-sm-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-sm-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-sm-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-sm-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-sm-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-sm-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-sm-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-sm-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-sm-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-sm-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-sm-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-sm-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-sm-0 {
        margin-left: 0;
    }
    .offset-sm-1 {
        margin-left: 8.33333333%;
    }
    .offset-sm-2 {
        margin-left: 16.66666667%;
    }
    .offset-sm-3 {
        margin-left: 25%;
    }
    .offset-sm-4 {
        margin-left: 33.33333333%;
    }
    .offset-sm-5 {
        margin-left: 41.66666667%;
    }
    .offset-sm-6 {
        margin-left: 50%;
    }
    .offset-sm-7 {
        margin-left: 58.33333333%;
    }
    .offset-sm-8 {
        margin-left: 66.66666667%;
    }
    .offset-sm-9 {
        margin-left: 75%;
    }
    .offset-sm-10 {
        margin-left: 83.33333333%;
    }
    .offset-sm-11 {
        margin-left: 91.66666667%;
    }
    .g-sm-0,
    .gx-sm-0 {
        --bs-gutter-x: 0;
    }
    .g-sm-0,
    .gy-sm-0 {
        --bs-gutter-y: 0;
    }
    .g-sm-1,
    .gx-sm-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-sm-1,
    .gy-sm-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-sm-2,
    .gx-sm-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-sm-2,
    .gy-sm-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-sm-3,
    .gx-sm-3 {
        --bs-gutter-x: 1rem;
    }
    .g-sm-3,
    .gy-sm-3 {
        --bs-gutter-y: 1rem;
    }
    .g-sm-4,
    .gx-sm-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-sm-4,
    .gy-sm-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-sm-5,
    .gx-sm-5 {
        --bs-gutter-x: 3rem;
    }
    .g-sm-5,
    .gy-sm-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 768px) {
    .col-md {
        flex: 1 0 0%;
    }
    .row-cols-md-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-md-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-md-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-md-3 > * {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .row-cols-md-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-md-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-md-6 > * {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-md-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-md-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-md-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-md-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-md-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-md-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-md-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-md-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-md-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-md-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-md-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-md-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-md-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-md-0 {
        margin-left: 0;
    }
    .offset-md-1 {
        margin-left: 8.33333333%;
    }
    .offset-md-2 {
        margin-left: 16.66666667%;
    }
    .offset-md-3 {
        margin-left: 25%;
    }
    .offset-md-4 {
        margin-left: 33.33333333%;
    }
    .offset-md-5 {
        margin-left: 41.66666667%;
    }
    .offset-md-6 {
        margin-left: 50%;
    }
    .offset-md-7 {
        margin-left: 58.33333333%;
    }
    .offset-md-8 {
        margin-left: 66.66666667%;
    }
    .offset-md-9 {
        margin-left: 75%;
    }
    .offset-md-10 {
        margin-left: 83.33333333%;
    }
    .offset-md-11 {
        margin-left: 91.66666667%;
    }
    .g-md-0,
    .gx-md-0 {
        --bs-gutter-x: 0;
    }
    .g-md-0,
    .gy-md-0 {
        --bs-gutter-y: 0;
    }
    .g-md-1,
    .gx-md-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-md-1,
    .gy-md-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-md-2,
    .gx-md-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-md-2,
    .gy-md-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-md-3,
    .gx-md-3 {
        --bs-gutter-x: 1rem;
    }
    .g-md-3,
    .gy-md-3 {
        --bs-gutter-y: 1rem;
    }
    .g-md-4,
    .gx-md-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-md-4,
    .gy-md-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-md-5,
    .gx-md-5 {
        --bs-gutter-x: 3rem;
    }
    .g-md-5,
    .gy-md-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 992px) {
    .col-lg {
        flex: 1 0 0%;
    }
    .row-cols-lg-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-lg-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-lg-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-lg-3 > * {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .row-cols-lg-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-lg-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-lg-6 > * {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-lg-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-lg-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-lg-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-lg-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-lg-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-lg-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-lg-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-lg-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-lg-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-lg-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-lg-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-lg-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-lg-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-lg-0 {
        margin-left: 0;
    }
    .offset-lg-1 {
        margin-left: 8.33333333%;
    }
    .offset-lg-2 {
        margin-left: 16.66666667%;
    }
    .offset-lg-3 {
        margin-left: 25%;
    }
    .offset-lg-4 {
        margin-left: 33.33333333%;
    }
    .offset-lg-5 {
        margin-left: 41.66666667%;
    }
    .offset-lg-6 {
        margin-left: 50%;
    }
    .offset-lg-7 {
        margin-left: 58.33333333%;
    }
    .offset-lg-8 {
        margin-left: 66.66666667%;
    }
    .offset-lg-9 {
        margin-left: 75%;
    }
    .offset-lg-10 {
        margin-left: 83.33333333%;
    }
    .offset-lg-11 {
        margin-left: 91.66666667%;
    }
    .g-lg-0,
    .gx-lg-0 {
        --bs-gutter-x: 0;
    }
    .g-lg-0,
    .gy-lg-0 {
        --bs-gutter-y: 0;
    }
    .g-lg-1,
    .gx-lg-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-lg-1,
    .gy-lg-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-lg-2,
    .gx-lg-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-lg-2,
    .gy-lg-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-lg-3,
    .gx-lg-3 {
        --bs-gutter-x: 1rem;
    }
    .g-lg-3,
    .gy-lg-3 {
        --bs-gutter-y: 1rem;
    }
    .g-lg-4,
    .gx-lg-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-lg-4,
    .gy-lg-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-lg-5,
    .gx-lg-5 {
        --bs-gutter-x: 3rem;
    }
    .g-lg-5,
    .gy-lg-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 1200px) {
    .col-xl {
        flex: 1 0 0%;
    }
    .row-cols-xl-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-xl-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xl-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xl-3 > * {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .row-cols-xl-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xl-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xl-6 > * {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-xl-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-xl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-xl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-xl-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-xl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-xl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-xl-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-xl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-xl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-xl-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-xl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-xl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-xl-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-xl-0 {
        margin-left: 0;
    }
    .offset-xl-1 {
        margin-left: 8.33333333%;
    }
    .offset-xl-2 {
        margin-left: 16.66666667%;
    }
    .offset-xl-3 {
        margin-left: 25%;
    }
    .offset-xl-4 {
        margin-left: 33.33333333%;
    }
    .offset-xl-5 {
        margin-left: 41.66666667%;
    }
    .offset-xl-6 {
        margin-left: 50%;
    }
    .offset-xl-7 {
        margin-left: 58.33333333%;
    }
    .offset-xl-8 {
        margin-left: 66.66666667%;
    }
    .offset-xl-9 {
        margin-left: 75%;
    }
    .offset-xl-10 {
        margin-left: 83.33333333%;
    }
    .offset-xl-11 {
        margin-left: 91.66666667%;
    }
    .g-xl-0,
    .gx-xl-0 {
        --bs-gutter-x: 0;
    }
    .g-xl-0,
    .gy-xl-0 {
        --bs-gutter-y: 0;
    }
    .g-xl-1,
    .gx-xl-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-xl-1,
    .gy-xl-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-xl-2,
    .gx-xl-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-xl-2,
    .gy-xl-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-xl-3,
    .gx-xl-3 {
        --bs-gutter-x: 1rem;
    }
    .g-xl-3,
    .gy-xl-3 {
        --bs-gutter-y: 1rem;
    }
    .g-xl-4,
    .gx-xl-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-xl-4,
    .gy-xl-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-xl-5,
    .gx-xl-5 {
        --bs-gutter-x: 3rem;
    }
    .g-xl-5,
    .gy-xl-5 {
        --bs-gutter-y: 3rem;
    }
}
@media (min-width: 1400px) {
    .col-xxl {
        flex: 1 0 0%;
    }
    .row-cols-xxl-auto > * {
        flex: 0 0 auto;
        width: auto;
    }
    .row-cols-xxl-1 > * {
        flex: 0 0 auto;
        width: 100%;
    }
    .row-cols-xxl-2 > * {
        flex: 0 0 auto;
        width: 50%;
    }
    .row-cols-xxl-3 > * {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .row-cols-xxl-4 > * {
        flex: 0 0 auto;
        width: 25%;
    }
    .row-cols-xxl-5 > * {
        flex: 0 0 auto;
        width: 20%;
    }
    .row-cols-xxl-6 > * {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-xxl-auto {
        flex: 0 0 auto;
        width: auto;
    }
    .col-xxl-1 {
        flex: 0 0 auto;
        width: 8.33333333%;
    }
    .col-xxl-2 {
        flex: 0 0 auto;
        width: 16.66666667%;
    }
    .col-xxl-3 {
        flex: 0 0 auto;
        width: 25%;
    }
    .col-xxl-4 {
        flex: 0 0 auto;
        width: 33.33333333%;
    }
    .col-xxl-5 {
        flex: 0 0 auto;
        width: 41.66666667%;
    }
    .col-xxl-6 {
        flex: 0 0 auto;
        width: 50%;
    }
    .col-xxl-7 {
        flex: 0 0 auto;
        width: 58.33333333%;
    }
    .col-xxl-8 {
        flex: 0 0 auto;
        width: 66.66666667%;
    }
    .col-xxl-9 {
        flex: 0 0 auto;
        width: 75%;
    }
    .col-xxl-10 {
        flex: 0 0 auto;
        width: 83.33333333%;
    }
    .col-xxl-11 {
        flex: 0 0 auto;
        width: 91.66666667%;
    }
    .col-xxl-12 {
        flex: 0 0 auto;
        width: 100%;
    }
    .offset-xxl-0 {
        margin-left: 0;
    }
    .offset-xxl-1 {
        margin-left: 8.33333333%;
    }
    .offset-xxl-2 {
        margin-left: 16.66666667%;
    }
    .offset-xxl-3 {
        margin-left: 25%;
    }
    .offset-xxl-4 {
        margin-left: 33.33333333%;
    }
    .offset-xxl-5 {
        margin-left: 41.66666667%;
    }
    .offset-xxl-6 {
        margin-left: 50%;
    }
    .offset-xxl-7 {
        margin-left: 58.33333333%;
    }
    .offset-xxl-8 {
        margin-left: 66.66666667%;
    }
    .offset-xxl-9 {
        margin-left: 75%;
    }
    .offset-xxl-10 {
        margin-left: 83.33333333%;
    }
    .offset-xxl-11 {
        margin-left: 91.66666667%;
    }
    .g-xxl-0,
    .gx-xxl-0 {
        --bs-gutter-x: 0;
    }
    .g-xxl-0,
    .gy-xxl-0 {
        --bs-gutter-y: 0;
    }
    .g-xxl-1,
    .gx-xxl-1 {
        --bs-gutter-x: 0.25rem;
    }
    .g-xxl-1,
    .gy-xxl-1 {
        --bs-gutter-y: 0.25rem;
    }
    .g-xxl-2,
    .gx-xxl-2 {
        --bs-gutter-x: 0.5rem;
    }
    .g-xxl-2,
    .gy-xxl-2 {
        --bs-gutter-y: 0.5rem;
    }
    .g-xxl-3,
    .gx-xxl-3 {
        --bs-gutter-x: 1rem;
    }
    .g-xxl-3,
    .gy-xxl-3 {
        --bs-gutter-y: 1rem;
    }
    .g-xxl-4,
    .gx-xxl-4 {
        --bs-gutter-x: 1.5rem;
    }
    .g-xxl-4,
    .gy-xxl-4 {
        --bs-gutter-y: 1.5rem;
    }
    .g-xxl-5,
    .gx-xxl-5 {
        --bs-gutter-x: 3rem;
    }
    .g-xxl-5,
    .gy-xxl-5 {
        --bs-gutter-y: 3rem;
    }
}

.cw-rotate-180 { transform: rotate(-180deg); }
.cw-hr-empty { --bs-border-width: 0; }
.cw-point-color { color: var(--cw-point-color) !important; }
.cw-heading-color { color: var(--cw-heading-color) !important; }
.cw-error-color { color: var(--cw-error-color) !important; }
.cw-mb-20 { margin-bottom: 20px; }
.cw-mr-4 { margin-right: 4px; }
.cw-f-right { float: right; }

.txt-c { text-align: center; }
.txt-l { text-align: left; }
.txt-r { text-align: right; }

.btn {
    --bs-btn-padding-x: 1.25rem;
    --bs-btn-padding-y: 0;
    --bs-btn-font-family: var(--bs-font-sans-serif);
    --bs-btn-font-size: .875rem;
    --bs-btn-font-weight: 500;
    --bs-btn-line-height: 2.375rem;
    --bs-btn-color: var(--bs-body-color);
    --bs-btn-bg: transparent;
    --bs-btn-border-width: var(--bs-border-width);
    --bs-btn-border-color: transparent;
    --bs-btn-border-radius: 4px;
    --bs-btn-hover-border-color: transparent;
    --bs-btn-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.075);
    --bs-btn-disabled-opacity: 0.65;
    --bs-btn-focus-box-shadow: 0 0 0 0.25rem rgba(var(--bs-btn-focus-shadow-rgb), .5);
    display: inline-block;
    padding: var(--bs-btn-padding-y) var(--bs-btn-padding-x);
    font-family: var(--bs-btn-font-family);
    font-size: var(--bs-btn-font-size);
    font-weight: var(--bs-btn-font-weight);
    line-height: var(--bs-btn-line-height);
    color: var(--bs-btn-color);
    text-align: center;
    text-decoration: none;
    vertical-align: middle;
    cursor: pointer;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    border: var(--bs-btn-border-width) solid var(--bs-btn-border-color);
    border-radius: var(--bs-btn-border-radius);
    background-color: var(--bs-btn-bg);
    transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out, border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
}
.btn-primary {
    --bs-btn-color: var(--cw-color-white);
    --bs-btn-bg: var(--cw-point-color-pri);
    --bs-btn-border-color: var(--cw-point-color-pri);
}
.btn-primary:hover {
    opacity: .8;
}
.btn-primary.disable {
    opacity: .5;
}
.btn-white {
    --bs-btn-color: var(--cw-point-color-pri);
    --bs-btn-bg: var(--cw-color-white);
    --bs-btn-border-color: var(--cw-point-color-pri);
}
.btn-white:hover {
    --bs-btn-bg: var(--cw-color-10);
}
.btn-white.disable {
    opacity: .5;
}
.btn-gray {
    --bs-btn-color: var(--cw-heading-color);
    --bs-btn-bg: var(--cw-color-white);
    --bs-btn-border-color: var(--cw-color-30);
}
.btn-gray:hover {
    --bs-btn-bg: var(--cw-color-10);
}
.btn-gray.disable {
    opacity: .5;
}
.btn-lg {
    --bs-btn-padding-x: 1.875rem;
    --bs-btn-line-height: 3rem;
    --bs-btn-font-size: 1rem;
    --bs-btn-font-weight: 700;
}
.btn-md {
    --bs-btn-padding-x: 1.25rem;
    --bs-btn-line-height: 2.375rem;
}
.btn-sm {
    --bs-btn-padding-x: .75rem;
    --bs-btn-line-height: 1.75rem;
    --bs-btn-font-size: .75rem;
    --bs-btn-border-radius: 4px;
}
.btn-xs {
    --bs-btn-padding-x: .5rem;
    --bs-btn-line-height: 1.375rem;
    --bs-btn-font-size: .75rem;
    --bs-btn-border-radius: 3px;
}
.form-check {
    display: block;
    min-height: 1.5rem;
    padding-left: 1.75em;
    /*margin-bottom: 0.125rem;*/
}
.form-check .form-check-input {
    float: left;
    margin-left: -1.75em;
}
.form-check-reverse {
    padding-right: 1.5em;
    padding-left: 0;
    text-align: right;
}
.form-check-reverse .form-check-input {
    float: right;
    margin-right: -1.5em;
    margin-left: 0;
}
.form-check-input {
    --bs-form-check-bg: var(--bs-body-bg);
    flex-shrink: 0;
    width: 1.25rem;
    height: 1.25rem;
    margin-top: 0.1em;
    vertical-align: top;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    background-color: var(--bs-form-check-bg);
    background-image: var(--bs-form-check-bg-image);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    border: var(--bs-border-width) solid var(--bs-border-color);
    -webkit-print-color-adjust: exact;
    print-color-adjust: exact;
}
.form-check-input[type=checkbox] {
    border-radius: 0.25em;
    --bs-form-check-bg-image: url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_check_default.svg");
}
.form-check-input[type=radio] {
    border-radius: 50%;
}
.form-check-input:active {
    filter: brightness(90%);
}
.form-check-input:focus {
    /*
    border-color: #86b7fe;
    box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
    */
    outline: 0;
}
.form-check-input:checked {
    background-color: var(--cw-heading-color);
    border-color: var(--cw-heading-color);
}
.form-check-input:checked[type=checkbox] {
    --bs-form-check-bg-image: url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_check_white.svg");
}
.form-check-input:checked[type=radio] {
    background-color: #fff;
    background-size: 10px 10px;
    --bs-form-check-bg-image: url("//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_radio.svg");
}
.form-check-input[type=checkbox]:indeterminate {
    background-color: #0d6efd;
    border-color: #0d6efd;
    --bs-form-check-bg-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3e%3cpath fill='none' stroke='%23fff' stroke-linecap='round' stroke-linejoin='round' stroke-width='3' d='M6 10h8'/%3e%3c/svg%3e");
}
.form-check-input:disabled {
    pointer-events: none;
    filter: none;
    opacity: 0.5;
    background-color: #c2c2c2;
}
.form-check-input[disabled] ~ .form-check-label, .form-check-input:disabled ~ .form-check-label {
    cursor: default;
    opacity: 0.5;
}
.form-switch {
    padding-left: 2.5em;
}
.form-switch .form-check-input {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='rgba%280, 0, 0, 0.25%29'/%3e%3c/svg%3e");
    width: 2em;
    margin-left: -2.5em;
    background-image: var(--bs-form-switch-bg);
    background-position: left center;
    border-radius: 2em;
    transition: background-position 0.15s ease-in-out;
}
@media (prefers-reduced-motion: reduce) {
    .form-switch .form-check-input {
      transition: none;
    }
}
.form-switch .form-check-input:focus {
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%2386b7fe'/%3e%3c/svg%3e");
}
.form-switch .form-check-input:checked {
    background-position: right center;
    --bs-form-switch-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='-4 -4 8 8'%3e%3ccircle r='3' fill='%23fff'/%3e%3c/svg%3e");
}
.form-switch.form-check-reverse {
    padding-right: 2.5em;
    padding-left: 0;
}
.form-switch.form-check-reverse .form-check-input {
    margin-right: -2.5em;
    margin-left: 0;
}
.form-check-inline {
    display: inline-block;
    margin-right: 1rem;
}
.btn-check {
    position: absolute;
    clip: rect(0, 0, 0, 0);
    pointer-events: none;
}
.btn-check[disabled] + .btn, .btn-check:disabled + .btn {
    pointer-events: none;
    filter: none;
    opacity: 0.65;
}

/* DatePicker */
input[type="date"] {
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: none;
  background-color: #fff;
}

input[type="date"]::-webkit-calendar-picker-indicator {
  display: none;
  -webkit-appearance: none;
}

input[type="date"]::-moz-focus-inner {
  border: 0;
}
.form-date-wrap { margin: 2.5rem 0; padding: 1.25rem 0; background: var(--cw-color-10); }
.cw-date { display: flex; justify-content: center; align-items: center; gap: .375rem; }
.cw-date input { max-width: 128px; background: url(//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_calendar.svg) no-repeat right 10px center / 16px 16px #fff; }
.cw-date a { flex-shrink: 0; }
@media (max-width: 767.98px) {
    .cw-date input { flex: 1 1 0; min-width: 0; max-width: 100%; }
}

/* more 버튼 */
.cw-btn-more { margin-top: 2.5rem; display: flex; justify-content: center; align-items: center; }
.cw-btn-more .btn {  width: 18.75rem; --bs-btn-line-height: 2.75rem; }
.cw-btn-more .btn span { padding-right: 17px; background: url(//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_arrow_more.svg) no-repeat right center; }

@media (max-width: 767.98px) {
    .cw-btn-more .btn { width: 100%; }
}

/* 공통 */
.btn-group {
    --cw-font-size: .875rem;
    --cw-width: 36px;
    --cw-text-width: 46px;
    --cw-text-height: 38px;
    display: inline-flex;
    align-items: center;
    border: 1px solid var(--cw-color-30);
    border-radius: var(--cw-border-radius);
}
.btn-group.sm {
    --cw-font-size: .8125rem;
    --cw-width: 28px;
    --cw-text-width: 36px;
    --cw-text-height: 28px;
}
.btn-group .btn-minus { width: var(--cw-width); text-align: center; }
.btn-group .btn-plus { width: var(--cw-width); text-align: center; }
.btn-group .btn-txt { width: var(--cw-text-width); height: var(--cw-text-height); max-width: 46px; font-size: var(--cw-font-size); color: var(--cw-heading-color); padding: 0; border: 0 none; text-align: center !important; }

label { cursor: pointer; }

.cw-textfield {
    --cw-border-radius: 4px;
    --cw-border-color: var(--cw-color-30);
    --cw-padding-y: 8px;
    --cw-padding-x: 12px;
    --cw-font-size: 14px;
    --cw-line-height: 22px;
    padding: var(--cw-padding-y) var(--cw-padding-x);
    border: 1px solid var(--cw-border-color);
    border-radius: var(--cw-border-radius);
    font-size: var(--cw-font-size);
    font-weight: 400;
    color: var(--cw-heading-color);
    line-height: var(--cw-line-height);
    resize: none;
}
.cw-textfield:focus {
    --cw-border-color: var(--cw-color-50);
    outline: 0;
}
.cw-textfield:disabled {
    opacity: .8;
}
.cw-textfield.sm {
    --cw-padding-y: 6px;
    --cw-padding-x: 10px;
    --cw-font-size: .8125rem;
    --cw-line-height: 16px;
}

.cw-select-box {
    --cw-line-height: 18px;
    --cw-font-size: .875rem;
    padding: 10px 32px 10px 12px;
    line-height: var(--cw-line-height);
    color: var(--cw-heading-color);
    font-size: var(--cw-font-size);
    border: 1px solid var(--cw-color-30);
    border-radius: var(--cw-border-radius);
    -moz-appearance: none;
    -webkit-appearance: none;
    appearance: none;
    background: #fff url(//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_cheveron_down.svg) no-repeat right .625rem center;
    cursor: pointer;
    background-size: 1.25rem;
}
.cw-select-box.sm {
    --cw-line-height: 1rem;
    --cw-font-size: .8125rem;
    padding: 6px 26px 6px 10px;
    background-position: right 7px center;
    background-size: 16px 16px;
}
.cw-select-box:focus {
    border-color: var(--cw-color-50);
    outline: none;
}
.cw-select-box:disabled {
    background-color: #f6f6f6;
    opacity: .8;
}

.board-wrapper, .gallery-wrapper { word-break: break-all; }

.cw-subtitle { font-weight: 700; font-size: 1.125rem; line-height: 26px; color: var(--cw-heading-color); }

.cw-paging { display: flex; gap: 4px; justify-content: center; align-items: center; }
.cw-paging a { display: inline-block; padding: 5px 12px; font-size: .875rem; color: var(--cw-color-60); text-decoration: none; line-height: 20px; }
.cw-paging .active { color: #fff; background-color: var(--cw-point-color-pri); border-radius: var(--cw-border-radius); }

.cw-simpleboard { border-top: 1px solid var(--cw-heading-color); }
.cw-simpleboard .post { display: flex; justify-content: space-between; align-items: center; padding: 20px 0; border-bottom: 1px solid var(--cw-color-30); }
.cw-simpleboard .stars { display: inline-block; width: 100px; color: var(--cw-color-50); font-size: .875rem; line-height: 20px; }
.cw-simpleboard .stars strong { font-weight: 400; color: var(--cw-heading-color); }
.cw-simpleboard .subject { flex-grow: 1; font-size: .875rem; color: var(--cw-heading-color); font-size: .8125rem; line-height: 18px; }
.cw-simpleboard .subject .complete { font-size: .75rem; color: var(--cw-color-60); }
.cw-simpleboard .author { display: inline-block; width: 100px; font-size: .875rem; color: var(--cw-color-80); }
.cw-simpleboard .date { text-align: right; display: inline-block; width: 100px; font-size: .8125rem; color: var(--cw-color-80); }
@media (max-width: 767.98px) {
    .cw-subtitle { font-size: 1rem; line-height: 24px; }
    .cw-simpleboard .post { flex-direction: column; align-items: flex-start; padding: 16px 0; }
    .cw-simpleboard .text-end { text-align: left; margin-top: 4px; }
    .cw-simpleboard .author { width: auto; }
    .cw-simpleboard .author::after { content: ' '; margin: 0 8px; display: inline-block; width: 1px; height: 14px; vertical-align: middle; background-color: var(--cw-color-30); }
    .cw-simpleboard .date { width: auto; }
    .cw-simpleboard .reply .text-end { margin-left: 28px; }
}

.coupon-lists { display: grid; grid-template-columns: repeat(4, 1fr); gap: 24px; }
.coupon-lists .coupon { position: relative; border: 1px solid var(--cw-color-30); border-radius: 10px; padding: 24px 64px 24px 24px; }
.coupon--info { display: flex; flex-direction: column; gap: 8px; padding-right: 24px; }
.coupon--name { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; line-clamp: 1; overflow: hidden; text-overflow: ellipsis; word-wrap: break-word; word-break: break-all; white-space: normal; font-weight: 700; font-size: .875rem; color: var(--cw-heading-color); line-height: 20px; }
.coupon--price { display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 1; line-clamp: 1; overflow: hidden; text-overflow: ellipsis; font-weight: 700; font-size: 1.25rem; color: var(--cw-point-color); line-height: 28px; }
.coupon--desc { word-wrap: break-word; word-break: break-all; white-space: normal; font-size: .8125rem; color: var(--cw-color-60); line-height: 18px; min-height: 40px; }
.coupon--btns { position: absolute; top: 0; right: 0; width: 64px; height: 100%; border-left: 1px dashed var(--cw-color-30); background-color: var(--cw-color-10); border-top-right-radius: 10px; border-bottom-right-radius: 10px; }
.coupon--btn { text-indent: -9999px; display: block; width: 100%; height: 100%; background: url(//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_download.svg) no-repeat center; background-size: 24px; }
@media (min-width: 768px) and (max-width: 991.98px) {
    .coupon-lists { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 767.98px) {
    .coupon-lists { grid-template-columns: repeat(1, 1fr); gap: 16px; }
    .coupon-lists .coupon { padding: 20px 64px 20px 20px; }
    .coupon--info { gap: 6px; padding-right: 20px; }
    .coupon--name { font-size: .8125rem; line-height: 18px; }
    .coupon--price { font-size: 1.125rem; line-height: 26px; }
    .coupon--desc { font-size: .75rem; line-height: 16px; }
}

/* 상품관련 */
.goods--title {
    --cw-font-size: 1.5rem;
    --cw-line-height: 32px;
    --cw-margin-top: 10px;
    color: var(--cw-heading-color);
    font-size: var(--cw-font-size);
    line-height: var(--cw-line-height);
    margin-top: var(--cw-margin-top);
    font-weight: 600;
    display: -webkit-box;
    line-clamp: 1;
    -webkit-line-clamp: 1;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.goods--title.sm {
    --cw-font-size: .875rem;
    --cw-line-height: 20px;
    --cw-margin-top: 0;
}
.goods--title.opts {
    --cw-font-size: .8125rem;
    --cw-line-height: 18px;
    --cw-margin-top: 0;
}
.goods--subtitle,
.goods--engname {
    --cw-font-size: 1rem;
    --cw-line-height: 24px;
    font-size: var(--cw-font-size);
    color: var(--cw-color-60);
    line-height: var(--cw-line-height);
    margin-top: 4px;
    display: -webkit-box;
    line-clamp: 2;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
}
.goods--engname {
    color: var(--cw-color-80);
}
.goods--subtitle.sm {
    --cw-font-size: .8125rem;
    --cw-line-height: 18px;
}
.goods--price-wrap {
    --cw-margin-top: 16px;
    display: flex;
    justify-content: space-between;
    margin-top: var(--cw-margin-top);
}
.goods--price-wrap.sm {
    --cw-margin-top: 12px;
}
.goods--price-wrap.opts {
    --cw-margin-top: 0;
}
.goods--price-wrap .prices { display: flex; flex-wrap: wrap; gap: 2px 8px; align-items: center; }
.goods--price-wrap .prices.in-txt { gap: 8px; }
.goods--price-wrap .prices .price { font-size: .875rem; line-height: 20px; color: var(--cw-heading-color); }
.goods--price-wrap .prices .price strong { font-size: 1rem; line-height: 24px; font-weight: 700; }
.goods--price-wrap .prices .original { font-size: .875rem; line-height: 22px; color: var(--cw-color-60); }
.goods--price-wrap .prices .original strong { font-weight: 400; text-decoration: line-through; }
.goods--price-wrap .prices .discount { color: var(--cw-point-color); font-weight: 700; font-size: 1rem; line-height: 1.5rem; }
.goods--price-wrap .share { display: flex; gap: 12px; }
.goods--price-wrap .share img { width: 24px; height: 24px; }
.goods-list { padding: 16px 0; flex-wrap: nowrap; }
.goods-list--item { position: relative; min-width: 0; max-width: 100%; }
.goods-list--item .item-image { margin-bottom: 16px; }
.goods-list--item .item-image img { width: 100%; height: auto; }
.goods-list--item .link { text-indent: -9999px; position: absolute; left: 0; top: 0; right: 0; bottom: 0; }

.goods--colorchip { display: flex; flex-direction: row; gap: 2px; margin-bottom: 12px; }
.goods--colorchip .rectangle { width: 12px; height: 4px; border-width: 1px; border-style: solid; background: var(--rectangle-bg); border-color: var(--rectangle-border-color); }
.goods--price-wrap { align-items: center; }
.goods--price-wrap .normal-txt { font-size: .75rem; font-weight: 400; line-height: 1rem; color: var(--cw-color-80); }
.goods--price-wrap .column-line { width: 1px; height: 14px; background-color: var(--cw-color-30); }
.goods--price-wrap .search-btn { position: relative; z-index: 1; padding: 5px; display: flex; justify-content: center; align-items: self-end; align-self: stretch; }
.goods--icos { display: flex; gap: 4px; flex-wrap: wrap; margin-top: 12px; }
.goods--icos span { display: flex; height: 18px; padding: 0 8px; font-size: .6875rem; font-weight: 400; line-height: 12px; color: var(--cw-color-90); align-items: center; border-radius: 3px; background: var(--cw-color-20); }
.goods--more { position: relative; z-index: 1; display: flex; gap: 4px; margin-top: 12px; align-items: center; }
.goods--more .benefit-btn { display: flex; height: 20px; border: 1px solid var(--cw-heading-color); border-radius: 3px; }
.goods--more .benefit-btn--black { display: flex; width: 20px; align-items: center; justify-content: center; font-size: .75rem; background: var(--cw-heading-color); color: var(--cw-color-white); }
.goods--more .benefit-btn--white { display: flex; height: 20px; padding: 0 4px; align-items: center; justify-content: center; font-size: .6875rem; color: var(--cw-heading-color); white-space: nowrap; }
.goods--more .cw-select-box { --cw-line-height: 14px; padding: 3px 14px 3px 6px; font-size: .6875rem; background-size: 8px 8px; background-position: right 4px center; }
.goods--star { display: flex; gap: 2px; align-items: center; margin-top: 12px; }
.goods--star-cnt { font-size: .75rem; line-height: 1rem; color: var(--cw-heading-color); }
.goods-list--item .item-image .ico-wish { z-index: 1; position: absolute; top: 10px; right: 10px; width: 32px; height: 32px; }

@media (min-width: 768px) and (max-width: 991.98px) {
    .goods-list--item .item-image .ico-wish { width: 24px; height: 24px; top: 8px; right: 8px; }
    .goods--title.sm { --cw-font-size: .8125rem; --cw-line-height: 18px; }
    .goods--subtitle.sm { --cw-font-size: .75rem; --cw-line-height: 16px; }
    .goods--price-wrap .prices { flex-direction: row; }
    .goods-list--item .item-image .ico-wish { top: 8px; right: 8px; width: 24px; height: 24px; }
}

@media (max-width: 767.98px) {
    .goods--title { --cw-font-size: 1.25rem; --cw-line-height: 28px; --cw-margin-top: 10px; }
    .goods--title.sm { --cw-font-size: .8125rem; --cw-line-height: 18px; }
    .goods--subtitle,
    .goods--engname { --cw-font-size: .875rem; --cw-line-height: 20px; }
    .goods--subtitle.sm { --cw-font-size: .75rem; --cw-line-height: 16px; }
    .goods--price-wrap .prices { flex-direction: row; }
    .goods--price-wrap .prices .original { line-height: 16px; }
    .goods-list--item .item-image .ico-wish { top: 8px; right: 8px; width: 24px; height: 24px; }
}
.MS_option_price { color: var(--cw-point-color); }

/* 상품 공통 스타일 */
.prds-list--item { 
    position: relative; min-width: 0; max-width: 100%;
    .link { position: absolute; left: 0; top: 0; right: 0; bottom: 0; text-indent: -99999px; }
    .prds--image { 
        position: relative;
        img { width: 100%; height: auto; }
        .ico-wish { z-index: 1; position: absolute; top: var(--cw-size-10); right: var(--cw-size-10); display: flex; align-items: center; flex-direction: column; width: var(--cw-size-32); height: var(--cw-size-32); }
        .my-wish-list { display: inline-block; width: var(--cw-size-32); height: var(--cw-size-32); padding-top: var(--cw-size-26); background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_wish_off.svg') no-repeat center top; }
        .my-wish-list.wish-on { background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/ico_wish_on.svg'); }
        .my-wish-count { color: var(--cw-color-60); font-size: var(--cw-size-12); }
    }
    .prds--colorchip { 
        display: flex; gap: var(--cw-size-2); flex-wrap: wrap; margin-bottom: var(--cw-size-12); 
        .rectangle { width: var(--cw-size-12); height: var(--cw-size-4); border: 1px solid var(--rectangle-border-color); }
    }
    .prds--name { display: -webkit-box; line-clamp: 1; -webkit-line-clamp: 1; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; font-size: var(--cw-size-14); font-weight: 600; line-height: var(--cw-size-20); }
    .prds--engname { display: -webkit-box; line-clamp: 2; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; font-size: var(--cw-size-13); line-height: var(--cw-size-18); color: var(--cw-color-80); margin-top: var(--cw-size-4); }
    .prds--subname { display: -webkit-box; line-clamp: 2; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; text-overflow: ellipsis; font-size: var(--cw-size-13); line-height: var(--cw-size-18); color: var(--cw-color-60); margin-top: var(--cw-size-4); }
    .prds--price-wrap { 
        display: flex; align-items: center; margin: var(--cw-size-12) 0;
        &:not(:has(.price, .original, .discount, .normal-txt, .coupon)) { display: none; }
        &:has(.coupon) { margin-top: calc(var(--cw-size-16) * -1); }
        .prices { 
            display: flex; flex-wrap: wrap; column-gap: var(--cw-size-6); align-items: center;
            .price { font-size: var(--cw-size-14); line-height: var(--cw-size-20); }
            .price strong { font-size: var(--cw-size-16); line-height: var(--cw-size-24); font-weight: 700; }
            .original { font-size: var(--cw-size-14); line-height: var(--cw-size-22); color: var(--cw-color-60); }
            .original span { text-decoration: line-through; }
            .discount { font-size: var(--cw-size-16); line-height: var(--cw-size-24); font-weight: 700; color: var(--cw-point-color); }
            .coupon { font-size: var(--cw-size-12); line-height: var(--cw-size-16); color: var(--cw-error-color); }
            .coupon span { font-size: var(--cw-size-14); line-height: var(--cw-size-20); }
            .coupon span strong { font-size: var(--cw-size-16); line-height: var(--cw-size-24); font-weight: 700; }
            &.in-txt { gap: var(--cw-size-8); }
            &.in-txt .normal-txt { font-size: var(--cw-size-12); line-height: var(--cw-size-16); color: var(--cw-color-80); }
            &.in-txt .column-line { width: 1px; height: var(--cw-size-14); background-color: var(--cw-color-30); }
        }
        .preview-btn { position: relative; z-index: 1; display: flex; justify-content: center; align-items: center; align-self: stretch; padding: 0 var(--cw-size-5); }
    }
    .prds--icons { 
        display: flex; align-items: center; gap: var(--cw-size-4); flex-wrap: wrap; margin-top: var(--cw-size-12);
        &:not(:has(img)) { display: none; }
        span { display: inline-flex; align-items: center; gap: var(--cw-size-4); flex-wrap: wrap; }
        img { padding: 0; margin: 0; }
    }
    .prds--more { 
        display: flex; gap: var(--cw-size-4); cursor: pointer; line-height: 0; margin-top: var(--cw-size-12);
        &:not(:has(.benefit-btn, .option-detail)) { display: none; }
        .benefit-btn { position: relative; z-index: 2; display: flex; height: var(--cw-size-20); border: 1px solid var(--cw-heading-color); border-radius: var(--cw-size-3); }
        .benefit-btn--black { display: flex; width: var(--cw-size-20); align-items: center; justify-content: center; font-size: var(--cw-size-12); background: var(--cw-heading-color); color: var(--cw-color-white); }
        .benefit-btn--white { display: flex; height: var(--cw-size-20); padding: 0 var(--cw-size-4); align-items: center; justify-content: center; font-size: var(--cw-size-11); color: var(--cw-heading-color); white-space: nowrap; }
        .option-detail { 
            position: relative; z-index: 2;
            .opt-btn { display: inline-block; width: var(--cw-size-60); height: var(--cw-size-20); background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/btn_opt_view.svg'); text-indent: -9999px; }
            .opt-btn.on { background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/btn_opt_view_on.svg'); }
            .opt-btn.on + .layer-opt-preview { display: block; }
            .layer-opt-preview { display: none; position: absolute; top: var(--cw-size-20); left: 0; }
            .opt-wrapper { display: flex; flex-direction: column; align-items: flex-start; gap: var(--cw-size-10); min-width: var(--cw-size-90); padding: var(--cw-size-10); border: 1px solid var(--cw-color-30); border-radius: var(--cw-size-3); background: var(--cw-color-white); }
            .opt-wrapper li .detail-opt dt { font-size: var(--cw-size-11); line-height: var(--cw-size-14); font-weight: 700; }
            .opt-wrapper li .detail-opt dd { font-size: var(--cw-size-11); line-height: var(--cw-size-14); font-weight: 500; color: var(--cw-color-80); margin-top: var(--cw-size-4); }
            .opt-wrapper li .detail-opt dd:is(:first-of-type) { margin-top: var(--cw-size-6); }
        }
    }
    .prds--star { 
        display: flex; gap: var(--cw-size-2); align-items: center; margin-top: var(--cw-size-12);
        .prds--star-cnt { font-size: var(--cw-size-12); line-height: var(--cw-size-16); }
    }
    .prds--hashtag { 
        z-index: 2; position: relative; display: flex; gap: var(--cw-size-6); flex-wrap: wrap; margin-top: var(--cw-size-12); font-size: var(--cw-size-12); line-height: var(--cw-size-16); 
        a { color: var(--cw-heading-color); }
    }
    .prds--ranking { position: absolute; left: 0; top: 0; right: 0; bottom: 0; z-index: 1; display: flex; align-items: center; justify-content: center; width: var(--cw-size-30); height: var(--cw-size-30); font-size: var(--cw-size-14); line-height: var(--cw-size-20); color: var(--cw-color-white); background-color: var(--cw-color-60); }
    &:nth-child(-n+10) .prds--ranking { background-color: var(--cw-point-color-pri); }
}

/* 상품 공통 스타일 - 리스트형 */
.prds-list.list .prds-list--item { 
    display: grid; grid-template-columns: var(--cw-size-240) auto; column-gap: var(--cw-size-24); align-items: center; 
    .prds--price-wrap { justify-content: start; }
}

/* 상품 공통 스타일 - 갤러리형 */
.prds-list.gallery .prds-list--item {
    .prds--image { margin-bottom: var(--cw-size-16); }
    .prds--price-wrap { justify-content: space-between; }
}

@media (max-width: 991.98px) {
    /* 상품 공통 스타일 */
    .prds-list--item { 
        .prds--image .ico-wish { top: var(--cw-size-8); right: var(--cw-size-8); width: var(--cw-size-24); height: var(--cw-size-24); }
        .prds--image .my-wish-list { width: var(--cw-size-24); height: var(--cw-size-24); padding-top: var(--cw-size-22); background-size: var(--cw-size-26); }
        .prds--image .my-wish-list.wish-on { background-size: var(--cw-size-26); }
        .prds--name { font-size: var(--cw-size-13); line-height: var(--cw-size-18); }
        .prds--subname { font-size: var(--cw-size-12); line-height: var(--cw-size-16); }
        .prds--price-wrap .prices { 
            column-gap: var(--cw-size-4);
            .price { font-size: var(--cw-size-12); line-height: var(--cw-size-16); }
            .price strong { font-size: var(--cw-size-14); line-height: var(--cw-size-20); }
            .original { font-size: var(--cw-size-12); line-height: var(--cw-size-16); }
            .coupon { font-size: var(--cw-size-11); }
            .coupon span { font-size: var(--cw-size-12); line-height: var(--cw-size-16); }
            .coupon span strong { font-size: var(--cw-size-14); line-height: var(--cw-size-20); }
        }
        .prds--price-wrap .prices-grid { display: grid; }
        .prds--price-wrap .prices-grid .discount { order: -1; grid-column: 1 / 3; font-size: var(--cw-size-14); line-height: var(--cw-size-20); }
        .prds--price-wrap .preview-btn { align-items: flex-end; }
    }

    /* 상품 공통 스타일 - 리스트형 */
    .prds-list.list .prds-list--item { grid-template-columns: var(--cw-size-200) auto; column-gap: var(--cw-size-20); }
}
@media (max-width: 767.98px) {
    /* 상품 공통 스타일 - 리스트형 */
    .prds-list.list .prds-list--item { grid-template-columns: var(--cw-size-120) auto; column-gap: var(--cw-size-16); align-items: start; }
    
    /* 베스트 아이템, 추천 아이템, 프로모션 아이템, 판매순위 상품 */
    :where(.best-wrapper, .recmd-wrapper, .promotion-wrapper, .rank-wrapper) { margin-left: calc(-0.5 * var(--bs-gutter-x)) !important; margin-right: calc(-0.5 * var(--bs-gutter-x)) !important; padding: 0 calc(0.5 * var(--bs-gutter-x)) !important; }
}

.cw-overlay { display: none; position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(0, 0, 0, 0.7); z-index: 500; }

legend,
caption { display: none; }

/* 페이지 타이틀 */
.page-title-wrap { margin-top: 3.75rem; text-align: center; }
.page-title-wrap h2 { font-size: 1.5rem; font-weight: 700; }
.page-title-wrap .pt-20 { padding-top: 1.25rem; }
.page-title-wrap p { padding-top: 1.25rem; font-size: .875rem; color: var(--cw-color-80); }
@media (min-width: 768px) and (max-width: 991.98px) {
    .page-title-wrap { margin-top: 2.5rem; }
	.page-title-wrap h2 { display: none; }
    .page-title-wrap h2.fix-tit { display: block; }
}
@media (max-width: 767.98px) {
    .page-title-wrap { margin-top: 2.5rem; }
	.page-title-wrap h2 { display: none; }
    .page-title-wrap h2.fix-tit { display: block; }
}

/* flex */
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.flex-wrap { flex-wrap: wrap; }
.flex-base { display: flex; gap: 6px; align-items: center; }
.flex-right { display: flex; gap: 6px; align-items: center; margin-left: auto; }
.flex-col { flex-direction: column; }
.items-start { align-items: flex-start; }
.items-end { align-items: flex-end; }
.items-center { align-items: center; }
.items-baseline { align-items: baseline; }
.items-stretch { align-items: stretch; }
.justify-normal { justify-content: normal; }
.justify-start { justify-content: flex-start; }
.justify-end { justify-content: flex-end; }
.justify-center { justify-content: center; }
.justify-between { justify-content: space-between; }
.justify-around { justify-content: space-around; }
.justify-evenly { justify-content: space-evenly; }
.justify-stretch { justify-content: stretch; }

/* width */
.w-full { width: 100%; } 

.shrink-0 { flex-shrink: 0; }
.gap-0 { gap: 0; }
.gap-2 { gap: 2px; }
.gap-4 { gap: 4px; }
.gap-5 { gap: 5px; }
.gap-6 { gap: 6px; }
.gap-8 { gap: 8px; }
.gap-10 { gap: 10px; }
.gap-12 { gap: 12px; }
.gap-15 { gap: 15px; }
.gap-20 { gap: 20px; }
.gap-x-0 { column-gap: 0; }
.gap-x-10 { column-gap: 10px; }
.gap-y-0 { row-gap: 0; }
.gap-y-10 { row-gap: 10px; }

/* 탭 메뉴 */
.cw-tab { display: flex; align-items: center; justify-content: center; height: 3.125rem; margin-top: 1.5rem; background: var(--cw-color-10); }
.cw-tab li { flex: 1; height:100%; text-align: center; border-bottom: 1px solid var(--cw-heading-color); cursor: pointer; }
.cw-tab li.now { background: var(--cw-color-white); border: 1px solid var(--cw-heading-color); border-bottom: 0; }
.cw-tab li a { font-size: .875rem; line-height: 3rem; color: var(--cw-heading-color); }
.tab-content {display: none; }
.tab-content.active { display: block; }

.tab-navi--links { display: flex; justify-content: space-around; align-items: center; margin-bottom: 60px; }
.tab-navi--links li { text-align: center; flex-grow: 1; border-bottom: 1px solid var(--cw-color-30); }
.tab-navi--links li a { margin-bottom: -1px; display: block; padding: 18px 0; font-size: 1rem; font-weight: 700; color: var(--cw-heading-color); text-decoration: none;  }
.tab-navi--links li em { font-style: normal; font-weight: 400; font-size: 0.9rem; color: var(--cw-color-60); }
.tab-navi--links li.active { border-bottom: 2px solid var(--cw-heading-color); }
.tab-navi--links li.active a { margin-bottom: -2px; }


/* 레이어 팝업 */
.modal-wrap {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.7);
    z-index: 1000;
    justify-content: center;
    align-items: center;
}

.modal-wrap.active { display: flex; }

.modal-content {
    /*position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);*/
    background: #fff;
    border-radius: 10px;
    width: 90%;
    max-width: 27.5rem;
    border: 1px solid var(--cw-heading-color);
    padding: 18px 20px 20px;
    animation: fadeIn 0.3s ease-in-out;
}

.modal-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal-title {
    font-size: 1.125rem;
    font-weight: bold;
    margin: 0;
}

.btn-modal-close {
    width: 20px;
    height: 20px;
    background: url('//skin.makeshop.co.kr/skin/rw_shop/images/icons/bullet_delete.svg') no-repeat center top;
    border: none;
}

.modal-footer {
    display: flex;
    gap: 8px;
    justify-content: center;
    margin-top: 1.25rem;
}

.modal-footer button,
.modal-footer a {
    width: 100%;
}

@keyframes fadeIn {
    from {
        opacity: 0;
        transform: scale(0.9);
    }
    to {
        opacity: 1;
        transform: scale(1);
    }
}
@media (max-width: 767.98px) {
    .modal-title { font-size: 1rem; }
}

.btn-group .btn-txt { width: var(--cw-text-width); height: var(--cw-text-height); max-width: 46px; font-size: var(--cw-font-size); color: var(--cw-heading-color); padding: 0; border: 0 none; text-align: center !important; }

/* 자동입력방지 프로그램 */
#passimg { display: none; position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); padding: var(--cw-size-20); border: 1px solid var(--bs-highlight-color); border-radius: var(--cw-size-10); font-size: var(--cw-size-14) ;background-color: var(--cw-color-white); z-index:102;}

#authimg { position: fixed; top: 50%; left: 50%; transform: translate(-50%, -50%); padding: var(--cw-size-20); border: 1px solid var(--bs-highlight-color); border-radius: var(--cw-size-10); font-size: var(--cw-size-14) ;background-color: var(--cw-color-white); }
#authimg h5 { display: flex; align-items: center; gap: var(--cw-size-8); font-size: var(--cw-size-14); color: var(--cw-point-color); }
#authimg .contents table { width: 100%; }
#authimg .contents table tr,
#authimg .contents table td { display: flex; align-items: center; }
#authimg .contents table td { padding-top: var(--cw-size-10); }
#authimg .contents table td:first-child,
#authimg .contents table td .cw-textfield {width: var(--cw-size-100);}
#authimg .btns { display: flex; align-items: center; justify-content: center; gap: var(--cw-size-6); padding-top: var(--cw-size-12); }

/* 모바일 */
@media (max-width: 767.98px) {
    #authimg .icon-text { font-size: var(--cw-size-13); }
    #authimg .auth-form dt { font-size: var(--cw-size-13); }
}