@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Material+Symbols+Rounded:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200");
@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css");
:root {
  --e_prime: #4286F4;
  --e_prime_rgb: 66, 134, 244;
  --e_blue: #146cf9;
  --e_blue_rgb: 20, 108, 249;
  --e_white: #ffffff;
  --e_white_rgb: 255, 255, 255;
  --e_black: #000000;
  --e_black_rgb: 0, 0, 0;
  --e_red: #FF4141;
  --e_red_rgb: 255, 65, 65;
  --e_yellow: #FF9800;
  --e_yellow_rgb: 255, 152, 0;
  --e_green: #43A047;
  --e_green_rgb: 67, 160, 71;
  --e_cyan: #00C2A8;
  --e_cyan_rgb: 0, 194, 168;
  --e_purple: #AF52DE;
  --e_purple_rgb: 175, 82, 222;
  --e_line: #dfdfdf;
  --e_line_rgb: 223, 223, 223;
  --e_gray_33: #333333;
  --e_gray_33_rgb: 51, 51, 51;
  --e_gray_66: #666666;
  --e_gray_66_rgb: 102, 102, 102;
  --e_gray_99: #999999;
  --e_gray_99_rgb: 153, 153, 153;
  --e_gray_cc: #CCCCCC;
  --e_gray_cc_rgb: 204, 204, 204;
  --e_gray_ef: #f9f9f9;
  --e_gray_ef_rgb: 249, 249, 249;
  --e_gray_f5: #f5f5f5;
  --e_gray_f5_rgb: 245, 245, 245;
}

*::-webkit-scrollbar {
  width: 5px;
  height: 5px;
}
*::-webkit-scrollbar-track {
  background: var(--e_gray_ef);
  border-radius: 3px;
}
*::-webkit-scrollbar-thumb {
  background: var(--e_gray_cc);
  border-radius: 3px;
}

* {
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  text-decoration: none;
  border: none;
  word-break: keep-all;
  transition: 0.3s;
  font-family: "Pretendard", sans-serif;
}

html {
  scroll-behavior: smooth;
}

body {
  width: 100%;
  height: 100%;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
  background: #fff; /* FOUC 방지 */
  visibility: hidden;
  opacity: 0;
  transition: visibility 0s, opacity 0.5s ease-in-out;
  font-size: clamp(14px, 1vw, 16px);
  font-weight: 400;
  vertical-align: middle;
  color: #000;
  line-height: 160%;
  letter-spacing: -0.5px;
}

/* body에 'loaded' 클래스가 추가되었을 때 화면을 표시 */
body.loaded {
  visibility: visible;
  opacity: 1;
  transition: opacity 0.3s ease-in-out;
}

html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, a, button, address, em, img, small, strong, sub, sup, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, hr {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4, h5, h6 {
  font-weight: normal;
  line-height: 120%;
  font-family: "Pretendard", sans-serif;
}

ol, ul, li {
  list-style: none;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  line-height: 120%;
}

form, iframe {
  display: block;
  border: 0;
}

fieldset {
  display: inline-block;
  border: 0;
}

img, button {
  border: 0 none;
  vertical-align: middle;
  line-height: 100%;
}

hr {
  height: 0;
  display: none;
}

i, em, address {
  font-style: normal;
}

label, button {
  cursor: pointer;
}

caption, legend {
  width: 0;
  height: 0;
  margin: 0;
  padding: 0;
  text-indent: -9999em;
  overflow: hidden;
  font-size: 0;
}

header, footer, section, article, aside, nav, hgroup, details, menu, figure, figcaption {
  display: block;
}

input, textarea, select {
  margin: 0;
  padding: 0;
  font-size: clamp(14px, 1vw, 16px);
  font-weight: 400;
  vertical-align: middle;
  line-height: 120%;
  background: none;
}

textarea {
  padding: 20px;
  border: 1px solid var(--e_line);
  resize: none;
  overflow-y: auto;
  min-height: 200px;
}

a {
  text-decoration: none;
  word-break: break-all;
}
a :link, a:visited, a:hover, a:active, a:focus {
  text-decoration: none;
}

*:focus {
  outline: none;
}

/* =========================================================
  Button Styles
  ========================================================= */
.em_none {
  display: none !important;
}

button {
  padding: 0 20px;
  border-radius: 10px;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 50px;
  gap: 10px;
  font-size: 16px;
}
button .material-symbols-rounded {
  font-size: 20px;
}
button.btn_gray {
  background-color: var(--e_gray_ef);
  color: #000;
}
button.btn_gray:hover {
  background-color: color-mix(in srgb, var(--e_gray_ef), black 10%);
  box-shadow: 0 0 5px rgba(var(--e_gray_ef_rgb), 0.5);
}
button.btn_gray99 {
  background-color: var(--e_gray_99);
  color: #fff;
}
button.btn_gray99:hover {
  background-color: color-mix(in srgb, var(--e_gray_99), black 10%);
  box-shadow: 0 0 5px rgba(var(--e_gray_99_rgb), 0.5);
}
button.btn_black {
  background-color: var(--e_gray_33);
  color: #fff;
}
button.btn_black span {
  color: #fff;
}
button.btn_black:hover {
  background-color: color-mix(in srgb, var(--e_gray_33), white 10%);
  box-shadow: 0 0 5px rgba(var(--e_gray_33_rgb), 0.5);
}
button.btn_blue {
  background-color: var(--e_prime);
  color: #fff;
}
button.btn_blue:hover {
  background-color: color-mix(in srgb, var(--e_prime), black 10%);
  box-shadow: 0 0 5px rgba(var(--e_prime_rgb), 0.5);
}
button.btn_line {
  color: var(--e_prime);
  border: 1px solid var(--e_prime);
  background: #fff;
}
button.btn_line:hover {
  background-color: var(--e_prime);
  color: #fff;
  box-shadow: 0 0 5px rgba(var(--e_prime_rgb), 0.5);
}
button.btn_grayline {
  color: #000;
  border: 1px solid var(--e_line);
  background: #fff;
}
button.btn_grayline:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
  box-shadow: 0 0 5px rgba(var(--e_prime_rgb), 0.5);
}
button.btn_txt {
  background: none;
  color: var(--e_prime);
  height: auto;
  text-decoration: underline;
}
button.btn_txt:hover {
  color: color-mix(in srgb, var(--e_prime), black 10%);
}
button.btn_lg {
  width: 100%;
  height: 60px;
  font-size: 20px;
}
@media (max-width: 1199px) {
  button.btn_lg {
    min-width: 200px;
  }
}
@media (max-width: 767px) {
  button.btn_lg {
    height: 50px;
    font-size: 18px;
  }
}
button.disabled {
  background-color: var(--e_gray_ef);
  color: var(--e_gray_cc);
  cursor: not-allowed;
  border: none;
}
button.disabled:hover {
  background-color: var(--e_gray_ef);
  box-shadow: none;
  color: var(--e_gray_cc);
  cursor: not-allowed;
  border: none;
}
button.s_btn {
  height: 30px;
  font-size: 12px;
}
button.search-button {
  background: none;
  padding: 0;
  width: auto;
  height: auto;
}
button.search-button:hover span {
  color: color-mix(in srgb, var(--e_prime), black 10%);
}

/* =========================================================
  Input Styles
  ========================================================= */
.input_group {
  position: relative;
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.input_group span {
  font-size: 12px;
  padding-left: 10px;
}
.input_group .input-error {
  color: var(--e_red);
  display: none;
}
.input_group .input-subtext {
  color: var(--e_gray_99);
}
.input_group.insert-auth {
  display: none;
}
.input_group.error input {
  border-color: var(--e_red);
  box-shadow: 0 0 5px rgba(var(--e_red_rgb), 0.5);
}
.input_group.error .input-error {
  display: block;
}
.input_group .btninput {
  display: flex;
  align-items: center;
  position: relative;
  width: 100%;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  background: #fff;
  gap: 10px;
  padding-right: 5px;
  height: 50px;
}
.input_group .btninput.readonly {
  background: var(--e_gray_ef);
}
.input_group .btninput.readonly:focus-within, .input_group .btninput.readonly:hover {
  border-color: var(--e_line);
  box-shadow: none;
}
.input_group .btninput:focus-within {
  border-color: var(--e_prime);
  box-shadow: 0 0 5px rgba(var(--e_prime_rgb), 0.5);
}
.input_group .btninput:hover {
  border-color: var(--e_prime);
}
.input_group .btninput p {
  padding-right: 10px;
  color: var(--e_gray_cc);
}
.input_group .btninput input {
  border: none;
  background: none;
}
.input_group .btninput input:focus {
  border: none;
  box-shadow: none;
}
.input_group .btninput .s_btn {
  background: var(--e_gray_33);
  color: #fff;
  border-radius: 10px;
  height: calc(100% - 10px);
  padding: 0 15px;
  font-size: 12px;
  font-weight: 500;
  width: auto;
}
.input_group .btninput .s_btn span {
  padding: 0;
}
.input_group .btninput .s_btn:hover {
  background-color: color-mix(in srgb, var(--e_gray_33), white 10%);
}
.input_group .btninput .resend-auth {
  display: none;
}

input[type=text], input[type=date], input[type=password], input[type=email], input[type=tel], input[type=number], textarea {
  width: 100%;
  padding: 0 15px;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  background: #fff;
  font-size: 16px;
  color: #000;
  height: 50px;
  display: flex;
  align-items: center;
}
input[type=text].min_input, input[type=date].min_input, input[type=password].min_input, input[type=email].min_input, input[type=tel].min_input, input[type=number].min_input, textarea.min_input {
  width: fit-content;
}
input[type=text]::placeholder, input[type=date]::placeholder, input[type=password]::placeholder, input[type=email]::placeholder, input[type=tel]::placeholder, input[type=number]::placeholder, textarea::placeholder {
  color: var(--e_gray_99);
  font-size: 14px;
}
input[type=text]:focus, input[type=date]:focus, input[type=password]:focus, input[type=email]:focus, input[type=tel]:focus, input[type=number]:focus, textarea:focus {
  border-color: var(--e_prime);
  box-shadow: 0 0 5px rgba(var(--e_prime_rgb), 0.5);
}
input[type=text]:hover, input[type=date]:hover, input[type=password]:hover, input[type=email]:hover, input[type=tel]:hover, input[type=number]:hover, textarea:hover {
  border-color: var(--e_prime);
}

textarea {
  padding: 20px;
  min-height: 100px;
  height: auto;
  line-height: 160%;
}

input[readonly] {
  background: var(--e_gray_ef);
  color: var(--e_gray_66);
  font-size: 14px;
}
input[readonly].add_read {
  cursor: pointer;
}
input[readonly]:focus, input[readonly]:hover {
  border-color: var(--e_line);
  box-shadow: none;
}
input[readonly].no-bg {
  background: none;
  cursor: default;
  color: #000;
  font-size: 16px;
  border: none;
}
input[readonly].no-bg:focus, input[readonly].no-bg:hover {
  border-color: var(--e_line);
  box-shadow: none;
}

/* =========================================================
  Checkbox Styles
  ========================================================= */
.check-container {
  display: flex;
  position: relative;
}
.check-container input[type=checkbox] {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  border: 0;
  overflow: hidden;
  display: none;
}
.check-container label {
  position: relative;
  cursor: pointer;
  position: relative;
  height: 20px;
  display: flex;
  align-items: center;
  font-size: 14px;
  gap: 10px;
}
.check-container:hover {
  color: var(--e_prime);
}
.check-container:hover .check-icon {
  background: color-mix(in srgb, #fff, black 5%);
}
.check-container .check-icon {
  width: 20px;
  height: 20px;
  border-radius: 5px;
  background-color: #fff;
  border: 1px solid var(--e_gray_cc);
  position: relative;
}
.check-container .check-icon::before {
  content: "";
  position: absolute;
  box-sizing: border-box;
  width: 30%;
  height: 55%;
  left: 50%;
  top: 50%;
  transform: translateX(-50%) translateY(-70%) rotateZ(40deg);
  border-right: 2px solid var(--e_line);
  border-bottom: 2px solid var(--e_line);
}
.check-container [type=checkbox]:checked + label .check-icon {
  border-color: var(--e_prime);
  background-color: var(--e_prime);
}
.check-container [type=checkbox]:checked + label .check-icon::before {
  border-color: #fff;
}
.check-container.allcheck {
  width: 100%;
}
.check-container.allcheck label {
  font-size: 14px;
  height: 24px;
}
.check-container.allcheck .check-icon {
  width: 24px;
  height: 24px;
}
.check-container.non-checked input[type=checkbox] + label {
  pointer-events: none;
}
.check-container.non-checked input[type=checkbox] + label .check-icon {
  border: none;
  background: none;
}
.check-container.non-checked input[type=checkbox] + label .check-icon:hover {
  border: none;
  background: none;
}
.check-container.non-checked [type=checkbox]:checked + label .check-icon {
  background: none;
}
.check-container.non-checked [type=checkbox]:checked + label .check-icon::before {
  border-color: var(--e_prime);
}
.check-container.big label {
  font-size: 16px;
}
@media (max-width: 767px) {
  .check-container.big label {
    font-size: 14px;
  }
}
.check-container.error {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.check-container.error input[type=checkbox] + label .check-icon {
  border-color: var(--e_red);
}
.check-container.error .agree_error {
  text-align: left;
  color: var(--e_red);
  font-size: 12px;
  font-weight: 400;
  margin: 0;
  width: 100%;
  display: block;
  padding-left: 30px;
}
.check-container .agree_error {
  display: none;
}
.check-container.fulltype {
  justify-content: space-between;
  background: var(--e_gray_ef);
  padding: 0 20px;
  border-radius: 10px;
  box-sizing: border-box;
  height: 50px;
  align-items: center;
  flex: 1;
  font-size: 14px;
}
.check-container.fulltype label {
  height: 50px;
  align-items: center;
  flex: 1;
  font-size: 14px;
}
.check-container.fulltype label:hover .check-icon {
  background: none;
}
.check-container.fulltype .check-icon {
  border: none;
  background: none;
}
.check-container.fulltype .check-icon::before {
  border-width: 3px;
}
.check-container.fulltype [type=checkbox]:checked + label .check-icon {
  background: none;
}
.check-container.fulltype [type=checkbox]:checked + label .check-icon::before {
  border-color: var(--e_prime);
}
.check-container.fulltype .btn_terms {
  font-size: 12px;
  color: var(--e_gray_66);
  text-decoration: underline;
}
.check-container.fulltype .btn_terms:hover {
  color: var(--e_prime);
}

/* =========================================================
  Radio Styles 
  ========================================================= */
.check-type {
  display: flex;
  gap: 20px;
  justify-content: flex-start;
  min-height: 50px;
  align-items: center;
}
.check-type .radio-label {
  display: flex;
  align-items: center;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_66);
  position: relative;
  gap: 5px;
  user-select: none;
  transition: color 0.2s;
}
.check-type input[type=radio] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0;
}
.check-type .custom-radio {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid var(--e_gray_cc);
  background: #fff;
  display: inline-block;
  position: relative;
  transition: border-color 0.2s, box-shadow 0.2s;
  box-sizing: border-box;
}
.check-type input[type=radio]:checked + .custom-radio {
  border-color: var(--e_prime);
  box-shadow: 0 0 0 2px rgba(var(--e_prime_rgb), 0.15);
}
.check-type input[type=radio]:checked + .custom-radio::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--e_prime);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}
.check-type .radio-label input[type=radio]:checked ~ span, .check-type .radio-label input[type=radio]:checked ~ .custom-radio + span {
  color: var(--e_prime);
}

/* =========================================================
  select Styles 
  ========================================================= */
.custom_select_wrap {
  position: relative;
  min-width: 100px;
  font-size: 14px;
  flex: 1;
}
.custom_select_wrap span {
  font-size: 14px;
  padding: 0;
}
.custom_select_wrap .selected_text {
  color: var(--e_gray_99);
}
.custom_select_wrap .selected_option, .custom_select_wrap .option_item {
  padding: 0px 15px;
  height: 50px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 10px;
}
.custom_select_wrap .selected_option {
  border: 1px solid var(--e_line);
  background-color: #fff;
}
.custom_select_wrap .selected_option .arrow_icon {
  font-size: 16px;
}
.custom_select_wrap .selected_option .selected_content {
  flex: 1;
  display: flex;
  align-items: center;
}
.custom_select_wrap.open .selected_option {
  border-bottom-left-radius: 0;
  border-bottom-right-radius: 0;
  border-color: var(--e_prime);
}
.custom_select_wrap.open .selected_option .arrow_icon {
  transform: rotate(180deg);
}
.custom_select_wrap .option_list {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  border: 1px solid var(--e_prime);
  border-top: none;
  background-color: #fff;
  box-shadow: 0 4px 6px rgba(var(--e_black_rgb), 0.1);
  z-index: 1;
  list-style: none;
  padding: 0;
  margin: 0;
  border-radius: 0 0 10px 10px;
  max-height: 200px;
  overflow-y: auto;
}
.custom_select_wrap .option_item {
  color: #000;
  border-radius: 0;
}
.custom_select_wrap .option_item:hover {
  background-color: rgba(var(--e_prime_rgb), 0.05);
}
.custom_select_wrap .option_item.active {
  background-color: rgba(var(--e_prime_rgb), 0.1);
  color: var(--e_prime);
}
.custom_select_wrap .option_content {
  display: flex;
  align-items: center;
  white-space: nowrap;
  max-width: 100%;
  overflow: hidden;
}
.custom_select_wrap.type-color .option_content, .custom_select_wrap.type-color .selected_content {
  justify-content: space-between;
  width: 100%;
  padding-right: 10px;
  gap: 5px;
}
.custom_select_wrap.type-color .option_content dl, .custom_select_wrap.type-color .selected_content dl {
  display: flex;
  align-items: center;
  gap: 10px;
}
.custom_select_wrap.type-color .option_content dd, .custom_select_wrap.type-color .selected_content dd {
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 1px solid #fff;
}

/* =========================================================
  Utility & Base Styles
  ========================================================= */
section {
  position: relative;
  display: block;
}

.material-symbols-rounded {
  font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 50, "opsz" 40;
  font-size: 30px;
}

.typeA .type_B_con {
  display: none !important;
}

.typeB .type_A_con {
  display: none !important;
}

/*list icon*/
.ico_hot::before {
  content: "HOT";
  background-color: var(--e_red);
}

.ico_best::before {
  content: "BEST";
  background-color: var(--e_yellow);
}

.ico_trend::before {
  content: "TREND";
  background-color: var(--e_blue);
}

.ico_new::before {
  content: "NEW";
  background-color: var(--e_cyan);
}

.ico_pick::before {
  content: "PICK";
  background-color: var(--e_purple);
}

/* Navigation Badges (Speech Bubble) */
.has-badge {
  position: relative;
}

.n-badge {
  position: absolute;
  top: -28px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--e_prime);
  color: #fff;
  font-size: 10px;
  padding: 7px 8px 5px;
  border-radius: 10px;
  white-space: nowrap;
  font-weight: 700;
  line-height: 1;
  pointer-events: none;
  z-index: 5;
}
.n-badge::after {
  content: "";
  position: absolute;
  bottom: -4px;
  left: 50%;
  transform: translateX(-50%);
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 4px solid var(--e_prime);
}
.n-badge.b-red {
  background: var(--e_red);
}
.n-badge.b-red::after {
  border-top-color: var(--e_red);
}
.n-badge.b-blue {
  background: var(--e_blue);
}
.n-badge.b-blue::after {
  border-top-color: var(--e_blue);
}
.n-badge.b-green {
  background: var(--e_green);
}
.n-badge.b-green::after {
  border-top-color: var(--e_green);
}
.n-badge.b-yellow {
  background: var(--e_yellow);
}
.n-badge.b-yellow::after {
  border-top-color: var(--e_yellow);
}
.n-badge.b-cyan {
  background: var(--e_cyan);
}
.n-badge.b-cyan::after {
  border-top-color: var(--e_cyan);
}
.n-badge.b-purple {
  background: var(--e_purple);
}
.n-badge.b-purple::after {
  border-top-color: var(--e_purple);
}
@media (max-width: 1199px) {
  .n-badge {
    display: none;
  }
}

.loading {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 20px 0;
  position: absolute;
  bottom: -60px;
  left: 50%;
  transform: translateX(-50%);
  background: #fff;
}
.loading .spinner {
  width: 35px;
  aspect-ratio: 1;
  background: no-repeat radial-gradient(farthest-side, var(--e_prime) 94%, rgba(0, 0, 0, 0)) 0 0, no-repeat radial-gradient(farthest-side, var(--e_prime) 94%, rgba(0, 0, 0, 0)) 100% 0, no-repeat radial-gradient(farthest-side, var(--e_prime) 94%, rgba(0, 0, 0, 0)) 100% 100%, no-repeat radial-gradient(farthest-side, var(--e_prime) 94%, rgba(0, 0, 0, 0)) 0 100%;
  background-size: 40% 40%;
  animation: spinner-l38 0.5s infinite;
}

@keyframes spinner-l38 {
  100% {
    background-position: 100% 0, 100% 100%, 0 100%, 0 0;
  }
}
.arrow-btn {
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 50%;
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
  outline: 1px solid var(--e_line);
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  cursor: pointer;
  z-index: 2;
  padding: 0;
}
.arrow-btn::before {
  width: 10px;
  height: 10px;
  border-top: 2px solid var(--e_gray_33);
  border-right: 2px solid var(--e_gray_33);
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
}
.arrow-btn:hover {
  background: var(--e_prime);
}
.arrow-btn:hover::before {
  border-color: #fff;
}
.arrow-btn.left {
  left: -10px;
}
.arrow-btn.left::before {
  transform: translate(-30%, -50%) rotate(-135deg);
}
.arrow-btn.right {
  right: -10px;
}
.arrow-btn.right::before {
  transform: translate(-60%, -50%) rotate(45deg);
}
@media (max-width: 1199px) {
  .arrow-btn {
    width: clamp(30px, 3.2vw, 40px);
    height: clamp(30px, 3.2vw, 40px);
  }
  .arrow-btn::before {
    width: clamp(6px, 1vw, 10px);
    height: clamp(6px, 1vw, 10px);
    border-width: clamp(1px, 0.32vw, 2px);
  }
}

/* ========================================================= */
/* 공통 유틸리티 클래스 (Common Utility Classes) */
/* ========================================================= */
.maxwidth {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
}
@media (max-width: 1480px) {
  .maxwidth {
    padding: 0 40px;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .maxwidth {
    padding: 0 20px;
    width: 100%;
  }
}

.upperbtn {
  width: 40px;
  height: 40px;
  padding-top: 7px;
  background: var(--e_prime);
  border-radius: 26px;
  text-align: center;
  display: none;
  cursor: pointer;
  position: fixed;
  right: 40px;
  bottom: 40px;
  z-index: 9;
}
.upperbtn:hover {
  background: color-mix(in srgb, var(--e_prime), black 10%);
}
@media (max-width: 767px) {
  .upperbtn {
    bottom: 90px;
    right: 20px;
  }
}

.upperbtn-ico {
  width: 9px;
  height: 15px;
}

@media (max-width: 767px) {
  .detail-img {
    display: none;
  }
}

/* ========================================================= */
/* 검색 바 스타일 (Search Bar Styles) */
/* ========================================================= */
.search-bar-section {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  align-items: center;
  background: #fff;
}

.search-bar-container {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 80px;
  width: 100%;
  padding-top: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--e_line);
}
@media (max-width: 1199px) {
  .search-bar-container {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .search-bar-container {
    display: flex;
    flex-direction: column;
    gap: 20px;
    align-items: stretch;
  }
}
.search-bar-container .search-box-wrap {
  border-radius: 50px;
  border: 1px solid var(--e_prime);
}

.search-links {
  display: flex;
  gap: 21px;
}
@media (max-width: 767px) {
  .search-links {
    justify-content: space-around;
    width: 100%;
  }
  .search-links .sep {
    display: block;
  }
}

.search-link {
  display: flex;
  align-items: center;
  gap: 10px;
  color: #000;
  font-size: 14px;
  font-weight: 500;
  transition: color 0.2s ease-in-out;
}
.search-link:hover {
  color: var(--e_prime);
}
.search-link .material-symbols-rounded {
  font-size: 24px;
}
@media (max-width: 767px) {
  .search-link g {
    display: none;
  }
}

.search-box-wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 50px;
  padding: 12px 16px;
  background: #fff;
  border-radius: 8px;
  border: 1px solid var(--e_gray_cc);
}
.search-box-wrap span {
  font-size: 24px;
}
.search-box-wrap:focus-within {
  border: 1px solid var(--e_prime);
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
}
@media (max-width: 767px) {
  .search-box-wrap {
    display: none;
    animation: fadeOut 0.5s ease-in-out forwards;
  }
  .search-box-wrap.act {
    display: flex;
    animation: fadeIn 0.5s ease-in-out forwards;
    width: 100%;
    border: 2px solid var(--e_prime);
  }
}

input[type=text].search-input {
  flex: 1;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  border: none;
  outline: none;
  background: transparent;
  height: 100%;
  padding: 0;
}
input[type=text].search-input::placeholder {
  color: var(--e_gray_99);
}
input[type=text].search-input:hover, input[type=text].search-input:focus {
  box-shadow: none;
}

/* =========================================================
  Popup Styles
  ========================================================= */
.stop-scroll {
  overflow: hidden;
  height: 100%;
}

.popup_wrap {
  display: block;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2000;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .popup_wrap.full-popup {
    align-items: stretch;
    justify-content: stretch;
  }
  .popup_wrap.full-popup .popup_container {
    border-radius: 0;
  }
  .popup_wrap.full-popup .popup_container .popup_layout {
    height: 100vh;
    overflow-y: auto;
  }
}
@media (max-width: 767px) {
  .popup_wrap.login-popup {
    align-items: stretch;
    justify-content: stretch;
    display: block;
  }
  .popup_wrap .search-button {
    padding: 0;
  }
}

.popup_dim {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(var(--e_black_rgb), 0.5);
}
@media (max-width: 767px) {
  .login-popup .popup_dim {
    display: none;
  }
}

.popup_container {
  position: relative;
  background-color: #fff;
  border-radius: 30px;
  box-shadow: 0 5px 15px rgba(var(--e_black_rgb), 0.3);
  overflow: auto;
  display: inline-block;
}
.popup_container .popup_close_btn {
  position: absolute;
  top: -20px;
  right: -20px;
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--e_gray_99);
  cursor: pointer;
}
.popup_container .popup_close_btn span:nth-child(2) {
  display: none;
}
.popup_container .popup_close_btn:hover {
  color: #000;
  transform: rotate(90deg);
}
@media (max-width: 767px) {
  .popup_container .popup_close_btn {
    top: -15px;
    right: -15px;
  }
  .login-popup .popup_container .popup_close_btn {
    left: 0;
    right: auto;
    top: -60px;
    z-index: 10;
  }
  .login-popup .popup_container .popup_close_btn:hover {
    transform: none;
  }
  .login-popup .popup_container .popup_close_btn span:nth-child(1) {
    display: none;
  }
  .login-popup .popup_container .popup_close_btn span:nth-child(2) {
    display: block;
  }
}

.popup_header {
  display: flex;
  position: relative;
  justify-content: flex-start;
  align-items: flex-start;
  flex-direction: column;
  gap: 10px;
}
.popup_header h1 {
  font-size: 24px;
  font-weight: 700;
  line-height: 140%;
}
@media (max-width: 767px) {
  .popup_header h1 {
    font-size: 20px;
  }
}
.popup_header p {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .popup_header p {
    font-size: 12px;
  }
}
.popup_header h2 {
  font-size: 20px;
  font-weight: 700;
  line-height: 140%;
  text-align: center;
  width: 100%;
  padding: 20px 0 0;
}
@media (max-width: 767px) {
  .popup_header h2 {
    font-size: 18px;
  }
}

.popup_body {
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: var(--e_gray_66);
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: relative;
}

.popup_bottom_btn {
  display: flex;
  gap: 10px;
  padding: 10px 0 0;
  font-size: 12px;
  justify-content: space-between;
  border-top: 1px solid var(--e_line);
}
.popup_bottom_btn button {
  font-size: 14px;
  padding: 0;
}

.popup_footer {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  font-weight: 400;
}
.popup_footer.col-2 {
  justify-content: space-between;
  gap: 10px;
}
@media (max-width: 767px) {
  .popup_footer.col-2 {
    gap: 20px;
    flex-direction: column;
    align-items: stretch;
  }
}
.popup_footer.col-2 li:first-child {
  text-align: left;
  flex: 1;
}
.popup_footer.col-2 li:last-child {
  flex: none;
  display: flex;
  gap: 10px;
}
@media (max-width: 767px) {
  .popup_footer.col-2 li:last-child {
    display: flex;
    justify-content: flex-end;
  }
  .popup_footer.col-2 li:last-child button {
    width: 100%;
  }
}

.popup_layout {
  display: flex;
  justify-content: center;
  flex-direction: column;
  gap: 20px;
  padding: 40px;
  align-items: stretch;
  flex: 0 0 100%;
  width: 100%;
  min-width: 300px;
  max-width: 500px;
}
@media (max-width: 767px) {
  .popup_layout {
    padding: 30px;
    max-width: 320px;
  }
  .popup_layout.wide {
    width: 80vw;
    max-width: 100%;
  }
}

#noti-pop .popup_layout {
  max-width: 100%;
  height: 600px;
  max-height: 70vh;
  justify-content: flex-start;
}
@media (max-width: 767px) {
  #noti-pop .popup_layout {
    height: 100vh;
    max-height: 100vh;
  }
}

.popup_tab {
  display: flex;
  background-color: var(--e_gray_ef);
  border-radius: 10px;
}

.popup_tab .tab_btn {
  flex: 0 0 50%;
  text-align: center;
  padding: 10px 0;
  border-radius: 10px;
  color: #000;
  cursor: pointer;
  position: relative;
  font-size: 14px;
  font-weight: 500;
  background: none;
}
.popup_tab .tab_btn.current-tab {
  background-color: var(--e_prime);
  color: #fff;
}

/* =========================================================
  Login Popup
  ========================================================= */
.login-popup .popup_container {
  width: 380px;
}
.login-popup .popup_container > div {
  width: 100%;
}
@media (max-width: 767px) {
  .login-popup .popup_container {
    width: 100vw;
    height: 100vh;
    max-width: 100vw;
    max-height: 100vh;
    min-width: 0;
    min-height: 0;
    border-radius: 0;
    box-shadow: none;
    position: fixed;
    left: 0;
    top: 0;
    overflow-y: auto;
    background: #fff;
    display: flex;
    flex-direction: column;
    padding-bottom: 0;
  }
}
.login-popup button {
  width: 100%;
}
.login-popup .popup_layout {
  height: 670px;
  gap: 30px;
}
@media (max-width: 767px) {
  .login-popup .popup_layout {
    min-width: 0;
    max-width: 100vw;
    width: 100vw;
    height: auto;
    padding-top: 80px;
  }
}
.login-popup .popup_layout .popup_body {
  flex: 1;
}
.login-popup .popup_layout .popup_footer {
  border: none;
  flex-direction: column;
  gap: 20px;
}
.login-popup .popup_layout .login_item {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 12px;
}
.login-popup .popup_layout .login_item a {
  color: var(--e_gray_66);
  font-size: 12px;
}
.login-popup .popup_layout .login_item a:hover {
  color: var(--e_prime);
}
.login-popup .popup_layout .login-sns {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 20px;
}
.login-popup .popup_layout .login-sns .login-sns-title {
  text-align: center;
  color: #232527;
  font-size: 14px;
  font-weight: 400;
  line-height: 20px;
}
.login-popup .popup_layout .login-sns-btn-row {
  display: flex;
  gap: 30px;
  justify-content: center;
  align-items: center;
}
.login-popup .popup_layout .login-sns-btn {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  padding: 0;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.login-popup .popup_layout .login-sns-btn.naver {
  background: #00C73C;
}
.login-popup .popup_layout .login-sns-btn.naver:hover {
  background-color: color-mix(in srgb, #00C73C, black 10%);
}
.login-popup .popup_layout .login-sns-btn.kakao {
  background: #FFE800;
}
.login-popup .popup_layout .login-sns-btn.kakao:hover {
  background-color: color-mix(in srgb, #FFE800, black 10%);
}
.login-popup .popup_layout .login-sns-btn.google {
  background: #F4F4F4;
}
.login-popup .popup_layout .login-sns-btn.google:hover {
  background-color: color-mix(in srgb, #F4F4F4, black 10%);
}
.login-popup .popup_layout#join_01 .login-sns-btn-row {
  flex-direction: column;
  width: 100%;
  gap: 10px;
}
.login-popup .popup_layout#join_01 .login-sns-btn {
  width: 100%;
  height: 50px;
  border-radius: 10px;
  gap: 10px;
}
.login-popup .popup_layout#join_01 .login-sns-btn.naver {
  color: #fff;
}
.login-popup .popup_layout .login_box {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}
.login-popup .popup_layout .popup_layout.hide {
  opacity: 0;
}
.login-popup .popup_layout.join-slide {
  width: 100%;
}
.login-popup .popup_layout.join-slide:not(.current-slide) {
  display: none;
}
.login-popup .popup_layout .popup_slides_wrapper {
  display: block;
  width: 100%;
  position: relative;
}
.login-popup .popup_layout .popup_footer_sub {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
}
.login-popup .popup_layout .popup_footer_sub p {
  font-size: 14px;
  color: var(--e_gray_66);
}
.login-popup .popup_header_step {
  justify-content: space-between;
  align-items: flex-end;
  flex-direction: row;
}
.login-popup .step-indicator {
  display: flex;
  align-items: center;
  gap: 10px;
  position: relative;
  z-index: 2;
}
.login-popup .step-indicator .step-line {
  width: 33px;
  height: 0;
  border-top: 1px solid var(--e_line);
  position: absolute;
  left: 7px;
  top: 10px;
  z-index: -1;
}
.login-popup .step-indicator .step-circle {
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: var(--e_line);
  display: flex;
  align-items: center;
  justify-content: center;
}
.login-popup .step-indicator .step-circle .step-number {
  color: #fff;
  font-size: 11px;
  font-weight: 500;
  line-height: 1;
  display: flex;
  align-items: center;
  justify-content: center;
}
.login-popup .step-indicator .step-circle.step-active {
  background: var(--e_prime);
}

.pop_input_box {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}

.biz-upload-box {
  align-self: stretch;
  padding: 20px 0;
  background: var(--e_gray_ef);
  overflow: hidden;
  border-radius: 10px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 20px;
  border: 3px dashed var(--e_line);
}
.biz-upload-box .biz-upload-title {
  width: 100%;
  text-align: center;
  color: #000;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.2;
}
.biz-upload-box .biz-upload-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 20px;
}
.biz-upload-box .biz-upload-icon .material-symbols-rounded {
  font-size: 70px;
  color: var(--e_line);
}
.biz-upload-box .biz-upload-desc {
  text-align: center;
  color: var(--e_gray_99);
  font-size: 12px;
  font-weight: 500;
  line-height: 1.4;
}
.biz-upload-box .biz-upload-btn {
  height: 40px;
  padding: 0 20px;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
}
.biz-upload-box .biz-upload-btn .biz-upload-btn-text {
  color: #fff;
  font-size: 12px;
  font-weight: 500;
  text-align: center;
  line-height: 1.2;
}
.biz-upload-box button {
  width: auto;
  height: 40px;
  font-size: 12px;
}
.biz-upload-box.dragover {
  border-color: var(--e_prime);
  background: color-mix(in srgb, var(--e_prime), white 90%);
}
.biz-upload-box .m-biz-upload-desc {
  display: none;
}
@media (max-width: 767px) {
  .biz-upload-box .m-biz-upload-desc {
    display: block;
    text-align: center;
  }
}

.upicon {
  text-align: center;
  margin: 0 auto 10px;
}
.upicon .material-symbols-rounded {
  font-size: 48px;
  color: var(--e_gray_66);
}

@media (max-width: 767px) {
  .biz-script {
    display: none;
  }
}

.find-popup {
  width: 100%;
}
.find-popup .check-type {
  justify-content: center;
}
.find-popup .find-result-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 40px 0;
}
.find-popup .find-result-box .find-result {
  font-size: 16px;
  color: var(--e_gray_66);
  margin: 0;
  line-height: 1.6;
  font-weight: 400;
  text-align: center;
}
.find-popup .find-result-box .find-result-id {
  font-size: 20px;
  color: var(--e_prime);
  font-weight: 700;
  margin: 10px 0 8px 0;
  letter-spacing: 0.5px;
  word-break: break-all;
  text-align: center;
}
.find-popup .find-info {
  background: var(--e_gray_ef);
  color: var(--e_gray_66);
  font-size: 12px;
  border-radius: 10px;
  padding: 16px 18px 14px 18px;
  margin: 10px 0 0 0;
  text-align: left;
  font-weight: 400;
  box-shadow: 0 1px 4px rgba(var(--e_black_rgb), 0.03);
  letter-spacing: -0.2px;
}
.find-popup .find-info .info-icon {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 5px;
  margin-bottom: 8px;
}
.find-popup .find-info .info-icon .material-symbols-rounded {
  font-size: 16px;
  color: var(--e_gray_99);
}
.find-popup .find-info li {
  margin-bottom: 6px;
  padding-left: 10px;
  position: relative;
}
.find-popup .find-info li::before {
  content: "";
  position: absolute;
  width: 3px;
  height: 3px;
  background: var(--e_gray_99);
  border-radius: 50%;
  left: 0;
  top: 8px;
  transform: translateY(-50%);
}

/* ========================================================= */
/* 공통 애니메이션 키프레임 (Common Animation Keyframes) */
/* ========================================================= */
@keyframes slideInFromRight {
  from {
    transform: translateX(100%);
  }
  to {
    transform: translateX(0);
  }
}
@keyframes slideOutToRight {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(100%);
  }
}
@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadeOut {
  from {
    opacity: 1;
    transform: translateY(0);
  }
  to {
    opacity: 0;
    transform: translateY(-10px);
  }
}
@keyframes fill-progress {
  from {
    transform: scaleX(0);
  }
  to {
    transform: scaleX(1);
  }
}
/* ========================================================= */
/* 전체 메뉴 드롭다운 */
/* ========================================================= */
body.menu-is-open .content_body::before {
  content: "";
  pointer-events: none;
  user-select: none;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(var(--e_white_rgb), 0.8);
  z-index: 9;
  display: block;
}
body.menu-is-open .allmenu .ico_menu {
  opacity: 0;
}
body.menu-is-open .allmenu .ico_close {
  opacity: 1;
}
body.menu-is-open .ettum_menu {
  visibility: visible;
}
@media (max-width: 767px) {
  body.menu-is-open .ettum_menu {
    animation: slideInFromRight 0.7s ease-in-out forwards;
    z-index: 1050;
  }
}
@media (min-width: 768px) {
  body.menu-is-open .ettum_menu {
    animation: fadeIn 0.5s ease-in-out forwards;
  }
}
body.menu-is-open .top_banner_wrap {
  z-index: 1;
}
body.menu-is-open .content_body.active {
  overflow: hidden;
}

.content_body {
  position: relative;
  width: 100%;
}

.nav_bar {
  width: 100%;
  transition: none;
  padding: 15px 0 0;
}
.nav_bar .maxwidth {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.nav_bar a {
  width: 100%;
  color: #000;
  position: relative;
  font-size: 18px;
  font-weight: 600;
}
.nav_bar a:hover {
  color: var(--e_prime);
}
.nav_bar a:hover .ico_close {
  transform: rotate(90deg);
  transition: 0.5s;
}
.nav_bar a .ico_close {
  transform: rotate(-90deg);
  transition: 0.5s;
}
.nav_bar .allmenu {
  font-weight: 700;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  width: 250px;
}
@media (max-width: 1199px) {
  .nav_bar {
    display: none;
  }
}
.nav_bar.fixed {
  position: fixed;
  top: 0;
  left: 0;
  padding: 20px 0;
  z-index: 11;
}
.nav_bar.fixed::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  background: #fff;
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
  z-index: -1;
  width: 100vw;
  border-bottom: 1px solid var(--e_line);
}
.nav_bar.fixed *, .nav_bar.fixed *::before, .nav_bar.fixed *::after {
  transition: none !important;
  animation: none !important;
}
.nav_bar.fixed .n-badge {
  display: none !important;
}

.ettum_menu {
  position: absolute;
  top: 0;
  z-index: 10;
  width: 100%;
  box-shadow: 0px 10px 10px rgba(var(--e_black_rgb), 0.05);
  visibility: hidden;
}
.ettum_menu.fixed {
  position: fixed;
  top: 60px;
  z-index: 10;
  transition: none;
  left: 0;
}
@media (max-width: 1199px) {
  .ettum_menu.fixed {
    top: 60px;
  }
}
@media (max-width: 767px) {
  .ettum_menu.fixed {
    top: 0;
  }
}
@media (max-width: 767px) {
  .ettum_menu {
    position: fixed;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    animation: slideOutToRight 0.7s ease-in-out forwards;
    z-index: 1050;
  }
}
@media (min-width: 768px) {
  .ettum_menu {
    animation: fadeOut 0.5s ease-in-out forwards;
  }
}

.category-menu-section {
  align-self: stretch;
  background: #fff;
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 40px 0;
  max-height: 70vh;
  overflow-y: auto;
}
@media (max-width: 1199px) {
  .category-menu-section {
    height: calc(100vh - 170px);
    max-height: 100vh;
  }
}
@media (max-width: 767px) {
  .category-menu-section {
    overflow: auto;
    height: calc(100vh - 190px);
    max-height: 100vh;
  }
}

.category-menu-container {
  display: grid;
  grid-template-columns: 0.13fr 0.87fr;
  gap: 10px;
  width: 100%;
  max-width: 1480px;
  padding: 0 40px;
}
@media (max-width: 1480px) {
  .category-menu-container {
    grid-template-columns: 0.16fr 0.84fr;
  }
}
@media (max-width: 767px) {
  .category-menu-container {
    padding: 0 20px;
  }
}
.category-menu-container a:hover {
  color: var(--e_prime);
}
@media (max-width: 1199px) {
  .category-menu-container {
    display: flex;
    flex-direction: column;
    gap: 30px;
    height: auto;
  }
}

.category-menu-list {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  gap: 20px;
}
@media (max-width: 1480px) {
  .category-menu-list {
    grid-template-columns: repeat(5, 1fr);
  }
}
@media (max-width: 1199px) {
  .category-menu-list {
    display: flex;
    flex-direction: column;
    gap: 30px;
    height: auto;
  }
}
@media (max-width: 767px) {
  .category-menu-list {
    overflow: unset;
  }
}

.category-group-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
@media (max-width: 1199px) {
  .category-group-col {
    display: flex;
    flex-direction: column;
    gap: 30px;
    height: auto;
  }
}

.category-group, .elinkgroup, .esublink, .esubgroup {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 1199px) {
  .category-group.category-group, .category-group.elinkgroup, .category-group.esublink, .elinkgroup.category-group, .elinkgroup.elinkgroup, .elinkgroup.esublink, .esublink.category-group, .esublink.elinkgroup, .esublink.esublink, .esubgroup.category-group, .esubgroup.elinkgroup, .esubgroup.esublink {
    flex-direction: row;
  }
  .category-group.elinkgroup, .category-group.esublink, .elinkgroup.elinkgroup, .elinkgroup.esublink, .esublink.elinkgroup, .esublink.esublink, .esubgroup.elinkgroup, .esubgroup.esublink {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .category-group.category-group, .category-group.esublink, .category-group .esubgroup, .elinkgroup.category-group, .elinkgroup.esublink, .elinkgroup .esubgroup, .esublink.category-group, .esublink.esublink, .esublink .esubgroup, .esubgroup.category-group, .esubgroup.esublink, .esubgroup .esubgroup {
    flex-direction: column;
    gap: 20px;
  }
  .category-group.elinkgroup, .elinkgroup.elinkgroup, .esublink.elinkgroup, .esubgroup.elinkgroup {
    flex-wrap: wrap;
    gap: 20px;
    flex: 1 1;
  }
}

.category-title {
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 160%;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  white-space: nowrap;
}
.category-title::after {
  content: "chevron_right";
  font-family: "Material Symbols Rounded";
  font-size: 24px;
  font-weight: normal;
  font-variation-settings: "FILL" 0, "wght" 300, "GRAD" 0, "opsz" 24;
}
@media (max-width: 1199px) {
  .category-title {
    width: clamp(140px, 15vw, 200px);
  }
}
@media (max-width: 767px) {
  .category-title {
    width: auto;
  }
}

.category-subtitle {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 500;
  line-height: 140%;
}

/* ========================================================= */
/* 공통 카테고리 메뉴 클래스 (Common Category Menu Classes) */
/* ========================================================= */
.category-link {
  color: var(--e_gray_99);
  font-size: 14px;
  font-weight: 400;
  transition: color 0.2s ease-in-out;
  line-height: 140%;
}

.primary-link {
  color: var(--e_prime);
}

/* ========================================================= */
/* 공통 모바일 메뉴 클래스 (Common Mobile Menu Classes) */
/* ========================================================= */
@media (max-width: 767px) {
  .menu-top {
    align-self: stretch;
    display: inline-flex;
    justify-content: flex-end;
    align-items: center;
    gap: 10px;
  }
}

@media (max-width: 767px) {
  .menu-user-actions {
    flex: 1 1 0;
    display: flex;
    align-items: center;
    gap: 10px;
  }
  .menu-user-actions a {
    font-size: 16px;
    font-weight: 500;
    line-height: 19.2px;
    word-wrap: break-word;
  }
}

@media (max-width: 767px) {
  .menu-link-login {
    color: var(--e_prime);
  }
}

@media (max-width: 767px) {
  .menu-link-signup {
    color: #000;
  }
}

@media (max-width: 767px) {
  .menu-bottom {
    align-self: stretch;
    display: inline-flex;
    border-radius: 10px;
    outline: 1px var(--e_line) solid;
    outline-offset: -1px;
  }
  .menu-bottom a {
    flex: 1 1 0;
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 5px;
    padding: 10px 0;
    color: #000;
    font-size: 12px;
    font-weight: 400;
    line-height: 19.2px;
    word-wrap: break-word;
  }
}

@media (max-width: 767px) {
  .menu-button-bordered + .menu-button-bordered {
    border-left: 1px var(--e_line) solid;
  }
}

.m_menu-container {
  display: none;
}
@media (max-width: 767px) {
  .m_menu-container {
    width: 100%;
    padding: 35px 20px 0px;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 20px;
    background: #fff;
  }
}

@media (min-width: 768px) {
  .bt-menu {
    display: none;
  }
}
@media (max-width: 767px) {
  .bt-menu {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background: #fff;
    box-shadow: 0px -10px 10px rgba(var(--e_black_rgb), 0.1);
    border-top: 1px var(--e_line) solid;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 8;
  }
  .bt-menu__item {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    height: 100%;
  }
  .bt-menu__item svg {
    width: 24px;
    height: 24px;
  }
  .bt-menu__icon path {
    fill: #000;
    stroke-width: 0px;
  }
  .bt-menu__icon .prime-color {
    fill: var(--e_prime);
  }
  .bt-menu__text {
    color: var(--e_gray_99);
    font-size: 12px;
    font-weight: 400;
    line-height: 19.2px;
  }
}

.mid_bar .sub-tit {
  display: none;
}

.e_mobile {
  display: none !important;
}
.e_mobile .homebtn {
  display: none;
}
@media (max-width: 1199px) {
  .e_mobile {
    display: flex !important;
    padding: 0 40px;
  }
  .e_mobile dd {
    flex: 0 0 auto;
    width: auto !important;
  }
  .e_mobile.fixed {
    position: fixed !important;
    top: 0;
    left: 0;
    z-index: 10;
    background: #fff !important;
    height: 60px;
    width: 100%;
    box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
  }
  .e_mobile.fixed dt {
    padding: 0;
  }
  .e_mobile.fixed dt img {
    height: 30px;
    width: auto;
  }
  .e_mobile.fixed .material-symbols-rounded {
    color: #000 !important;
  }
}
@media (max-width: 767px) {
  .e_mobile {
    padding: 0 20px;
  }
  .e_mobile.fixed {
    height: 60px;
  }
  .e_mobile.fixed dt img {
    height: 25px;
  }
  .e_mobile dd.e_guide {
    display: none;
  }
}

/* 로그인 후 사용자 이름 스타일 */
.login_status {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .login_status {
    align-items: flex-end;
  }
}
.login_status::before {
  content: "|";
  color: var(--e_gray_99);
  font-size: 12px;
  font-weight: 400;
  margin-right: 10px;
}
@media (max-width: 767px) {
  .login_status::before {
    display: none;
  }
}
.login_status a.logout_btn {
  font-size: 10px;
  color: var(--e_gray_66);
  background: #fff;
  padding: 5px 8px;
  border-radius: 5px;
  transition: all 0.2s ease;
  display: inline-block;
  border: 1px solid var(--e_line);
  line-height: 1;
}
.login_status a.logout_btn:hover {
  color: #fff;
  background: var(--e_prime);
  border-color: var(--e_prime);
}
.login_status .user_name {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  color: var(--e_prime);
  font-size: 14px;
  font-weight: 500;
}
.login_status .user_name::after {
  content: "님";
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .login_status .user_name {
    font-size: 18px;
  }
}

/* ========================================================= */
/* 푸터 (Footer) */
/* ========================================================= */
footer {
  background: #F4F7FA;
  color: #454545;
  margin-top: 60px;
}

.footer-top {
  padding: 60px 0;
}
.footer-top .maxwidth {
  display: flex;
  justify-content: space-between;
  align-items: stretch;
  gap: 40px;
}
@media (max-width: 1199px) {
  .footer-top .maxwidth {
    flex-direction: column;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .footer-top .maxwidth {
    padding: 0 20px;
  }
}

.footer-top-left {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 20px;
  justify-content: space-between;
}

.footer-col {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.footer-menu-links {
  display: flex;
  align-items: center;
  gap: 15px;
  flex-wrap: wrap;
}
.footer-menu-links .footer-link {
  font-size: 16px;
  color: #454545;
  font-weight: 400;
  text-decoration: none;
}
.footer-menu-links .footer-link:hover {
  color: var(--e_prime);
}
.footer-menu-links .footer-link.footer-link-bold {
  font-weight: 700;
}
.footer-menu-links .sep {
  color: #828282;
  font-size: 14px;
  opacity: 0.5;
}

.footer-social-icons {
  display: flex;
  gap: 15px;
}
.footer-social-icons .social-icon {
  width: 30px;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.footer-social-icons .social-icon img {
  width: 100%;
  height: 100%;
  transition: filter 0.2s;
}
.footer-social-icons .social-icon:hover img {
  filter: brightness(0.8);
}

.footer-company-info {
  font-size: 15px;
  color: #828282;
  line-height: 1.8;
}
.footer-company-info span {
  white-space: nowrap;
}
.footer-company-info .sep {
  margin: 0 5px;
  opacity: 0.5;
}
.footer-company-info a {
  color: inherit;
  text-decoration: none;
}
.footer-company-info a:hover {
  text-decoration: underline;
}

.footer-top-right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 30px;
}
@media (max-width: 1199px) {
  .footer-top-right {
    align-items: flex-start;
    width: 100%;
  }
}

.footer-cs-wrap {
  text-align: right;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (max-width: 1199px) {
  .footer-cs-wrap {
    text-align: left;
  }
}
.footer-cs-wrap .cs-title {
  font-size: 16px;
  color: #454545;
  font-weight: 500;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 5px;
}
@media (max-width: 1199px) {
  .footer-cs-wrap .cs-title {
    justify-content: flex-start;
  }
}
.footer-cs-wrap .cs-title .material-symbols-rounded {
  font-size: 20px;
}
.footer-cs-wrap .cs-phone {
  font-size: 30px;
  color: #454545;
  font-weight: 700;
  margin: 5px 0;
}
.footer-cs-wrap .cs-hours, .footer-cs-wrap .cs-holiday {
  font-size: 18px;
  color: #454545;
  opacity: 0.8;
}

.footer-action-buttons {
  display: flex;
  gap: 10px;
}
.footer-action-buttons .btn-footer-action {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100px;
  height: 30px;
  border: 1px solid #828282;
  border-radius: 5px;
  font-size: 14px;
  color: #828282;
  text-decoration: none;
  transition: all 0.2s;
}
.footer-action-buttons .btn-footer-action:hover {
  background: #828282;
  color: #fff;
}

.footer-bottom {
  background: #454545;
  padding: 25px 0;
  color: var(--e_gray_ef);
}
.footer-bottom .maxwidth {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 1199px) {
  .footer-bottom .maxwidth {
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
    padding: 0 40px;
  }
}
@media (max-width: 767px) {
  .footer-bottom .maxwidth {
    padding: 0 20px;
  }
}
.footer-bottom .footer-bottom-left .disclaimer {
  font-size: 12px;
  color: #DFDFDF;
  opacity: 0.7;
  line-height: 1.6;
  max-width: 1000px;
}
.footer-bottom .footer-bottom-left .copyright {
  font-size: 12px;
  color: #DFDFDF;
  font-weight: 400;
}

.ftC_family_site {
  width: 208px;
  height: 32px;
  background: #fff;
  border-radius: 0;
}
.ftC_family_site select {
  width: 100%;
  height: 100%;
  padding: 0 10px;
  border: none;
  background: transparent;
  color: #454545;
  font-size: 12px;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='24' viewBox='0 -960 960 960' width='24'%3E%3Cpath d='M480-345 240-585l56-56 184 184 184-184 56 56-240 240Z'/%3E%3C/svg%3E") no-repeat right 10px center;
  background-size: 20px;
}
.ftC_family_site select:focus {
  outline: none;
}

/* ========================================================= */
/* 아이템 리스트 (Item List) */
/* ========================================================= */
.e_itemlist {
  width: 100%;
  display: flex;
  justify-content: center;
}

.item-container {
  width: 100%;
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(320px, 1fr));
  gap: 40px;
}
@media (max-width: 767px) {
  .item-container {
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
  }
}

.item {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  position: relative;
}
.item:hover img {
  transform: scale(1.05);
}
.item:hover .item-title {
  color: var(--e_prime);
}
.item:hover .item-img-wrap {
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
}
@media (max-width: 767px) {
  .item:hover .item-title {
    color: #000;
  }
}
.item::before {
  position: absolute;
  top: 10px;
  left: 10px;
  color: #fff;
  line-height: 100%;
  font-size: 11px;
  font-weight: 700;
  padding: 5px 10px;
  border-radius: 5px;
  z-index: 2;
}
.item.picked .item-fav-icon, .item.picked .item-price-info {
  display: none;
}
.item-img-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
  border-radius: 10px;
}
.item-img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.item-fav {
  position: absolute;
  top: 0;
  right: 0;
  width: 64px;
  height: 63px;
}
.item-desc {
  width: 100%;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 767px) {
  .item-desc {
    margin-top: 10px;
    gap: 5px;
  }
}
.item-title-wrap {
  display: flex;
  justify-content: space-between;
  align-items: start;
  width: 100%;
  position: relative;
}
.item-title {
  font-size: 18px;
  font-weight: 600;
  color: #000;
}
@media (max-width: 1199px) {
  .item-title {
    font-size: 16px;
    width: calc(100% - 25px);
  }
}
@media (max-width: 767px) {
  .item-title {
    font-size: 14px;
  }
}
.item-fav-icon input[type=checkbox] {
  display: none;
}
.item-fav-icon input[type=checkbox]:checked + label svg path {
  fill: var(--e_red);
  stroke: var(--e_red);
}
.item-fav-icon label {
  cursor: pointer;
  display: inline-flex;
  transition: all 0.3s ease;
}
.item-fav-icon label:hover svg path {
  fill: var(--e_red);
  stroke: var(--e_red);
}
.item-fav-icon label svg {
  width: 20px;
  height: 20px;
}
@media (max-width: 1199px) {
  .item-fav-icon label {
    position: absolute;
    top: 0px;
    right: 0px;
  }
}
.item-text {
  color: var(--e_gray_99);
  font-size: 16px;
  line-height: 1.6;
}
@media (max-width: 1199px) {
  .item-text {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .item-text {
    font-size: 12px;
  }
}
.item-price-wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 8px;
}
.item-price-info {
  display: flex;
  gap: 0;
  flex-direction: column;
  align-items: flex-end;
}
.item-price-pre {
  color: var(--e_gray_99);
  font-size: 14px;
  font-weight: 500;
  text-decoration: line-through;
}
.item-price-pre::after {
  content: "원";
}
@media (max-width: 767px) {
  .item-price-pre {
    font-size: 12px;
  }
}
.item-price {
  color: var(--e_prime);
  font-size: 20px;
  font-weight: 700;
  display: flex;
  align-items: flex-end;
  gap: 5px;
}
.item-price::after {
  content: "원 ~";
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_99);
  line-height: 1.4;
}
@media (max-width: 767px) {
  .item-price::after {
    font-size: 12px;
  }
}
@media (max-width: 1199px) {
  .item-price {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .item-price {
    font-size: 16px;
  }
}
.item-discount {
  color: var(--e_red);
  font-size: 20px;
  font-weight: 500;
}
@media (max-width: 1199px) {
  .item-discount {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .item-discount {
    font-size: 16px;
  }
}

/* ========================================================= */
/* 기획전 리스트 (Event List) */
/* ========================================================= */
.event_top_banner {
  width: 100%;
  height: 188px;
  background-color: #EFEFEF;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  margin-bottom: 40px;
}
.event_top_banner .maxwidth {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
}
.event_top_banner .event_main_title {
  font-size: 32px;
  font-weight: 700;
  color: #333;
  letter-spacing: -1.6px;
  line-height: 1.2;
}
.event_top_banner .event_sub_title {
  font-size: 18px;
  font-weight: 500;
  color: #666;
  line-height: 1.4;
}
@media (max-width: 767px) {
  .event_top_banner {
    height: 120px;
    margin-bottom: 20px;
  }
  .event_top_banner .event_main_title {
    font-size: 24px;
  }
  .event_top_banner .event_sub_title {
    font-size: 14px;
  }
}

@media (min-width: 1200px) {
  .event-list {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
.event-list .item:hover .event-title {
  color: var(--e_prime);
}
.event-list .item:hover .event-item-bg {
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
}
@media (max-width: 767px) {
  .event-list .item:hover .event-title {
    color: #333;
  }
}
.event-list .item.is-ended {
  opacity: 0.6;
  filter: grayscale(100%);
}
.event-list .event-item-bg {
  position: relative;
  width: 100%;
  aspect-ratio: 2/1;
  overflow: hidden;
  border-radius: 10px;
  background: #EFF2F6;
}
.event-list .event-item-bg img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.3s ease;
}
.event-list .event-desc-wrap {
  width: 100%;
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
@media (max-width: 767px) {
  .event-list .event-desc-wrap {
    margin-top: 10px;
    gap: 5px;
  }
}
.event-list .event-info-top {
  display: flex;
  align-items: center;
  gap: 10px;
}
.event-list .event-info-top .event-date {
  font-size: 14px;
  color: var(--e_gray_66);
  font-weight: 500;
}
.event-list .event-info-top .e-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 4px 10px;
  font-size: 12px;
  font-weight: 700;
  border-radius: 4px;
  line-height: 1;
}
.event-list .event-info-top .e-badge.ongoing {
  background: rgba(var(--e_prime_rgb), 0.1);
  color: var(--e_prime);
}
.event-list .event-info-top .e-badge.upcoming {
  background: var(--e_gray_ef);
  color: #000;
}
.event-list .event-info-top .e-badge.ended {
  background: var(--e_gray_cc);
  color: #fff;
}
@media (max-width: 1199px) {
  .event-list .event-info-top .event-date {
    font-size: 12px;
  }
  .event-list .event-info-top .e-badge {
    padding: 3px 6px;
    font-size: 11px;
  }
}
.event-list .event-title {
  font-size: 20px;
  font-weight: 700;
  color: #333;
  transition: color 0.3s ease;
}
@media (max-width: 1199px) {
  .event-list .event-title {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .event-list .event-title {
    font-size: 16px;
  }
}
.event-list .event-text {
  font-size: 14px;
  font-weight: 500;
  color: #828282;
  line-height: 1.4;
}
@media (max-width: 1199px) {
  .event-list .event-text {
    font-size: 13px;
  }
}
@media (max-width: 767px) {
  .event-list .event-text {
    font-size: 12px;
  }
}

/* ========================================================= */
/* 테이블 스타일 (Table Styles) */
/* ========================================================= */
.nor_table {
  width: 100%;
  overflow-x: auto;
}
@media (max-width: 767px) {
  .nor_table {
    overflow-x: visible;
  }
  .nor_table.m_boxtype table tbody tr {
    display: flex;
    flex-wrap: wrap;
    padding: 20px 16px;
  }
  .nor_table.m_boxtype table tbody tr td {
    display: flex;
    padding: 0;
    border: none !important;
    width: auto;
    justify-content: flex-start;
    align-items: center;
    border-bottom: none !important;
  }
  .nor_table.m_boxtype table tbody tr td::before {
    display: inline-block;
    width: auto;
    padding-right: 5px;
    font-weight: 400;
    color: var(--e_gray_99);
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(1) {
    width: 30px;
    flex-shrink: 0;
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(1)::before {
    display: none;
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(2) {
    width: calc(100% - 30px);
    flex-shrink: 0;
    font-size: 16px;
    font-weight: 500;
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(2)::before {
    display: none;
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(3) {
    width: auto;
    font-size: 12px;
    color: var(--e_gray_99);
    margin-top: 8px;
    margin-left: 30px;
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(4) {
    width: auto;
    font-size: 12px;
    color: var(--e_gray_99);
    margin-top: 8px;
  }
  .nor_table.m_boxtype table tbody tr td:nth-child(4)::before {
    padding: 0 5px;
  }
}
.nor_table table {
  width: 100%;
  border-collapse: collapse;
  border-top: 2px solid #000;
}
@media (max-width: 767px) {
  .nor_table table {
    border: none;
  }
  .nor_table table colgroup {
    display: none;
  }
}
@media (max-width: 767px) {
  .nor_table table thead {
    display: none;
  }
}
.nor_table table thead tr {
  background: var(--e_gray_ef);
}
.nor_table table thead tr th {
  padding: 16px 12px;
  text-align: center;
  font-size: 14px;
  font-weight: 700;
  color: #000;
  border-bottom: 1px solid var(--e_line);
  white-space: nowrap;
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .nor_table table thead tr th {
    padding: 12px 8px;
    font-size: 12px;
  }
}
.nor_table table tbody tr {
  border-bottom: 1px solid var(--e_line);
  transition: background 0.2s;
}
.nor_table table tbody tr:hover {
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .nor_table table tbody tr:hover {
    background: #fff;
    box-shadow: 0 4px 8px rgba(var(--e_black_rgb), 0.1);
  }
}
@media (max-width: 767px) {
  .nor_table table tbody tr {
    display: block;
    margin-bottom: 15px;
    border: 1px solid var(--e_line);
    border-radius: 8px;
    background: #fff;
    box-shadow: 0 2px 4px rgba(var(--e_black_rgb), 0.05);
    overflow: hidden;
  }
}
.nor_table table tbody tr td {
  padding: 14px 12px;
  text-align: center;
  font-size: 14px;
  color: var(--e_gray_66);
  white-space: nowrap;
}
.nor_table table tbody tr td.left {
  text-align: left;
}
.nor_table table tbody tr td.right {
  text-align: right;
}
.nor_table table tbody tr td a {
  color: #000;
}
.nor_table table tbody tr td a:hover {
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .nor_table table tbody tr td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 12px 16px;
    border: none;
    border-bottom: 1px solid var(--e_line);
    text-align: left;
    white-space: normal;
  }
}
@media (max-width: 767px) {
  .nor_table table tbody tr td::before {
    content: attr(data-label);
    font-weight: 700;
    color: #000;
    font-size: 12px;
    flex-shrink: 0;
    width: 80px;
  }
}
.nor_table table tbody tr td.btn_area {
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .nor_table table tbody tr td.btn_area {
    border-bottom: none;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .nor_table table tbody tr td.btn_area::before {
    display: none;
  }
}
.nor_table table tbody tr td button {
  display: inline-flex;
  height: 35px;
}
@media (max-width: 767px) {
  .nor_table table tbody tr td button {
    width: 100%;
  }
}

/* 소형 태그 */
.tag_s {
  display: inline-block;
  padding: 2px 6px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  line-height: normal;
  vertical-align: middle;
  margin-right: 5px;
}
.tag_s.refund {
  background: rgba(255, 77, 79, 0.1);
  color: rgb(255, 77, 79);
}
.tag_s.exchange {
  background: rgba(var(--e_prime_rgb), 0.1);
  color: var(--e_prime);
}
.tag_s.design {
  background: rgba(var(--e_prime_rgb), 0.1);
  color: var(--e_prime);
  margin-left: 5px;
}
.tag_s.cancel {
  background: var(--e_gray_ef);
  color: var(--e_gray_66);
}
.tag_s.important {
  background: var(--e_prime);
  color: #fff;
}
.tag_s.new {
  background: var(--e_red);
  color: #fff;
  font-size: 8px;
}
@media (max-width: 767px) {
  .tag_s {
    font-size: 11px;
    padding: 1px 4px;
  }
}

/* ========================================================= */
/* 알림 팝업 (Notification Popup) */
/* ========================================================= */
.noti-list {
  max-height: 60vh;
  overflow-y: auto;
  overflow-x: hidden;
}
@media (max-width: 767px) {
  .noti-list {
    max-height: 100%;
  }
}

.noti-list > ul {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 500px;
  padding: 0;
  margin: 0;
  list-style: none;
  overflow-x: hidden;
  flex: none;
}
@media (max-width: 767px) {
  .noti-list > ul {
    width: 100%;
  }
}
.noti-list > ul li.swipe-delete-item {
  position: relative;
  width: 100%;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  overflow: hidden;
  touch-action: pan-y;
  user-select: none;
  transition: transform 0.2s ease-out, opacity 0.2s ease-out, height 0.2s ease-out, background-color 0.2s;
  cursor: grab;
}
.noti-list > ul li.swipe-delete-item:hover {
  box-shadow: 0 5px 10px rgba(var(--e_black_rgb), 0.05);
  border: 1px solid var(--e_prime);
}
.noti-list > ul li.swipe-delete-item:active {
  cursor: grabbing;
  border: 2px solid var(--e_prime);
}
.noti-list > ul li.swipe-delete-item .noti-content {
  padding: 20px;
  text-decoration: none;
  display: block;
  height: 100%;
}
.noti-list > ul li.swipe-delete-item .noti-content a {
  display: flex;
  align-items: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  justify-content: space-between;
  gap: 15px;
}
.noti-list > ul li.swipe-delete-item .noti-content .noti-text {
  font-size: 14px;
  color: #000;
  font-weight: 500;
  margin-bottom: 0;
  line-height: 1.4;
  overflow: hidden;
  text-overflow: ellipsis;
  flex: 1;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  line-clamp: 2;
}
.noti-list > ul li.swipe-delete-item .noti-content .noti-text .noti-cate {
  color: var(--e_prime);
  margin-right: 5px;
  font-weight: 200;
  font-size: 14px;
}
.noti-list > ul li.swipe-delete-item .noti-content .noti-text .noti-cate::after {
  content: "|";
  margin-left: 5px;
  color: var(--e_gray_cc);
  font-size: 12px;
}
.noti-list > ul li.swipe-delete-item .noti-content .noti-date {
  font-size: 12px;
  color: var(--e_gray_99);
  flex-shrink: 0;
  white-space: nowrap;
  align-self: flex-start;
  margin-top: 2px;
}
.noti-list > ul li.swipe-delete-item .btn_delete {
  position: absolute;
  top: 10px;
  right: 10px;
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  z-index: 10;
}
.noti-list > ul li.swipe-delete-item .btn_delete .material-symbols-rounded {
  font-size: 20px;
  color: var(--e_gray_99);
}
.noti-list > ul li.swipe-delete-item .btn_delete:hover .material-symbols-rounded {
  color: var(--e_red);
}

.noti-empty {
  display: none;
  min-height: 200px;
  width: 100%;
  justify-content: center;
  align-items: center;
  color: var(--e_gray_99);
  font-size: 14px;
}

.noti-cnt {
  color: var(--e_prime);
  margin-left: 5px;
  font-size: inherit;
}

/* 전화 아이콘 애니메이션 */
@keyframes phone-ring {
  0%, 100% {
    transform: rotate(0deg);
  }
  10%, 30% {
    transform: rotate(-10deg);
  }
  20%, 40% {
    transform: rotate(10deg);
  }
  50% {
    transform: rotate(0deg);
  }
}
.open_popup_btn[data-popup-selector="#noti-pop"] {
  position: relative;
}
.open_popup_btn[data-popup-selector="#noti-pop"].has-noti .material-symbols-rounded {
  animation: phone-ring 1s infinite ease-in-out;
  display: inline-block;
}
.open_popup_btn[data-popup-selector="#noti-pop"].has-noti::after {
  content: "";
  position: absolute;
  top: 0;
  left: 20px;
  width: 8px;
  height: 8px;
  background-color: var(--e_red);
  border-radius: 50%;
  border: 1.5px solid #fff;
}

/* ========================================================= */
/* 상단 띠배너 (Top Banner) */
/* ========================================================= */
.top_banner_wrap {
  width: 100%;
  background-color: var(--e_prime);
  height: 50px;
  overflow: hidden;
  position: relative;
  z-index: 1001;
}
.top_banner_wrap .banner_container {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 100%;
  position: relative;
}
.top_banner_wrap .topBannerSwiper {
  width: 100%;
  max-width: 1400px;
  height: 24px;
  margin: 0 auto;
}
.top_banner_wrap .topBannerSwiper .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.top_banner_wrap .topBannerSwiper .swiper-slide a {
  display: block;
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  line-height: 24px;
  text-decoration: none;
}
@media (max-width: 767px) {
  .top_banner_wrap .topBannerSwiper .swiper-slide a {
    font-size: 14px;
  }
}
.top_banner_wrap .banner_controls {
  position: absolute;
  right: 40px;
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  gap: 10px;
  color: #fff;
  z-index: 2;
}
@media (max-width: 767px) {
  .top_banner_wrap .banner_controls {
    display: none;
  }
}
.top_banner_wrap .banner_controls .banner_prev, .top_banner_wrap .banner_controls .banner_next {
  position: static;
  width: 24px;
  height: 24px;
  margin: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
}
.top_banner_wrap .banner_controls .banner_prev::after, .top_banner_wrap .banner_controls .banner_next::after {
  display: none;
}
.top_banner_wrap .banner_controls .banner_prev .material-symbols-rounded, .top_banner_wrap .banner_controls .banner_next .material-symbols-rounded {
  font-size: 24px;
  color: #fff;
}
.top_banner_wrap .banner_controls .banner_pagination {
  font-size: 10px;
  font-weight: 700;
  width: auto;
  color: #fff;
  position: static;
}
.top_banner_wrap .btn_banner_close {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  padding: 0;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  z-index: 2;
}
.top_banner_wrap .btn_banner_close .material-symbols-rounded {
  font-size: 24px;
  color: #fff;
}
@media (max-width: 767px) {
  .top_banner_wrap .btn_banner_close {
    right: 10px;
  }
}

/* =========================================================
   Type C - Global Styles
   Type C 전용 헤더 및 공통 스타일
   ========================================================= */
* {
  --e_prime: #FF6B8A !important;
  --e_prime_rgb: 255, 107, 138 !important;
}

body.typeC {
  background: #fff;
  font-family: "Pretendard", sans-serif;
}

/* =========================================================
   Header C Styles
   ========================================================= */
header {
  background: #fff;
  border-bottom: 1px solid var(--e_line);
}

.header_c_container .header_top_row {
  height: 40px;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media (max-width: 767px) {
  .header_c_container .header_top_row {
    display: none;
  }
}
.header_c_container .header_top_row .top_links {
  display: flex;
  gap: 20px;
}
.header_c_container .header_top_row .top_links li > a {
  font-size: 12px;
  color: var(--e_gray_66);
  letter-spacing: -0.5px;
}
.header_c_container .header_top_row .top_links li > a:hover {
  color: #000;
  text-decoration: underline;
}
.header_c_container .header_main_row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-top: 25px;
  padding-bottom: 25px;
}
.header_c_container .header_main_row .logo {
  width: 180px;
}
@media (max-width: 1199px) {
  .header_c_container .header_main_row .logo {
    width: 140px;
  }
}
@media (max-width: 767px) {
  .header_c_container .header_main_row .logo {
    width: clamp(100px, 20vw, 140px);
  }
}
.header_c_container .header_main_row .logo img {
  width: 100%;
  height: auto;
}
.header_c_container .header_main_row .right_area {
  display: flex;
  align-items: center;
  gap: 30px;
}
.header_c_container .header_main_row .right_area .search_area {
  width: 350px;
}
@media (max-width: 1199px) {
  .header_c_container .header_main_row .right_area .search_area {
    width: 250px;
  }
}
@media (max-width: 767px) {
  .header_c_container .header_main_row .right_area .search_area {
    display: none;
  }
}
.header_c_container .header_main_row .right_area .search_area form {
  position: relative;
  width: 100%;
}
.header_c_container .header_main_row .right_area .search_area form input {
  width: 100%;
  height: 46px;
  border: 1px solid var(--e_gray_cc);
  border-radius: 23px;
  padding: 0 50px 0 20px;
  font-size: 14px;
}
.header_c_container .header_main_row .right_area .search_area form input::placeholder {
  color: var(--e_gray_99);
}
.header_c_container .header_main_row .right_area .search_area form input:focus {
  outline: none;
  border-color: var(--e_prime);
}
.header_c_container .header_main_row .right_area .search_area form button {
  position: absolute;
  right: 15px;
  top: 50%;
  transform: translateY(-50%);
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
}
.header_c_container .header_main_row .right_area .search_area form button span {
  font-size: 24px;
  color: var(--e_gray_66);
}
.header_c_container .header_main_row .right_area .util_area {
  display: flex;
  gap: 20px;
}
.header_c_container .header_main_row .right_area .util_area .icon_btn {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  text-decoration: none;
}
.header_c_container .header_main_row .right_area .util_area .icon_btn.allmenu {
  display: none;
}
@media (max-width: 1199px) {
  .header_c_container .header_main_row .right_area .util_area .icon_btn.allmenu {
    display: flex;
  }
}
@media (max-width: 767px) {
  .header_c_container .header_main_row .right_area .util_area .icon_btn.ico_delivery {
    display: none;
  }
}
.header_c_container .header_main_row .right_area .util_area .icon_btn .icon_wrap {
  position: relative;
  display: inline-block;
}
.header_c_container .header_main_row .right_area .util_area .icon_btn .icon_wrap span.material-symbols-rounded {
  font-size: 28px;
  color: var(--e_gray_33);
}
.header_c_container .header_main_row .right_area .util_area .icon_btn .icon_wrap .badge_dot {
  position: absolute;
  top: 0;
  right: 0;
  width: 8px;
  height: 8px;
  background-color: var(--e_red);
  border-radius: 50%;
  border: 1px solid #fff;
}
.header_c_container .header_main_row .right_area .util_area .icon_btn .icon_wrap .badge_num {
  position: absolute;
  top: -5px;
  right: -8px;
  background-color: var(--e_red);
  color: #fff;
  font-size: 10px;
  font-weight: 700;
  padding: 2px 5px;
  border-radius: 10px;
  min-width: 18px;
  text-align: center;
  line-height: 100%;
}
.header_c_container .header_main_row .right_area .util_area .icon_btn .text {
  font-size: 12px;
  color: var(--e_gray_66);
  letter-spacing: -0.5px;
  line-height: 100%;
}
@media (max-width: 767px) {
  .header_c_container .header_main_row .right_area .util_area .icon_btn .text {
    display: none;
  }
}
.header_c_container .header_main_row .right_area .util_area .icon_btn:hover span.material-symbols-rounded {
  color: var(--e_prime);
}
.header_c_container .header_gnb_row {
  position: relative;
}
@media (max-width: 1199px) {
  .header_c_container .header_gnb_row {
    display: none;
  }
}
.header_c_container .header_gnb_row > .maxwidth {
  display: flex;
  align-items: center;
  height: 60px;
}
.header_c_container .header_gnb_row .all_menu {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 800;
  color: var(--e_gray_33);
  margin-right: 40px;
  cursor: pointer;
}
.header_c_container .header_gnb_row .all_menu span.material-symbols-rounded {
  font-size: 24px;
}
.header_c_container .header_gnb_row .all_menu:hover {
  color: var(--e_prime);
}
.header_c_container .header_gnb_row .gnb_list {
  display: flex;
  gap: 30px;
  align-items: center;
}
.header_c_container .header_gnb_row .gnb_list li {
  position: relative;
  display: flex;
  align-items: center;
}
.header_c_container .header_gnb_row .gnb_list li a {
  font-size: 16px;
  font-weight: 600;
  color: var(--e_gray_33);
  display: block;
}
.header_c_container .header_gnb_row .gnb_list li a:hover {
  color: var(--e_prime);
}
.header_c_container .header_gnb_row .gnb_list li.highlight_text a {
  color: var(--e_prime);
}
@media (max-width: 1199px) {
  .header_c_container .header_main_row.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    background: #fff;
    z-index: 1001;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
    padding-top: 15px;
    padding-bottom: 15px;
    padding-left: 20px;
    padding-right: 20px;
    animation: slideDownHeader 0.3s ease;
  }
}
.header_c_container .header_gnb_row.fixed {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  background: #fff;
  z-index: 1000;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}
.header_c_container .header_gnb_row.fixed .n-badge {
  display: none;
}

.mobile_header_c {
  display: none;
}
@media (max-width: 767px) {
  .mobile_header_c {
    display: block;
    height: 60px;
    background: #fff;
    border-bottom: 1px solid var(--e_line);
    padding: 0 20px;
  }
  .mobile_header_c .m_row_1 {
    height: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
  .mobile_header_c .m_row_1 .material-symbols-rounded {
    font-size: 28px;
    color: var(--e_gray_33);
    cursor: pointer;
  }
  .mobile_header_c .m_row_1 .logo img {
    height: 24px;
  }
  .mobile_header_c .m_row_1 .m_utils {
    display: flex;
    gap: 15px;
  }
}
@media (max-width: 767px) {
  .mobile_header_c.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 1001;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
  }
}

@keyframes slideDownHeader {
  from {
    transform: translateY(-100%);
    opacity: 0;
  }
  to {
    transform: translateY(0);
    opacity: 1;
  }
}
@media (max-width: 1199px) {
  .ettum_menu.fixed {
    top: 77px;
  }
}

/* =========================================================
   Footer Type C
   ========================================================= */
.ftC {
  background: #fff;
  font-size: 14px;
  color: var(--e_gray_66);
  /* 상단 영역 */
}
.ftC .ftC_upper {
  border-top: 1px solid var(--e_line);
  padding: 30px 0;
}
@media (max-width: 767px) {
  .ftC .ftC_upper {
    padding: 25px 0;
  }
}
.ftC .ftC_upper .ftC_inner {
  display: flex;
  justify-content: space-between;
  gap: 40px;
}
@media (max-width: 1199px) {
  .ftC .ftC_upper .ftC_inner {
    gap: 30px;
  }
}
@media (max-width: 767px) {
  .ftC .ftC_upper .ftC_inner {
    flex-direction: column;
    gap: 25px;
    align-items: flex-start;
  }
}
.ftC {
  /* 좌측: 링크 + 회사정보 */
}
.ftC .ftC_left {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
@media (max-width: 767px) {
  .ftC .ftC_left {
    order: 2;
  }
}
.ftC .ftC_links {
  display: flex;
  align-items: center;
  gap: 10px;
  flex-wrap: wrap;
}
.ftC .ftC_links a {
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_33);
  transition: color 0.2s;
}
.ftC .ftC_links a:hover {
  color: var(--e_prime);
}
.ftC .ftC_links a.bold {
  font-weight: 700;
}
.ftC .ftC_links .divider {
  color: var(--e_gray_cc);
  font-size: 12px;
  user-select: none;
}
.ftC .ftC_info {
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.ftC .ftC_info p {
  font-size: 12px;
  color: var(--e_gray_99);
  line-height: 1.6;
}
.ftC {
  /* 우측: 고객센터 */
}
.ftC .ftC_right {
  display: flex;
  flex-direction: column;
  gap: 12px;
  align-items: flex-end;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .ftC .ftC_right {
    align-items: flex-start;
    order: 1;
  }
}
.ftC .ftC_cs_title {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 24px;
  font-weight: 700;
  color: var(--e_gray_33);
}
.ftC .ftC_cs_title .material-symbols-rounded {
  font-size: 24px;
}
.ftC .ftC_cs_info {
  text-align: right;
}
@media (max-width: 767px) {
  .ftC .ftC_cs_info {
    text-align: left;
  }
}
.ftC .ftC_cs_info .ftC_cs_number {
  font-size: 20px;
  font-weight: 700;
  color: var(--e_gray_33);
}
.ftC .ftC_cs_info .ftC_cs_number span {
  font-weight: 400;
  font-size: 14px;
  color: var(--e_gray_99);
}
.ftC .ftC_cs_info .ftC_cs_time {
  font-size: 14px;
  color: var(--e_gray_99);
  margin-top: 2px;
}
.ftC .ftC_cs_btns {
  display: flex;
  align-items: center;
  gap: 8px;
}
@media (max-width: 767px) {
  .ftC .ftC_cs_btns {
    flex-wrap: wrap;
  }
}
.ftC .ftC_cs_btns .ftC_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 34px;
  padding: 0 16px;
  border: 1px solid var(--e_line);
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  color: var(--e_gray_33);
  background: #fff;
  transition: all 0.2s;
  text-decoration: none;
}
.ftC .ftC_cs_btns .ftC_btn:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
}
.ftC .ftC_cs_btns .ftC_family_site {
  position: relative;
}
.ftC .ftC_cs_btns .ftC_family_site select {
  height: 34px;
  padding: 0 30px 0 12px;
  border: 1px solid var(--e_line);
  border-radius: 6px;
  font-size: 12px;
  font-weight: 500;
  color: var(--e_gray_33);
  background: #fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3E%3Cpath d='M1 1l4 4 4-4' stroke='%23999' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") no-repeat right 10px center;
  appearance: none;
  cursor: pointer;
}
.ftC .ftC_cs_btns .ftC_family_site select:hover {
  border-color: var(--e_prime);
}
.ftC {
  /* 하단 영역 */
}
.ftC .ftC_lower {
  border-top: 1px solid var(--e_line);
  padding: 20px 0;
  background: var(--e_gray_f5);
}
@media (max-width: 767px) {
  .ftC .ftC_lower {
    padding-bottom: 100px;
  }
}
.ftC .ftC_inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
}
.ftC .ftC_inner p {
  font-size: 12px;
  color: var(--e_gray_99);
  line-height: 1.6;
}
.ftC .ftC_copyright {
  font-size: 12px;
  color: var(--e_gray_cc);
}
.ftC .ftC_sns {
  display: flex;
  gap: 8px;
}
.ftC .ftC_sns .ftC_sns_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: var(--e_gray_cc);
  transition: all 0.2s;
  overflow: hidden;
}
.ftC .ftC_sns .ftC_sns_icon img {
  width: 16px;
  height: 16px;
  object-fit: contain;
  filter: brightness(0) invert(1);
}
.ftC .ftC_sns .ftC_sns_icon:hover {
  background: var(--e_prime);
}

/* =========================================================
   카테고리 레이어 팝업
   ========================================================= */
/* 오버레이 */
.cate-popup-overlay {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(var(--e_black_rgb), 0.5);
  z-index: 9;
  justify-content: center;
  align-items: center;
}
.cate-popup-overlay.active {
  display: flex;
}
@media (max-width: 767px) {
  .cate-popup-overlay {
    padding-top: 0;
    align-items: stretch;
  }
}

body.menu-is-open .content_body::before {
  display: none;
}

/* 팝업 컨테이너 */
.cate-popup {
  width: 100%;
  max-width: 600px;
  height: calc(100vh - 120px);
  max-height: 800px;
  background: #fff;
  border-radius: 16px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  box-shadow: 0 20px 60px rgba(var(--e_black_rgb), 0.25);
  animation: cateSlideDown 0.3s ease;
}
@media (max-width: 767px) {
  .cate-popup {
    max-width: 100%;
    max-height: 100vh;
    height: 100vh;
    border-radius: 0;
  }
}

@keyframes cateSlideDown {
  from {
    opacity: 0;
    transform: translateY(-20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
/* 팝업 헤더 */
.cate-popup__header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 20px;
  border-bottom: 1px solid var(--e_line);
  flex-shrink: 0;
}

.cate-popup__tabs {
  display: flex;
  gap: 20px;
}
.cate-popup__tabs .cate-popup__tab {
  padding: 0;
  border: none;
  background: none;
  font-size: 16px;
  font-weight: 400;
  color: var(--e_gray_99);
  cursor: pointer;
  position: relative;
  transition: color 0.2s;
  height: auto;
}
.cate-popup__tabs .cate-popup__tab.active {
  font-weight: 700;
  color: #000;
}
.cate-popup__tabs .cate-popup__tab:hover {
  color: #000;
}

.cate-popup__actions {
  display: flex;
  gap: 12px;
  align-items: center;
}
.cate-popup__actions .material-symbols-rounded {
  font-size: 24px;
  color: var(--e_gray_66);
  cursor: pointer;
  transition: color 0.2s;
}
.cate-popup__actions .material-symbols-rounded:hover {
  color: #000;
}

/* 검색 토글 아이콘 */
.cate-popup__search-toggle {
  cursor: pointer;
}
.cate-popup__search-toggle.active {
  color: var(--e_prime) !important;
}

/* 서브 필터 탭 + 검색바 래퍼 */
.cate-popup__filter-wrap {
  position: relative;
  flex-shrink: 0;
  border-bottom: 1px solid var(--e_line);
}

/* 서브 필터 탭 */
.cate-popup__filter {
  display: flex;
  gap: 8px;
  padding: 12px 20px;
  overflow-x: auto;
  scroll-snap-type: x mandatory;
  -ms-overflow-style: none; /* IE and Edge */
  scrollbar-width: none; /* Firefox */
}
.cate-popup__filter::-webkit-scrollbar {
  display: none;
}
.cate-popup__filter { /* Chrome, Safari, Opera */ }
@media (max-width: 767px) {
  .cate-popup__filter {
    gap: 5px;
    padding: 5px 10px;
  }
}

.cate-popup__filter-btn {
  padding: 10px 15px;
  border: none;
  background: none;
  font-size: 14px;
  font-weight: 400;
  color: var(--e_gray_66);
  cursor: pointer;
  white-space: nowrap;
  border-radius: 20px;
  transition: all 0.2s;
  height: auto;
  scroll-snap-align: start;
}
.cate-popup__filter-btn.active {
  font-weight: 600;
  color: #000;
  background: var(--e_gray_f5);
}
.cate-popup__filter-btn:hover {
  color: #000;
}

/* 검색바 오버레이 (필터 위에 겹침) */
.cate-popup__searchbar {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: var(--e_gray_ef);
  display: flex;
  align-items: center;
  padding: 0 20px;
  gap: 10px;
  opacity: 0;
  visibility: hidden;
  transform: translateY(-4px);
  transition: all 0.25s ease;
  justify-content: flex-end;
}
.cate-popup__searchbar.active {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
.cate-popup__searchbar.active .search-box-wrap {
  width: 100%;
}
@media (max-width: 767px) {
  .cate-popup__searchbar.active .search-box-wrap {
    display: flex;
    animation: none;
  }
}

.cate-popup__searchbar-icon {
  font-size: 20px;
  color: var(--e_gray_99);
  flex-shrink: 0;
}

.cate-popup__searchbar-input {
  flex: 1;
  height: 36px;
  border: 1px solid var(--e_line);
  border-radius: 20px;
  padding: 0 16px;
  font-size: 14px;
  color: #000;
  outline: none;
  background: var(--e_gray_f5);
  transition: border-color 0.2s;
}
.cate-popup__searchbar-input::placeholder {
  color: var(--e_gray_99);
}
.cate-popup__searchbar-input:focus {
  border-color: var(--e_prime);
  background: #fff;
}

/* 본문: 좌측 네비 + 우측 콘텐츠 */
.cate-popup__body {
  display: flex;
  flex: 1;
  overflow: hidden;
  min-height: 0;
}

/* 좌측 사이드바 */
.cate-popup__sidebar {
  width: 110px;
  flex-shrink: 0;
  overflow-y: auto;
  padding: 0;
  border-right: 1px solid var(--e_line);
  display: flex;
  flex-direction: column;
}

.cate-popup__nav-item {
  display: block;
  padding: 10px 20px;
  font-size: 14px;
  font-weight: 400;
  color: var(--e_gray_66);
  text-decoration: none;
  transition: all 0.2s;
  border-left: 3px solid transparent;
  cursor: pointer;
}
@media (max-width: 767px) {
  .cate-popup__nav-item {
    padding: 10px;
  }
}
.cate-popup__nav-item.active {
  font-weight: 700;
  color: var(--e_prime);
  border-left-color: var(--e_prime);
  background: rgba(var(--e_prime_rgb), 0.04);
}
.cate-popup__nav-item:hover {
  color: #000;
}

/* 우측 콘텐츠 */
.cate-popup__content {
  flex: 1;
  overflow-y: auto;
  padding: 20px;
  scroll-behavior: smooth;
}

/* 배너 */
.cate-popup__banner {
  margin-bottom: 24px;
  border-radius: 12px;
  overflow: hidden;
}
.cate-popup__banner a {
  display: block;
}
.cate-popup__banner img {
  width: 100%;
  height: auto;
  display: block;
}

/* 카테고리 섹션 */
.cate-popup__section {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid var(--e_line);
}
.cate-popup__section:last-child, .cate-popup__section.is-last {
  border-bottom: none;
  margin-bottom: 0;
  min-height: 100%;
}

.cate-popup__section-header {
  margin-bottom: 12px;
}

.cate-popup__section-title {
  display: inline-flex;
  align-items: center;
  font-size: 17px;
  font-weight: 700;
  color: #000;
  text-decoration: none;
  gap: 2px;
  transition: color 0.2s;
}
.cate-popup__section-title .material-symbols-rounded {
  font-size: 20px;
}
.cate-popup__section-title:hover {
  color: var(--e_prime);
}

/* 인기상품 보기 / 전체 보기 버튼 */
.cate-popup__section-actions {
  display: flex;
  gap: 8px;
  margin-bottom: 16px;
}

.cate-popup__action-btn {
  flex: 1;
  display: flex;
  justify-content: center;
  align-items: center;
  height: 36px;
  border: 1px solid var(--e_line);
  border-radius: 8px;
  font-size: 13px;
  font-weight: 400;
  color: var(--e_gray_66);
  text-decoration: none;
  transition: all 0.2s;
}
.cate-popup__action-btn:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
}

/* 3열 그리드 */
.cate-popup__grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px;
}
@media (max-width: 767px) {
  .cate-popup__grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
  }
}

.cate-popup__grid-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  text-decoration: none;
  transition: transform 0.2s;
}
.cate-popup__grid-item:hover {
  transform: translateY(-2px);
}
.cate-popup__grid-item:hover .cate-popup__grid-img img {
  transform: scale(1.05);
}

.cate-popup__grid-img {
  width: 100%;
  aspect-ratio: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.cate-popup__grid-img img {
  width: 75%;
  height: 75%;
  object-fit: contain;
  transition: transform 0.3s;
}

.cate-popup__grid-name {
  font-size: 13px;
  font-weight: 400;
  color: var(--e_gray_33);
  text-align: center;
  line-height: 1.3;
}

/* 배지 */
.cate-badge {
  position: absolute;
  top: 10%;
  right: 20%;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  aspect-ratio: 1/1;
  font-size: 10px;
  font-weight: 700;
  border-radius: 50%;
  color: #fff;
  z-index: 1;
}

.cate-badge--new {
  background: var(--e_prime);
}

.cate-badge--hot {
  background: #8b5cf6;
}

.cate-badge--hit {
  background: #3b82f6;
}

@media (max-width: 767px) {
  .bt-menu__item {
    flex: 1 1 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 5px;
    height: 100%;
    transition: all 0.2s;
  }
  .bt-menu__item:hover .bt-menu__icon, .bt-menu__item:hover .bt-menu__text {
    color: var(--e_prime);
  }
  .bt-menu__icon {
    font-size: 24px;
    color: #000;
    transition: color 0.2s;
  }
  .bt-menu__text {
    color: var(--e_gray_99);
    font-size: 12px;
    font-weight: 400;
    line-height: 19.2px;
    transition: color 0.2s;
  }
}

/* ========================================================= */
/* PrintZone About Renewal Styles (Type C) */
/* - 제플린 "인쇄존_회사소개" 디자인 정밀 구현 */
/* ========================================================= */
.about_pz_renewal h2 {
  font-size: 50px;
  font-weight: 500;
  color: #191919;
  line-height: 1.2;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .about_pz_renewal h2 {
    font-size: 30px;
  }
}
.about_pz_renewal .sec_line {
  width: 100%;
  height: 1px;
  background: var(--e_prime);
  margin-top: 20px;
  margin-bottom: 0;
}
.about_pz_renewal .sec_header {
  margin-bottom: 90px;
}
@media (max-width: 768px) {
  .about_pz_renewal .sec_header {
    margin-bottom: 40px;
  }
}
.about_pz_renewal .sec_header h2 {
  margin-bottom: 10px;
}
.about_pz_renewal .pz_visual_wrap {
  display: block;
  width: 100%;
}
.about_pz_renewal .pz_visual {
  position: relative;
  width: 100%;
  height: 100vh;
  min-height: 600px;
  display: flex;
  flex-direction: column;
  overflow: hidden;
}
.about_pz_renewal .pz_visual .bg_video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 0;
}
.about_pz_renewal .pz_visual::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, 0.6);
  z-index: 1;
}
.about_pz_renewal .pz_visual .pz_about_nav {
  position: fixed;
  top: 0;
  z-index: 200;
  width: 100%;
  height: 69px;
  background: rgba(255, 255, 255, 0.4);
  display: flex;
  align-items: center;
  flex-shrink: 0;
  transition: background 0.3s, border-bottom 0.3s;
}
.about_pz_renewal .pz_visual .pz_about_nav .nav_inner {
  max-width: 1480px;
  margin: 0 auto;
  padding: 0 40px;
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.about_pz_renewal .pz_visual .pz_about_nav .logo {
  display: flex;
  align-items: center;
}
.about_pz_renewal .pz_visual .pz_about_nav .logo img {
  height: 26px;
  transition: filter 0.3s;
}
.about_pz_renewal .pz_visual .pz_about_nav .nav_list {
  display: flex;
  gap: 94px;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_visual .pz_about_nav .nav_list {
    display: none !important;
  }
}
.about_pz_renewal .pz_visual .pz_about_nav .nav_list li a {
  font-size: 20px;
  font-weight: 700;
  color: #fff;
  text-decoration: none;
  transition: opacity 0.2s, color 0.3s;
}
.about_pz_renewal .pz_visual .pz_about_nav .nav_list li a:hover {
  color: var(--e_prime);
}
.about_pz_renewal .pz_visual .pz_about_nav .nav_close_btn {
  display: none;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_visual .pz_about_nav .nav_close_btn {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 40px;
    height: 40px;
    color: #fff;
    text-decoration: none;
  }
  .about_pz_renewal .pz_visual .pz_about_nav .nav_close_btn span {
    font-size: 32px;
  }
}
.about_pz_renewal .pz_visual .pz_about_nav.is-black {
  border-bottom: 1px solid #eee;
  background: #fff;
}
.about_pz_renewal .pz_visual .pz_about_nav.is-black .logo img {
  filter: brightness(0); /* 흰색 로고를 검은색으로 변경 */
}
.about_pz_renewal .pz_visual .pz_about_nav.is-black .nav_list li a {
  color: #191919;
}
.about_pz_renewal .pz_visual .pz_about_nav.is-black .nav_list li a:hover {
  color: var(--e_prime);
}
.about_pz_renewal .pz_visual .pz_about_nav.is-black .nav_close_btn {
  color: #191919;
}
.about_pz_renewal .pz_visual .visual_inner {
  position: relative;
  z-index: 2;
  flex: 1;
  display: flex;
  align-items: center;
  max-width: 1200px;
  margin: 0 auto;
  width: 100%;
  padding: 0 40px;
}
.about_pz_renewal .pz_visual .visual_txt p {
  font-size: 128px;
  font-weight: 900;
  color: #fff;
  line-height: 1.21;
  letter-spacing: -2px;
  display: block;
}
@media (max-width: 1280px) {
  .about_pz_renewal .pz_visual .visual_txt p {
    font-size: clamp(80px, 15vw, 128px);
  }
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_visual .visual_txt p {
    font-size: clamp(60px, 15vw, 80px);
  }
}
.about_pz_renewal .pz_greet {
  background: #F5F5F5;
  padding: 0;
}
.about_pz_renewal .pz_greet h2 {
  margin-bottom: 100px;
  text-align: center;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_greet h2 {
    margin-bottom: 40px;
  }
}
.about_pz_renewal .pz_greet .greet_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 200px 0;
}
.about_pz_renewal .pz_greet .greet_content {
  display: flex;
  gap: 40px;
  align-items: flex-start;
}
.about_pz_renewal .pz_greet .greet_img {
  width: 580px;
  flex-shrink: 0;
}
.about_pz_renewal .pz_greet .greet_img img {
  width: 100%;
  height: 433px;
  object-fit: cover;
  display: block;
}
.about_pz_renewal .pz_greet .greet_txt {
  flex: 1;
  padding-top: 0;
}
.about_pz_renewal .pz_greet .greet_txt h3 {
  font-size: 30px;
  font-weight: 700;
  color: #191919;
  margin-bottom: 60px;
  line-height: 1.2;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_greet .greet_txt h3 {
    font-size: 24px;
    margin-bottom: 20px;
  }
}
.about_pz_renewal .pz_greet .greet_txt p {
  font-size: 20px;
  font-weight: 400;
  color: #191919;
  line-height: 40px;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_greet .greet_txt p {
    font-size: 18px;
  }
}
@media (max-width: 1280px) {
  .about_pz_renewal .pz_greet .greet_inner {
    padding: 80px 40px;
  }
  .about_pz_renewal .pz_greet .greet_img {
    width: 100%;
  }
  .about_pz_renewal .pz_greet .greet_img img {
    height: 300px;
  }
  .about_pz_renewal .pz_greet .greet_content {
    flex-direction: column;
  }
}
.about_pz_renewal .pz_biz_wrap {
  padding: 0;
}
.about_pz_renewal .pz_biz_wrap .biz_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 100px 0 140px;
}
.about_pz_renewal .pz_biz_wrap .biz_list {
  display: flex;
  flex-direction: column;
  gap: 160px;
}
.about_pz_renewal .pz_biz_wrap .biz_row {
  display: flex;
  align-items: center;
  gap: 70px;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_biz_wrap .biz_row {
    gap: 20px;
  }
}
.about_pz_renewal .pz_biz_wrap .biz_row.biz_row_reverse {
  flex-direction: row-reverse;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_biz_wrap .biz_row.biz_row_reverse {
    flex-direction: column;
  }
}
.about_pz_renewal .pz_biz_wrap .biz_img {
  width: 580px;
  height: 380px;
  flex-shrink: 0;
  border-radius: 20px;
  background-size: cover;
  background-position: center;
}
.about_pz_renewal .pz_biz_wrap .biz_txt {
  flex: 1;
}
.about_pz_renewal .pz_biz_wrap .biz_txt h4 {
  font-size: 30px;
  font-weight: 500;
  color: #191919;
  margin-bottom: 60px;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_biz_wrap .biz_txt h4 {
    font-size: 24px;
    margin-bottom: 20px;
  }
}
.about_pz_renewal .pz_biz_wrap .biz_txt h4 .num {
  font-weight: 700;
  color: var(--e_prime);
  margin-right: 0;
}
.about_pz_renewal .pz_biz_wrap .biz_txt p {
  font-size: 20px;
  font-weight: 300;
  color: #191919;
  line-height: 40px;
}
@media (max-width: 1280px) {
  .about_pz_renewal .pz_biz_wrap .biz_inner {
    padding: 80px 40px 0;
  }
  .about_pz_renewal .pz_biz_wrap .biz_list {
    gap: 60px;
  }
  .about_pz_renewal .pz_biz_wrap .biz_row {
    flex-direction: column;
  }
  .about_pz_renewal .pz_biz_wrap .biz_img {
    width: 100%;
    height: 260px;
  }
}
.about_pz_renewal .pz_location_wrap {
  padding: 0;
  width: 100%;
}
.about_pz_renewal .pz_location_wrap .loc_inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 100px 0 140px;
}
.about_pz_renewal .pz_location_wrap .loc_map {
  width: 100%;
  height: 520px;
  border: 1px solid #F0F0F0;
  margin-bottom: 90px;
  overflow: hidden;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_location_wrap .loc_map {
    margin-bottom: 40px;
  }
}
.about_pz_renewal .pz_location_wrap .loc_map .root_daum_roughmap {
  width: 100% !important;
  height: 520px !important;
}
.about_pz_renewal .pz_location_wrap .loc_info_wrap {
  display: flex;
  align-items: stretch;
  gap: 0;
}
.about_pz_renewal .pz_location_wrap .loc_traffic {
  width: 540px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 70px;
}
.about_pz_renewal .pz_location_wrap .loc_traffic .traffic_item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
}
.about_pz_renewal .pz_location_wrap .loc_traffic .t_icon {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  background: var(--e_prime);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.about_pz_renewal .pz_location_wrap .loc_traffic .t_icon img {
  width: 28px;
}
.about_pz_renewal .pz_location_wrap .loc_traffic .t_txt {
  padding-top: 8px;
}
.about_pz_renewal .pz_location_wrap .loc_traffic .t_txt strong {
  display: block;
  font-size: 20px;
  font-weight: 500;
  color: #191919;
  margin-bottom: 10px;
}
.about_pz_renewal .pz_location_wrap .loc_traffic .t_txt span {
  font-size: 16px;
  font-weight: 400;
  color: #454545;
  line-height: 1.5;
}
.about_pz_renewal .pz_location_wrap .loc_divider {
  width: 1px;
  background: #D9D9D9;
  flex-shrink: 0;
  margin: 0 118px;
}
.about_pz_renewal .pz_location_wrap .loc_contact {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 133px;
}
.about_pz_renewal .pz_location_wrap .loc_contact .contact_row .contact_label {
  font-size: 32px;
  font-weight: 400;
  color: #191919;
  margin-bottom: 40px;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_location_wrap .loc_contact .contact_row .contact_label {
    font-size: 24px;
    margin-bottom: 20px;
  }
}
.about_pz_renewal .pz_location_wrap .loc_contact .contact_row .contact_val {
  font-size: 20px;
  font-weight: 400;
  color: #454545;
  margin-bottom: 0;
}
@media (max-width: 768px) {
  .about_pz_renewal .pz_location_wrap .loc_contact .contact_row .contact_val {
    font-size: 18px;
  }
}
.about_pz_renewal .pz_location_wrap .loc_contact .contact_row .contact_val + .contact_val {
  margin-top: 10px;
}
@media (max-width: 1280px) {
  .about_pz_renewal .pz_location_wrap .loc_inner {
    padding: 80px 40px;
  }
  .about_pz_renewal .pz_location_wrap .loc_map {
    height: 300px;
  }
  .about_pz_renewal .pz_location_wrap .loc_map .root_daum_roughmap {
    height: 300px !important;
  }
  .about_pz_renewal .pz_location_wrap .loc_info_wrap {
    flex-direction: column;
    gap: 60px;
  }
  .about_pz_renewal .pz_location_wrap .loc_traffic {
    width: 100%;
    gap: 40px;
  }
  .about_pz_renewal .pz_location_wrap .loc_divider {
    width: 100%;
    height: 1px;
    margin: 0;
  }
  .about_pz_renewal .pz_location_wrap .loc_contact {
    gap: 40px;
  }
}
.about_pz_renewal .pz_cta_wrap {
  position: relative;
  width: 100%;
  background-image: url("/images/company_img/bottom_bg.jpg");
  background-size: cover;
  background-position: center;
  height: 540px;
}
.about_pz_renewal .pz_cta_wrap .cta_overlay {
  position: absolute;
  inset: 0;
  background: rgba(25, 25, 25, 0.6);
  display: flex;
  align-items: center;
  justify-content: center;
}
.about_pz_renewal .pz_cta_wrap .cta_content {
  text-align: center;
  color: #fff;
}
.about_pz_renewal .pz_cta_wrap .cta_content p {
  font-size: 24px;
  font-weight: 500;
  margin-bottom: 36px;
  line-height: 1.2;
}
.about_pz_renewal .pz_cta_wrap .cta_content h3 {
  font-size: 48px;
  font-weight: 700;
  line-height: 1.21;
  margin-bottom: 40px;
}
@media (max-width: 767px) {
  .about_pz_renewal .pz_cta_wrap .cta_content h3 {
    margin-bottom: 20px;
  }
}
.about_pz_renewal .pz_cta_wrap .cta_btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 300px;
  height: 60px;
  background: var(--e_prime);
  color: #fff;
  font-size: 20px;
  font-weight: 700;
  border-radius: 10px;
  text-decoration: none;
  transition: background 0.2s, transform 0.2s;
}
.about_pz_renewal .pz_cta_wrap .cta_btn:hover {
  background: #d4446e;
  transform: translateY(-2px);
}
@media (max-width: 767px) {
  .about_pz_renewal .pz_cta_wrap {
    height: 350px;
  }
  .about_pz_renewal .pz_cta_wrap .cta_content h3 {
    font-size: 28px;
  }
  .about_pz_renewal .pz_cta_wrap .cta_content p {
    font-size: 18px;
  }
  .about_pz_renewal .pz_cta_wrap .cta_btn {
    width: 100%;
  }
}

/* Basic style*/
h2 {
  font-size: 24px;
  font-weight: 700;
  color: #000;
}

h2 span {
  color: var(--e_prime);
}

.sub_tab {
  display: flex;
  align-items: center;
  position: relative;
  flex: 1;
  min-width: 0;
}
.sub_tab .default-tab {
  margin-right: 10px;
  flex: 0 0 auto;
}
.sub_tab .sub_tab_container {
  display: flex;
  align-items: center;
  position: relative;
  flex: 1;
  min-width: 0;
}
.sub_tab .sub_tab_container .ltg, .sub_tab .sub_tab_container .rtg {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 50px;
  pointer-events: none;
  z-index: 1;
  display: none;
}
.sub_tab .sub_tab_container .ltg {
  left: 0;
  background: linear-gradient(to right, #fff 30%, rgba(var(--e_white_rgb), 0) 100%);
}
.sub_tab .sub_tab_container .rtg {
  right: 0;
  background: linear-gradient(to left, #fff 30%, rgba(var(--e_white_rgb), 0) 100%);
}
.sub_tab .sub_tab_wrapper {
  flex: 1;
  min-width: 0;
  overflow-x: auto;
  scrollbar-width: none;
}
.sub_tab .sub_tab_wrapper::-webkit-scrollbar {
  display: none;
}
.sub_tab .sub_tab_group {
  display: flex;
  gap: 10px;
  white-space: nowrap;
}
.sub_tab .tab-arrow {
  flex: 0 0 auto;
  width: 20px;
  height: 20px;
  border: none;
  border-radius: 50%;
  background: #fff;
  box-shadow: 0 0 4px rgba(var(--e_black_rgb), 0.2);
  cursor: pointer;
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 2;
  color: var(--e_gray_99);
  padding: 0;
}
.sub_tab .tab-arrow span {
  font-size: 10px;
  margin-left: 2px;
}
.sub_tab .tab-arrow:hover {
  background: var(--e_prime);
  color: #fff;
}
.sub_tab .sub_tab_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  height: 40px;
  padding: 10px 20px;
  border-radius: 30px;
  background: #fff;
  outline: 1px var(--e_line) solid;
  outline-offset: -1px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_33);
  transition: background 0.2s, outline 0.2s, color 0.2s;
  text-align: center;
  word-break: keep-all;
  scroll-snap-align: start;
}
.sub_tab .sub_tab_btn:hover {
  outline: 1px var(--e_prime) solid;
  color: var(--e_prime);
}
.sub_tab input[type=radio] {
  display: none;
}
.sub_tab input[type=radio]:checked + .sub_tab_btn {
  background: rgba(var(--e_prime_rgb), 0.1);
  outline: 1px var(--e_prime) solid;
  color: var(--e_prime);
}
.sub_tab input[type=radio]:checked + .sub_tab_btn .sub_tab_text {
  color: var(--e_prime);
}
.sub_tab .sub_tab_count {
  color: var(--e_prime);
}

.sub_visual {
  display: flex;
  justify-content: center;
  align-items: center;
  overflow: hidden;
  width: 100%;
  max-width: 1400px;
  aspect-ratio: 14/3;
  margin: 0 auto;
}
.sub_visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.sub_wrap {
  padding: 40px 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 40px;
}

/* Basic style*/
@media (max-width: 767px) {
  .e_mobile {
    height: 60px;
  }
  .e_mobile dt {
    display: none;
  }
  .e_mobile .sub-tit {
    display: flex;
    align-items: center;
    font-size: 16px;
    font-weight: 500;
    gap: 10px;
    line-height: 120%;
  }
  .e_mobile .sub-tit .material-symbols-rounded {
    color: var(--e_gray_99);
    cursor: pointer;
  }
  .e_mobile .sub-tit .material-symbols-rounded:hover {
    color: #000;
  }
}

/* nor_list style*/
.list_top {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.list_top .sub_title {
  display: flex;
  justify-content: space-between;
  align-items: end;
}
.list_top .sub_title .broadcrumbs {
  font-size: 14px;
}
.list_top .sub_title .broadcrumbs a {
  color: #000;
}
.list_top .sub_title .broadcrumbs a:hover {
  color: var(--e_prime);
}
.list_top .sub_title .broadcrumbs span {
  margin: 0 5px;
  color: var(--e_prime);
  font-size: 12px;
}
.list_top .basic_sort {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  font-size: 16px;
  font-weight: 500;
}
.list_top .basic_sort .custom_select_wrap {
  width: 150px;
}
.list_top .basic_sort .custom_select_wrap .selected_option, .list_top .basic_sort .custom_select_wrap .option_item {
  height: 40px;
}
.list_top .list_info {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex: 1;
  gap: 40px;
}
.list_top .list_info .search-box-wrap {
  width: 300px;
  height: 40px;
  padding: 6px 15px;
}
.list_top .list_align {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
  font-weight: 500;
}
.list_top .list_align .align_icon {
  display: flex;
  justify-content: flex-end;
  align-items: center;
  gap: 10px;
}
.list_top .list_align .align_icon span {
  font-size: 24px;
  cursor: pointer;
  color: #000;
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
.list_top .list_align .align_icon span.active, .list_top .list_align .align_icon span:hover {
  color: var(--e_prime);
}

.list-max {
  grid-template-columns: repeat(4, 1fr);
}

.list-min {
  grid-template-columns: repeat(3, 1fr);
}

.list-nor {
  grid-template-columns: repeat(2, 1fr);
}
.list-nor .item-desc {
  margin: 0;
}
.list-nor .item {
  flex-direction: row;
  gap: 20px;
}
.list-nor .item .item-img-wrap {
  width: 300px;
}

/* ========================================================= */
/* 반응형 디자인 (Media Queries) */
/* ========================================================= */
@media (max-width: 1480px) {
  .policy-box {
    margin: 0 40px;
    width: calc(100% - 80px);
  }
}
@media (max-width: 1199px) {
  h2 {
    font-size: 20px;
  }
  .list-max, .list-min, .list-nor {
    gap: 20px;
  }
  .list-max {
    grid-template-columns: repeat(3, 1fr);
  }
  .list-min {
    grid-template-columns: repeat(2, 1fr);
  }
  .list-nor {
    grid-template-columns: repeat(1, 1fr);
  }
  .list_top {
    gap: 10px;
  }
  .list_top .sub_title {
    padding-bottom: 10px;
  }
  .list_top .basic_sort > span {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .list_top .list_info {
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    -webkit-overflow-scrolling: touch;
    touch-action: pan-x;
    scrollbar-width: none;
    -ms-overflow-style: none;
    width: 100%;
    justify-content: flex-start;
    scroll-snap-type: x mandatory;
  }
  .list_top .list_info::-webkit-scrollbar {
    display: none;
  }
  .list_top .list_info .sub_tab_wrapper {
    overflow-x: visible;
    position: relative;
  }
  .list_top .list_info .sub_tab_wrapper::-webkit-scrollbar {
    display: none;
  }
  .list_top .list_info .tab-arrow {
    display: none;
  }
  .list-max {
    grid-template-columns: repeat(2, 1fr);
    padding: 0 20px;
  }
  .list-min {
    grid-template-columns: repeat(1, 1fr);
  }
  .list-nor {
    padding: 0 20px;
    grid-template-columns: repeat(1, 100%);
  }
  .list-nor .item {
    gap: 10px;
  }
  .list-nor .item .item-img-wrap {
    width: 45%;
  }
  .list-nor {
    gap: 40px;
  }
  .list_top .basic_sort > span {
    display: none;
  }
}
/* ========================================================= */
/* policy Styles         */
/* ========================================================= */
.policy-header {
  text-align: center;
}
.policy-header h1 {
  margin-bottom: 12px;
  font-size: 24px;
  font-weight: 700;
  color: #000;
}

.policy-box {
  padding: 40px;
  background: #fff;
  box-shadow: 0 4px 12px rgba(var(--e_black_rgb), 0.1);
  border-radius: 30px;
  border: 1px solid var(--e_line);
}
.policy-box .policy-block {
  padding: 30px 0;
}
.policy-box .policy-block + .policy-block {
  border-top: 1px solid var(--e_line);
}
.policy-box .policy-block h2 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 12px;
  line-height: 1.4;
  color: #000;
}
.policy-box .policy-block h3 {
  font-size: 16px;
  font-weight: 500;
  margin: 20px 0 8px;
  color: #000;
}
.policy-box .policy-list {
  margin: 0;
  padding: 0 0 0 14px;
  display: flex;
  flex-direction: column;
  gap: 6px;
  left: 0;
}
.policy-box .policy-list li {
  position: relative;
  font-size: 14px;
  line-height: 1.6;
  color: var(--e_gray_66);
  list-style: decimal;
}
.policy-box .policy-list li ul li {
  list-style: disc;
  padding-left: 5px;
  margin-left: 14px;
}
.policy-box .policy-note {
  font-size: 12px;
  color: var(--e_gray_99);
  margin-top: 10px;
}
.policy-box .policy-contacts ul {
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .policy-box {
    padding: 20px;
    margin: 0 20px;
    width: calc(100% - 40px);
  }
  .policy-box .policy-block {
    padding: 24px 0;
  }
  .policy-box .policy-block h2 {
    font-size: 18px;
  }
}

/* ========================================================= */
/* 내역 테이블 Styles */
.detail-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--e_gray_cc);
}
.detail-table thead th {
  padding: 12px 16px;
  background: var(--e_gray_ef);
  text-align: center;
  color: #000;
  font-size: 16px;
  font-weight: 500;
  border: 1px solid var(--e_gray_cc);
  border-collapse: collapse;
}
@media (max-width: 767px) {
  .detail-table thead th {
    padding: 10px 8px;
    font-size: 14px;
  }
}
.detail-table tbody th {
  min-width: 90px;
  width: 90px;
  background: var(--e_gray_ef);
  padding: 10px 12px;
  border: 1px solid var(--e_gray_cc);
  text-align: center;
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 500;
  border-collapse: collapse;
}
@media (max-width: 767px) {
  .detail-table tbody th {
    padding: 8px 6px;
    font-size: 12px;
  }
}
.detail-table tbody td {
  padding: 10px 14px;
  background: #fff;
  border: 1px solid var(--e_gray_cc);
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  border-collapse: collapse;
}
@media (max-width: 767px) {
  .detail-table tbody td {
    padding: 8px 6px;
    font-size: 12px;
  }
}
.detail-table tbody td.price {
  text-align: right;
  font-size: 16px;
}
.detail-table tbody tr.highlight th, .detail-table tbody tr.highlight td {
  background: var(--e_gray_ef);
}
.detail-table tbody tr.total th, .detail-table tbody tr.total td {
  background: var(--e_gray_ef);
  border-top: 2px solid var(--e_gray_66);
}
.detail-table tbody tr.total td.price {
  color: #000;
  font-weight: 700;
  font-size: 18px;
}

/* ========================================================= */
/* 찾아오시는 길 Styles */
/* ========================================================= */
.location_wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (max-width: 767px) {
  .location_wrap {
    gap: 20px;
  }
}

.location_header {
  text-align: center;
  padding: 20px 0 40px;
}
@media (max-width: 767px) {
  .location_header {
    padding: 10px 20px 20px;
  }
}

.location_title {
  font-size: 30px;
  font-weight: 700;
  color: #000;
  margin-bottom: 20px;
  position: relative;
  display: inline-block;
}
.location_title::after {
  content: "";
  position: absolute;
  bottom: -10px;
  left: 50%;
  transform: translateX(-50%);
  width: 60px;
  height: 3px;
  background: var(--e_prime);
}
@media (max-width: 1199px) {
  .location_title {
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .location_title {
    font-size: 20px;
  }
}

.location_subtitle {
  font-size: 18px;
  font-weight: 500;
  color: var(--e_prime);
  margin-top: 20px;
}
@media (max-width: 1199px) {
  .location_subtitle {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .location_subtitle {
    font-size: 14px;
    margin-top: 15px;
  }
}

.location_map {
  width: 100%;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
  aspect-ratio: 14/4;
}
.location_map .root_daum_roughmap {
  width: 100% !important;
  height: 100% !important;
}
.location_map .root_daum_roughmap .wrap_map {
  width: 100% !important;
  height: 100% !important;
}
@media (max-width: 767px) {
  .location_map {
    border-radius: 0;
    margin: 0 -20px;
    width: calc(100% + 40px);
    aspect-ratio: 16/9;
  }
}

.root_daum_roughmap .cont, .root_daum_roughmap .wrap_btn_zoom {
  display: none !important;
}

.location_info {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
  padding: 40px 0;
  border-bottom: 1px solid var(--e_line);
}
.location_info .info_item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.location_info .info_item h3 {
  font-size: 18px;
  font-weight: 700;
  color: #000;
}
@media (max-width: 767px) {
  .location_info .info_item h3 {
    font-size: 16px;
  }
}
.location_info .info_item p {
  font-size: 14px;
  color: var(--e_gray_66);
  line-height: 180%;
}
@media (max-width: 767px) {
  .location_info .info_item {
    text-align: left;
  }
}
@media (max-width: 1199px) {
  .location_info {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .location_info {
    grid-template-columns: 1fr;
    gap: 25px;
    padding: 30px 20px;
  }
}

.location_traffic {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 20px;
}
.location_traffic .traffic_item {
  display: flex;
  align-items: flex-start;
  gap: 20px;
  transition: transform 0.3s;
}
.location_traffic .traffic_icon {
  width: 50px;
  height: 50px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.location_traffic .traffic_icon span {
  font-size: 24px;
  color: #fff;
}
@media (max-width: 767px) {
  .location_traffic .traffic_icon span {
    font-size: 20px;
  }
}
.location_traffic .traffic_icon.walk, .location_traffic .traffic_icon.car, .location_traffic .traffic_icon.subway {
  background: var(--e_prime);
}
@media (max-width: 767px) {
  .location_traffic .traffic_icon {
    width: 45px;
    height: 45px;
  }
}
.location_traffic .traffic_content {
  flex: 1;
}
.location_traffic .traffic_content h4 {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .location_traffic .traffic_content h4 {
    font-size: 14px;
  }
}
.location_traffic .traffic_content p {
  font-size: 14px;
  color: var(--e_gray_66);
  line-height: 160%;
}
@media (max-width: 767px) {
  .location_traffic .traffic_content p {
    font-size: 12px;
  }
}
@media (max-width: 1199px) {
  .location_traffic {
    gap: 15px;
  }
}
@media (max-width: 767px) {
  .location_traffic {
    grid-template-columns: 1fr;
    gap: 15px;
    padding: 20px;
  }
}

/* ========================================================= */
/* 회사소개 (About) Refined Styles */
/* ========================================================= */
.about_wrap {
  width: 100%;
  padding: 0;
  gap: 0;
  position: relative;
}
.about_wrap .about_close_btn {
  position: absolute;
  top: 40px;
  right: 40px;
  z-index: 100;
  font-size: 40px;
  color: #fff;
  cursor: pointer;
  transition: transform 0.3s;
  filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.3));
}
.about_wrap .about_close_btn:hover {
  transform: scale(1.1);
}
@media (max-width: 767px) {
  .about_wrap .about_close_btn {
    top: 20px;
    right: 20px;
    font-size: 30px;
  }
}
.about_wrap .about_section {
  width: 100%;
  min-height: 800px;
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 120px 0;
  overflow: hidden;
}
.about_wrap .about_section .container_1400 {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 20px;
  position: relative;
  z-index: 2;
}
.about_wrap .about_section .about_text {
  color: #fff;
}
.about_wrap .about_section .about_text.center {
  text-align: center;
}
.about_wrap .about_section .about_text .main_title {
  font-size: 82px;
  font-weight: 700;
  margin-bottom: 20px;
  letter-spacing: -2px;
  color: #fff;
}
.about_wrap .about_section .about_text .sub_title {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.6;
  opacity: 0.9;
  color: #fff;
}
.about_wrap .about_section .about_text .section_title {
  font-size: 36px;
  font-weight: 700;
  margin-bottom: 20px;
  letter-spacing: -1px;
  color: #fff;
  text-align: center;
}
.about_wrap .about_section .about_text .section_desc {
  font-size: 18px;
  line-height: 1.6;
  opacity: 0.8;
  color: #fff;
  text-align: center;
}
.about_wrap .section_intro .intro_items {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 0;
  margin-top: 80px;
}
.about_wrap .section_intro .intro_items .item {
  text-align: center;
  justify-content: center;
  align-items: center;
}
.about_wrap .section_intro .intro_items .item h3 {
  font-size: 24px;
  font-weight: 700;
  color: #fff;
  margin-bottom: 12px;
}
.about_wrap .section_intro .intro_items .item p {
  font-size: 16px;
  color: rgba(255, 255, 255, 0.7);
  line-height: 1.8;
}
.about_wrap .section_intro .intro_items .line {
  width: 1px;
  height: 100px;
  background: rgba(255, 255, 255, 0.3);
  margin: 0 100px;
}
.about_wrap .section_achievement .counter_box {
  display: flex;
  justify-content: center;
  gap: 200px;
  margin-top: 80px;
}
.about_wrap .section_achievement .counter_box .count_item {
  text-align: center;
}
.about_wrap .section_achievement .counter_box .count_item .count_num {
  font-size: 64px;
  font-weight: 700;
  color: #000;
}
.about_wrap .section_achievement .counter_box .count_item .count_plus {
  font-size: 40px;
  font-weight: 700;
  color: #000;
  margin-left: 2px;
}
.about_wrap .section_achievement .counter_box .count_item p {
  font-size: 20px;
  color: #000;
  margin-top: 20px;
}
.about_wrap .section_achievement .about_text {
  color: #000;
}
.about_wrap .section_achievement .about_text .section_title, .about_wrap .section_achievement .about_text .section_desc {
  color: #000;
}
.about_wrap .section_partners {
  background: #f4f3f0;
  min-height: 700px;
  flex-direction: column;
}
.about_wrap .section_partners .about_text {
  text-align: left;
  margin-bottom: 60px;
}
.about_wrap .section_partners .about_text .section_title {
  color: #000;
}
.about_wrap .section_partners .about_text .section_desc {
  color: var(--e_gray_66);
}
.about_wrap .partner_slider {
  width: 100%;
  height: 150px;
  margin-top: 40px;
  position: relative;
  overflow: hidden;
}
.about_wrap .partner_slider .slider_track {
  display: flex;
  width: max-content;
  animation: partnerScroll 40s linear infinite;
}
.about_wrap .partner_slider .slider_track .slide {
  padding-right: 30px;
}
.about_wrap .partner_slider .slider_track .slide .logo_box {
  width: 400px;
  height: 150px;
  background: #fff;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: center;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.05);
}
.about_wrap .partner_slider .slider_track .slide .logo_box img {
  max-width: 80%;
  max-height: 70%;
  object-fit: contain;
  filter: grayscale(100%);
  opacity: 0.6;
  transition: 0.3s;
}
.about_wrap .partner_slider .slider_track .slide .logo_box:hover img {
  filter: grayscale(0%);
  opacity: 1;
}
.about_wrap .section_vision .about_text .section_title {
  color: #000;
}
.about_wrap .section_vision .about_text .section_desc {
  color: #222;
}
.about_wrap .section_vision .vision_mission_box {
  display: flex;
  justify-content: space-between;
  margin-top: 80px;
  max-width: 800px;
  margin-left: auto;
  margin-right: auto;
}
.about_wrap .section_vision .vision_mission_box .vm_item {
  text-align: center;
}
.about_wrap .section_vision .vision_mission_box .vm_item .vm_label {
  margin-bottom: 30px;
  display: inline-block;
}
.about_wrap .section_vision .vision_mission_box .vm_item .vm_label h3 {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin-bottom: 5px;
}
.about_wrap .section_vision .vision_mission_box .vm_item .vm_label .vm_line {
  width: 100%;
  height: 10px;
  background: linear-gradient(90deg, rgba(0, 0, 0, 0.2) 0%, rgba(0, 0, 0, 0) 100%);
}
.about_wrap .section_vision .vision_mission_box .vm_item p {
  font-size: 20px;
  color: #222;
  line-height: 1.5;
}
.about_wrap .section_bottom {
  background: linear-gradient(180deg, #f7f7f3 0%, #edecea 100%);
  min-height: 700px;
}
.about_wrap .section_bottom .container.center {
  text-align: center;
}
.about_wrap .section_bottom .bottom_title {
  font-size: 30px;
  font-weight: 700;
  color: #000;
  margin-bottom: 15px;
}
.about_wrap .section_bottom .bottom_desc {
  font-size: 16px;
  color: #666;
  margin-bottom: 40px;
}
.about_wrap .section_bottom .btn_inquiry {
  display: inline-flex;
  justify-content: center;
  align-items: center;
  width: 240px;
  height: 64px;
  background: var(--e_prime);
  color: #fff;
  font-size: 18px;
  font-weight: 700;
  border-radius: 8px;
  transition: background 0.3s;
}
.about_wrap .section_bottom .btn_inquiry:hover {
  background: color-mix(in srgb, var(--e_prime), black 10%);
}

@keyframes partnerScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-33.33%);
  }
}
@media (max-width: 1199px) {
  .about_wrap .about_section {
    min-height: 600px;
  }
  .about_wrap .about_section .about_text .main_title {
    font-size: 60px;
  }
  .about_wrap .about_section .about_text .section_title {
    font-size: 30px;
  }
  .about_wrap .about_section .intro_items .line {
    margin: 0 50px;
  }
  .about_wrap .about_section .counter_box {
    gap: 100px;
  }
}
@media (max-width: 767px) {
  .about_wrap .about_section {
    min-height: auto;
    padding: 80px 20px;
  }
  .about_wrap .about_section .about_text .main_title {
    font-size: 40px;
  }
  .about_wrap .about_section .about_text .sub_title {
    font-size: 18px;
  }
  .about_wrap .about_section .about_text .section_title {
    font-size: 24px;
  }
  .about_wrap .about_section .about_text .section_desc {
    font-size: 14px;
  }
  .about_wrap .about_section .intro_items {
    flex-direction: column;
    gap: 40px;
  }
  .about_wrap .about_section .intro_items .line {
    display: none;
  }
  .about_wrap .about_section .counter_box {
    flex-direction: column;
    gap: 40px;
  }
  .about_wrap .about_section .counter_box .count_item .count_num {
    font-size: 48px;
  }
  .about_wrap .about_section .counter_box .count_item .count_plus {
    font-size: 30px;
  }
  .about_wrap .about_section .counter_box .count_item p {
    font-size: 16px;
    margin-top: 10px;
  }
  .about_wrap .about_section .section_partners .partner_slider .slider_track .slide .logo_box {
    width: 250px;
    height: 100px;
  }
  .about_wrap .about_section .vision_mission_box {
    flex-direction: column;
    gap: 60px;
  }
  .about_wrap .about_section .section_bottom {
    padding: 100px 20px;
  }
  .about_wrap .about_section .section_bottom .bottom_title {
    font-size: 24px;
  }
  .about_wrap .about_section .section_bottom .btn_inquiry {
    width: 100%;
  }
}
.design_sub .cart_item .item_footer {
  height: auto;
  max-height: 100px;
  flex-direction: row;
}
.design_sub .cart_item.done .item_footer {
  background: #fff;
}
.design_sub .item_quantity_box {
  display: flex;
  align-items: center;
  gap: 15px;
}
@media (max-width: 767px) {
  .design_sub .item_quantity_box {
    gap: 8px;
  }
}
.design_sub .item_quantity_box .eq_quantity_controls {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  border: 1px solid var(--e_line);
  border-radius: 40px;
  padding: 2px 5px;
  background: #fff;
}
@media (max-width: 767px) {
  .design_sub .item_quantity_box .eq_quantity_controls {
    gap: 5px;
  }
}
.design_sub .item_quantity_box .eq_quantity_controls span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 25px;
  height: 25px;
  font-size: 20px;
  color: var(--e_gray_66);
  background: none;
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s;
}
@media (max-width: 767px) {
  .design_sub .item_quantity_box .eq_quantity_controls span {
    font-size: 18px;
    width: 22px;
    height: 22px;
  }
}
.design_sub .item_quantity_box .eq_quantity_controls span:hover {
  background: var(--e_prime);
  color: #fff;
}
.design_sub .item_quantity_box .eq_quantity_controls .eq_quantity_input {
  width: 45px;
  height: 100%;
  text-align: center;
  border: none;
  background: transparent;
  font-size: 14px;
  font-weight: 500;
  color: #000;
  outline: none;
}
.design_sub .item_quantity_box .eq_quantity_controls .eq_quantity_input::-webkit-outer-spin-button, .design_sub .item_quantity_box .eq_quantity_controls .eq_quantity_input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
@media (max-width: 767px) {
  .design_sub .item_quantity_box .eq_quantity_controls .eq_quantity_input {
    font-size: 12px;
    width: 35px;
  }
}
.design_sub .item_quantity_box .eq_total_box {
  font-size: 16px;
  color: #000;
  font-weight: 500;
}
@media (max-width: 767px) {
  .design_sub .item_quantity_box .eq_total_box {
    font-size: 14px;
  }
}
.design_sub .pay_summary > li {
  gap: 0;
}
.design_sub .pay_summary .pay_title {
  font-size: 18px;
  color: #000;
  font-weight: 700;
  margin-bottom: 15px;
}
.design_sub .pay_summary .pay_divider {
  height: 1px;
  background: var(--e_line);
  margin: 15px 0;
}
.design_sub .pay_summary .pay_breakdown {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.design_sub .pay_summary .pay_row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.design_sub .pay_summary .pay_row .pay_label {
  color: var(--e_gray_66);
  font-size: 16px;
}
.design_sub .pay_summary .pay_row .pay_value {
  color: #000;
  font-size: 16px;
  font-weight: 500;
}
.design_sub .pay_summary .pay_row.total .pay_label {
  color: #000;
  font-weight: 700;
}
.design_sub .pay_summary .pay_row.total .pay_value {
  color: var(--e_prime);
  font-size: 24px;
  font-weight: 700;
}
.design_sub .pay_summary .pay_disclaimer {
  color: var(--e_gray_99);
  font-size: 12px;
  line-height: 1.6;
  margin-top: 15px;
}
.design_sub .pay_summary .pay_agree {
  margin-top: 20px;
}
.design_sub .pay_summary .pay_agree .checkbox_row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
}
.design_sub .pay_summary .pay_agree .checkbox_row .agree_detail {
  color: var(--e_gray_99);
  text-decoration: underline;
  font-size: 12px;
}
.design_sub .pay_summary .pay_agree .checkbox_row .agree_error {
  display: none;
  color: var(--e_red);
  font-size: 12px;
  margin-top: 5px;
}
.design_sub .pay_summary .pay_agree .checkbox_row .error + .agree_error {
  display: block;
}
.design_sub .pay_btns {
  margin-top: 30px;
}
.design_sub .pay_btns button {
  width: 100%;
}
.design_sub .pay_btns .disabled {
  background: var(--e_gray_cc);
  cursor: not-allowed;
  color: #fff;
}
.design_sub .design_pay {
  display: flex;
  gap: 40px;
  width: 100%;
}
@media (max-width: 767px) {
  .design_sub .design_pay {
    flex-direction: column;
  }
  .design_sub .design_pay .design_add {
    border: 1px solid var(--e_line);
    padding: 20px;
  }
}

/* Basic style*/
/* ========================================================= */
/* Easy Quote Styles (grouped by layout sections)            */
/* ========================================================= */
.eq_content .bt-menu {
  display: none;
}
.eq_content .homebtn {
  display: block;
}
.eq_content .sub-page-title {
  display: none;
}
.eq_content .e_mobile.fixed .sub-page-title {
  display: block;
}
.eq_content .sub_wrap {
  gap: 60px;
}
@media (max-width: 1480px) {
  .eq_content .sub_wrap {
    padding: 40px 0;
  }
}
@media (max-width: 767px) {
  .eq_content .sub_wrap {
    padding: 0;
  }
}
@media (max-width: 767px) {
  .eq_content .e_mobile {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 8;
    width: 100%;
    background: linear-gradient(to bottom, rgba(var(--e_black_rgb), 0.2), rgba(var(--e_black_rgb), 0));
  }
  .eq_content .e_mobile .material-symbols-rounded {
    color: #fff;
  }
}

.eq_container {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 60px;
}
@media (max-width: 1480px) {
  .eq_container {
    gap: 40px;
  }
}
@media (max-width: 900px) {
  .eq_container {
    flex-direction: column;
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .eq_container {
    padding: 0;
  }
}

.eq_left {
  display: inline-flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
  width: 48%;
  max-width: 640px;
}
@media (max-width: 900px) {
  .eq_left {
    width: 100%;
    max-width: 100%;
  }
}
.eq_left .eq_preview {
  width: 100%;
  border-radius: 20px;
  aspect-ratio: 1/1;
  overflow: hidden;
  position: relative;
}
@media (max-width: 767px) {
  .eq_left .eq_preview {
    touch-action: pan-y;
    border-radius: 0;
  }
}
.eq_left .eq_preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.eq_left .eq_preview.swiper {
  width: 100%;
}
.eq_left .eq_preview .swiper-slide {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 767px) {
  .eq_left .eq_preview .swiper-slide {
    border-radius: 10px;
  }
}
.eq_left .eq_preview .swiper-slide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.eq_left .eq_preview .swiper-pagination {
  display: none;
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 3;
  background: rgba(var(--e_black_rgb), 0.3);
  color: #fff;
  padding: 6px 16px;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 500;
  width: auto;
}
@media (max-width: 767px) {
  .eq_left .eq_preview .swiper-pagination {
    display: block;
  }
}
.eq_left .eq_gallery_wrap {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
  position: relative;
}
@media (max-width: 767px) {
  .eq_left .eq_gallery_wrap {
    display: none;
  }
}
.eq_left .eq_gallery_thumbs {
  width: 100%;
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail {
  background: var(--e_gray_cc);
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  filter: grayscale(1);
  opacity: 0.5;
  cursor: pointer;
  aspect-ratio: 1/1;
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail.swiper-slide-thumb-active {
  filter: none;
  opacity: 1;
  border: 2px solid var(--e_prime);
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover {
  filter: none;
  opacity: 1; /* keep existing visual by syncing checked state to active class via CSS fallback */
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover.eq_type-quick input[type=radio]:checked + label .material-symbols-rounded, .eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover.eq_type-quick input[type=radio]:checked + label dt {
  color: var(--e_red);
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover.eq_type-basic input[type=radio]:checked + label .material-symbols-rounded, .eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover.eq_type-basic input[type=radio]:checked + label dt {
  color: var(--e_blue);
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover.eq_type-smart input[type=radio]:checked + label .material-symbols-rounded, .eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover.eq_type-smart input[type=radio]:checked + label dt {
  color: var(--e_green);
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover {
  /* hover state mirrors existing */
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover label:hover {
  filter: brightness(0.98);
}
.eq_left .eq_gallery_thumbs .swiper-slide.eq_thumbnail:hover img {
  transform: scale(1.1);
}
.eq_left .eq_gallery_nav {
  display: flex;
  align-items: center;
  position: absolute;
  width: 100%;
  justify-content: space-between;
  box-sizing: border-box;
  top: 50%;
  transform: translateY(-50%);
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s ease, visibility 0.18s;
}
.eq_left .eq_gallery_nav .arrow-btn.disabled {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.eq_left .eq_gallery_wrap.has-nav:hover .eq_gallery_nav {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

.eq_right {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 40px;
  flex: 1;
}
@media (max-width: 1199px) {
  .eq_right {
    width: 100%;
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .eq_right {
    padding: 0 20px;
  }
}

.eq_title_section {
  align-self: stretch;
  padding-bottom: 40px;
  border-bottom: 1px var(--e_gray_66) solid;
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex-direction: column;
}
.eq_title_section .btn_grayline {
  height: 32px;
  font-size: 14px;
  font-weight: 500;
  padding: 0 10px;
  min-width: none;
  border-radius: 5px;
}
.eq_title_section .eq_title {
  width: 100%;
  flex-direction: column;
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 10px;
}
.eq_title_section .eq_title h1 {
  flex: 1;
  margin: 0;
}
.eq_title_section .eq_title h1, .eq_title_section .eq_title h1 span {
  font-size: 24px;
  font-weight: 700;
}
@media (max-width: 1199px) {
  .eq_title_section .eq_title h1, .eq_title_section .eq_title h1 span {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .eq_title_section .eq_title h1, .eq_title_section .eq_title h1 span {
    font-size: 18px;
  }
}
@media (max-width: 1199px) {
  .eq_title_section {
    padding-bottom: 20px;
  }
}
@media (max-width: 767px) {
  .eq_title_section {
    padding: 0;
    border: none;
  }
}

.eq_title_main {
  display: flex;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.eq_title_main .eq_title_btns {
  display: flex;
  gap: 8px;
}
.eq_title_main .eq_title_btns .btn_icon {
  width: 32px;
  height: 32px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 5px;
  cursor: pointer;
  transition: all 0.2s ease;
  padding: 0;
  min-width: 0;
}
.eq_title_main .eq_title_btns .btn_icon .material-symbols-rounded {
  font-size: 20px;
  color: var(--e_gray_66);
}
.eq_title_main .eq_title_btns .btn_icon:hover {
  background: var(--e_prime);
  border-color: var(--e_prime);
}
.eq_title_main .eq_title_btns .btn_icon:hover .material-symbols-rounded {
  color: #fff;
}

.eq_calculator {
  padding: 10px 20px;
  background: #fff;
  border-radius: 10px;
  outline: 1px var(--e_line) solid;
  outline-offset: -1px;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
}

.eq_description {
  align-self: stretch;
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  word-wrap: break-word;
}

.eq_form_section {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 20px;
}
.eq_form_section .custom_select_wrap {
  width: 100%;
}
@media (max-width: 1199px) {
  .eq_form_section {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .eq_form_section {
    overflow: auto;
    height: 100%;
    padding: 20px;
  }
}

.eq_input_items {
  display: flex;
  flex: 1;
  gap: 10px;
  align-items: center;
}
.eq_input_items.items-2 {
  justify-content: stretch;
}
@media (max-width: 1199px) {
  .eq_input_items.items-2 {
    flex-direction: column;
    align-items: stretch;
  }
}
.eq_input_items.items-2 li {
  flex: 1;
  display: flex;
  gap: 10px;
  align-items: center;
}
.eq_input_items.items-2 li.half {
  flex: 0.5;
}
.eq_input_items.items-2 .sizeinput {
  display: flex;
  align-items: center;
  gap: 10px;
}
.eq_input_items.items-2 .sizeinput ~ .material-symbols-rounded {
  color: var(--e_gray_99);
  font-size: 20px;
  padding: 0;
}
.eq_input_items.items-2 .sizeinput > span {
  padding: 0 5px 0 0;
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  white-space: nowrap;
}
.eq_input_items.items-2 .sizeinput .input-wrapper {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
}
.eq_input_items.items-2 .sizeinput .input-wrapper input {
  width: 100%;
  padding: 10px 40px 10px 10px;
}
@media (max-width: 767px) {
  .eq_input_items.items-2 .sizeinput .input-wrapper input {
    padding-right: 30px;
  }
}
.eq_input_items.items-2 .sizeinput .input-wrapper .unit {
  position: absolute;
  right: 12px;
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  pointer-events: none;
}
@media (max-width: 767px) {
  .eq_input_items.items-2 .sizeinput .input-wrapper .unit {
    font-size: 12px;
  }
}
.eq_input_items.items-2.input_group {
  align-items: stretch;
  gap: 5px;
}

.eq_input_group {
  align-self: stretch;
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-start;
}
.eq_input_group.align-c {
  align-items: center;
}
@media (max-width: 767px) {
  .eq_input_group.fulltype.fixed {
    position: absolute;
    z-index: 10;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    max-height: 100%;
    background: #fff;
    box-sizing: border-box;
    align-items: flex-start;
    padding: 20px;
  }
  .eq_input_group.fulltype.fixed .custom_select_wrap .option_list {
    top: 80px;
  }
}
.eq_input_group.refund-in {
  display: none;
}
.eq_input_group .col2_wrap {
  display: flex;
  gap: 10px;
  width: 100%;
  justify-content: flex-start;
  align-items: center;
}
.eq_input_group .col2_wrap.inputer {
  align-items: flex-start;
}

.eq_label {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 5px;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  word-wrap: break-word;
  flex: 0 0 100px;
  height: 50px;
}
@media (max-width: 1199px) {
  .eq_label {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .eq_label {
    flex: 0 0 100px;
  }
}
.eq_label .eq_info_tooltip {
  position: relative;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 5px;
}
.eq_label .eq_info_tooltip ul {
  display: none;
}
.eq_label .eq_info_tooltip li {
  color: var(--e_gray_66);
  font-size: 12px;
  font-weight: 400;
  line-height: 160%;
  list-style: none;
  padding-left: 10px;
  text-align: left;
}
.eq_label .eq_info_tooltip li::before {
  content: "•";
  color: var(--e_gray_99);
  display: inline-block;
  width: 1em;
  margin-left: -1em;
}
.eq_label .eq_info_tooltip span {
  font-size: 16px;
  color: var(--e_gray_99);
  cursor: pointer;
  transition: color 0.2s;
}
.eq_label .eq_info_tooltip:hover span {
  color: var(--e_prime);
}
.eq_label .eq_info_tooltip:hover ul {
  display: block;
  position: absolute;
  background: var(--e_gray_ef);
  padding: 10px;
  border-radius: 5px;
  width: max-content;
  max-width: 300px;
  top: 100%;
  left: 0;
  z-index: 5;
  font-size: 12px;
  text-align: center;
  border: 1px solid var(--e_prime);
}

.eq_options_section {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 10px;
}
.eq_options_section .eq_options_header {
  align-self: stretch;
  padding: 20px 0 0;
  border-top: 1px var(--e_line) solid;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.eq_options_section .eq_options_header .eq_toggle {
  color: var(--e_prime);
  font-size: 14px;
  text-decoration: underline;
  cursor: pointer;
  font-weight: 500;
}
.eq_options_section .eq_options_header .eq_options_title {
  color: #000;
  font-size: 16px;
  font-weight: 700;
  word-wrap: break-word;
}
.eq_options_section .eq_form_section {
  display: none;
}
.eq_options_section .eq_form_section.active {
  display: flex;
}
@media (max-width: 767px) {
  .eq_options_section .eq_form_section.active {
    padding: 0;
  }
}

.eq_notes_section {
  padding: 20px 0 0;
  border-top: 1px var(--e_line) solid;
  align-self: stretch;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.eq_notes_label {
  width: 150px;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 10px;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  word-wrap: break-word;
}
@media (max-width: 767px) {
  .eq_notes_label {
    width: 100%;
  }
}

.eq_notes_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-start;
  flex: 1;
}
.eq_notes_content li {
  color: var(--e_gray_66);
  font-size: 12px;
  line-height: 160%;
  display: flex;
  gap: 5px;
}
.eq_notes_content li::before {
  content: "•";
  color: var(--e_gray_99);
  display: inline-block;
}

.eq_detail_quote_section {
  align-self: stretch;
  padding: 20px;
  background: color-mix(in srgb, var(--e_prime), white 90%);
  border-radius: 10px;
  display: inline-flex;
  justify-content: space-between;
  align-items: center;
}
.eq_detail_quote_section .eq_detail_quote_text {
  color: #000;
  font-size: 14px;
  font-weight: 300;
  line-height: 140%;
  text-align: left;
}
@media (max-width: 767px) {
  .eq_detail_quote_section .eq_detail_quote_text {
    font-size: 12px;
  }
}
@media (max-width: 767px) {
  .eq_detail_quote_section {
    gap: 10px;
    text-align: center;
    padding: 10px;
  }
}

.eq_order_section {
  align-self: stretch;
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 40px;
  padding-top: 40px;
  border-top: 1px var(--e_gray_66) solid;
}
@media (max-width: 1199px) {
  .eq_order_section {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .eq_order_section {
    padding: 20px;
  }
}

.eq_order_types {
  align-self: stretch;
  display: inline-flex;
  justify-content: flex-start;
  align-items: stretch;
  gap: 20px;
}
@media (max-width: 1480px) {
  .eq_order_types {
    gap: 10px;
  }
}
.eq_order_types li {
  flex: 1 1 0;
  position: relative;
}
.eq_order_types li input[type=radio] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
}
.eq_order_types li label {
  padding: 20px 0;
  background: rgba(var(--e_gray_cc_rgb), 0.08);
  border: 2px var(--e_line) solid;
  overflow: hidden;
  border-radius: 10px;
  display: flex;
  justify-content: center;
  align-items: flex-start;
  gap: 10px;
  cursor: pointer;
  width: 100%;
  height: 100%;
}
@media (max-width: 1480px) {
  .eq_order_types li label {
    gap: 5px;
  }
}
@media (max-width: 1199px) {
  .eq_order_types li label {
    flex-direction: column;
    padding: 20px;
  }
}
@media (max-width: 767px) {
  .eq_order_types li label {
    flex-direction: column;
    padding: 10px;
    gap: 0;
  }
  .eq_order_types li label .material-symbols-rounded {
    font-size: 20px;
  }
}
.eq_order_types li.eq_type-quick label:hover {
  border: 2px var(--e_red) solid;
}
.eq_order_types li.eq_type-quick label:hover .material-symbols-rounded, .eq_order_types li.eq_type-quick label:hover dt {
  color: var(--e_red);
}
.eq_order_types li.eq_type-quick.active label {
  background: rgba(var(--e_red_rgb), 0.1);
  border: 2px var(--e_red) solid;
}
.eq_order_types li.eq_type-quick.active label .material-symbols-rounded, .eq_order_types li.eq_type-quick.active label dt {
  color: var(--e_red);
}
.eq_order_types li.eq_type-basic label:hover {
  border: 2px var(--e_blue) solid;
}
.eq_order_types li.eq_type-basic label:hover .material-symbols-rounded, .eq_order_types li.eq_type-basic label:hover dt {
  color: var(--e_blue);
}
.eq_order_types li.eq_type-basic.active label {
  background: rgba(var(--e_blue_rgb), 0.1);
  border: 2px var(--e_blue) solid;
}
.eq_order_types li.eq_type-basic.active label .material-symbols-rounded, .eq_order_types li.eq_type-basic.active label dt {
  color: var(--e_blue);
}
.eq_order_types li.eq_type-smart label:hover {
  border: 2px var(--e_green) solid;
}
.eq_order_types li.eq_type-smart label:hover .material-symbols-rounded, .eq_order_types li.eq_type-smart label:hover dt {
  color: var(--e_green);
}
.eq_order_types li.eq_type-smart.active label {
  background: rgba(var(--e_green_rgb), 0.1);
  border: 2px var(--e_green) solid;
}
.eq_order_types li.eq_type-smart.active label .material-symbols-rounded, .eq_order_types li.eq_type-smart.active label dt {
  color: var(--e_green);
}
.eq_order_types li dl {
  display: inline-flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 5px;
  line-height: 140%;
}
@media (max-width: 767px) {
  .eq_order_types li dl {
    gap: 0;
  }
}
.eq_order_types li dt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
  word-wrap: break-word;
}
@media (max-width: 1199px) {
  .eq_order_types li dt {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .eq_order_types li dt {
    font-size: 12px;
  }
}
.eq_order_types li dd {
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: rgba(var(--e_black_rgb), 0.76);
  font-size: 12px;
  font-weight: 400;
}
.eq_order_types li dd span {
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  color: #000;
  font-size: 14px;
  font-weight: 500;
}
@media (max-width: 1199px) {
  .eq_order_types li dd span {
    display: none;
  }
}

.eq_quantity_section {
  align-self: stretch;
  display: inline-flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 1199px) {
  .eq_quantity_section {
    flex-direction: column;
    gap: 20px;
    align-items: flex-end;
  }
}
@media (max-width: 767px) {
  .eq_quantity_section {
    flex-direction: row;
    gap: 10px;
    align-items: flex-end;
  }
}

.eq_price {
  flex: 1 1 0;
  display: flex;
  justify-content: flex-end;
  align-items: flex-end;
  gap: 10px;
  flex-direction: column;
}
@media (max-width: 767px) {
  .eq_price {
    align-items: flex-end;
    gap: 5px;
  }
}
.eq_price .eq_price_box, .eq_price .eq_price_box2 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: flex-end;
  gap: 10px;
}
@media (max-width: 767px) {
  .eq_price .eq_price_box, .eq_price .eq_price_box2 {
    gap: 5px;
  }
}
.eq_price .eq_price_box .eq_price_pre, .eq_price .eq_price_box2 .eq_price_pre {
  color: var(--e_gray_99);
  font-size: 20px;
  word-wrap: break-word;
  text-decoration: line-through;
}
@media (max-width: 767px) {
  .eq_price .eq_price_box .eq_price_pre, .eq_price .eq_price_box2 .eq_price_pre {
    font-size: 16px;
  }
}
.eq_price .eq_price_box ul, .eq_price .eq_price_box2 ul {
  display: flex;
  align-items: flex-end;
  gap: 10px;
}
@media (max-width: 767px) {
  .eq_price .eq_price_box ul, .eq_price .eq_price_box2 ul {
    gap: 5px;
  }
}
.eq_price .eq_price_box ul .eq_price_discount, .eq_price .eq_price_box2 ul .eq_price_discount {
  color: var(--e_red);
  font-size: 16px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .eq_price .eq_price_box ul .eq_price_discount, .eq_price .eq_price_box2 ul .eq_price_discount {
    font-size: 14px;
  }
}
.eq_price .eq_price_amount {
  text-align: right;
  color: #000;
  font-size: 30px;
  font-weight: 700;
  word-wrap: break-word;
  word-break: break-all;
}
@media (max-width: 767px) {
  .eq_price .eq_price_amount {
    font-size: 20px;
  }
}
.eq_price .eq_price_tax {
  color: var(--e_gray_99);
  font-size: 12px;
  font-weight: 400;
  line-height: 12px;
  word-wrap: break-word;
}
@media (max-width: 767px) {
  .eq_price .eq_price_tax {
    font-size: 10px;
  }
  .eq_price .eq_price_tax br {
    display: none;
  }
}

.eq_quantity_controls {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .eq_quantity_controls {
    gap: 5px;
  }
}
.eq_quantity_controls span {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  font-size: 30px;
  color: var(--e_gray_66);
  background: var(--e_gray_ef);
  border-radius: 5px;
  cursor: pointer;
}
@media (max-width: 767px) {
  .eq_quantity_controls span {
    font-size: 20px;
    width: 30px;
    height: 30px;
  }
}
.eq_quantity_controls span:hover {
  background: var(--e_prime);
  color: #fff;
}
.eq_quantity_controls .eq_quantity_input {
  width: 60px;
  height: 40px;
  text-align: center;
  border: none;
  background: #fff;
  font-size: 18px;
  font-weight: 500;
  color: #000;
  outline: none;
  transition: border-color 0.2s;
}
.eq_quantity_controls .eq_quantity_input:focus {
  border-color: var(--e_prime);
}
.eq_quantity_controls .eq_quantity_input::-webkit-outer-spin-button, .eq_quantity_controls .eq_quantity_input::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
@media (max-width: 767px) {
  .eq_quantity_controls .eq_quantity_input {
    font-size: 14px;
    padding: 0 5px;
    width: 40px;
  }
}
.eq_quantity_controls .eq_quantity_label {
  color: #000;
  font-size: 16px;
  font-weight: 500;
  word-wrap: break-word;
}
@media (max-width: 767px) {
  .eq_quantity_controls .eq_quantity_label {
    display: none;
  }
}

.eq_event_message {
  display: block;
  text-align: right;
  font-size: 14px;
  color: var(--e_prime);
  font-weight: 400;
  width: 100%;
  margin-top: -20px;
}
@media (max-width: 767px) {
  .eq_event_message {
    margin-top: -10px;
  }
}

.eq_actions {
  width: 100%;
  display: inline-flex;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
}
.eq_actions button {
  flex: 1 1 0;
  min-width: 0;
  height: 60px;
  font-size: 20px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .eq_actions button {
    height: 50px;
    font-size: 16px;
  }
}
.eq_actions .eq_wish {
  width: 60px;
  height: 60px;
  flex: 0 0 auto;
  position: relative;
}
@media (max-width: 767px) {
  .eq_actions .eq_wish {
    width: 50px;
    height: 50px;
  }
  .eq_actions .eq_wish label .material-symbols-rounded {
    font-size: 24px;
  }
}
.eq_actions .eq_wish input[type=checkbox] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
  width: 0;
  height: 0;
}
.eq_actions .eq_wish label {
  width: 100%;
  height: 100%;
  border: 1px solid var(--e_line);
  background: #fff;
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.2s;
}
.eq_actions .eq_wish label .material-symbols-rounded {
  font-variation-settings: "FILL" 0;
  color: var(--e_line);
  transition: all 0.2s;
}
.eq_actions .eq_wish label:hover {
  border-color: var(--e_gray_cc);
  background: var(--e_gray_ef);
}
.eq_actions .eq_wish label:hover .material-symbols-rounded {
  color: var(--e_red);
}
.eq_actions .eq_wish input[type=checkbox]:checked + label .material-symbols-rounded {
  font-variation-settings: "FILL" 1;
  color: var(--e_red);
}
.eq_actions .eq_wish input[type=checkbox]:focus-visible + label {
  outline: 2px solid var(--e_red);
  outline-offset: 2px;
}

.eq_mo_act {
  display: none;
}
@media (max-width: 767px) {
  .eq_mo_act {
    display: block;
    width: 100%;
    position: fixed;
    bottom: 0;
    left: 0;
    background: linear-gradient(180deg, rgba(var(--e_white_rgb), 0) 0%, rgba(var(--e_white_rgb), 0.8) 20%, rgba(var(--e_white_rgb), 1) 100%);
    padding: 20px;
    z-index: 5;
  }
  .eq_mo_act button {
    width: 100%;
  }
}

.mo_price {
  display: flex;
  width: 100%;
}
.mo_price.active {
  display: flex;
}
@media (max-width: 767px) {
  .mo_price {
    display: none;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80vh;
    z-index: 20;
    transition: transform 0.3s ease-out;
  }
  .mo_price::before {
    content: "";
    width: 100vw;
    height: 100vh;
    position: fixed;
    top: -100vh;
    left: 0;
    background: rgba(var(--e_black_rgb), 0.5);
    z-index: -1;
    transition: opacity 0.3s;
  }
  .mo_price.active {
    display: flex;
    transform: translateY(0);
  }
  .mo_price.closing {
    transform: translateY(100%);
  }
  .mo_price.closing::before {
    opacity: 0;
  }
}
.mo_price .mo_contents {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: flex-start;
  gap: 40px;
  width: 100%;
}
@media (max-width: 1199px) {
  .mo_price .mo_contents {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .mo_price .mo_contents {
    background: #fff;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    height: 100%;
    border-top: 1px solid var(--e_line);
    position: relative;
    top: 0;
    left: 0;
  }
  .mo_price .mo_contents .custom_select_wrap.open {
    position: static;
  }
  .mo_price .mo_contents .custom_select_wrap.open .option_list {
    max-height: 100%;
    overflow-y: auto;
    height: calc(100% - 80px);
    top: 80px;
    left: 0;
    border-radius: 0;
    border: none;
    box-shadow: none;
  }
  .mo_price .mo_contents .custom_select_wrap.open .selected_option {
    border-radius: 5px;
  }
}
.mo_price .mo_drag_handle {
  display: none;
}
@media (max-width: 767px) {
  .mo_price .mo_drag_handle {
    display: block;
    width: 40px;
    height: 4px;
    background: var(--e_gray_cc);
    border-radius: 2px;
    margin: 12px auto 0;
    cursor: grab;
    flex-shrink: 0;
    position: absolute;
    z-index: 10;
    touch-action: none;
    user-select: none;
    top: -30px;
    left: 50%;
    transform: translateX(-50%);
  }
  .mo_price .mo_drag_handle::before {
    content: "";
    position: absolute;
    top: -10px;
    left: -20px;
    right: -20px;
    bottom: -10px;
  }
  .mo_price .mo_drag_handle:active {
    cursor: grabbing;
  }
}

/* ========================================================= */
/* s_choice: 추천 상품 블록                                  */
/* ========================================================= */
.s_choice {
  width: 100%;
}
.s_choice .choice {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.s_choice .ch-head {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--e_line);
}
.s_choice .ch-head h2 {
  font-size: 20px;
  font-weight: 500;
  color: #000;
}
@media (max-width: 1199px) {
  .s_choice .ch-head h2 {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .s_choice .ch-head h2 {
    font-size: 16px;
  }
}
.s_choice .ch-list-wrap {
  position: relative;
}
.s_choice .ch-list-wrap .ch-list.swiper {
  width: 100%;
  padding-bottom: 2px;
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
  cursor: pointer;
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item:hover .ch-thumb img {
  transform: scale(1.1);
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item:hover .ch-name {
  color: var(--e_prime);
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-thumb {
  width: 100%;
  background: var(--e_gray_ef);
  border-radius: 10px;
  overflow: hidden;
  aspect-ratio: 1/1;
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.3s;
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-meta {
  display: flex;
  flex-direction: column;
  gap: 5px;
  line-height: 120%;
  height: 70px;
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-cat {
  color: var(--e_gray_66);
  font-size: 12px;
  font-weight: 400;
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-name {
  color: #000;
  font-size: 16px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-name {
    font-size: 14px;
  }
}
.s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-price {
  color: var(--e_prime);
  font-size: 14px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-price {
    font-size: 12px;
  }
}
@media (max-width: 1199px) {
  .s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-list.swiper .swiper-slide.ch-item {
    min-width: 50%;
  }
}
@media (max-width: 767px) {
  .s_choice .ch-list-wrap .ch-list.swiper .swiper-slide.ch-item .ch-list.swiper .swiper-slide.ch-item {
    min-width: 100%;
  }
}
.s_choice .ch-list-wrap .ch-list-nav {
  display: flex;
  align-items: center;
  position: absolute;
  width: 100%;
  justify-content: space-between;
  box-sizing: border-box;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 2;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transition: opacity 0.18s, visibility 0.18s;
}
.s_choice .ch-list-wrap .ch-list-nav .arrow-btn {
  top: calc(50% - 35px);
}
.s_choice .ch-list-wrap .ch-list-nav .arrow-btn.disabled {
  opacity: 0.2;
  pointer-events: none;
}
.s_choice .ch-list-wrap.has-nav:hover .ch-list-nav {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
}

/* ========================================================= */
/* Tabmenu                                  */
/* ========================================================= */
.eq_tabmenu {
  width: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 10px;
  border-bottom: 1px solid var(--e_line);
  border-top: 1px solid var(--e_line);
  height: 80px;
  position: sticky;
  top: 60px;
  background: #fff;
  z-index: 3;
}
@media (max-width: 1199px) {
  .eq_tabmenu {
    height: 60px;
  }
}
.eq_tabmenu ul {
  display: flex;
  justify-content: stretch;
  align-items: stretch;
  gap: 10px;
  height: 100%;
  position: relative;
  --indicator-width: 0px;
  --indicator-left: 0px;
}
.eq_tabmenu ul::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: var(--indicator-left, 0px);
  width: var(--indicator-width, 0px);
  height: 2px;
  background: var(--e_prime);
  transition: left 0.3s ease, width 0.3s ease;
  z-index: 1;
}
.eq_tabmenu ul li {
  width: 100%;
  height: 100%;
  display: flex;
  justify-content: center;
  align-items: center;
  cursor: pointer;
  font-size: 18px;
  font-weight: 700;
  position: relative;
  transition: color 0.2s;
}
.eq_tabmenu ul li:hover {
  color: var(--e_prime);
}
.eq_tabmenu ul li.active {
  color: var(--e_prime);
}
@media (max-width: 1199px) {
  .eq_tabmenu ul li {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .eq_tabmenu ul li {
    font-size: 14px;
  }
}

.tab_content {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 40px;
}
.tab_content img {
  max-width: 1000px;
  height: auto;
  width: 100%;
}

/* ========================================================= */
/* Buy Info (구매정보) Styles                                 */
/* ========================================================= */
.bi_wrap {
  width: 100%;
  background: var(--e_gray_ef);
  border-radius: 20px;
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 40px;
}
@media (max-width: 767px) {
  .bi_wrap {
    gap: 20px;
    padding: 20px;
  }
}

.bi_section {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .bi_section {
    gap: 10px;
  }
}

.bi_title {
  color: var(--e_prime);
  font-size: 24px;
  font-weight: 700;
  line-height: 1.25;
}
@media (max-width: 1199px) {
  .bi_title {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .bi_title {
    font-size: 18px;
  }
}

.bi_subtitle {
  color: #000;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.5;
}
@media (max-width: 1199px) {
  .bi_subtitle {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .bi_subtitle {
    font-size: 16px;
  }
}

.bi_stitle {
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 700;
  line-height: 140%;
}
@media (max-width: 1199px) {
  .bi_stitle {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .bi_stitle {
    font-size: 12px;
  }
}

.bi_text {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.bi_text li {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 160%;
  display: flex;
  gap: 5px;
}
.bi_text li::before {
  content: "•";
  color: var(--e_gray_99);
  display: inline-block;
}
.bi_text li strong {
  color: var(--e_prime);
  font-weight: 600;
}
@media (max-width: 1199px) {
  .bi_text li {
    font-size: 12px;
  }
}
.bi_text p {
  color: #000;
  font-size: 14px;
  font-weight: 400;
  line-height: 160%;
}
.bi_text p strong {
  color: var(--e_prime);
  font-weight: 600;
}
@media (max-width: 1199px) {
  .bi_text p {
    font-size: 12px;
  }
}

.bi_group {
  display: flex;
  flex-direction: column;
  gap: 5px;
  margin-top: 5px;
}

.bi_alert {
  padding: 20px 30px;
  background: rgba(var(--e_prime_rgb), 0.05);
  border-left: 10px solid var(--e_prime);
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .bi_alert {
    padding: 15px 20px;
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
}
.bi_alert strong {
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 700;
  line-height: 140%;
  flex-shrink: 0;
}
@media (max-width: 1199px) {
  .bi_alert strong {
    font-size: 14px;
  }
}
.bi_alert p {
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 400;
  line-height: 160%;
  flex: 1;
}
@media (max-width: 1199px) {
  .bi_alert p {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .bi_alert p {
    font-size: 12px;
  }
}

/* ========================================================= */
/* Review Section (리뷰 섹션)                                 */
/* ========================================================= */
/* ----- Review Stats (통계) ----- */
.rv_stats {
  width: 100%;
  padding: 20px 0;
  background: #fff;
  border-radius: 20px;
  border: 1px solid var(--e_line);
  display: flex;
  align-items: stretch;
}
@media (max-width: 1199px) {
  .rv_stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: auto auto;
    padding: 0;
  }
}

.rv_col {
  flex: 1;
  padding: 0 20px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}
.rv_col + .rv_col {
  border-left: 1px solid var(--e_line);
}
@media (max-width: 1199px) {
  .rv_col {
    border-left: none !important;
    min-height: 150px;
  }
  .rv_col:nth-child(odd) {
    border-right: 1px solid var(--e_line);
  }
  .rv_col:nth-child(n+3) {
    border-top: 1px solid var(--e_line);
  }
}

.rv_box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}

.rv_label {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
}
@media (max-width: 767px) {
  .rv_label {
    font-size: 14px;
  }
}

.rv_rating {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
}
@media (max-width: 767px) {
  .rv_rating {
    flex-wrap: wrap;
    gap: 5px;
  }
}
.rv_rating .material-symbols-rounded {
  font-variation-settings: "FILL" 1;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .rv_rating .material-symbols-rounded {
    font-size: 20px;
  }
}

.rv_score {
  display: flex;
  align-items: baseline;
}
.rv_score .num {
  color: #000;
  font-size: 24px;
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .rv_score .num {
    font-size: 20px;
  }
}
.rv_score .total {
  color: var(--e_gray_cc);
  font-size: 24px;
  font-weight: 500;
  line-height: 1.5;
}
.rv_score .total:before {
  content: "/";
  padding: 0 10px;
}
@media (max-width: 767px) {
  .rv_score .total {
    font-size: 20px;
  }
}

.rv_counts {
  display: flex;
  align-items: center;
  gap: 20px;
  justify-content: center;
}
.rv_counts .material-symbols-rounded {
  color: var(--e_line);
}
@media (max-width: 767px) {
  .rv_counts .material-symbols-rounded {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .rv_counts {
    flex-wrap: wrap;
    gap: 10px;
  }
}

.rv_count {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: center;
}
.rv_count .num {
  color: var(--e_gray_33);
  font-size: 24px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .rv_count .num {
    font-size: 20px;
  }
}

.rv_bars {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 5px;
}

.rv_bar {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .rv_bar {
    gap: 5px;
  }
}
.rv_bar .lbl {
  width: 25px;
  color: var(--e_gray_33);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
  flex-shrink: 0;
}
.rv_bar .track {
  flex: 1;
  height: 5px;
  background: var(--e_gray_cc);
  border-radius: 10px;
  position: relative;
  overflow: hidden;
}
.rv_bar .track .fill {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  background: var(--e_prime);
  border-radius: 10px;
}
.rv_bar .pct {
  width: 25px;
  color: var(--e_line);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  text-align: right;
  flex-shrink: 0;
}

.rv_write {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  width: 100%;
}

.rv_msg {
  color: var(--e_gray_33);
  font-size: 12px;
  font-weight: 400;
  line-height: 1.6;
  text-align: center;
}

/* ----- Review List (목록) ----- */
.rv_list {
  width: 100%;
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.rv_head {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .rv_head {
    gap: 15px;
  }
}
.rv_head h3 {
  font-size: 24px;
  font-weight: 500;
  line-height: 1.5;
  text-align: left;
}
.rv_head h3 span {
  font-size: 20px;
  color: var(--e_prime);
}
.rv_head h3 span::after {
  content: "건";
  margin-left: 5px;
}
@media (max-width: 767px) {
  .rv_head h3 {
    font-size: 20px;
  }
  .rv_head h3 span {
    font-size: 16px;
  }
}

.rv_filters {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.rv_filters .custom_select_wrap {
  width: 160px;
  flex: 0 0 auto;
}
.rv_filters .option_content .material-symbols-rounded, .rv_filters .selected_content .material-symbols-rounded {
  font-variation-settings: "FILL" 1;
  color: var(--e_yellow);
  font-size: 20px;
}

.rv_opts {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 767px) {
  .rv_opts {
    justify-content: center;
    gap: 15px;
  }
}
.rv_opts .check-container label {
  font-size: 16px;
}

.rv_items {
  display: flex;
  flex-direction: column;
}

.rv_item {
  padding: 40px 0;
  border-top: 1px solid var(--e_line);
  display: flex;
  gap: 40px;
}
@media (max-width: 1199px) {
  .rv_item {
    flex-direction: column;
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .rv_item {
    padding: 15px 0;
    gap: 15px;
  }
}

.rv_meta {
  width: 150px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 1199px) {
  .rv_meta {
    width: 100%;
    flex-direction: row;
    align-items: center;
    justify-content: space-between;
  }
}
@media (max-width: 767px) {
  .rv_meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}

.rv_stars {
  display: flex;
}
.rv_stars .material-symbols-rounded {
  font-variation-settings: "FILL" 1;
  color: var(--e_gray_cc);
}
.rv_stars .material-symbols-rounded.on {
  color: var(--e_yellow);
}

.rv_user {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (max-width: 1199px) {
  .rv_user {
    flex: 1;
  }
}
.rv_user .name {
  color: #000;
  font-size: 20px;
  font-weight: 500;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .rv_user .name {
    font-size: 18px;
  }
}
.rv_user .shop {
  color: var(--e_gray_99);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .rv_user .shop {
    font-size: 14px;
  }
}

.rv_date {
  color: var(--e_gray_99);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
}
@media (max-width: 767px) {
  .rv_date {
    font-size: 14px;
  }
}

.rv_content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
}

.rv_imgs {
  display: flex;
  gap: 10px;
}
@media (max-width: 767px) {
  .rv_imgs {
    gap: 8px;
    overflow-x: auto;
  }
}

.rv_img {
  width: 100px;
  background: var(--e_gray_ef);
  border-radius: 10px;
  border: 1px solid var(--e_line);
  flex-shrink: 0;
  aspect-ratio: 1/1;
  overflow: hidden;
  cursor: pointer;
  text-align: center;
}
@media (max-width: 767px) {
  .rv_img {
    width: 15vw;
  }
}
.rv_img img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}

.rv_txt {
  color: #000;
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .rv_txt {
    font-size: 14px;
  }
}

/* ----- Review Reply (관리자 답변) ----- */
.rv_reply {
  margin-top: 20px;
  padding: 20px;
  background: var(--e_gray_ef);
  border-radius: 12px;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 767px) {
  .rv_reply {
    padding: 15px;
    margin-top: 15px;
  }
}
.rv_reply .reply_head {
  display: flex;
  align-items: center;
  gap: 10px;
}
.rv_reply .reply_head strong {
  color: #000;
  font-size: 14px;
  font-weight: 700;
}
.rv_reply .reply_head time {
  color: var(--e_gray_99);
  font-size: 12px;
}
.rv_reply .reply_content {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  word-break: break-all;
}
@media (max-width: 767px) {
  .rv_reply .reply_content {
    font-size: 12px;
  }
}

/* ----- Review Pagination (페이지네이션) ----- */
.rv_pagi {
  padding: 20px 0;
  border-top: 1px solid var(--e_line);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  position: relative;
}
.rv_pagi .arrow-btn {
  position: static;
  top: 0;
  left: 0;
  background: none;
  border: none;
  box-shadow: none;
  transform: none;
  outline: none;
  width: 20px;
  height: 20px;
  padding-top: 10px;
}
.rv_pagi .arrow-btn::before {
  position: static;
}
.rv_pagi .arrow-btn:hover::before {
  border-color: var(--e_prime);
}
@media (max-width: 767px) {
  .rv_pagi {
    gap: 10px;
    flex-wrap: wrap;
  }
}

.pg_num {
  color: #000;
  font-size: 16px;
  font-weight: 500;
  line-height: 1.5;
  text-decoration: none;
  padding: 5px 10px;
  border-radius: 5px;
  transition: all 0.3s;
}
.pg_num:hover {
  background: var(--e_gray_ef);
  color: var(--e_prime);
}
.pg_num.active {
  color: var(--e_prime);
  font-weight: 700;
}
@media (max-width: 767px) {
  .pg_num {
    font-size: 14px;
    padding: 3px 8px;
  }
}

.pg_next {
  width: 40px;
  height: 40px;
  background: #fff;
  border-radius: 100px;
  border: 1px solid var(--e_line);
  display: flex;
  align-items: center;
  justify-content: center;
  text-decoration: none;
  transition: all 0.3s;
}
.pg_next:hover {
  border-color: var(--e_prime);
  background: color-mix(in srgb, var(--e_prime), white 45%);
}
@media (max-width: 767px) {
  .pg_next {
    width: 36px;
    height: 36px;
  }
}
.pg_next .arr {
  width: 12px;
  height: 8px;
  border: 1px solid #000;
  clip-path: polygon(0 50%, 100% 0, 100% 100%);
  transform: rotate(45deg);
}

/* ----- Review Lightbox (이미지 확대 팝업) ----- */
.rv_lightbox {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 9999;
  display: none;
  align-items: center;
  justify-content: center;
}
.rv_lightbox.active {
  display: flex;
}

.rv_lb_overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(var(--e_black_rgb), 0.85);
  z-index: 1;
}

.rv_lb_container {
  position: relative;
  z-index: 2;
  width: 90%;
  max-width: 1200px;
  height: 80vh;
  background: #fff;
  border-radius: 20px;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1199px) {
  .rv_lb_container {
    width: 95%;
    height: 85vh;
  }
}
@media (max-width: 767px) {
  .rv_lb_container {
    width: 100%;
    height: 100%;
    border-radius: 0;
  }
}

.rv_lb_close {
  position: absolute;
  top: 20px;
  right: 20px;
  z-index: 10;
  width: 40px;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  background: #fff;
}
.rv_lb_close:hover {
  color: var(--e_prime);
  transform: scale(1.1);
}
@media (max-width: 767px) {
  .rv_lb_close {
    top: 10px;
    right: 10px;
    width: 36px;
    height: 36px;
  }
}
.rv_lb_close .material-symbols-rounded {
  font-size: 24px;
}

.rv_lb_content {
  display: flex;
  width: 100%;
  height: 100%;
  overflow: hidden;
}
@media (max-width: 767px) {
  .rv_lb_content {
    flex-direction: column;
    overflow-y: auto;
  }
}

/* Lightbox Files (좌측 파일 목록 영역) */
.rv_lb_files {
  width: 120px;
  padding: 20px;
  background: var(--e_gray_ef);
  display: flex;
  flex-direction: column;
  gap: 15px;
  flex-shrink: 0;
  border-right: 1px solid var(--e_line);
}
@media (max-width: 1199px) {
  .rv_lb_files {
    width: 100px;
    padding: 15px;
  }
}
@media (max-width: 767px) {
  .rv_lb_files {
    width: 100%;
    height: auto;
    flex-direction: row;
    align-items: center;
    gap: 10px;
    padding: 10px 15px;
    border-right: none;
    border-top: 1px solid var(--e_line);
    order: 2;
  }
}

.rv_lb_files_title {
  font-size: 12px;
  font-weight: 700;
  color: var(--e_gray_66);
  text-align: center;
}
@media (max-width: 767px) {
  .rv_lb_files_title {
    display: none;
  }
}

.rv_lb_files_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  overflow-y: auto;
  flex: 1;
}
.rv_lb_files_list::-webkit-scrollbar {
  width: 4px;
}
.rv_lb_files_list::-webkit-scrollbar-track {
  background: transparent;
}
.rv_lb_files_list::-webkit-scrollbar-thumb {
  background: var(--e_gray_cc);
  border-radius: 2px;
}
@media (max-width: 767px) {
  .rv_lb_files_list {
    flex-direction: row;
    overflow-x: auto;
    overflow-y: hidden;
    gap: 8px;
    flex: 1;
  }
  .rv_lb_files_list::-webkit-scrollbar {
    height: 4px;
    width: auto;
  }
}

.rv_lb_file_item {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 8px;
  overflow: hidden;
  cursor: pointer;
  border: 2px solid transparent;
  transition: all 0.2s;
  flex-shrink: 0;
  text-align: center;
}
.rv_lb_file_item:hover {
  border-color: rgba(var(--e_prime_rgb), 0.5);
}
.rv_lb_file_item.active {
  border-color: var(--e_prime);
  box-shadow: 0 0 0 2px rgba(var(--e_prime_rgb), 0.2);
}
.rv_lb_file_item img {
  max-width: 100%;
  max-height: 100%;
  width: auto;
  height: auto;
}
@media (max-width: 767px) {
  .rv_lb_file_item {
    width: 50px;
    height: 50px;
  }
}

/* Lightbox Viewer (좌측 이미지 영역) */
.rv_lb_viewer {
  flex: 1;
  display: flex;
  flex-direction: column;
  padding: 20px;
  background: var(--e_gray_ef);
  min-width: 0;
}
@media (max-width: 767px) {
  .rv_lb_viewer {
    flex: 0 0 auto;
    padding: 15px;
    order: 1;
    height: calc(100% - 70px);
  }
}

.rv_lb_img_wrap {
  flex: 1;
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  aspect-ratio: 1/1;
  width: 100%;
  max-height: calc(100% - 60px);
}
@media (max-width: 767px) {
  .rv_lb_img_wrap {
    max-height: calc(100% - 50px);
  }
}
.rv_lb_img_wrap img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
  cursor: move;
  user-select: none;
  transform-origin: center center;
  will-change: transform;
}

.rv_lb_controls {
  display: flex;
  align-items: center;
  gap: 15px;
  margin-top: 15px;
  padding: 0 10px;
}
@media (max-width: 767px) {
  .rv_lb_controls {
    gap: 10px;
    margin-top: 10px;
  }
}

.rv_lb_btn {
  width: 40px;
  height: 40px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  flex-shrink: 0;
}
.rv_lb_btn:hover {
  background: var(--e_prime);
  border-color: var(--e_prime);
}
.rv_lb_btn:hover .material-symbols-rounded {
  color: #fff;
}
@media (max-width: 767px) {
  .rv_lb_btn {
    width: 36px;
    height: 36px;
  }
}
.rv_lb_btn .material-symbols-rounded {
  color: var(--e_gray_33);
  font-size: 20px;
}

.rv_lb_slider {
  flex: 1;
  height: 6px;
  background: var(--e_line);
  border-radius: 10px;
  outline: none;
  appearance: none;
  cursor: pointer;
}
@media (max-width: 767px) {
  .rv_lb_slider {
    height: 5px;
  }
}
.rv_lb_slider::-webkit-slider-thumb {
  appearance: none;
  width: 18px;
  height: 18px;
  background: var(--e_prime);
  border-radius: 50%;
  cursor: pointer;
  transition: all 0.2s;
}
.rv_lb_slider::-webkit-slider-thumb:hover {
  transform: scale(1.2);
}
.rv_lb_slider::-moz-range-thumb {
  width: 18px;
  height: 18px;
  background: var(--e_prime);
  border-radius: 50%;
  cursor: pointer;
  border: none;
  transition: all 0.2s;
}
.rv_lb_slider::-moz-range-thumb:hover {
  transform: scale(1.2);
}

.rv_lb_zoom_val {
  color: var(--e_gray_33);
  font-size: 14px;
  font-weight: 500;
  min-width: 50px;
  text-align: center;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .rv_lb_zoom_val {
    font-size: 12px;
    min-width: 45px;
  }
}

/* Lightbox Info (우측 메타데이터 영역) */
.rv_lb_info {
  width: 320px;
  padding: 30px;
  background: #fff;
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex-shrink: 0;
}
.rv_lb_info p {
  overflow-y: auto;
  height: 100%;
}
@media (max-width: 1199px) {
  .rv_lb_info {
    width: 280px;
    padding: 20px;
  }
}
@media (max-width: 767px) {
  .rv_lb_info {
    display: none;
  }
}

/* popup style */
@media (max-width: 767px) {
  .quote-popup {
    align-items: flex-start;
  }
  .quote-popup .popup_container {
    border: none;
    border-radius: 0;
    height: 100%;
    width: 100%;
  }
  .quote-popup .popup_footer.col-2 li:last-child .eq_upload_prev {
    width: auto;
  }
}
.quote-popup .nor-up-btn, .quote-popup .after_on, .quote-popup .ch-on {
  display: none;
}
.quote-popup.nor-up .popup_close_btn, .quote-popup.nor-up .eq_upload_prev, .quote-popup.nor-up textarea, .quote-popup.nor-up .check-container {
  display: none;
}
.quote-popup.nor-up .nor-up-btn {
  display: flex;
}
.quote-popup.after-pop .after_on {
  display: flex;
}
.quote-popup.after-pop .after_off {
  display: none;
}
.quote-popup.ch-up .none_btn {
  display: none;
}
.quote-popup.ch-up .after_off {
  display: none;
}
.quote-popup.ch-up .ch-on {
  display: flex;
}
.quote-popup .popup_layout {
  max-width: 700px;
}
@media (max-width: 767px) {
  .quote-popup .popup_layout {
    border-radius: 0;
    justify-content: flex-start;
  }
}
.quote-popup .popup_layout.cal-book {
  width: 90vw;
  max-width: 1000px;
}
@media (max-width: 1199px) {
  .quote-popup .popup_layout.cal-book {
    max-width: 800px;
  }
}
@media (max-width: 767px) {
  .quote-popup .popup_layout.cal-book {
    max-width: 100%;
    width: 100%;
  }
}
.quote-popup .popup_layout.cal-book .popup_body {
  display: flex;
  gap: 40px;
  width: 100%;
  flex-direction: row;
  justify-content: stretch;
}
@media (max-width: 767px) {
  .quote-popup .popup_layout.cal-book .popup_body {
    flex-direction: column;
    gap: 20px;
  }
}
.quote-popup .popup_layout.cal-book .popup_body dt, .quote-popup .popup_layout.cal-book .popup_body dd {
  flex: 1;
}
.quote-popup .popup_layout.cal-book .popup_body dt {
  background: var(--e_gray_ef);
  padding: 20px;
  border-radius: 20px;
}
.quote-popup .popup_layout.cal-book {
  /* ========================================================= */
  /* Book Thickness Calculator Visual
  /* ========================================================= */
}
.quote-popup .popup_layout.cal-book .cal_visual {
  display: inline-flex;
  flex-direction: column;
  justify-content: flex-start;
  align-items: center;
  gap: 10px;
  width: 100%;
}
.quote-popup .popup_layout.cal-book .cal_thickness {
  display: inline-flex;
  justify-content: flex-start;
  align-items: flex-end;
  gap: 5px;
}
.quote-popup .popup_layout.cal-book .cal_thick_num {
  text-align: right;
  color: #000;
  font-size: 24px;
  font-weight: 400;
  word-wrap: break-word;
}
.quote-popup .popup_layout.cal-book .cal_thick_num b {
  font-weight: 700;
  color: var(--e_prime);
}
.quote-popup .popup_layout.cal-book .cal_thick_num::after {
  content: "mm";
  font-size: 18px;
  margin-left: 2px;
}
@media (max-width: 767px) {
  .quote-popup .popup_layout.cal-book .cal_thick_num {
    font-size: 20px;
  }
  .quote-popup .popup_layout.cal-book .cal_thick_num::after {
    font-size: 16px;
  }
}
.quote-popup .popup_layout.cal-book .cal_pre {
  display: inline-flex;
  justify-content: stretch;
  align-items: stretch;
  width: 100%;
  border: 1px var(--e_gray_33) solid;
}
@media (max-width: 767px) {
  .quote-popup .popup_layout.cal-book .cal_pre {
    width: 70%;
  }
}
.quote-popup .popup_layout.cal-book .cal_pre li + li {
  border-left: 1px var(--e_gray_33) solid;
}
.quote-popup .popup_layout.cal-book .cal_pre li {
  background: #fff;
  width: 100%;
  aspect-ratio: 1/1.414;
}
.quote-popup .popup_layout.cal-book .cal_pre li.md, .quote-popup .popup_layout.cal-book .cal_pre li.sp {
  width: 20%;
  background: repeating-linear-gradient(45deg, #fff, #fff 10px, var(--e_prime), var(--e_prime) 12px);
}
.quote-popup .popup_layout.cal-book .cal_pre li.sp {
  width: 5%;
  background: #fff;
}
.quote-popup .popup_layout.cal-book .cal_pre.sm {
  height: 20px;
  border: none;
}
.quote-popup .popup_layout.cal-book .cal_pre.sm li {
  aspect-ratio: auto;
  height: 100%;
  background: none;
}
.quote-popup .popup_layout.cal-book .cal_pre.sm li + li {
  border-color: var(--e_prime);
}
.quote-popup .rv_pagi {
  padding: 0;
  border: none;
  gap: 10px;
}
.quote-popup .eq_image {
  max-height: 70vh;
  overflow: auto;
  width: 600px;
  display: flex;
  align-items: center;
  justify-content: baseline;
  max-width: 100%;
}
.quote-popup .eq_image img {
  width: auto;
  height: auto;
  max-width: 100%;
}
@media (max-width: 767px) {
  .quote-popup .eq_image {
    min-width: 200px;
    width: 100%;
    max-height: 100%;
  }
}
.quote-popup .t-search {
  display: flex;
  gap: 20px;
  justify-content: stretch;
  padding: 20px;
  border-radius: 10px;
  background: var(--e_gray_ef);
}
.quote-popup .t-search .eq_input_group {
  flex: 1;
  gap: 10px;
}
@media (max-width: 767px) {
  .quote-popup .t-search {
    flex-direction: column;
    align-items: stretch;
  }
}
.quote-popup .t-search .eq_label {
  width: auto;
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  .quote-popup .t-search .eq_label {
    flex: 0 0 60px;
  }
}
.quote-popup .t-search .custom_select_wrap {
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  .quote-popup .t-search .custom_select_wrap {
    flex: 1;
  }
}
.quote-popup tbody {
  max-height: 300px;
  overflow-y: auto;
}
@media (max-width: 767px) {
  .quote-popup tbody {
    max-height: 100%;
  }
}
.quote-popup .eq_upload_options {
  gap: 20px;
  display: flex;
  min-height: 150px;
  align-items: stretch;
  width: 100vw;
  max-width: 100%;
}
@media (max-width: 767px) {
  .quote-popup .eq_upload_options {
    flex-direction: column;
  }
}
.quote-popup .eq_upload_options button {
  height: auto;
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  line-height: 140%;
}
@media (max-width: 767px) {
  .quote-popup .eq_upload_options button {
    flex-direction: row;
    justify-content: flex-start;
    padding-left: 30px;
    gap: 20px;
    min-height: 80px;
  }
  .quote-popup .eq_upload_options button br {
    display: none;
  }
  .quote-popup .eq_upload_options button:nth-child(4) {
    display: none;
  }
}
.quote-popup .eq_upload_options button span {
  font-size: 40px;
}
@media (max-width: 767px) {
  .quote-popup .eq_upload_options button span {
    font-size: 30px;
  }
}
.quote-popup .eq_upload_options button:hover {
  box-shadow: 0 0 5px rgba(var(--e_prime_rgb), 0.5);
}
.quote-popup h2 {
  font-size: 16px;
}
@media (max-width: 767px) {
  .quote-popup h2 {
    font-size: 14px;
  }
}
.quote-popup .eq_up_design {
  display: flex;
  gap: 20px;
  align-items: flex-start;
  width: 100vw;
  max-width: 100%;
}
@media (max-width: 767px) {
  .quote-popup .eq_up_design {
    flex-direction: column;
  }
}
.quote-popup .eq_up_design li {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
  width: 100%;
}
.quote-popup .eq_up_design .biz-upload-box .biz-upload-title {
  font-size: 16px;
}
.quote-popup .eq_up_design .biz-upload-box .biz-upload-filename {
  font-size: 14px;
}
.quote-popup .eq_notice_box {
  background: var(--e_gray_ef);
  border-radius: 12px;
  padding: 20px;
  position: relative;
  height: 200px;
  overflow: auto;
  flex: 1;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_box {
    padding: 16px;
  }
}
.quote-popup .eq_notice_header {
  display: flex;
  align-items: center;
  gap: 5px;
  margin-bottom: 10px;
}
.quote-popup .eq_notice_header .material-symbols-rounded {
  color: var(--e_prime);
  font-size: 16px;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_header .material-symbols-rounded {
    font-size: 14px;
  }
}
.quote-popup .eq_notice_header h3 {
  font-size: 14px;
  font-weight: 500;
  margin: 0;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_header h3 {
    font-size: 12px;
  }
}
.quote-popup .eq_notice_list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_list {
    gap: 10px;
  }
}
.quote-popup .eq_notice_list li {
  position: relative;
  padding-left: 16px;
  color: var(--e_gray_66);
  font-size: 12px;
  line-height: 1.6;
  font-weight: 400;
  gap: 2px;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_list li {
    padding-left: 14px;
    font-size: 12px;
    line-height: 1.5;
  }
}
.quote-popup .eq_notice_list li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--e_prime);
  font-weight: 700;
  font-size: 12px;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_list li::before {
    font-size: 12px;
  }
}
.quote-popup .eq_notice_list li .eq_notice_sub {
  display: block;
  color: var(--e_gray_99);
  font-size: 12px;
  font-style: italic;
  padding-left: 0;
}
@media (max-width: 767px) {
  .quote-popup .eq_notice_list li .eq_notice_sub {
    font-size: 11px;
    margin-top: 2px;
  }
}

/* ========================================================= */
/* 주문 요약 (Order Summary) */
/* ========================================================= */
.eq_order_details {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 100%;
}
.eq_order_details .eq_order_item {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .eq_order_details .eq_order_item {
    padding: 10px 0;
  }
}
.eq_order_details .eq_order_item dt {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 500;
  margin: 0;
}
.eq_order_details .eq_order_item dd {
  color: #000;
  font-size: 14px;
  font-weight: 600;
  margin: 0;
  text-align: right;
}
.eq_order_details .eq_order_item dd.pending {
  color: var(--e_gray_99);
  font-style: italic;
  font-weight: 400;
}
.eq_order_details .eq_order_total {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 16px 0 0;
  border-top: 2px solid var(--e_line);
}
@media (max-width: 767px) {
  .eq_order_details .eq_order_total {
    padding: 12px 0 0;
  }
}
.eq_order_details .eq_order_total dt {
  color: #000;
  font-size: 16px;
  font-weight: 700;
  margin: 0;
}
@media (max-width: 767px) {
  .eq_order_details .eq_order_total dt {
    font-size: 14px;
  }
}
.eq_order_details .eq_order_total dd {
  color: var(--e_prime);
  font-size: 18px;
  font-weight: 700;
  margin: 0;
  text-align: right;
}
@media (max-width: 767px) {
  .eq_order_details .eq_order_total dd {
    font-size: 16px;
  }
}

/* ========================================================= */
/* Webhard Upload Guide Styles                              */
/* ========================================================= */
.wd_guide {
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
  width: 100%;
}
.wd_guide .step {
  display: flex;
  align-items: flex-start;
  gap: 5px;
}
.wd_guide .step .num {
  display: flex;
  width: 30px;
  height: 25px;
  justify-content: center;
  align-items: center;
  background: var(--e_prime);
  border-radius: 5px;
  color: #fff;
  font-size: 14px;
  font-weight: 900;
  flex-shrink: 0;
}
.wd_guide .step .txt {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1;
}
.wd_guide .step .txt .line {
  font-size: 14px;
  font-weight: 400;
  color: #000;
}
.wd_guide .step .txt .line .highlight {
  color: var(--e_prime);
  font-weight: 500;
}
.wd_guide .step .txt.multi {
  gap: 3px;
}
.wd_guide .step .txt.multi .sub {
  font-size: 12px;
  font-weight: 400;
  color: var(--e_prime);
}

/* ========================================================= */
/* Webhard Authentication Guide Styles                      */
/* ========================================================= */
.wd_auth_box {
  background: linear-gradient(135deg, rgba(var(--e_prime_rgb), 0.05) 0%, rgba(var(--e_prime_rgb), 0.02) 100%);
  border: 1px solid rgba(var(--e_prime_rgb), 0.15);
  border-radius: 8px;
  padding: 10px;
}
.wd_auth_box .wd_auth_header {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px;
  padding-bottom: 12px;
  border-bottom: 1px solid rgba(var(--e_prime_rgb), 0.15);
  position: relative;
}
.wd_auth_box .wd_auth_header .wd_guide_img {
  width: 200px;
  height: auto;
  position: absolute;
  top: -80px;
  right: 0;
}
@media (max-width: 767px) {
  .wd_auth_box .wd_auth_header .wd_guide_img {
    display: none;
  }
}
.wd_auth_box .wd_auth_header .material-symbols-rounded {
  color: var(--e_prime);
  font-size: 20px;
  font-weight: 500;
}
.wd_auth_box .wd_auth_header h4 {
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 600;
  margin: 0;
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 767px) {
  .wd_auth_box .wd_auth_header h4 {
    font-size: 14px;
  }
}
.wd_auth_box .wd_auth_header h4 a {
  font-size: 10px;
  color: var(--e_gray_66);
  background: #fff;
  padding: 5px 8px;
  border-radius: 5px;
  transition: all 0.2s ease;
  display: inline-block;
  border: 1px solid var(--e_line);
  line-height: 1;
}
.wd_auth_box .wd_auth_header h4 a:hover {
  color: #fff;
  background: var(--e_prime);
  border-color: var(--e_prime);
}
.wd_auth_box .wd_auth_content {
  display: flex;
  flex-direction: row;
  gap: 10px;
}
.wd_auth_box .wd_auth_content .auth_item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px;
  background: rgba(255, 255, 255, 0.6);
  border: 1px solid rgba(var(--e_prime_rgb), 0.1);
  border-radius: 5px;
  transition: all 0.2s ease;
  flex: 1;
}
@media (max-width: 767px) {
  .wd_auth_box .wd_auth_content .auth_item {
    flex-direction: column;
  }
}
.wd_auth_box .wd_auth_content .auth_item:hover {
  background: rgba(255, 255, 255, 0.8);
  border-color: rgba(var(--e_prime_rgb), 0.2);
  transform: translateY(-1px);
  box-shadow: 0 2px 8px rgba(var(--e_prime_rgb), 0.1);
}
.wd_auth_box .wd_auth_content .auth_item .label {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 500;
  min-width: 50px;
}
@media (max-width: 767px) {
  .wd_auth_box .wd_auth_content .auth_item .label {
    font-size: 12px;
    min-width: 40px;
  }
}
.wd_auth_box .wd_auth_content .auth_item .value {
  color: #000;
  font-size: 16px;
  font-weight: 600;
  font-family: "Courier New", monospace;
  letter-spacing: 0.5px;
  flex: 1;
}
@media (max-width: 767px) {
  .wd_auth_box .wd_auth_content .auth_item .value {
    font-size: 14px;
  }
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn {
  background: rgba(var(--e_prime_rgb), 0.1);
  border: 1px solid rgba(var(--e_prime_rgb), 0.2);
  border-radius: 4px;
  color: var(--e_prime);
  cursor: pointer;
  font-size: 12px;
  font-weight: 500;
  transition: all 0.2s ease;
  display: flex;
  align-items: center;
  gap: 4px;
  height: 40px;
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn .material-symbols-rounded {
  font-size: 14px;
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn:hover {
  background: rgba(var(--e_prime_rgb), 0.15);
  border-color: rgba(var(--e_prime_rgb), 0.3);
  transform: translateY(-1px);
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn:active {
  transform: translateY(0);
  background: rgba(var(--e_prime_rgb), 0.2);
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn.copied {
  background: rgba(76, 175, 80, 0.15);
  border-color: rgba(76, 175, 80, 0.3);
  color: #4CAF50;
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn.copied:hover {
  background: rgba(76, 175, 80, 0.2);
  border-color: rgba(76, 175, 80, 0.4);
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn.copy-error {
  background: rgba(244, 67, 54, 0.15);
  border-color: rgba(244, 67, 54, 0.3);
  color: #f44336;
}
.wd_auth_box .wd_auth_content .auth_item .copy_btn.copy-error:hover {
  background: rgba(244, 67, 54, 0.2);
  border-color: rgba(244, 67, 54, 0.4);
}

/* ========================================================= */
/* 간판 전용 설명 박스 & 문의하기 버튼 (Sign Quote Description) */
/* ========================================================= */
.eq_sign_desc_box {
  line-height: 1.7;
  color: var(--e_gray_66);
  font-size: 15px;
  padding: 10px 0;
  width: 100%;
}
.eq_sign_desc_box .desc_title {
  margin-bottom: 12px;
  font-weight: 600;
  color: #000;
  font-size: 16px;
}
.eq_sign_desc_box .desc_summary {
  margin-bottom: 16px;
  line-height: 1.6;
}
.eq_sign_desc_box .desc_features {
  list-style: disc;
  padding-left: 20px;
  margin-bottom: 20px;
}
.eq_sign_desc_box .desc_features li {
  margin-bottom: 8px;
  line-height: 1.6;
}
.eq_sign_desc_box .desc_features li strong {
  color: #000;
  font-weight: 600;
}
.eq_sign_desc_box .eq_info_notice {
  background: #f8f9fa;
  padding: 16px;
  border-radius: 8px;
  border-left: 4px solid var(--e_prime);
}
.eq_sign_desc_box .eq_info_notice .notice_title {
  font-weight: 600;
  color: #000;
  font-size: 14px;
  margin-bottom: 6px;
}
.eq_sign_desc_box .eq_info_notice .notice_text {
  font-size: 14px;
  color: var(--e_gray_66);
  margin: 0;
  line-height: 1.5;
}
.eq_sign_desc_box .eq_info_notice .notice_text strong {
  color: var(--e_prime);
  font-weight: 600;
}

.eq_actions .btn_inquiry {
  width: 100%;
  height: 52px;
  font-size: 17px;
  font-weight: 600;
}

/* Basic style*/
/* ========================================================= */
/* Shopping Cart Styles                                      */
/* ========================================================= */
.order_contents .bt-menu {
  display: none;
}
.order_contents footer {
  margin: 0;
}
@media (max-width: 767px) {
  .order_contents .e_mobile dd {
    display: none;
  }
}

.order_form {
  display: flex;
  justify-content: center;
  gap: 60px;
  align-items: flex-start;
}
@media (max-width: 1199px) {
  .order_form {
    flex-direction: column;
    align-items: center;
  }
}

.left_col {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 60px;
}
.left_col .eq_quantity_controls {
  border: 1px solid var(--e_line);
  border-radius: 40px;
  padding: 0 5px;
  gap: 5px;
  background: #fff;
}
.left_col .eq_quantity_controls span {
  width: 25px;
  height: 25px;
  font-size: 20px;
  border-radius: 50%;
}
.left_col .eq_quantity_controls .eq_quantity_input {
  width: 35px;
  font-size: 14px;
  padding: 0;
}
@media (max-width: 1199px) {
  .left_col {
    gap: 40px;
  }
}

.cart_wrap {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 1199px) {
  .cart_wrap {
    max-width: 100%;
    gap: 10px;
  }
}
.cart_wrap .cart_title {
  color: #000;
  font-size: 20px;
  font-weight: 700;
  margin: 0;
}
@media (max-width: 767px) {
  .cart_wrap .cart_title {
    font-size: 18px;
  }
}
.cart_wrap .cart_title .count {
  color: var(--e_prime);
}
.cart_wrap .cart_content {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.cart_wrap .cart_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .cart_wrap .cart_header {
    gap: 10px;
  }
}
.cart_wrap .cart_header .popup_tab {
  min-width: fit-content;
}
.cart_wrap .cart_header .popup_tab button {
  padding: 0 20px;
  font-size: 16px;
}
.cart_wrap .cart_header .cart_actions {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
}
.cart_wrap .cart_header .cart_actions .check-container label {
  font-size: 16px;
}
@media (max-width: 767px) {
  .cart_wrap .cart_header .cart_actions .check-container label {
    font-size: 14px;
  }
}
.cart_wrap .cart_header .cart_actions .btn_del_selected {
  color: var(--e_gray_66);
  font-size: 16px;
  font-weight: 400;
  background: none;
  border: none;
  cursor: pointer;
  transition: color 0.2s ease;
  padding: 0;
}
@media (max-width: 767px) {
  .cart_wrap .cart_header .cart_actions .btn_del_selected {
    font-size: 14px;
  }
}
.cart_wrap .cart_header .cart_actions .btn_del_selected:hover {
  color: #000;
}
.cart_wrap .cart_list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
}
@media (max-width: 767px) {
  .cart_wrap .cart_list {
    gap: 15px;
  }
}
.cart_wrap .cart_list.ordered .cart_item {
  flex-direction: column;
}

.cart_empty {
  display: none;
}
@media (max-width: 767px) {
  .cart_empty {
    padding: 60px 20px;
    gap: 16px;
  }
}
.cart_empty .material-symbols-rounded {
  font-size: 80px;
  color: var(--e_gray_cc);
}
@media (max-width: 767px) {
  .cart_empty .material-symbols-rounded {
    font-size: 60px;
  }
}
.cart_empty p {
  color: var(--e_gray_99);
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}
@media (max-width: 767px) {
  .cart_empty p {
    font-size: 14px;
  }
}

.cart_item {
  display: flex;
  gap: 20px;
  padding: 20px;
  position: relative;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  flex-direction: column;
  padding-right: 40px;
  background: #fff;
}
.cart_item.multi-items::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  background: var(--e_gray_ef);
  width: 100%;
  height: 100%;
  z-index: -1;
  border: 1px solid var(--e_line);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .cart_item {
    gap: 10px;
    padding: 15px;
  }
}
.cart_item .item_main {
  flex: 1;
  display: flex;
  align-items: center;
  gap: 60px;
}
@media (max-width: 1480px) {
  .cart_item .item_main {
    gap: 40px;
  }
}
@media (max-width: 1199px) {
  .cart_item .item_main {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .cart_item .item_main {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
}
.cart_item .item_main .eq_quantity {
  display: flex;
  width: 100%;
}
@media (max-width: 767px) {
  .cart_item .item_main .eq_quantity {
    justify-content: flex-end;
  }
}
.cart_item .item_info {
  flex: 1;
  display: flex;
  gap: 20px;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .cart_item .item_info {
    gap: 12px;
    flex-direction: column;
  }
}
.cart_item .item_info .item_thumb {
  width: 140px;
  aspect-ratio: 1/1;
  border-radius: 5px;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .cart_item .item_info .item_thumb {
    width: 80px;
  }
}
.cart_item .item_info .item_thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.cart_item .item_info .item_thumb .check-container {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 2;
}
.cart_item .item_info .item_details {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 10px;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .cart_item .item_info .item_details {
    gap: 8px;
  }
}
.cart_item .item_info .item_details .item_name {
  font-size: 20px;
  font-weight: 600;
  margin: 0;
  line-height: 1.3;
}
.cart_item .item_info .item_details .item_name .dash {
  color: var(--e_gray_66);
}
.cart_item .item_info .item_details .item_name .dash::before {
  content: "-";
  padding: 0 5px;
}
@media (max-width: 767px) {
  .cart_item .item_info .item_details .item_name {
    font-size: 16px;
  }
}
.cart_item .item_info .item_details .item_opts {
  color: var(--e_gray_66);
  font-size: 14px;
  line-height: 1.6;
  margin: 0;
  font-weight: 300;
}
.cart_item .item_info .item_details .item_quantity_box {
  display: flex;
  gap: 10px;
  align-items: center;
}
@media (max-width: 767px) {
  .cart_item .item_info .item_details .item_quantity_box {
    gap: 10px;
  }
}
.cart_item .item_info .item_details .item_quantity_box .item_total_quantity {
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .cart_item .item_info .item_details .item_quantity_box .item_total_quantity {
    font-size: 12px;
  }
}
.cart_item .item_info .item_details .item_quantity_box .item_total_quantity .total_qty {
  font-weight: 700;
  color: #000;
}
.cart_item .item_actions {
  display: flex;
  align-items: center;
  gap: 60px;
}
@media (max-width: 1480px) {
  .cart_item .item_actions {
    gap: 40px;
  }
}
@media (max-width: 1199px) {
  .cart_item .item_actions {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .cart_item .item_actions {
    flex-direction: column;
    gap: 10px;
    align-items: flex-end;
  }
}
.cart_item .item_actions .eq_price_other {
  display: flex;
  align-items: flex-end;
  gap: 5px;
  flex-direction: column;
}
@media (max-width: 767px) {
  .cart_item .item_actions .eq_price_other {
    order: -1;
    align-items: flex-start;
  }
}
.cart_item .item_actions .eq_price_delivery, .cart_item .item_actions .eq_price_design {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  margin: 0;
}
@media (max-width: 767px) {
  .cart_item .item_actions .eq_price_delivery, .cart_item .item_actions .eq_price_design {
    order: -1;
  }
}
@media (max-width: 767px) {
  .cart_item .item_actions .eq_price {
    gap: 10px;
    flex-direction: row;
    justify-content: space-between;
    width: 100%;
  }
}
.cart_item .item_actions .eq_price .eq_price_amount {
  font-size: 20px;
}
@media (max-width: 767px) {
  .cart_item .item_actions .eq_price .eq_price_amount {
    font-size: 18px;
  }
}
.cart_item .item_actions .eq_price .eq_price_box .eq_price_pre, .cart_item .item_actions .eq_price .eq_price_box2 .eq_price_pre {
  color: var(--e_gray_99);
  font-size: 16px;
  font-weight: 500;
}
.cart_item .item_btns {
  display: flex;
  flex-direction: column;
  gap: 10px;
  width: 150px;
}
@media (max-width: 767px) {
  .cart_item .item_btns {
    width: 100%;
    flex-direction: row;
    border-top: 1px solid var(--e_line);
    padding-top: 10px;
    justify-content: flex-end;
    margin-top: 10px;
  }
  .cart_item .item_btns.btn_wide {
    width: 100%;
  }
  .cart_item .item_btns.btn_wide button {
    width: 100%;
  }
}
.cart_item .item_btns .btn_grayline {
  background: #fff;
  border: 1px solid var(--e_line);
  color: #000;
}
@media (max-width: 767px) {
  .cart_item .item_btns .btn_grayline {
    order: -1;
  }
}
.cart_item .item_btns .btn_grayline:hover {
  background: #fff;
  border-color: var(--e_gray_99);
}
.cart_item .item_header {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--e_line);
}
@media (max-width: 767px) {
  .cart_item .item_header {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}
.cart_item .item_header .item_status {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  display: flex;
  gap: 10px;
  align-items: center;
}
@media (max-width: 767px) {
  .cart_item .item_header .item_status {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
    padding-bottom: 10px;
    width: 100%;
  }
}
.cart_item .item_header .item_status .warnning {
  color: var(--e_red);
}
.cart_item .item_header .item_date {
  font-size: 14px;
  font-weight: 400;
  color: var(--e_gray_66);
}
.cart_item .item_footer {
  width: 100%;
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 10px;
  padding: 15px;
  background: var(--e_gray_ef);
  border-radius: 5px;
  height: 100px;
  overflow: auto;
}
@media (max-width: 767px) {
  .cart_item .item_footer {
    display: none;
  }
}
.cart_item .item_footer .item_history {
  width: 100%;
  display: flex;
  justify-content: flex-start;
  font-size: 14px;
  color: var(--e_gray_66);
  gap: 10px;
}
.cart_item .item_footer .item_history span {
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .cart_item .item_footer .item_history {
    flex-direction: column;
    gap: 6px;
  }
}
.cart_item .btn_close {
  width: 20px;
  height: 20px;
  background: none;
  border: none;
  cursor: pointer;
  padding: 0;
  flex-shrink: 0;
  color: var(--e_gray_66);
  transition: all 0.2s ease;
  position: absolute;
  top: 10px;
  right: 10px;
}
@media (max-width: 767px) {
  .cart_item .btn_close {
    display: none;
  }
}
.cart_item .btn_close .material-symbols-rounded {
  font-size: 20px;
}
.cart_item .btn_close:hover {
  color: #000;
  transform: rotate(90deg);
}

/* ========================================================= */
/* Cart Notice Styles                                        */
/* ========================================================= */
.cart_notice {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 20px;
}
@media (max-width: 1199px) {
  .cart_notice {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .cart_notice {
    margin-top: 16px;
  }
}
.cart_notice .notice_header {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .cart_notice .notice_header {
    gap: 8px;
  }
}
.cart_notice .notice_header .material-symbols-rounded {
  font-size: 24px;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .cart_notice .notice_header .material-symbols-rounded {
    font-size: 20px;
  }
}
.cart_notice .notice_header h3 {
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 700;
  margin: 0;
}
@media (max-width: 767px) {
  .cart_notice .notice_header h3 {
    font-size: 14px;
  }
}

.notice_content {
  background: rgba(var(--e_prime_rgb), 0.03);
  border-radius: 10px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .notice_content {
    padding: 16px;
    gap: 16px;
  }
}
.notice_content .info_line {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.6;
  margin: 0;
}
.notice_content .info_line span {
  font-size: 20px;
  padding-top: 2px;
}
@media (max-width: 767px) {
  .notice_content .info_line span {
    padding: 0;
  }
}
@media (max-width: 767px) {
  .notice_content .info_line {
    font-size: 14px;
  }
}
.notice_content .notice_section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 767px) {
  .notice_content .notice_section {
    gap: 8px;
  }
}
.notice_content .notice_section h4 {
  color: var(--e_gray_66);
  font-size: 16px;
  font-weight: 700;
  margin: 0;
}
@media (max-width: 767px) {
  .notice_content .notice_section h4 {
    font-size: 14px;
  }
}
.notice_content .notice_section ul {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.notice_content .notice_section ul li {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  padding-left: 12px;
  position: relative;
}
@media (max-width: 767px) {
  .notice_content .notice_section ul li {
    font-size: 12px;
    padding-left: 10px;
  }
}
.notice_content .notice_section ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  color: var(--e_prime);
}
.notice_content .notice_section ul li a {
  color: var(--e_prime);
  font-weight: 400;
}
.notice_content .notice_section ul li a:hover {
  text-decoration: underline;
}
.notice_content .notice_section ul li b {
  color: var(--e_prime);
  font-weight: 700;
}
.notice_content .notice_section ul li.notice_btnbox {
  display: flex;
  align-items: center;
  gap: 5px;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .notice_content .notice_section ul li.notice_btnbox {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ========================================================= */
/* Payment Summary Styles                                    */
/* ========================================================= */
.right_col {
  display: flex;
  flex-direction: column;
  gap: 20px;
  position: sticky;
  top: 100px;
  align-self: flex-start;
  flex: 0 0 300px;
}
@media (max-width: 1199px) {
  .right_col {
    position: relative;
    top: auto;
    width: 100%;
    max-width: 100%;
    flex-direction: row;
  }
}
@media (max-width: 767px) {
  .right_col {
    flex-direction: column;
    flex: auto;
  }
}
.right_col .pay_btns {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.right_col .pay_btns.pay_mpreview .pay_summary {
  display: none;
}
@media (max-width: 1199px) {
  .right_col .pay_btns {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .right_col .pay_btns {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    padding: 20px;
    background: #fff;
    box-shadow: 0 -2px 6px rgba(var(--e_black_rgb), 0.1);
    gap: 10px;
    border-radius: 20px 20px 0 0;
    z-index: 11;
    flex-direction: row;
  }
  .right_col .pay_btns.pay_mpreview {
    flex-direction: column;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary {
    gap: 0px;
    display: flex;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .pay_breakdown {
    gap: 10px;
    max-height: 0;
    overflow: hidden;
    opacity: 0;
    transition: max-height 0.4s ease, opacity 0.3s ease, padding 0.3s ease;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .pay_breakdown.active {
    max-height: 300px;
    opacity: 1;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .pay_breakdown > .material-symbols-rounded {
    width: 100%;
    text-align: center;
    cursor: pointer;
    transition: transform 0.3s ease;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .pay_breakdown > .material-symbols-rounded:hover {
    color: var(--e_prime);
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .total {
    padding: 10px 0;
    cursor: pointer;
    transition: background-color 0.2s ease;
    border-radius: 5px;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .total .pay_value {
    display: flex;
    align-items: center;
    gap: 5px;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .total .pay_value .material-symbols-rounded {
    font-size: 20px;
    transition: transform 0.3s ease;
  }
  .right_col .pay_btns.pay_mpreview .pay_summary .total .pay_value .material-symbols-rounded.rotate {
    transform: rotate(180deg);
  }
}
@media (max-width: 767px) {
  .right_col .btn_lg.btn_esti {
    display: none;
  }
}

.pay_summary {
  background: #fff;
  padding: 20px;
  border-radius: 10px;
  box-shadow: 0 1px 2px rgba(var(--e_black_rgb), 0.15);
  border: 1px solid var(--e_line);
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 1199px) {
  .pay_summary {
    width: 100%;
    flex-direction: row;
  }
}
@media (max-width: 767px) {
  .pay_summary {
    flex-direction: column;
    padding: 0;
    border: 0;
    box-shadow: none;
  }
}
.pay_summary > li {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
}
@media (max-width: 1199px) {
  .pay_summary > li:nth-child(2) .pay_divider {
    display: none;
  }
}
.pay_summary .pay_title {
  text-align: center;
  color: #000;
  font-size: 16px;
  font-weight: 400;
  margin: 0;
}
.pay_summary .pay_divider {
  height: 1px;
  background: var(--e_gray_66);
  width: 100%;
}
.pay_summary .pay_breakdown {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .pay_summary .pay_breakdown {
    gap: 15px;
  }
}
.pay_summary .pay_row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.pay_summary .pay_row .pay_label {
  color: #000;
  font-size: 16px;
  font-weight: 400;
}
.pay_summary .pay_row .pay_label b {
  font-weight: 200;
  font-size: 14px;
  color: var(--e_gray_99);
}
.pay_summary .pay_row .pay_value {
  text-align: right;
  color: #000;
  font-size: 16px;
  font-weight: 300;
}
.pay_summary .pay_row .pay_value.discount {
  color: var(--e_red);
}
.pay_summary .pay_row .pay_value.delivery::before, .pay_summary .pay_row .pay_value.design::before {
  content: "+ ";
}
.pay_summary .pay_row.sub .pay_label, .pay_summary .pay_row.sub .pay_value {
  color: var(--e_gray_66);
}
.pay_summary .pay_row.total .pay_label {
  font-size: 20px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .pay_summary .pay_row.total .pay_label {
    font-size: 18px;
  }
}
.pay_summary .pay_row.total .pay_value {
  color: var(--e_prime);
  font-size: 24px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .pay_summary .pay_row.total .pay_value {
    font-size: 20px;
  }
}
.pay_summary .pay_discount {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .pay_summary .pay_discount {
    gap: 16px;
  }
}
.pay_summary .pay_discount .discount_toggle {
  cursor: pointer;
}
.pay_summary .pay_discount .discount_toggle .pay_label_wrap {
  display: flex;
  align-items: center;
  gap: 5px;
  cursor: pointer;
}
.pay_summary .pay_discount .discount_toggle .pay_label_wrap .arrow {
  font-size: 20px;
  color: var(--e_gray_66);
  transition: transform 0.3s ease;
}
@media (max-width: 767px) {
  .pay_summary .pay_discount .discount_toggle .pay_label_wrap .arrow {
    font-size: 18px;
  }
}
.pay_summary .pay_discount .discount_toggle.active .arrow {
  transform: rotate(180deg);
}
.pay_summary .pay_discount .discount_detail {
  display: none;
  flex-direction: column;
  gap: 20px;
}
@media (max-width: 767px) {
  .pay_summary .pay_discount .discount_detail {
    gap: 16px;
  }
}
.pay_summary .pay_discount .discount_detail.active {
  display: flex;
}
.pay_summary .pay_discount.open .discount_toggle .arrow {
  transform: rotate(180deg);
}
.pay_summary .pay_discount.open .discount_detail {
  display: flex;
}
.pay_summary .pay_disclaimer {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  line-height: 1.5;
  margin: 0;
}
@media (max-width: 767px) {
  .pay_summary .pay_disclaimer {
    font-size: 12px;
  }
}
.pay_summary .pay_agree {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (max-width: 767px) {
  .pay_summary .pay_agree {
    gap: 12px;
  }
}

.checkbox_row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.checkbox_row .check-container label {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
}
@media (max-width: 767px) {
  .checkbox_row .check-container label {
    font-size: 12px;
  }
}
.checkbox_row .check-container.big label {
  font-size: 16px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .checkbox_row .check-container.big label {
    font-size: 14px;
  }
}
.checkbox_row .agree_detail {
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 400;
  text-decoration: underline;
}
@media (max-width: 767px) {
  .checkbox_row .agree_detail {
    font-size: 12px;
  }
}
.checkbox_row .agree_detail:hover {
  color: #000;
}

/* ========================================================= */
/* Order Customer Info Styles                                */
/* ========================================================= */
.cart_item .order_info {
  border-top: 2px solid var(--e_line);
  padding-top: 20px;
}
@media (max-width: 767px) {
  .cart_item .order_info {
    border: none;
  }
}
.cart_item .order_info .info_header {
  border-bottom: none;
  padding-bottom: 0;
}
.cart_item .order_info .info_form {
  background: var(--e_gray_ef);
  padding: 20px;
  border-radius: 10px;
}

.order_info {
  width: 100%;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.order_info .check-container label {
  font-size: 16px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .order_info .check-container label {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .order_info {
    gap: 16px;
  }
}
.order_info .info_header {
  display: flex;
  align-items: center;
  gap: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--e_line);
  flex-wrap: wrap;
  justify-content: space-between;
}
@media (max-width: 1199px) {
  .order_info .info_header {
    gap: 10px;
  }
}
@media (max-width: 767px) {
  .order_info .info_header {
    flex-direction: column;
    align-items: flex-start;
    padding-bottom: 10px;
  }
}
.order_info .info_header .info_title {
  color: #000;
  font-size: 20px;
  font-weight: 500;
  margin: 0;
}
@media (max-width: 767px) {
  .order_info .info_header .info_title {
    font-size: 18px;
  }
}
.order_info .info_form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.order_info .info_form .eq_input_group {
  justify-content: flex-start;
}
@media (max-width: 767px) {
  .order_info .info_form .eq_input_group {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
  .order_info .info_form .eq_input_group .eq_label {
    flex: auto;
    height: 40px;
  }
  .order_info .info_form .eq_input_group.fixed {
    position: static;
    height: auto;
    padding: 0;
  }
}
.order_info .info_form .info_form {
  padding: 0;
}
@media (max-width: 767px) {
  .order_info .info_form {
    gap: 10px;
  }
}
.order_info input, .order_info .col2_wrap, .order_info .custom_select_wrap {
  width: 100%;
  max-width: 500px;
}
.order_info .del_truck, .order_info .del_quick, .order_info .del_direct, .order_info .eq_quick_direct, .order_info .eq_quick_order {
  display: none;
}
.order_info .del_truck.active, .order_info .del_quick.active, .order_info .del_direct.active, .order_info .eq_quick_direct.active, .order_info .eq_quick_order.active {
  display: flex;
  flex-direction: column;
}
.order_info .del_truck .check-type, .order_info .del_quick .check-type, .order_info .del_direct .check-type, .order_info .eq_quick_direct .check-type, .order_info .eq_quick_order .check-type {
  flex-wrap: wrap;
}
.order_info .col2_wrap .check-container {
  min-width: fit-content;
}
.order_info .split_quantity_box {
  display: flex;
  gap: 10px;
  align-items: center;
}
.order_info .split_quantity_box ul {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}

.col2_wrap {
  display: flex;
  gap: 20px;
  width: 100%;
}
@media (max-width: 767px) {
  .col2_wrap {
    flex-direction: column;
    gap: 10px;
  }
}

.order_del_split {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
  gap: 20px;
}
.order_del_split .eq_title {
  display: none;
}
.order_del_split .del_truck .col2_wrap {
  max-width: 600px;
}
.order_del_split.col2-grid > .info_form {
  background: var(--e_gray_ef);
  padding: 20px;
  border-radius: 10px;
}
@media (max-width: 767px) {
  .order_del_split.col2-grid > .info_form {
    padding: 10px 15px;
  }
}
.order_del_split.col2-grid .del_method .del_method_header {
  display: flex;
}
.order_del_split.col2-grid .eq_input_group {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.order_del_split.col2-grid .eq_input_group.row_col {
  display: flex;
  flex-direction: row;
  align-items: center;
}
.order_del_split.col2-grid .eq_input_group.row_col .eq_label {
  flex: 0 0 80px;
}
.order_del_split.col2-grid .eq_input_group .eq_label {
  flex: auto;
  height: auto;
}
.order_del_split.col2-grid .eq_title {
  color: var(--e_gray_99);
  font-size: 16px;
  font-weight: 700;
  display: block;
}
@media (max-width: 767px) {
  .order_del_split.col2-grid .eq_title {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .order_del_split {
    grid-template-columns: 1fr !important;
  }
}
.order_del_split .split_num {
  display: none;
}
.order_del_split .split_num.active {
  display: flex;
  padding: 0;
}
.order_del_split .del_method {
  position: relative;
}
.order_del_split .del_method .del_method_header {
  display: none;
  align-items: flex-start;
  position: relative;
  width: 100%;
}
.order_del_split .del_method .del_method_header .btn_del_method {
  background: none;
  border: none;
  cursor: pointer;
  color: var(--e_gray_99);
  transition: color 0.2s ease;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  top: -10px;
  right: -20px;
}
.order_del_split .del_method .del_method_header .btn_del_method:hover {
  color: var(--e_red);
}
.order_del_split .del_method .del_method_header .btn_del_method .material-symbols-rounded {
  font-size: 24px;
}

.btn_add_delivery_wrap {
  margin-top: 20px;
  width: 100%;
}
.del_method .btn_add_delivery_wrap {
  display: none;
}
.btn_add_delivery_wrap .btn_add_delivery {
  width: 100%;
  padding: 14px 20px;
  background-color: #fff;
  border: 2px dashed var(--e_line);
  border-radius: 10px;
  color: var(--e_gray_66);
  font-size: 14px;
  font-weight: 500;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  transition: all 0.2s ease;
}
.btn_add_delivery_wrap .btn_add_delivery .material-symbols-rounded {
  font-size: 20px;
}
.btn_add_delivery_wrap .btn_add_delivery:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
  background-color: rgba(var(--e_prime_rgb), 0.05);
}

/* ========================================================= */
/* Check Type Radio Tab Styles (Similar to popup_tab)       */
/* ========================================================= */
.tab_radio {
  display: flex;
  background-color: var(--e_gray_ef);
  border-radius: 10px;
  gap: 0;
  width: 100%;
  border: 1px solid var(--e_line);
  max-width: 500px;
}
.tab_radio.fulltype {
  max-width: 100%;
}
.tab_radio .radio-label {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 10px;
  color: #000;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
  transition: all 0.2s ease;
  margin: 0;
  position: relative;
  height: 50px;
  width: 100%;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .tab_radio .radio-label .material-symbols-rounded {
    font-size: 20px;
  }
}
.tab_radio .radio-label input[type=radio] {
  position: absolute;
  opacity: 0;
  pointer-events: none;
}
.tab_radio .radio-label input[type=radio]:checked + .custom-radio {
  display: none;
}
.tab_radio .radio-label input[type=radio]:checked ~ span:not(.custom-radio) {
  color: var(--e_prime);
}
.tab_radio .radio-label .custom-radio {
  display: none;
}
.tab_radio.credit {
  max-width: 100%;
  height: 100px;
}
.tab_radio.credit .radio-label {
  height: 100%;
  font-size: 18px;
}
@media (max-width: 767px) {
  .tab_radio.credit .radio-label {
    flex-direction: column;
    justify-content: center;
    gap: 5px;
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .tab_radio.credit {
    height: 80px;
  }
}
.tab_radio .radio-label:has(input[type=radio]:checked) {
  background-color: #fff;
  color: var(--e_prime);
  border: 1px solid var(--e_line);
  box-shadow: 0 2px 6px rgba(var(--e_prime_rgb), 0.2);
}

.grid_input {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 20px;
  padding: 20px;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .grid_input {
    grid-template-columns: 1fr !important;
  }
}
.grid_input .eq_input_group {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.grid_input .eq_input_group .eq_label {
  flex: auto;
  font-size: 14px;
  color: var(--e_gray_66);
}

/* ========================================================= */
/* 배송지 목록 팝업 스타일                                    */
/* ========================================================= */
.delivery-up-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-height: 50vh;
  overflow-y: auto;
  min-width: 500px;
}
@media (max-width: 767px) {
  .delivery-up-list {
    min-width: auto;
    max-height: calc(100vh - 200px);
    height: 100%;
  }
}
.delivery-up-list > li {
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  padding: 20px;
  display: flex;
  gap: 20px;
  transition: all 0.2s ease;
  cursor: pointer;
}
@media (max-width: 767px) {
  .delivery-up-list > li {
    padding: 15px;
    gap: 10px;
    flex-direction: column;
  }
}
.delivery-up-list > li:hover {
  border-color: rgba(var(--e_prime_rgb), 0.3);
  box-shadow: 0 2px 8px rgba(var(--e_prime_rgb), 0.08);
  background: rgba(var(--e_prime_rgb), 0.03);
}
.delivery-up-list .item_thumb {
  width: 80px;
  height: 80px;
  border-radius: 5px;
  overflow: hidden;
  background: var(--e_gray_ef);
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .delivery-up-list .item_thumb {
    width: 60px;
    height: 60px;
  }
}
.delivery-up-list .item_thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.delivery-up-list .delivery-info {
  display: flex;
  flex-direction: column;
  gap: 5px;
  pointer-events: none;
  flex: 1;
  width: 100%;
}
.delivery-up-list .delivery-info .info-row {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .delivery-up-list .delivery-info .info-row {
    gap: 8px;
  }
}
.delivery-up-list .delivery-info .info-row .label {
  color: var(--e_gray_99);
  font-size: 14px;
  font-weight: 500;
  min-width: 50px;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .delivery-up-list .delivery-info .info-row .label {
    font-size: 12px;
    min-width: 45px;
  }
}
.delivery-up-list .delivery-info .info-row .name, .delivery-up-list .delivery-info .info-row .phone {
  color: #000;
  font-size: 16px;
  font-weight: 600;
}
@media (max-width: 767px) {
  .delivery-up-list .delivery-info .info-row .name, .delivery-up-list .delivery-info .info-row .phone {
    font-size: 14px;
  }
}
.delivery-up-list .delivery-info .info-row .addr {
  color: var(--e_gray_66);
  font-size: 16px;
  font-weight: 400;
  line-height: 1.5;
  flex: 1;
}
@media (max-width: 767px) {
  .delivery-up-list .delivery-info .info-row .addr {
    font-size: 14px;
  }
}
.delivery-up-list .delivery-actions {
  display: flex;
  gap: 5px;
  justify-content: flex-end;
  flex-direction: column;
}
@media (max-width: 767px) {
  .delivery-up-list .delivery-actions {
    gap: 6px;
  }
}

.poup_body .btn_add_delivery_wrap {
  margin-top: 0;
}

.add_con {
  display: none;
}

.edit_add .popup_header h1 {
  display: none;
}
.edit_add .popup_header h1.add_con {
  display: flex;
}
.edit_add .popup_footer {
  display: none;
}
.edit_add .popup_footer.add_con {
  display: flex;
}

.delivery-edit-form {
  display: flex;
  flex-direction: column;
  gap: 20px;
  max-height: 50vh;
  overflow-y: auto;
}
.delivery-edit-form .eq_input_group {
  flex-direction: column;
  align-items: flex-start;
  gap: 5px;
}
.delivery-edit-form .eq_input_group .eq_label {
  flex: auto;
  height: auto;
}
.delivery-edit-form .eq_input_group input {
  min-width: 300px;
}
@media (max-width: 767px) {
  .delivery-edit-form .eq_input_group input {
    min-width: auto;
  }
}
@media (max-width: 767px) {
  .delivery-edit-form {
    gap: 16px;
  }
}

/* ========================================================= */
/* Mobile PDF Download Button (767px 이하에서만 표시)        */
/* ========================================================= */
.btn_pdfdown {
  display: none; /* 기본적으로 숨김 */
}
@media (max-width: 767px) {
  .btn_pdfdown {
    display: block; /* 모바일에서만 표시 */
  }
}

.order-detail-pop {
  width: 80vw;
  max-width: 600px;
}
@media (max-width: 767px) {
  .order-detail-pop {
    width: 100%;
    max-width: 100%;
  }
}
.order-detail-pop h3 {
  font-size: 18px;
  font-weight: 600;
  color: #000;
}
.order-detail-pop .popup_body {
  max-height: 60vh;
  overflow-y: auto;
}
@media (max-width: 767px) {
  .order-detail-pop .popup_body {
    max-height: 100%;
  }
}

.btn_cartorder::before {
  content: attr(data-prefix);
}

/* 장바구니 주문하기 버튼 접두사 추가 */
/* Basic style*/
/* ========================================================= */
/* Estimate Print Popup Styles                              */
/* ========================================================= */
.print-popup-area .popup_layout.estimate-layout {
  max-width: 1000px;
  width: 90vw;
}
.print-popup-area .estimate-print-area {
  background: #fff;
  padding: 0 40px;
  max-height: 60vh;
  overflow-y: auto;
}
.print-popup-area .estimate-title {
  text-align: center;
  font-size: 32px;
  font-weight: 700;
  margin: 0 0 20px;
  border-bottom: 2px solid var(--e_gray_33);
  padding-bottom: 20px;
  color: #000;
}
.print-popup-area .estimate-content {
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.print-popup-area .estimate-section.customer-info {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.print-popup-area .info-group.customer-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 10px;
}
.print-popup-area .info-group.customer-details .info-row {
  display: flex;
  align-items: flex-start;
  gap: 5px;
  flex-direction: column;
}
.print-popup-area .info-group.customer-details .info-row .label {
  color: var(--e_gray_66);
  font-size: 12px;
}
.print-popup-area .info-group.customer-details .info-row .value {
  flex: 1;
  color: #000;
  font-size: 14px;
}
.print-popup-area .company-info-table {
  width: 100%;
  border-collapse: collapse;
  border: 1px solid var(--e_line);
}
.print-popup-area .company-info-table th, .print-popup-area .company-info-table td {
  padding: 10px 14px;
  border: 1px solid var(--e_line);
  font-size: 14px;
  text-align: left;
}
.print-popup-area .company-info-table th {
  min-width: 90px;
  background: var(--e_gray_ef);
  color: #000;
  font-weight: 400;
  text-align: center;
}
.print-popup-area .company-info-table td {
  background: #fff;
  color: #000;
  font-weight: 400;
}
.print-popup-area .estimate-section.estimate-details {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
  gap: 10px 40px;
}
.print-popup-area .detail-label {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.print-popup-area .estimate-total-summary {
  border-top: 2px solid var(--e_gray_33);
  padding: 20px 0 0;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.print-popup-area .estimate-total-summary .summary-text {
  font-size: 14px;
  text-align: right;
}
.print-popup-area .estimate-total-summary .summary-total {
  font-size: 16px;
  text-align: right;
}
.print-popup-area .estimate-total-summary .summary-total span {
  color: var(--e_prime);
  font-size: 20px;
  font-weight: 700;
}
.print-popup-area .popup_footer.estimate-actions {
  display: flex;
  justify-content: center;
  gap: 12px;
}
.print-popup-area .popup_footer.estimate-actions button {
  flex: 1;
  max-width: 200px;
}

@media (max-width: 767px) {
  .estimate-print-area .detail-table {
    display: table;
    border: 1px solid var(--e_gray_cc);
    border-radius: 0;
    background: transparent;
    box-shadow: none;
    overflow: visible;
  }
  .estimate-print-area .detail-table thead th {
    display: table-cell;
  }
  .estimate-print-area .detail-table tbody {
    display: table-row-group;
  }
  .estimate-print-area .detail-table tbody tr {
    display: table-row;
    width: auto;
  }
  .estimate-print-area .detail-table tbody th {
    display: table-cell;
  }
  .estimate-print-area .detail-table tbody td {
    display: table-cell;
    justify-content: flex-start;
    padding: 10px 14px;
    border: 1px solid var(--e_gray_cc);
    border-bottom: 1px solid var(--e_gray_cc);
  }
  .estimate-print-area .detail-table tbody td::before {
    display: none;
  }
}

/* ========================================================= */
/* 인수증 그리드 테이블 Styles (기존 company-info-table 기반) */
.receipt-top-info {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
.receipt-top-info .receipt-date {
  font-size: 20px;
  font-weight: 500;
  color: #000;
}
.receipt-top-info .receipt-note {
  font-size: 16px;
  color: var(--e_gray_66);
  font-weight: 400;
}

.company-info-table.receipt-grid {
  width: 100%;
}
.company-info-table.receipt-grid th, .company-info-table.receipt-grid td {
  padding: 12px 10px;
  font-size: 14px;
  border: 1px solid var(--e_line) !important;
  vertical-align: middle;
}
.company-info-table.receipt-grid th {
  background: #fbfbfc !important;
  font-weight: 500 !important;
  text-align: center;
  color: var(--e_gray_33);
}
.company-info-table.receipt-grid td {
  text-align: left;
  color: var(--e_gray_33);
}
.company-info-table.receipt-grid td.text-center {
  text-align: center;
}
.company-info-table.receipt-grid .receipt-total-row {
  background: #f8fbff !important;
}
.company-info-table.receipt-grid .receipt-total-row td {
  padding: 14px 10px;
  font-weight: 500;
}
.company-info-table.receipt-grid .receipt-total-row .total-label {
  text-align: center;
  color: var(--e_prime); /* 시스템 주요 파란색 */
}
.company-info-table.receipt-grid .receipt-total-row .total-value {
  text-align: center;
  color: var(--e_prime);
  font-size: 16px;
  font-weight: 700;
}

/* 절취선 스타일 */
.tear-line {
  position: relative;
  width: 100%;
  margin: 40px 0;
  border-top: 1px dashed #cccccc;
  text-align: center;
}
.tear-line .tear-text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: #fff;
  padding: 4px 16px;
  font-size: 12px;
  color: var(--e_gray_66);
  border: 1px solid #cccccc;
  border-radius: 20px;
  font-weight: 500;
  letter-spacing: 2px;
}

/* ========================================================= */
/* Print Styles - estimate-print-area Only                  */
/* ========================================================= */
@media print {
  @page {
    size: A4;
    margin: 40px 0;
  }
  * {
    -webkit-print-color-adjust: exact !important;
    print-color-adjust: exact !important;
  }
  body {
    background: #fff !important;
    margin: 0 !important;
  }
  /* 1) 견적 팝업을 제외한 모든 요소 숨김 */
  body > *:not(.popup_wrap.popup-estimate-print) {
    display: none !important;
  }
  /* 2) 팝업 래퍼 구조를 출력용으로 재정렬 */
  .popup_wrap.popup-estimate-print {
    position: static !important;
    display: block !important;
    width: auto !important;
    height: auto !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    align-items: initial !important;
    justify-content: initial !important;
  }
  .popup_wrap.popup-estimate-print .popup_dim {
    display: none !important;
  }
  .popup_wrap.popup-estimate-print .popup_container, .print-popup-area, .print-popup-area .popup_layout, .print-popup-area .popup_body {
    position: static !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    overflow: visible !important;
  }
  /* 3) 팝업 헤더/푸터는 숨김 */
  .print-popup-area .popup_header, .print-popup-area .popup_footer {
    display: none !important;
  }
  /* 4) 실제 출력 영역만 A4 사이즈로 중앙 정렬 */
  .print-popup-area .estimate-print-area {
    width: 800px !important;
    min-height: auto !important;
    margin: 0 auto !important;
    padding: 30px !important;
    background: #fff !important;
    box-shadow: none !important;
    max-height: none !important;
    overflow: visible !important;
    page-break-after: avoid !important;
    page-break-inside: auto !important;
  }
  /* 5) 표/섹션은 중간 분리 방지 */
  .print-popup-area .estimate-title {
    page-break-after: avoid !important;
  }
  .print-popup-area .estimate-section, .print-popup-area .detail-table, .print-popup-area .company-info-table, .print-popup-area .detail-table tr, .print-popup-area .company-info-table tr {
    page-break-inside: avoid !important;
  }
}
/* Basic style*/
/* =========================================================
/* Top Area Styles                                          */
/* ========================================================= */
@media (max-width: 767px) {
  .my_detail .top_area, .my_detail aside {
    display: none;
  }
  .s-order-list .cart_item .item_info .item_details .item_opts, .s-order-list .item_qnt {
    display: none;
  }
  .s-order-list .cart_item .item_actions .eq_price {
    display: none;
  }
}
.top_area {
  display: flex;
  gap: 20px;
}
@media (max-width: 767px) {
  .top_area {
    gap: 10px;
  }
}
.top_area .top_con {
  display: flex;
  flex-direction: column;
  gap: 20px;
  flex: 2;
}
@media (max-width: 767px) {
  .top_area .top_con {
    display: none;
  }
}

.top_card {
  background: var(--e_gray_ef);
  border: 1px solid var(--e_line);
  border-radius: 20px;
  padding: 20px;
}
@media (max-width: 767px) {
  .top_card {
    padding: 15px;
  }
}

/* Profile Card */
.profile_card {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 15px;
  width: 280px;
}
@media (max-width: 767px) {
  .profile_card {
    width: 100%;
    flex-direction: row;
    gap: 5px;
    justify-content: space-between;
  }
}
.profile_card .user_info {
  display: flex;
  align-items: center;
  gap: 10px;
}
.profile_card .user_info .user_badge {
  padding: 5px 10px;
  background: var(--e_prime);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 700;
  color: #fff;
  text-transform: uppercase;
}
@media (max-width: 767px) {
  .profile_card .user_info .user_badge {
    font-size: 10px;
    padding: 5px;
    line-height: 100%;
    font-weight: 300;
  }
}
.profile_card .user_info .user_name {
  display: flex;
  align-items: center;
  gap: 7px;
  font-size: 16px;
  font-weight: 400;
  color: #000;
}
@media (max-width: 767px) {
  .profile_card .user_info .user_name {
    font-size: 14px;
  }
}
.profile_card .user_info .user_name .material-symbols-rounded {
  font-size: 12px;
}
.profile_card .user_thumb {
  width: 110px;
  height: 110px;
  border-radius: 55px;
  background: var(--e_line);
  position: relative;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 1199px) {
  .profile_card .user_thumb {
    display: none;
  }
}
.profile_card .user_thumb .material-symbols-rounded {
  font-size: 60px;
  color: var(--e_gray_99);
}
.profile_card .user_thumb img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  z-index: 1;
}
.profile_card .user_thumb img:not([src]), .profile_card .user_thumb img[src=""], .profile_card .user_thumb img[src*=placeholder] {
  display: none;
}
.profile_card .user_thumb .thumb_remove {
  position: absolute;
  top: 5px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid var(--e_line);
  display: none;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
}
.profile_card .user_thumb .thumb_remove .material-symbols-rounded {
  font-size: 16px;
  color: var(--e_gray_66);
}
.profile_card .user_thumb .thumb_remove:hover {
  background: var(--e_prime);
  border-color: var(--e_prime);
}
.profile_card .user_thumb .thumb_remove:hover .material-symbols-rounded {
  color: #fff;
}
.profile_card .user_thumb.has-image > .material-symbols-rounded {
  display: none;
}
.profile_card .user_thumb.has-image .thumb_remove {
  display: none;
}
.profile_card .user_thumb.has-image:hover .thumb_remove {
  display: flex;
}
.profile_card .user_thumb .thumb_add {
  cursor: pointer;
  z-index: 1;
}
.profile_card .user_id {
  font-size: 16px;
  font-weight: 500;
  color: #000;
}
@media (max-width: 1199px) {
  .profile_card .user_id {
    display: none;
  }
}
.profile_card .quick_btns {
  display: flex;
  align-items: center;
  gap: 20px;
  align-self: stretch;
  justify-content: center;
  padding: 10px 0;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .profile_card .quick_btns {
    gap: 10px;
    padding: 5px 10px;
  }
}
.profile_card .quick_btns .divider {
  width: 1px;
  height: 40px;
  background: var(--e_line);
}
@media (max-width: 767px) {
  .profile_card .quick_btns .divider {
    height: 20px;
  }
}
.profile_card .quick_btns .quick_btn {
  display: flex;
  align-items: center;
  gap: 4px;
  background: none;
  border: none;
  cursor: pointer;
  font-size: 16px;
  font-weight: 500;
  color: var(--e_gray_66);
  transition: color 0.2s;
  padding: 0;
}
@media (max-width: 767px) {
  .profile_card .quick_btns .quick_btn {
    height: auto;
    font-size: 14px;
  }
  .profile_card .quick_btns .quick_btn .quick_btn_text {
    display: none;
  }
}
.profile_card .quick_btns .quick_btn:hover {
  color: #000;
}
.profile_card .quick_btns .quick_btn img {
  width: 24px;
}
@media (max-width: 767px) {
  .profile_card .quick_btns .quick_btn img {
    width: 20px;
  }
}
.profile_card .quick_btns .quick_btn .material-symbols-rounded {
  font-size: 24px;
}
@media (max-width: 767px) {
  .profile_card .quick_btns .quick_btn .material-symbols-rounded {
    font-size: 20px;
  }
}
.profile_card .quick_btns .quick_btn .badge {
  font-size: 16px;
  font-weight: 500;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .profile_card .quick_btns .quick_btn .badge {
    font-size: 14px;
  }
}

/* Menu Card */
.menu_card {
  flex: 1;
}
@media (max-width: 1199px) {
  .menu_card {
    display: none;
  }
}
.menu_card .menu_grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(85px, 1fr));
  gap: 10px;
}
.menu_card .menu_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  text-decoration: none;
  transition: all 0.2s;
}
.menu_card .menu_item:hover .menu_ico {
  border-color: var(--e_prime);
}
.menu_card .menu_item:hover .menu_ico .material-symbols-rounded {
  color: var(--e_prime);
}
.menu_card .menu_item:hover span {
  color: var(--e_prime);
}
.menu_card .menu_item.active .menu_ico {
  border-color: var(--e_prime);
}
.menu_card .menu_item.active .menu_ico .material-symbols-rounded {
  color: var(--e_prime);
}
.menu_card .menu_item.active span {
  color: #000;
}
.menu_card .menu_item .menu_ico {
  width: 60px;
  height: 60px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  transition: border-color 0.2s;
}
.menu_card .menu_item .menu_ico .material-symbols-rounded {
  font-size: 34px;
  color: var(--e_gray_66);
}
.menu_card .menu_item span {
  font-size: 16px;
  font-weight: 400;
  color: #000;
  text-align: center;
  line-height: 1.5;
}

/* Stat Cards */
.stat_cards {
  display: flex;
  align-self: stretch;
  gap: 20px;
  flex: 2;
}
@media (max-width: 1199px) {
  .stat_cards {
    flex-direction: row;
  }
}
@media (max-width: 767px) {
  .stat_cards {
    flex-direction: column;
    gap: 10px;
  }
}

.stat_card {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  gap: 10px;
  padding: 19px;
  background: var(--e_gray_ef);
  border: 1px solid var(--e_line);
  border-radius: 20px;
  flex: 1;
}
@media (max-width: 767px) {
  .stat_card {
    padding: 15px;
  }
}
.stat_card .stat_value {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  text-align: center;
}
@media (max-width: 1199px) {
  .stat_card .stat_value {
    font-size: 16px;
  }
}
.stat_card .stat_label {
  font-size: 16px;
  font-weight: 400;
  color: #000;
  text-align: center;
  letter-spacing: -0.05em;
}
@media (max-width: 1199px) {
  .stat_card .stat_label {
    font-size: 12px;
  }
}

/* =========================================================
/* My Page Layout                                           */
/* ========================================================= */
.my_layout {
  display: flex;
  gap: 40px;
  margin: 60px 0 0;
}
@media (max-width: 1199px) {
  .my_layout {
    flex-direction: column;
    gap: 30px;
    margin: 40px 0;
  }
}
@media (max-width: 767px) {
  .my_layout {
    margin: 0;
    gap: 20px;
  }
}

/* Sidebar */
.my_side {
  width: 260px;
  flex-shrink: 0;
  display: flex;
  flex-direction: column;
}
@media (max-width: 1199px) {
  .my_side {
    width: 100%;
    flex-direction: row;
    justify-content: space-between;
    position: relative;
    padding: 20px 0 80px;
    border-bottom: 1px solid var(--e_line);
  }
  .my_side.no_sub {
    padding: 20px 0;
  }
}
@media (max-width: 767px) {
  .my_side {
    padding: 20px 0 140px;
  }
}
.my_side .side_group {
  display: flex;
  flex-direction: column;
  gap: 20px;
  padding: 20px;
  border-top: 1px solid var(--e_line);
}
.my_side .side_group:first-child {
  border-top: none;
  padding-top: 0;
}
@media (max-width: 1199px) {
  .my_side .side_group {
    padding: 0;
    border: none;
  }
}
.my_side .side_group.active .side_tit {
  color: var(--e_prime);
}
.my_side .side_group.active .side_tit a {
  color: var(--e_prime);
}
@media (max-width: 1199px) {
  .my_side .side_group.active .side_list {
    display: flex;
    position: absolute;
    left: 0;
    top: 60px;
    width: 100%;
  }
}
.my_side .side_tit {
  font-size: 16px;
  font-weight: 700;
  margin: 0;
  color: inherit;
}
.my_side .side_tit a {
  color: #000;
}
.my_side .side_tit a:hover {
  color: var(--e_prime);
}
.my_side .side_tit a.active {
  color: var(--e_prime);
}
.my_side .side_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 1199px) {
  .my_side .side_list {
    flex-direction: row;
    flex-wrap: wrap;
    display: none;
  }
}
.my_side .side_list li a {
  font-size: 16px;
  font-weight: 400;
  color: #000;
  text-decoration: none;
  display: block;
  transition: color 0.2s;
}
.my_side .side_list li a:hover {
  color: var(--e_prime);
}
.my_side .side_list li a.active {
  color: var(--e_prime);
  font-weight: 500;
}
@media (max-width: 1199px) {
  .my_side .side_list li a.active {
    color: #fff;
    background: var(--e_prime);
    border: 1px solid var(--e_prime);
  }
}
@media (max-width: 1199px) {
  .my_side .side_list li a {
    font-size: 14px;
    border: 1px solid var(--e_line);
    border-radius: 20px;
    padding: 10px 15px;
  }
}
@media (max-width: 767px) {
  .my_side .side_list li a {
    font-size: 14px;
    padding: 10px 10px;
  }
}

/* Main Content */
.my_main {
  flex: 1;
  min-width: 0;
}
@media (max-width: 1199px) {
  .my_main {
    width: 100%;
  }
}

.my_cont {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (max-width: 767px) {
  .my_cont {
    gap: 20px;
  }
}
.my_cont .rv_pagi {
  border: none;
}
.my_cont .col2_wrap .eq_input_group {
  width: 100%;
}

.order-search {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .order-search {
    flex-direction: column;
    align-items: stretch;
    gap: 15px;
  }
}
.order-search .search-date {
  display: flex;
  align-items: center;
  gap: 10px;
}
.order-search .search-date .date_input, .order-search .search-date input[type=date] {
  max-width: 150px;
}
@media (max-width: 767px) {
  .order-search .search-date .date_input, .order-search .search-date input[type=date] {
    max-width: 100%;
    flex: 1;
    padding: 0 10px;
  }
}
@media (max-width: 767px) {
  .order-search .search-date {
    width: 100%;
    justify-content: space-between;
    gap: 5px;
  }
}
.order-search .search-box-wrap {
  max-width: 300px;
}
@media (max-width: 767px) {
  .order-search .search-box-wrap {
    max-width: none;
    width: 100%;
  }
}

.my_tit {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin: 0;
}
@media (max-width: 1199px) {
  .my_tit {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .my_tit {
    font-size: 18px;
  }
}
.my_tit .coupon_count {
  font-size: 16px;
  font-weight: 500;
  color: var(--e_gray_66);
}
.my_tit .coupon_count em {
  font-style: normal;
  color: var(--e_prime);
  font-weight: 700;
}
@media (max-width: 767px) {
  .my_tit .coupon_count {
    font-size: 14px;
  }
}

/* Info Section */
.info_seccon {
  display: flex;
  flex-direction: column;
  gap: 60px;
  align-items: center;
}
.info_seccon .delivery-up-list {
  max-height: 100%;
}
.info_seccon .btn_area {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-top: 26px;
  width: 100%;
  justify-content: center;
}
@media (max-width: 767px) {
  .info_seccon .btn_area {
    flex-direction: column;
    gap: 10px;
    margin-top: 20px;
  }
}
.info_seccon .btn_area .btn_lg {
  width: 250px;
}
@media (max-width: 767px) {
  .info_seccon .btn_area .btn_lg {
    width: 100%;
  }
}

.my_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .my_header {
    flex-direction: column;
    align-items: stretch;
    gap: 15px;
  }
}

.info_sec {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
}
.info_sec.two_col {
  flex-direction: row;
  gap: 40px;
}
@media (max-width: 1199px) {
  .info_sec.two_col {
    flex-direction: column;
    gap: 30px;
  }
}
.info_sec.two_col .min_col {
  flex: 0 0 400px;
}
@media (max-width: 1199px) {
  .info_sec.two_col .min_col {
    flex: none;
    width: 100%;
  }
}
@media (max-width: 767px) {
  .info_sec {
    gap: 15px;
  }
}

.sec_head {
  display: flex;
  flex-direction: column;
  gap: 21px;
}
@media (max-width: 767px) {
  .sec_head {
    gap: 15px;
  }
}

.sec_tit {
  font-size: 24px;
  font-weight: 400;
  color: #000;
  margin: 0;
  padding-bottom: 20px;
  border-bottom: 1px solid #000;
}
.sec_tit.active {
  color: var(--e_prime);
  border-bottom-color: var(--e_prime);
}
@media (max-width: 1199px) {
  .sec_tit {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .sec_tit {
    font-size: 18px;
    padding-bottom: 15px;
  }
}

.sec_desc {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.sec_desc p {
  font-size: 16px;
  font-weight: 400;
  color: var(--e_gray_66);
  margin: 0;
  line-height: 1.5;
}
@media (max-width: 1199px) {
  .sec_desc {
    font-size: 14px;
  }
}
@media (max-width: 767px) {
  .sec_desc {
    font-size: 12px;
  }
}

/* Info Row */
.my_contents .info_form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.my_contents .info_form input {
  max-width: 500px;
}
.my_contents .info_form.refund_form input {
  max-width: 100%;
}
.my_contents .info_sec .eq_input_group {
  border-bottom: 1px solid var(--e_line);
  padding-bottom: 20px;
}
.my_contents .info_sec .eq_input_group.row_col {
  flex-direction: column;
}
.my_contents .info_sec .eq_input_group.row_col > li {
  display: flex;
  align-items: center;
}
.my_contents .info_sec .eq_input_group .eq_label {
  flex: 0 0 150px;
}
@media (max-width: 1199px) {
  .my_contents .info_sec .eq_input_group .eq_label {
    flex: 0 0 120px;
  }
}
@media (max-width: 767px) {
  .my_contents .info_sec .eq_input_group .eq_label {
    flex: 0 0 100px;
    gap: 0;
  }
}
.my_contents .info_sec .eq_input_group .col2_wrap {
  max-width: 500px;
}
@media (max-width: 1199px) {
  .my_contents .info_sec .eq_input_group .col2_wrap {
    max-width: 400px;
  }
}
@media (max-width: 767px) {
  .my_contents .info_sec .eq_input_group .col2_wrap {
    max-width: 100%;
  }
}
.my_contents .info_sec .eq_input_group.eq_input_items {
  flex: auto;
}
@media (max-width: 1199px) {
  .my_contents .info_sec .eq_input_group.eq_input_items.items-2 {
    flex-direction: row;
    gap: 0;
  }
}
.my_contents .info_sec .refund_form {
  width: 100%;
  flex: 1;
}
.my_contents .info_sec .refund_form .inquiry_textarea {
  min-height: 200px;
}
@media (max-width: 1199px) {
  .my_contents .info_sec .refund_form .inquiry_textarea {
    min-height: 150px;
  }
}
@media (max-width: 767px) {
  .my_contents .info_sec .refund_form .inquiry_textarea {
    min-height: 100px;
  }
}
.my_contents .info_sec .refund_form .delivery-up-list .delivery-actions {
  flex-direction: row;
  gap: 10px;
}
@media (max-width: 767px) {
  .my_contents .info_sec .refund_form .delivery-up-list .delivery-actions {
    justify-content: flex-end;
    width: 100%;
  }
}
.my_contents .info_sec .refund_form .eq_input_group {
  flex-direction: column;
  gap: 15px;
  border: none;
  align-items: stretch;
}
.my_contents .info_sec .refund_form .eq_input_group .eq_label {
  flex: none;
  height: auto;
}
.my_contents .info_sec .refund_form .eq_input_group .delivery-up-list {
  max-height: 100%;
  min-height: auto;
  overflow-y: visible;
}
.my_contents .info_sec .refund_form .eq_input_group .delivery-up-list > li {
  flex-direction: column;
  gap: 15px;
}
.my_contents .info_sec .refund_form .eq_input_group .delivery-up-list > li .delivery-infocon {
  display: flex;
  gap: 20px;
  align-items: center;
}
@media (max-width: 767px) {
  .my_contents .info_sec .refund_form .eq_input_group .delivery-up-list > li .delivery-infocon {
    flex-direction: column;
    gap: 10px;
  }
}
.my_contents .cart_wrap .cart_item {
  padding-right: 20px;
}
.my_contents .cart_wrap .cart_item.done {
  background: var(--e_gray_ef);
}
.my_contents .cart_wrap .cart_item .item_process {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 15px;
  position: relative;
  overflow: hidden;
}
@media (max-width: 767px) {
  .my_contents .cart_wrap .cart_item .item_process {
    flex-direction: column;
    gap: 10px;
  }
}
.my_contents .cart_wrap .cart_item .item_process .process_step {
  flex: 1;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_99);
  position: relative;
}
.my_contents .cart_wrap .cart_item .item_process .process_step.on {
  color: var(--e_prime);
  font-weight: 600;
}
.my_contents .cart_wrap .cart_item .item_process .process_step::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  width: 100%;
  height: 2px;
  background: var(--e_line);
  transform: translateY(-50%);
  z-index: -1;
}
.my_contents .cart_wrap .cart_item .item_process .process_step:last-child::after {
  display: none;
}
.my_contents .cart_wrap .cart_item .item_process.re_process {
  width: auto;
  gap: 20px;
  justify-content: flex-end;
  margin: 0;
}
.my_contents .cart_wrap .cart_item .item_tag {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
.my_contents .cart_wrap .cart_item .item_tag span {
  background: #fff;
  padding: 5px 10px;
  border-radius: 5px;
  font-size: 14px;
  font-weight: 500;
  border: 1px solid var(--e_line);
}

/* SNS List */
.sns_list {
  display: flex;
  align-items: center;
  padding-top: 20px;
  justify-content: space-between;
}
@media (max-width: 1199px) {
  .sns_list {
    gap: 60px;
  }
}
@media (max-width: 767px) {
  .sns_list {
    gap: 20px;
  }
}

.sns_item {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .sns_item {
    gap: 5px;
    flex-direction: column;
  }
}
.sns_item .sns_ico {
  width: 100px;
  height: 100px;
  border-radius: 60px;
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
.sns_item .sns_ico img {
  width: 40%;
  aspect-ratio: 1/1;
  object-fit: contain;
}
@media (max-width: 767px) {
  .sns_item .sns_ico {
    width: 70px;
    height: 70px;
  }
}
.sns_item .sns_info {
  display: flex;
  align-items: center;
  gap: 10px;
}
@media (max-width: 767px) {
  .sns_item .sns_info {
    flex-direction: column;
    gap: 5px;
  }
}
.sns_item .sns_name {
  font-size: 16px;
  font-weight: 400;
  color: #000;
}
.sns_item .sns_check {
  display: none;
}
.sns_item .sns_toggle {
  width: 42px;
  height: 22px;
  border-radius: 30px;
  background: var(--e_gray_99);
  position: relative;
  cursor: pointer;
  transition: background 0.3s;
  flex-shrink: 0;
}
.sns_item .sns_toggle::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 2px;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  background: #fff;
  transition: transform 0.3s;
}
.sns_item .sns_check:checked + .sns_toggle {
  background: var(--e_prime);
}
.sns_item .sns_check:checked + .sns_toggle::before {
  transform: translateX(20px);
}
.sns_item.naver .sns_ico {
  background: #00C73C;
}
.sns_item.naver .sns_btn {
  background: var(--e_line);
}
.sns_item.kakao .sns_ico {
  background: #FFE800;
}
.sns_item.kakao .sns_btn {
  background: var(--e_line);
}
.sns_item.google .sns_ico {
  background: var(--e_gray_ef);
}
.sns_item.google .sns_btn {
  background: var(--e_line);
}

/* Button Area */
.company-cert-upload {
  width: 100%;
  flex-direction: row;
  align-items: center;
  justify-content: flex-start;
  padding: 20px;
}
.company-cert-upload img, .company-cert-upload .upicon {
  display: none;
}
.company-cert-upload .biz-upload-desc {
  text-align: left;
}

.favorite-list .item::before {
  display: none;
}
.favorite-list .check-container {
  position: absolute;
  top: 10px;
  left: 10px;
  z-index: 1;
}

.itemlist_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

/* =========================================================
/* Order Process Styles                                     */
/* ========================================================= */
/* Process Steps Container */
.process_steps {
  display: flex;
  align-items: center;
  gap: 20px;
  position: relative;
  z-index: 1;
}
.process_steps::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  background: var(--e_line);
  transform: translateY(-50%);
  z-index: -1;
}

/* Individual Process Item */
.process_item {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0px;
  flex: 1;
  width: 90px;
  aspect-ratio: 1/1;
  border-radius: 50%;
  justify-content: center;
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .process_item {
    width: 50px;
    display: none;
  }
}
.process_item.active {
  background: var(--e_prime);
  min-width: 80px;
}
.process_item.active .process_icon .material-symbols-rounded {
  color: #fff;
}
.process_item.active .process_label {
  color: #fff;
  font-weight: 600;
  display: block;
}
@media (max-width: 767px) {
  .process_item.active {
    display: flex;
  }
}
@media (max-width: 767px) {
  .process_item.active ~ .process_item {
    display: flex;
  }
}

/* Process Icon */
.process_icon {
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background 0.3s;
}
.process_icon .material-symbols-rounded {
  color: var(--e_gray_cc);
  font-variation-settings: "wght" 500;
}

/* Process Label */
.process_label {
  font-size: 14px;
  font-weight: 400;
  color: var(--e_gray_99);
  text-align: center;
  white-space: nowrap;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .process_label {
    display: none;
  }
}

/* Process Circle (원형 프로그레스 바) */
.process_circle {
  position: relative;
  width: 90px;
  height: 90px;
}
@media (max-width: 1199px) {
  .process_circle {
    display: none;
  }
}

.circle_svg {
  width: 100%;
  height: 100%;
  transform: rotate(-90deg);
}

.circle_bg {
  fill: none;
  stroke: var(--e_line);
  stroke-width: 10;
}

.circle_progress {
  fill: none;
  stroke: var(--e_prime);
  stroke-width: 10;
  stroke-linecap: round;
  stroke-dasharray: 251.2; /* 2 * π * 40 = 251.2 */
  stroke-dashoffset: 251.2;
  transition: stroke-dashoffset 0.6s ease;
}

/* 퍼센트에 따른 진행률 */
.circle_progress[data-percent="10"] {
  stroke-dashoffset: 226.08;
}

/* 90% */
.circle_progress[data-percent="20"] {
  stroke-dashoffset: 200.96;
}

/* 80% */
.circle_progress[data-percent="30"] {
  stroke-dashoffset: 175.84;
}

/* 70% */
.circle_progress[data-percent="40"] {
  stroke-dashoffset: 150.72;
}

/* 60% */
.circle_progress[data-percent="50"] {
  stroke-dashoffset: 125.6;
}

/* 50% */
.circle_progress[data-percent="60"] {
  stroke-dashoffset: 100.48;
}

/* 40% */
.circle_progress[data-percent="70"] {
  stroke-dashoffset: 75.36;
}

/* 30% */
.circle_progress[data-percent="80"] {
  stroke-dashoffset: 50.24;
}

/* 20% */
.circle_progress[data-percent="90"] {
  stroke-dashoffset: 25.12;
}

/* 10% */
.circle_progress[data-percent="100"] {
  stroke-dashoffset: 0;
}

/* 0% */
.circle_text {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 16px;
  font-weight: 700;
  color: var(--e_prime);
  text-align: center;
}
@media (max-width: 767px) {
  .circle_text {
    font-size: 14px;
  }
}

.process_btn {
  display: flex;
  flex-direction: column;
  gap: 5px;
  width: 150px;
}
@media (max-width: 767px) {
  .process_btn {
    flex-direction: row;
    width: 100%;
    justify-content: flex-end;
  }
}

/* =========================================================
/* Comment Section (요청사항 및 코멘트)                     */
/* ========================================================= */
.item_comment {
  padding-top: 20px;
  background: #fff;
  border-top: 1px solid var(--e_line);
}
@media (max-width: 767px) {
  .item_comment {
    padding-top: 15px;
  }
}
.item_comment h4 {
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .item_comment h4 {
    font-size: 14px;
  }
}
.item_comment.inquiry_view .comment_actions {
  flex-direction: row;
  justify-content: space-between;
}
.item_comment.inquiry_view .comment_list {
  max-height: none;
  overflow: visible;
}

.comment_list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  margin-top: 10px;
  max-height: 300px;
  overflow-y: auto;
  padding: 10px;
  background: var(--e_gray_ef);
  border-radius: 10px;
  /* 코멘트 없을 때 */
}
.comment_list .comment_empty {
  display: none;
  padding: 30px 20px;
  text-align: center;
  font-size: 14px;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .comment_list .comment_empty {
    padding: 20px 15px;
    font-size: 12px;
  }
}
.comment_list:not(:has(.comment_item)) .comment_empty {
  display: block;
}

.comment_item {
  position: relative;
  display: flex;
  flex-direction: column;
  max-width: 80%;
  padding: 12px 15px;
  border-radius: 16px;
}
@media (max-width: 767px) {
  .comment_item {
    max-width: 90%;
    padding: 10px 12px;
  }
}
.comment_item.admin {
  align-self: flex-start;
  background: #fff;
  border-bottom-left-radius: 4px;
  box-shadow: 0 1px 2px rgba(var(--e_black_rgb), 0.08);
  align-items: flex-start;
}
.comment_item.admin::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -8px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 0 10px 10px 0;
  border-color: transparent #fff transparent transparent;
}
.comment_item.admin .comment_author {
  color: var(--e_prime);
  font-weight: 700;
}
.comment_item.admin .comment_meta {
  justify-content: flex-start;
}
.comment_item.admin .comment_file {
  background: var(--e_gray_ef);
  padding: 3px 6px;
  border-radius: 8px;
}
.comment_item.admin .comment_file:hover {
  background: rgba(var(--e_prime_rgb), 0.1);
  text-decoration: none;
}
.comment_item.user {
  align-self: flex-end;
  background: var(--e_prime);
  border-bottom-right-radius: 4px;
  color: #fff;
  align-items: flex-end;
}
.comment_item.user::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: -8px;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 10px 10px 0 0;
  border-color: var(--e_prime) transparent transparent transparent;
}
.comment_item.user .comment_text {
  color: #fff;
}
.comment_item.user .comment_author {
  color: rgba(var(--e_white_rgb), 0.8);
  font-weight: 500;
}
.comment_item.user .comment_date {
  color: rgba(var(--e_white_rgb), 0.7);
}
.comment_item.user .comment_meta {
  justify-content: flex-end;
}
.comment_item.user .comment_file {
  background: rgba(var(--e_white_rgb), 0.2);
  color: #fff;
  padding: 3px 6px;
  border-radius: 8px;
}
.comment_item.user .comment_file:hover {
  background: rgba(var(--e_white_rgb), 0.5);
  text-decoration: none;
}
.comment_item.user .comment_delete {
  margin-left: 10px;
  background: none;
  border: none;
  color: #fff;
  font-size: 12px;
  cursor: pointer;
  padding: 0;
  text-decoration: underline;
  height: auto;
}
.comment_item.user .comment_delete:hover {
  color: var(--e_yellow);
}

.comment_meta {
  display: flex;
  align-items: center;
  gap: 8px;
}
.comment_meta .comment_author {
  font-size: 12px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .comment_meta .comment_author {
    font-size: 10px;
  }
}
.comment_meta .comment_date {
  font-size: 11px;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .comment_meta .comment_date {
    font-size: 10px;
  }
}

.comment_text {
  font-size: 14px;
  color: var(--e_gray_33);
  line-height: 1.5;
  word-break: break-word;
}
@media (max-width: 767px) {
  .comment_text {
    font-size: 12px;
  }
}

.comment_file {
  display: inline-block;
  margin-top: 8px;
  font-size: 12px;
  font-weight: 500;
  color: var(--e_prime);
}
.comment_file:hover {
  text-decoration: underline;
}

.comment_input {
  margin-top: 15px;
}
.comment_input textarea {
  width: 100%;
  min-height: 80px;
  padding: 12px;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  font-size: 14px;
  resize: vertical;
}
.comment_input textarea:focus {
  outline: none;
  border-color: var(--e_prime);
}
@media (max-width: 767px) {
  .comment_input textarea {
    font-size: 12px;
    min-height: 60px;
  }
}

.comment_actions {
  display: flex;
  gap: 10px;
  margin-top: 10px;
  align-items: flex-end;
  flex-direction: column;
}
.comment_actions li {
  display: flex;
  gap: 10px;
  align-items: center;
  position: relative;
}
@media (max-width: 767px) {
  .comment_actions li {
    flex-direction: column;
    align-items: flex-end;
    width: 100%;
  }
}
.comment_actions li span {
  display: flex;
  gap: 5px;
}
.comment_actions .btn_txt {
  padding: 0;
}
@media (max-width: 767px) {
  .comment_actions .btn_txt {
    display: none;
  }
}

.order_btn_area {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
  flex-wrap: wrap;
}

/*배송지수정 주소숨김*/
.no-add .pop_add {
  display: none;
}

/* =========================================================
/* 1:1 문의 상태 배지                                        */
/* ========================================================= */
.status_badge {
  display: inline-block;
  padding: 6px 12px;
  border-radius: 4px;
  font-size: 14px;
  font-weight: 500;
  text-align: center;
}
.status_badge.complete {
  background: rgba(var(--e_prime_rgb), 0.1);
  color: var(--e_prime);
}
.status_badge.waiting {
  background: var(--e_gray_ef);
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .status_badge {
    padding: 4px 10px;
    font-size: 12px;
  }
}

/* =========================================================
/* 1:1 문의 작성 페이지 (my_inquiry_write.asp)            */
/* ========================================================= */
.inquiry_form {
  display: flex;
  flex-direction: column;
  gap: 30px;
  width: 100%;
}
@media (max-width: 767px) {
  .inquiry_form {
    gap: 20px;
  }
}

/* 필수/선택 표시 */
.required {
  color: var(--e_red);
  margin-left: 4px;
}

.optional {
  font-size: 12px;
  font-weight: 400;
  color: var(--e_gray_99);
  margin-left: 4px;
}

.inquiry_textarea {
  min-height: 300px;
}
@media (max-width: 767px) {
  .inquiry_textarea {
    min-height: 200px;
  }
}

/* =========================================================
/* 1:1 문의 상세 페이지 (my_inquiry_view.asp)            */
/* ========================================================= */
.inquiry_title_wrap {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 20px;
}
@media (max-width: 767px) {
  .inquiry_title_wrap {
    flex-direction: column;
    gap: 15px;
  }
}

.inquiry_title {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin: 0;
  flex: 1;
}
@media (max-width: 767px) {
  .inquiry_title {
    font-size: 20px;
  }
}

.inquiry_status {
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  .inquiry_status {
    align-self: flex-start;
  }
}

.inquiry_meta {
  display: flex;
  gap: 20px;
}
.inquiry_meta p {
  margin: 0;
  font-size: 14px;
  color: var(--e_gray_66);
  display: flex;
  align-items: center;
  gap: 5px;
}
.inquiry_meta p .label {
  font-weight: 600;
  color: #000;
}
.inquiry_meta p .value {
  color: #000;
}
.inquiry_meta p a {
  color: var(--e_prime);
  text-decoration: none;
}
.inquiry_meta p a:hover {
  text-decoration: underline;
}
@media (max-width: 767px) {
  .inquiry_meta p {
    font-size: 12px;
  }
  .inquiry_meta p .label {
    flex: 0 0 80px;
  }
}

.inquriy_btn_area {
  display: flex;
  gap: 10px;
  justify-content: space-between;
}
.inquriy_btn_area.topborder {
  border-top: 1px solid var(--e_line);
  padding-top: 30px;
}
.inquriy_btn_area a {
  color: var(--e_prime);
  text-decoration: none;
}
.inquriy_btn_area a:hover {
  text-decoration: underline;
}

.inquriy_btn_area li {
  display: flex;
  gap: 10px;
}

/*nor-table 설정*/
@media (max-width: 767px) {
  .m_boxtype.inquiry_table table tbody tr td:nth-child(1) {
    display: none;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(2) {
    width: auto;
    flex-shrink: 0;
    font-size: 12px;
    font-weight: 300;
    order: 4;
    margin-top: 8px;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(2)::before {
    display: inline-block;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(3) {
    width: 100%;
    flex-shrink: 0;
    font-size: 16px;
    font-weight: 500;
    order: 3;
    margin: 8px 0 0 0;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(3)::before {
    display: none;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(4) {
    width: auto;
    font-size: 12px;
    color: var(--e_gray_99);
    margin-left: 10px;
    order: 5;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(5) {
    width: auto;
    font-size: 12px;
    order: 2;
  }
  .m_boxtype.inquiry_table table tbody tr td:nth-child(5)::before {
    display: none;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(1) {
    display: none;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(2) {
    width: 100%;
    flex-shrink: 0;
    font-size: 16px;
    font-weight: 500;
    order: 3;
    margin: 8px 0 0 0;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(2)::before {
    display: none;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(3) {
    width: auto;
    font-size: 12px;
    order: 2;
    margin: 0;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(3)::before {
    display: none;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(4) {
    width: auto;
    font-size: 12px;
    color: var(--e_gray_99);
    order: 4;
    margin-left: 0;
  }
  .m_boxtype.request_list table tbody tr td:nth-child(4)::before {
    padding-left: 0;
  }
}
/* =========================================================
/* FAQ 페이지 (faq.asp)                                    */
/* ========================================================= */
.faq_category_filter {
  display: flex;
  gap: 10px;
  margin-bottom: 40px;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .faq_category_filter {
    margin-bottom: 30px;
    gap: 8px;
  }
}
.faq_category_filter .category_btn {
  padding: 10px 20px;
  border: 1px solid var(--e_line);
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_66);
  cursor: pointer;
  transition: all 0.2s;
}
.faq_category_filter .category_btn:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
}
.faq_category_filter .category_btn.active {
  background: var(--e_prime);
  border-color: var(--e_prime);
  color: #fff;
}
@media (max-width: 767px) {
  .faq_category_filter .category_btn {
    padding: 8px 16px;
    font-size: 12px;
  }
}

.faq_list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.faq_item {
  border-bottom: 1px solid var(--e_line);
  padding: 20px 0;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .faq_item {
    padding: 15px 0;
  }
}
.faq_item.active .faq_question {
  color: var(--e_prime);
}
.faq_item.active .faq_question .arrow_icon {
  transform: rotate(180deg);
}
.faq_item.active .faq_answer {
  display: block;
  animation: slideDown 0.3s ease-out;
}
.faq_item .faq_question {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  transition: color 0.2s;
  padding: 5px 0;
}
.faq_item .faq_question:hover {
  color: var(--e_prime);
}
.faq_item .faq_question .q_mark {
  font-size: 16px;
  font-weight: 700;
  color: var(--e_prime);
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  .faq_item .faq_question .q_mark {
    font-size: 14px;
  }
}
.faq_item .faq_question .category_tag {
  padding: 4px 10px;
  background: var(--e_gray_ef);
  border-radius: 4px;
  font-size: 12px;
  font-weight: 500;
  color: var(--e_gray_66);
  flex: 0 0 auto;
}
@media (max-width: 767px) {
  .faq_item .faq_question .category_tag {
    padding: 3px 8px;
    font-size: 11px;
  }
}
.faq_item .faq_question .question_text {
  font-size: 16px;
  font-weight: 500;
  color: inherit;
  flex: 1;
}
@media (max-width: 767px) {
  .faq_item .faq_question .question_text {
    font-size: 14px;
  }
}
.faq_item .faq_question .arrow_icon {
  font-size: 24px;
  color: var(--e_gray_66);
  flex: 0 0 auto;
  transition: transform 0.3s;
}
@media (max-width: 767px) {
  .faq_item .faq_question .arrow_icon {
    font-size: 20px;
  }
}
.faq_item .faq_answer {
  display: none;
  padding: 20px;
  background: rgba(var(--e_prime_rgb), 0.05);
  border-radius: 10px;
  margin-top: 15px;
}
@media (max-width: 767px) {
  .faq_item .faq_answer {
    padding: 15px;
    margin-top: 10px;
  }
}
.faq_item .faq_answer .a_mark {
  font-size: 16px;
  font-weight: 700;
  color: var(--e_prime);
  margin-right: 12px;
}
@media (max-width: 767px) {
  .faq_item .faq_answer .a_mark {
    font-size: 14px;
  }
}
.faq_item .faq_answer .answer_text {
  font-size: 14px;
  font-weight: 400;
  color: var(--e_gray_66);
  line-height: 1.8;
  word-break: break-word;
}
@media (max-width: 767px) {
  .faq_item .faq_answer .answer_text {
    font-size: 12px;
  }
}

@keyframes slideDown {
  from {
    opacity: 0;
    transform: translateY(-10px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.review_after .cart_item .item_info .item_details, .s_type .cart_item .item_info .item_details {
  gap: 5px;
}
.review_after .cart_item .item_info .item_thumb, .s_type .cart_item .item_info .item_thumb {
  width: 80px;
}
.review_after .cart_item .item_info .item_name, .s_type .cart_item .item_info .item_name {
  font-size: 16px;
}
.review_after .cart_item .item_actions, .s_type .cart_item .item_actions {
  gap: 5px;
}
.review_after .rv_item, .s_type .rv_item {
  padding: 20px 0 0;
}

@media (max-width: 767px) {
  .review_after .cart_item {
    padding-bottom: 90px;
  }
  .review_after .item_actions {
    position: absolute;
    left: 0;
    bottom: 0;
    padding: 10px;
    width: 100%;
  }
}

.review_stars {
  display: flex;
  align-items: center;
  gap: 3px;
}
.review_stars .star-icon {
  cursor: pointer;
}
.review_stars .star-label {
  font-size: 14px;
  font-weight: 500;
  color: var(--e_prime);
  margin-left: 5px;
}
@media (max-width: 767px) {
  .review_stars .star-label {
    font-size: 12px;
  }
}

/* =========================================================
/* Multi Upload Styles                                      */
/* ========================================================= */
.biz-multi-upload {
  flex-direction: column;
  gap: 15px;
  align-items: flex-start;
}
.biz-multi-upload.company-cert-upload img, .biz-multi-upload.company-cert-upload .upicon {
  display: block;
}
.biz-multi-upload .biz-upload-preview {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-preview {
    gap: 8px;
  }
}
.biz-multi-upload .biz-upload-item {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 5px;
  padding: 10px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-item {
    padding: 8px;
  }
}
.biz-multi-upload .biz-upload-item img {
  width: 100%;
  max-width: 100px;
  max-height: 100px;
  object-fit: cover;
  border-radius: 5px;
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-item img {
    max-width: 80px;
    max-height: 80px;
  }
}
.biz-multi-upload .biz-upload-item .upicon {
  width: 100%;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--e_gray_ef);
  border-radius: 5px;
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-item .upicon {
    height: 60px;
  }
}
.biz-multi-upload .biz-upload-item .upicon .material-symbols-rounded {
  font-size: 40px;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-item .upicon .material-symbols-rounded {
    font-size: 32px;
  }
}
.biz-multi-upload .biz-upload-item .biz-upload-filename {
  width: 100px;
  font-size: 12px;
  color: var(--e_gray_66);
  text-align: center;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-item .biz-upload-filename {
    font-size: 10px;
    width: 80px;
  }
}
.biz-multi-upload .biz-upload-item .biz-file-delete {
  position: absolute;
  top: 5px;
  right: 5px;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: rgba(var(--e_black_rgb), 0.6);
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s;
}
.biz-multi-upload .biz-upload-item .biz-file-delete:hover {
  background: var(--e_prime);
  transform: scale(1.1);
}
.biz-multi-upload .biz-upload-item .biz-file-delete .material-symbols-rounded {
  font-size: 16px;
  color: #fff;
}
.biz-multi-upload .biz-upload-count {
  grid-column: 1/-1;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
  color: var(--e_prime);
  padding: 10px 0;
}
@media (max-width: 767px) {
  .biz-multi-upload .biz-upload-count {
    font-size: 12px;
  }
}

.item_date_list {
  display: flex;
  gap: 10px;
  list-style: none;
  padding: 0;
  margin: 0;
}
@media (max-width: 767px) {
  .item_date_list {
    flex-direction: column;
    gap: 5px;
  }
}

.multi-list {
  border: 1px solid var(--e_line);
  border-radius: 10px;
  padding: 20px;
  background: var(--e_gray_ef);
}

/* =========================================================
/* Delivery Tracking Styles                                */
/* ========================================================= */
.delivery_track_header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--e_line);
}
@media (max-width: 767px) {
  .delivery_track_header {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
    margin-bottom: 15px;
    padding-bottom: 10px;
  }
}
.delivery_track_header h4 {
  font-size: 18px;
  font-weight: 700;
  color: #000;
  margin: 0;
}
@media (max-width: 767px) {
  .delivery_track_header h4 {
    font-size: 16px;
  }
}
.delivery_track_header .delivery_method {
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_66);
  margin: 0;
}
@media (max-width: 767px) {
  .delivery_track_header .delivery_method {
    font-size: 12px;
  }
}

.delivery_progress_bar {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position: relative;
}
@media (max-width: 767px) {
  .delivery_progress_bar {
    margin-bottom: 20px;
  }
}
.delivery_progress_bar::before {
  content: "";
  position: absolute;
  top: 28px;
  left: 12.5%;
  right: 12.5%;
  height: 2px;
  background: var(--e_line);
  z-index: 0;
}
@media (max-width: 767px) {
  .delivery_progress_bar::before {
    top: 24px;
  }
}
.delivery_progress_bar .progress_step {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  flex: 1;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .delivery_progress_bar .progress_step {
    gap: 5px;
    display: none;
  }
  .delivery_progress_bar .progress_step.active {
    display: flex;
  }
  .delivery_progress_bar .progress_step:has(+ .active) {
    display: flex;
  }
  .delivery_progress_bar .progress_step.active + .progress_step {
    display: flex;
  }
}
.delivery_progress_bar .progress_step .step_icon {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid var(--e_line);
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .delivery_progress_bar .progress_step .step_icon {
    width: 48px;
    height: 48px;
  }
}
.delivery_progress_bar .progress_step .step_icon .material-symbols-rounded {
  font-size: 28px;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .delivery_progress_bar .progress_step .step_icon .material-symbols-rounded {
    font-size: 24px;
  }
}
.delivery_progress_bar .progress_step .step_label {
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_99);
  text-align: center;
}
@media (max-width: 767px) {
  .delivery_progress_bar .progress_step .step_label {
    font-size: 12px;
  }
}
.delivery_progress_bar .progress_step.completed .step_icon {
  background: var(--e_line);
  border-color: none;
}
.delivery_progress_bar .progress_step.completed .step_icon .material-symbols-rounded {
  color: var(--e_gray_99);
}
.delivery_progress_bar .progress_step.completed .step_label {
  color: var(--e_gray_99);
}
.delivery_progress_bar .progress_step.active .step_icon {
  background: var(--e_prime);
  border-color: var(--e_prime);
  box-shadow: 0 4px 12px rgba(49, 132, 253, 0.3);
}
.delivery_progress_bar .progress_step.active .step_icon .material-symbols-rounded {
  color: #fff;
}
.delivery_progress_bar .progress_step.active .step_label {
  color: var(--e_prime);
  font-weight: 700;
}

.delivery_info_group {
  display: flex;
  gap: 40px;
}
@media (max-width: 767px) {
  .delivery_info_group {
    gap: 20px;
    flex-direction: column;
  }
}
.delivery_info_group.delivery_address_box .info_row {
  padding: 0;
}

.delivery_info_box {
  display: flex;
  flex-direction: column;
  gap: 5px;
  flex: 1;
}
.delivery_info_box h5 {
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin: 0 0 10px 0;
}
@media (max-width: 767px) {
  .delivery_info_box h5 {
    font-size: 14px;
    margin-bottom: 8px;
  }
}
.delivery_info_box .info_row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0;
}
.delivery_info_box .info_row .info_label {
  min-width: 80px;
  font-size: 14px;
  font-weight: 600;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .delivery_info_box .info_row .info_label {
    min-width: 70px;
    font-size: 12px;
  }
}
.delivery_info_box .info_row .info_value {
  font-size: 14px;
  font-weight: 600;
  color: #000;
}
@media (max-width: 767px) {
  .delivery_info_box .info_row .info_value {
    font-size: 12px;
  }
}
.delivery_info_box .info_row .btn_copy {
  padding: 0 10px;
  gap: 5px;
}
.delivery_info_box .info_row .btn_copy .material-symbols-rounded {
  font-size: 16px;
}
@media (max-width: 767px) {
  .delivery_info_box .info_row .btn_copy .material-symbols-rounded {
    font-size: 14px;
  }
}
.delivery_info_box .info_row .btn_copy:hover {
  background: var(--e_prime);
  color: #fff;
  border-color: var(--e_prime);
}
.delivery_info_box .info_row .btn_copy:hover .material-symbols-rounded {
  color: #fff;
}
.delivery_info_box .info_row .btn_copy:active {
  transform: scale(0.95);
}

.delivery_address_box {
  background: var(--e_gray_ef);
  border-radius: 10px;
  padding: 15px;
}
@media (max-width: 767px) {
  .delivery_address_box {
    padding: 12px;
  }
}
.delivery_address_box .info_row {
  padding: 5px 0;
}
.delivery_address_box .info_row:first-child {
  padding-top: 0;
}
.delivery_address_box .info_row:last-child {
  padding-bottom: 0;
}
.delivery_address_box .info_row .name, .delivery_address_box .info_row .phone {
  font-size: 14px;
  font-weight: 600;
  color: #000;
  margin-right: 15px;
}
@media (max-width: 767px) {
  .delivery_address_box .info_row .name, .delivery_address_box .info_row .phone {
    font-size: 12px;
    margin-right: 10px;
  }
}
.delivery_address_box .info_row .addr {
  font-size: 14px;
  font-weight: 400;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .delivery_address_box .info_row .addr {
    font-size: 12px;
  }
}

.delivery_detail_wrapper {
  margin-top: 15px;
}
.delivery_detail_wrapper .delivery_current_status {
  display: flex;
  align-items: flex-start;
  gap: 15px;
  padding: 20px;
  background: rgba(var(--e_prime_rgb), 0.05);
  border: 1px solid var(--e_prime);
  border-radius: 12px;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status {
    padding: 15px;
    gap: 12px;
  }
}
.delivery_detail_wrapper .delivery_current_status .current_status_icon {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  background: var(--e_prime);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status .current_status_icon {
    width: 40px;
    height: 40px;
  }
}
.delivery_detail_wrapper .delivery_current_status .current_status_icon .material-symbols-rounded {
  font-size: 28px;
  color: #fff;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status .current_status_icon .material-symbols-rounded {
    font-size: 24px;
  }
}
.delivery_detail_wrapper .delivery_current_status .current_status_info {
  flex: 1;
}
.delivery_detail_wrapper .delivery_current_status .current_status_info .status_title {
  font-size: 18px;
  font-weight: 700;
  color: #000;
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status .current_status_info .status_title {
    font-size: 16px;
    margin-bottom: 5px;
  }
}
.delivery_detail_wrapper .delivery_current_status .current_status_info .status_detail {
  display: flex;
  align-items: center;
  gap: 12px;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status .current_status_info .status_detail {
    gap: 8px;
  }
}
.delivery_detail_wrapper .delivery_current_status .current_status_info .status_detail .status_location {
  font-size: 16px;
  font-weight: 500;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status .current_status_info .status_detail .status_location {
    font-size: 12px;
  }
}
.delivery_detail_wrapper .delivery_current_status .current_status_info .status_detail .status_date {
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_current_status .current_status_info .status_detail .status_date {
    font-size: 12px;
  }
}
.delivery_detail_wrapper .toggle_history_btn {
  width: 50px;
  aspect-ratio: 1/1;
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_66);
  cursor: pointer;
  transition: all 0.2s;
  padding: 0;
}
.delivery_detail_wrapper .toggle_history_btn.active .material-symbols-rounded {
  transform: rotate(180deg);
}
.delivery_detail_wrapper .delivery_history_content {
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.4s ease;
}
.delivery_detail_wrapper .delivery_history_content.active {
  max-height: 600px;
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline {
  list-style: none;
  margin-top: 20px;
  background: var(--e_gray_ef);
  border-radius: 10px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_history_content .delivery_timeline {
    padding: 15px;
  }
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item {
  position: relative;
  padding: 0 0 15px 20px;
  border-left: 2px dashed var(--e_line);
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item {
    padding: 12px 0 12px 25px;
  }
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item::before {
  content: "";
  position: absolute;
  left: -6px;
  top: 0;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid var(--e_gray_99);
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item::before {
    left: -4px;
    top: 15px;
    width: 7px;
    height: 7px;
  }
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item:last-child {
  border-left-color: transparent;
  padding-bottom: 0;
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item .timeline_date {
  font-size: 12px;
  font-weight: 500;
  color: var(--e_gray_99);
  margin-top: -5px;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item .timeline_date {
    font-size: 12px;
  }
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item .timeline_status {
  font-size: 16px;
  font-weight: 600;
  color: #000;
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item .timeline_status {
    font-size: 14px;
  }
}
.delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item .timeline_location {
  font-size: 12px;
  font-weight: 400;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .delivery_detail_wrapper .delivery_history_content .delivery_timeline .timeline_item .timeline_location {
    font-size: 12px;
  }
}

.delivery_not_available .delivery_notice {
  display: flex;
  align-items: center;
  gap: 10px;
}
.delivery_not_available .delivery_notice .material-symbols-rounded {
  font-size: 24px;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .delivery_not_available .delivery_notice .material-symbols-rounded {
    font-size: 20px;
  }
}
.delivery_not_available .delivery_notice p {
  font-size: 16px;
  font-weight: 500;
  color: var(--e_gray_66);
  margin: 0;
}
@media (max-width: 767px) {
  .delivery_not_available .delivery_notice p {
    font-size: 12px;
  }
}

/* ========================================================= */
/* 환불/재제작 신청 팝업 (Refund/Remake Popup) */
/* ========================================================= */
.refund_product_list {
  position: relative;
}
.refund_product_list .refund_product_group {
  border: 1px solid var(--e_line);
  border-radius: 12px;
  margin-bottom: 15px;
  overflow: hidden;
  transition: all 0.2s;
  position: sticky;
  top: 80px;
  left: 0;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_group {
    margin-bottom: 12px;
  }
}
.refund_product_list .refund_product_group:hover {
  border-color: var(--e_prime);
}
.refund_product_list .refund_product_header {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 20px;
  background: #fff;
  cursor: pointer;
  transition: all 0.2s;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header {
    padding: 15px;
    gap: 12px;
  }
}
.refund_product_list .refund_product_header .refund_item_check {
  flex-shrink: 0;
}
.refund_product_list .refund_product_header .refund_item_info {
  display: flex;
  gap: 15px;
  flex: 1;
  align-items: flex-start;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header .refund_item_info {
    gap: 12px;
  }
}
.refund_product_list .refund_product_header .refund_item_img {
  width: 60px;
  aspect-ratio: 1/1;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--e_line);
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header .refund_item_img {
    width: 40px;
  }
}
.refund_product_list .refund_product_header .refund_item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.refund_product_list .refund_product_header .refund_item_detail {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.refund_product_list .refund_product_header .refund_item_detail .product_name {
  font-size: 16px;
  font-weight: 700;
  color: #000;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header .refund_item_detail .product_name {
    font-size: 14px;
  }
}
.refund_product_list .refund_product_header .refund_item_detail p {
  font-size: 14px;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header .refund_item_detail p {
    font-size: 12px;
  }
}
.refund_product_list .refund_product_header .toggle_product_btn {
  flex-shrink: 0;
  width: 36px;
  height: 36px;
  border-radius: 50%;
  background: var(--e_gray_ef);
  border: 1px solid var(--e_line);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  padding: 0;
  transition: all 0.2s;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header .toggle_product_btn {
    width: 32px;
    height: 32px;
  }
}
.refund_product_list .refund_product_header .toggle_product_btn:hover {
  background: var(--e_prime);
  border-color: var(--e_prime);
}
.refund_product_list .refund_product_header .toggle_product_btn .material-symbols-rounded {
  font-size: 20px;
  color: var(--e_gray_66);
  transition: transform 0.3s;
}
@media (max-width: 767px) {
  .refund_product_list .refund_product_header .toggle_product_btn .material-symbols-rounded {
    font-size: 18px;
  }
}
.refund_product_list .refund_product_header .toggle_product_btn.active .material-symbols-rounded {
  transform: rotate(180deg);
}
.refund_product_list .refund_address_list {
  display: flex;
  flex-direction: column;
  gap: 10px;
  transition: all 0.3s ease;
  padding: 0 20px 20px 20px;
  background: #fff;
  overflow: auto;
  max-height: calc(100vh - 300px);
}
@media (max-width: 767px) {
  .refund_product_list .refund_address_list {
    padding: 0 15px 15px 15px;
    gap: 10px;
    max-height: 250px;
  }
}
.refund_product_list .refund_address_item {
  padding: 20px;
  background: var(--e_gray_ef);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .refund_product_list .refund_address_item {
    padding: 10px;
  }
}
.refund_product_list .refund_address_item .check-container {
  display: flex;
  align-items: flex-start;
  gap: 10px;
}
@media (max-width: 767px) {
  .refund_product_list .refund_address_item .check-container {
    gap: 8px;
  }
}
.refund_product_list .refund_address_item .check-container input[type=checkbox] {
  flex-shrink: 0;
  margin-top: 4px;
}
.refund_product_list .refund_address_item .check-container label {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
  flex: 1;
  height: auto;
}
@media (max-width: 767px) {
  .refund_product_list .refund_address_item .check-container label {
    gap: 8px;
  }
}
.refund_product_list .refund_address_item .check-container label .check-icon {
  flex-shrink: 0;
}
.refund_product_list .refund_address_item .check-container label .address_text {
  font-size: 14px;
  color: var(--e_gray_66);
  display: flex;
  flex-direction: column;
  gap: 4px;
}
.refund_product_list .refund_address_item .check-container label .address_text p {
  font-weight: 500;
  color: #000;
}
@media (max-width: 767px) {
  .refund_product_list .refund_address_item .check-container label .address_text {
    font-size: 12px;
  }
}
.refund_product_list .refund_item {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 20px;
  border: 1px solid var(--e_line);
  border-radius: 12px;
  margin-bottom: 15px;
  transition: all 0.2s;
}
@media (max-width: 767px) {
  .refund_product_list .refund_item {
    padding: 15px;
    gap: 12px;
    margin-bottom: 12px;
  }
}
.refund_product_list .refund_item:hover {
  border-color: var(--e_prime);
  background: var(--e_gray_ef);
}
.refund_product_list .refund_item .refund_item_check {
  flex-shrink: 0;
}
.refund_product_list .refund_item .refund_item_info {
  display: flex;
  gap: 15px;
  flex: 1;
}
@media (max-width: 767px) {
  .refund_product_list .refund_item .refund_item_info {
    gap: 12px;
  }
}
.refund_product_list .refund_item .refund_item_img {
  width: 60px;
  aspect-ratio: 1/1;
  border-radius: 8px;
  overflow: hidden;
  border: 1px solid var(--e_line);
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .refund_product_list .refund_item .refund_item_img {
    width: 40px;
  }
}
.refund_product_list .refund_item .refund_item_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.refund_product_list .refund_item .refund_item_detail {
  flex: 1;
}
.refund_product_list .refund_item .refund_item_detail .product_name {
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin-bottom: 6px;
}
@media (max-width: 767px) {
  .refund_product_list .refund_item .refund_item_detail .product_name {
    font-size: 14px;
    margin-bottom: 4px;
  }
}
.refund_product_list .refund_item .refund_item_detail p {
  font-size: 12px;
  color: var(--e_gray_66);
  margin-bottom: 4px;
}
@media (max-width: 767px) {
  .refund_product_list .refund_item .refund_item_detail p {
    font-size: 12px;
  }
}
.refund_product_list .refund_item .refund_item_detail p:last-child {
  margin-bottom: 0;
}

.refund-remake-popup .step_indicator {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 40px;
  padding-bottom: 10px;
  border-bottom: 2px solid var(--e_line);
}
@media (max-width: 767px) {
  .refund-remake-popup .step_indicator {
    gap: 20px;
  }
}
.refund-remake-popup .step_indicator .step_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  position: relative;
  opacity: 0.4;
}
@media (max-width: 767px) {
  .refund-remake-popup .step_indicator .step_item {
    gap: 5px;
  }
}
.refund-remake-popup .step_indicator .step_item::after {
  content: "";
  position: absolute;
  top: 15px;
  left: calc(100% + 10px);
  width: 30px;
  height: 2px;
  background: var(--e_line);
}
@media (max-width: 767px) {
  .refund-remake-popup .step_indicator .step_item::after {
    width: 15px;
    top: 12px;
  }
}
.refund-remake-popup .step_indicator .step_item:last-child::after {
  display: none;
}
.refund-remake-popup .step_indicator .step_item.active {
  opacity: 1;
}
.refund-remake-popup .step_indicator .step_item.active .step_num {
  background: var(--e_prime);
  color: #fff;
  border-color: var(--e_prime);
}
.refund-remake-popup .step_indicator .step_item.active .step_label {
  color: var(--e_prime);
  font-weight: 700;
}
.refund-remake-popup .step_indicator .step_item.completed {
  opacity: 1;
}
.refund-remake-popup .step_indicator .step_item.completed .step_num {
  background: var(--e_gray_ef);
  color: var(--e_prime);
  border-color: var(--e_prime);
}
.refund-remake-popup .step_indicator .step_item .step_num {
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #fff;
  border: 2px solid var(--e_line);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  font-weight: 700;
  color: var(--e_gray_99);
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .refund-remake-popup .step_indicator .step_item .step_num {
    width: 26px;
    height: 26px;
    font-size: 12px;
  }
}
.refund-remake-popup .step_indicator .step_item .step_label {
  font-size: 14px;
  font-weight: 500;
  color: var(--e_gray_99);
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .refund-remake-popup .step_indicator .step_item .step_label {
    font-size: 12px;
  }
}
.refund-remake-popup .step_content {
  min-height: 400px;
}
@media (max-width: 767px) {
  .refund-remake-popup .step_content {
    min-height: 300px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_category {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .refund-remake-popup .reason_select_wrap .reason_category {
    margin-bottom: 20px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_category:last-of-type {
  margin-bottom: 20px;
}
.refund-remake-popup .reason_select_wrap .reason_category h4 {
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid var(--e_line);
}
@media (max-width: 767px) {
  .refund-remake-popup .reason_select_wrap .reason_category h4 {
    font-size: 16px;
    margin-bottom: 12px;
    padding-bottom: 8px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_category .radio_list {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
@media (max-width: 767px) {
  .refund-remake-popup .reason_select_wrap .reason_category .radio_list {
    gap: 10px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_detail {
  margin-top: 20px;
  padding: 20px;
  background: var(--e_gray_ef);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .refund-remake-popup .reason_select_wrap .reason_detail {
    padding: 15px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_detail label {
  display: block;
  font-size: 14px;
  font-weight: 600;
  color: #000;
  margin-bottom: 10px;
}
@media (max-width: 767px) {
  .refund-remake-popup .reason_select_wrap .reason_detail label {
    font-size: 12px;
    margin-bottom: 8px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_detail textarea {
  width: 100%;
  padding: 12px;
  border: 1px solid var(--e_line);
  border-radius: 8px;
  font-size: 14px;
  resize: vertical;
  font-family: inherit;
}
@media (max-width: 767px) {
  .refund-remake-popup .reason_select_wrap .reason_detail textarea {
    padding: 10px;
    font-size: 12px;
  }
}
.refund-remake-popup .reason_select_wrap .reason_detail textarea:focus {
  outline: none;
  border-color: var(--e_prime);
}
.refund-remake-popup .solution_type_wrap {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .refund-remake-popup .solution_type_wrap {
    margin-bottom: 20px;
  }
}
.refund-remake-popup .solution_type_wrap .tab_radio_group {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 15px;
}
@media (max-width: 767px) {
  .refund-remake-popup .solution_type_wrap .tab_radio_group {
    gap: 10px;
  }
}
.refund-remake-popup .solution_type_wrap .tab_radio_group input[type=radio] {
  display: none;
}
.refund-remake-popup .solution_type_wrap .tab_radio_group input[type=radio]:checked + .tab_radio_label {
  background: var(--e_prime);
  color: #fff;
  border-color: var(--e_prime);
}
.refund-remake-popup .solution_type_wrap .tab_radio_group input[type=radio]:checked + .tab_radio_label .material-symbols-rounded {
  color: #fff;
}
.refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 30px 20px;
  background: #fff;
  border: 2px solid var(--e_line);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.2s;
}
@media (max-width: 767px) {
  .refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label {
    padding: 20px 15px;
    gap: 8px;
  }
}
.refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label:hover {
  border-color: var(--e_prime);
  background: var(--e_gray_ef);
}
.refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label .material-symbols-rounded {
  font-size: 40px;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label .material-symbols-rounded {
    font-size: 32px;
  }
}
.refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label {
  font-size: 16px;
  font-weight: 600;
  color: #000;
}
@media (max-width: 767px) {
  .refund-remake-popup .solution_type_wrap .tab_radio_group .tab_radio_label {
    font-size: 14px;
  }
}
.refund-remake-popup .file_upload_wrap {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .refund-remake-popup .file_upload_wrap {
    margin-bottom: 20px;
  }
}
.refund-remake-popup .file_upload_wrap h4 {
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin-bottom: 8px;
}
@media (max-width: 767px) {
  .refund-remake-popup .file_upload_wrap h4 {
    font-size: 16px;
    margin-bottom: 6px;
  }
}
.refund-remake-popup .file_upload_wrap .upload_desc {
  font-size: 12px;
  color: var(--e_gray_66);
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .refund-remake-popup .file_upload_wrap .upload_desc {
    font-size: 12px;
    margin-bottom: 12px;
  }
}
.refund-remake-popup .file_upload_wrap .biz-upload-box {
  min-height: 150px;
}
@media (max-width: 767px) {
  .refund-remake-popup .file_upload_wrap .biz-upload-box {
    min-height: 120px;
  }
}
.refund-remake-popup .refund_notice {
  padding: 20px;
  background: var(--e_gray_ef);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .refund-remake-popup .refund_notice {
    padding: 15px;
  }
}
.refund-remake-popup .refund_notice h4 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin-bottom: 12px;
}
@media (max-width: 767px) {
  .refund-remake-popup .refund_notice h4 {
    font-size: 14px;
    margin-bottom: 10px;
  }
}
.refund-remake-popup .refund_notice h4 .material-symbols-rounded {
  font-size: 20px;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .refund-remake-popup .refund_notice h4 .material-symbols-rounded {
    font-size: 18px;
  }
}
.refund-remake-popup .refund_notice ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.refund-remake-popup .refund_notice ul li {
  position: relative;
  padding-left: 15px;
  font-size: 12px;
  color: var(--e_gray_66);
  line-height: 1.6;
  margin-bottom: 6px;
}
@media (max-width: 767px) {
  .refund-remake-popup .refund_notice ul li {
    font-size: 12px;
    padding-left: 12px;
  }
}
.refund-remake-popup .refund_notice ul li:last-child {
  margin-bottom: 0;
}
.refund-remake-popup .refund_notice ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--e_prime);
}
.refund-remake-popup .step_footer .footer_buttons {
  display: flex;
  gap: 10px;
  justify-content: flex-end;
}
.refund-remake-popup .step_footer .footer_buttons button {
  min-width: 120px;
}
@media (max-width: 767px) {
  .refund-remake-popup .step_footer .footer_buttons button {
    min-width: 100px;
    flex: 1;
  }
}

.cart_item.re-tit {
  color: #fff;
  background: var(--e_prime);
  border: none;
}
.cart_item.re-tit.completed {
  background: var(--e_gray_66);
}
.cart_item.re-tit.error {
  background: var(--e_red);
}
.cart_item.re-tit .item_header {
  padding-bottom: 0;
  border-bottom: none;
}
.cart_item.re-tit .item_header .item_status {
  font-size: 20px;
  color: #fff;
}
.cart_item.re-tit .item_header .item_date {
  color: #fff;
}
@media (max-width: 767px) {
  .cart_item.re-tit .item_header .item_status {
    font-size: 18px;
  }
}

/* 관리자 코멘트 영역 */
.admin-comment {
  background: rgba(var(--e_prime_rgb), 0.05);
  border-radius: 10px;
  padding: 20px;
}
.admin-comment.refund {
  background: #fff;
}
@media (max-width: 767px) {
  .admin-comment {
    padding: 15px;
  }
}
.admin-comment .comment-header {
  display: flex;
  align-items: center;
  gap: 8px;
  padding-bottom: 15px;
  border-bottom: 1px solid var(--e_line);
  margin-bottom: 15px;
  justify-content: space-between;
  font-size: 16px;
  font-weight: 700;
  color: #000;
}
.admin-comment .comment-header .comment-date {
  font-size: 12px;
  color: var(--e_gray_99);
}
.admin-comment .comment-body {
  line-height: 1.8;
}
.admin-comment .comment-body p {
  font-size: 14px;
  color: var(--e_gray_66);
  margin-bottom: 10px;
}
.admin-comment .comment-body p:last-child {
  margin-bottom: 0;
}
.admin-comment .comment-body p strong {
  color: var(--e_prime);
  font-weight: 700;
}
@media (max-width: 767px) {
  .admin-comment .comment-body p {
    font-size: 12px;
  }
}

/* ========================================================= */
/* 교환/반품 신청 - 배송지 변경 토글 영역                       */
/* ========================================================= */
.my_contents .info_sec .return-list .delivery-edit-area .del_method .eq_input_group.refund-in {
  display: flex;
}
.my_contents .info_sec .return-list .delivery-edit-area .del_method .eq_input_group.nor-in {
  display: none;
}
.my_contents .info_sec .delivery-edit-area {
  width: 100%;
  margin-top: 15px;
  padding: 20px;
  background: var(--e_gray_ef);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area {
    padding: 15px;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.my_contents .info_sec .delivery-edit-area .del_method .tab_radio {
  max-width: 100%;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area .del_method {
    gap: 15px;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method .eq_input_group {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  padding: 0;
}
.my_contents .info_sec .delivery-edit-area .del_method .eq_input_group.refund-in {
  display: none;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area .del_method .eq_input_group {
    flex-direction: column;
    align-items: flex-start;
    gap: 5px;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method .col2_wrap {
  display: flex;
  gap: 20px;
  width: 100%;
  max-width: 600px;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area .del_method .col2_wrap {
    flex-direction: column;
    gap: 10px;
    align-items: flex-start;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method .col2_wrap .eq_input_group {
  flex: 1;
}
.my_contents .info_sec .delivery-edit-area .del_method .col2_wrap .check-container {
  min-width: fit-content;
}
.my_contents .info_sec .delivery-edit-area .del_method .info_form {
  display: none;
  flex-direction: column;
  gap: 20px;
}
.my_contents .info_sec .delivery-edit-area .del_method .info_form.active {
  display: flex;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area .del_method .info_form {
    gap: 15px;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method .del_truck, .my_contents .info_sec .delivery-edit-area .del_method .del_quick, .my_contents .info_sec .delivery-edit-area .del_method .del_direct {
  display: none;
  flex-direction: column;
  gap: 20px;
}
.my_contents .info_sec .delivery-edit-area .del_method .del_truck.active, .my_contents .info_sec .delivery-edit-area .del_method .del_quick.active, .my_contents .info_sec .delivery-edit-area .del_method .del_direct.active {
  display: flex;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area .del_method .del_truck, .my_contents .info_sec .delivery-edit-area .del_method .del_quick, .my_contents .info_sec .delivery-edit-area .del_method .del_direct {
    gap: 15px;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method .eq_quick_direct, .my_contents .info_sec .delivery-edit-area .del_method .eq_quick_order {
  display: none;
  flex-direction: column;
  gap: 20px;
}
.my_contents .info_sec .delivery-edit-area .del_method .eq_quick_direct.active, .my_contents .info_sec .delivery-edit-area .del_method .eq_quick_order.active {
  display: flex;
}
@media (max-width: 767px) {
  .my_contents .info_sec .delivery-edit-area .del_method .eq_quick_direct, .my_contents .info_sec .delivery-edit-area .del_method .eq_quick_order {
    gap: 15px;
  }
}
.my_contents .info_sec .delivery-edit-area .del_method .del_truck .check-type {
  flex-wrap: wrap;
  gap: 10px;
}
.my_contents .info_sec .delivery-edit-area .del_method .btn_add_delivery_wrap {
  display: none;
}

.cart_list .delivery-up-list > li:hover {
  background: #fff;
}

/* ========================================================= */
/* 무통장환불 - 계좌 미등록 알림 박스 (notice_box)             */
/* ========================================================= */
.cart_list .cart_item.notice_box {
  background-color: var(--e_gray_ef);
  border: 1px dashed var(--e_line);
}
.cart_list .cart_item.notice_box .item_info {
  align-items: center;
}
@media (max-width: 767px) {
  .cart_list .cart_item.notice_box .item_info {
    align-items: flex-start;
  }
}
.cart_list .cart_item.notice_box .item_thumb {
  width: auto;
  height: auto;
  background: none;
  border: none;
  display: flex;
  align-items: center;
  justify-content: center;
}
.cart_list .cart_item.notice_box .item_thumb .material-symbols-rounded {
  font-size: 30px;
  color: var(--e_red);
}
.cart_list .cart_item.notice_box .item_details .item_name {
  margin-bottom: 5px;
  color: var(--e_gray_33);
}
.cart_list .cart_item.notice_box .item_details p {
  font-size: 14px;
  color: var(--e_gray_66);
}

/* ========================================================= */
/* 고객센터 커스텀 헤더 (Customer Center Header)               */
/* ========================================================= */
.custom_toparea {
  flex-direction: column;
  gap: 0;
  background: var(--e_prime);
  border-radius: 20px;
}
@media (max-width: 767px) {
  .custom_toparea {
    padding-bottom: 20px;
    margin: -40px 0 20px -20px;
    width: 100vw;
    border-radius: 0;
  }
}
.custom_toparea .custom_header {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  padding: 50px 20px 60px;
  position: relative;
}
@media (max-width: 767px) {
  .custom_toparea .custom_header {
    padding: 40px 15px 50px;
    gap: 12px;
  }
}
.custom_toparea .custom_header .custom_header_title {
  font-size: 40px;
  font-weight: 700;
  color: #fff;
  margin: 0;
  text-align: center;
  letter-spacing: -0.02em;
}
@media (max-width: 767px) {
  .custom_toparea .custom_header .custom_header_title {
    font-size: 30px;
  }
}
.custom_toparea .custom_header .custom_header_phone {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 20px;
  font-weight: 600;
  color: #fff;
  letter-spacing: 0.02em;
}
.custom_toparea .custom_header .custom_header_phone .material-symbols-rounded {
  font-size: 24px;
  color: #fff;
  animation: phone-ring 1.5s ease-in-out infinite;
}
@media (max-width: 767px) {
  .custom_toparea .custom_header .custom_header_phone .material-symbols-rounded {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .custom_toparea .custom_header .custom_header_phone {
    font-size: 18px;
    gap: 6px;
  }
}
.custom_toparea .custom_header .custom_header_close {
  display: none;
  position: absolute;
  top: 20px;
  right: 20px;
  color: #fff;
  text-decoration: none;
}
.custom_toparea .custom_header .custom_header_close .material-symbols-rounded {
  font-size: 30px;
}
@media (max-width: 767px) {
  .custom_toparea .custom_header .custom_header_close {
    display: block;
  }
}
.custom_toparea .custom_tab_wrap {
  padding: 0 60px 20px;
}
@media (max-width: 767px) {
  .custom_toparea .custom_tab_wrap {
    padding: 0 15px;
  }
}
.custom_toparea .custom_tab_wrap .custom_tab {
  display: flex;
  background: #fff;
  border-radius: 15px;
  overflow: hidden;
}
.custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 20px 15px;
  text-decoration: none;
  font-size: 16px;
  font-weight: 500;
  color: var(--e_gray_66);
  background: rgba(var(--e_prime_rgb), 0.08);
  border-bottom: 3px solid transparent;
  transition: all 0.3s ease;
}
.custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item .material-symbols-rounded {
  font-size: 28px;
  color: var(--e_gray_99);
  transition: color 0.3s ease;
}
@media (max-width: 767px) {
  .custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item .material-symbols-rounded {
    font-size: 24px;
  }
}
.custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item:hover {
  color: var(--e_prime);
  background: rgba(var(--e_prime_rgb), 0.05);
}
.custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item:hover .material-symbols-rounded {
  color: var(--e_prime);
}
.custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item.active {
  color: var(--e_prime);
  font-weight: 700;
  background: #fff;
}
.custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item.active .material-symbols-rounded {
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .custom_toparea .custom_tab_wrap .custom_tab .custom_tab_item {
    padding: 15px 10px;
    font-size: 14px;
    gap: 4px;
  }
}

/* ========================================================= */
/* 공지사항 페이지 (Notice Page)                              */
/* ========================================================= */
/* 공지사항 리스트 테이블 */
.nor_table tr.notice_important {
  background: rgba(var(--e_prime_rgb), 0.05);
}
.nor_table tr.notice_important td {
  font-weight: 500;
}
.nor_table .notice_pin {
  display: inline-flex;
  align-items: center;
  justify-content: center;
}
.nor_table .notice_pin .material-symbols-rounded {
  font-size: 20px;
  color: var(--e_prime);
  font-variation-settings: "FILL" 1;
}
@media (max-width: 767px) {
  .nor_table .notice_pin .material-symbols-rounded {
    font-size: 18px;
  }
}
.nor_table .notice_badge {
  display: inline-block;
  padding: 2px 5px;
  border-radius: 4px;
  font-size: 12px;
  font-weight: 600;
  margin-right: 5px;
  vertical-align: middle;
}
.nor_table .notice_badge.important {
  background: var(--e_prime);
  color: #fff;
}
.nor_table .notice_badge.new {
  background: var(--e_red);
  color: #fff;
}
@media (max-width: 767px) {
  .nor_table .notice_badge {
    padding: 2px 6px;
    font-size: 10px;
    margin-right: 5px;
  }
}

/* 공지사항 상세보기 */
.notice_view_header {
  padding-bottom: 20px;
  border-bottom: 1px solid var(--e_line);
}
@media (max-width: 767px) {
  .notice_view_header {
    padding-bottom: 15px;
    margin-bottom: 20px;
  }
}
.notice_view_header .notice_title_wrap {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 15px;
}
@media (max-width: 767px) {
  .notice_view_header .notice_title_wrap {
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 10px;
  }
}
.notice_view_header .notice_title_wrap .notice_title {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin: 0;
  flex: 1;
}
@media (max-width: 767px) {
  .notice_view_header .notice_title_wrap .notice_title {
    font-size: 20px;
    width: 100%;
  }
}
.notice_view_header .notice_meta {
  display: flex;
  gap: 20px;
  flex-wrap: wrap;
}
.notice_view_header .notice_meta p {
  margin: 0;
  font-size: 14px;
  color: var(--e_gray_66);
  display: flex;
  align-items: center;
  gap: 5px;
}
.notice_view_header .notice_meta p .label {
  font-weight: 600;
  color: var(--e_gray_66);
}
.notice_view_header .notice_meta p .value {
  color: #000;
}
@media (max-width: 767px) {
  .notice_view_header .notice_meta p {
    font-size: 12px;
  }
}

.notice_view_content {
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .notice_view_content {
    margin-bottom: 20px;
  }
}
.notice_view_content .notice_body {
  padding: 30px;
  background: var(--e_gray_ef);
  border-radius: 15px;
  line-height: 1.8;
}
@media (max-width: 767px) {
  .notice_view_content .notice_body {
    padding: 20px;
    border-radius: 10px;
  }
}
.notice_view_content .notice_body p {
  font-size: 16px;
  color: var(--e_gray_33);
  margin: 0;
}
@media (max-width: 767px) {
  .notice_view_content .notice_body p {
    font-size: 14px;
  }
}
.notice_view_content .notice_body h4 {
  font-size: 18px;
  font-weight: 700;
  color: #000;
  margin: 0 0 10px 0;
}
@media (max-width: 767px) {
  .notice_view_content .notice_body h4 {
    font-size: 16px;
    margin-bottom: 8px;
  }
}
.notice_view_content .notice_body ul {
  margin: 0;
  padding-left: 20px;
}
.notice_view_content .notice_body ul li {
  font-size: 16px;
  color: var(--e_gray_33);
  margin-bottom: 5px;
}
.notice_view_content .notice_body ul li:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .notice_view_content .notice_body ul li {
    font-size: 14px;
  }
}
.notice_view_content .notice_body strong {
  color: var(--e_prime);
  font-weight: 700;
}

.notice_attachments {
  margin-top: 20px;
  padding: 20px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .notice_attachments {
    padding: 15px;
    margin-top: 15px;
  }
}
.notice_attachments h4 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 16px;
  font-weight: 700;
  color: #000;
  margin: 0 0 12px 0;
}
.notice_attachments h4 .material-symbols-rounded {
  font-size: 20px;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .notice_attachments h4 {
    font-size: 14px;
    margin-bottom: 10px;
  }
}
.notice_attachments ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.notice_attachments ul li {
  margin-bottom: 8px;
}
.notice_attachments ul li:last-child {
  margin-bottom: 0;
}
.notice_attachments ul .attachment_link {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  font-size: 14px;
  color: var(--e_prime);
  text-decoration: none;
}
.notice_attachments ul .attachment_link:hover {
  text-decoration: underline;
}
@media (max-width: 767px) {
  .notice_attachments ul .attachment_link {
    font-size: 12px;
  }
}

/* 이전글/다음글 네비게이션 */
.notice_navigation {
  border-top: 1px solid var(--e_line);
  border-bottom: 1px solid var(--e_line);
}
.notice_navigation .nav_item {
  display: flex;
  align-items: center;
  gap: 15px;
  padding: 15px 0;
  border-bottom: 1px solid var(--e_line);
}
.notice_navigation .nav_item:last-child {
  border-bottom: none;
}
@media (max-width: 767px) {
  .notice_navigation .nav_item {
    padding: 12px 0;
    gap: 10px;
    flex-wrap: wrap;
  }
}
.notice_navigation .nav_item .nav_label {
  display: flex;
  align-items: center;
  gap: 5px;
  min-width: 80px;
  font-size: 14px;
  font-weight: 600;
  color: var(--e_gray_66);
}
.notice_navigation .nav_item .nav_label .material-symbols-rounded {
  font-size: 18px;
}
@media (max-width: 767px) {
  .notice_navigation .nav_item .nav_label {
    font-size: 12px;
    min-width: 70px;
  }
}
.notice_navigation .nav_item .nav_title {
  flex: 1;
  font-size: 16px;
  color: #000;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.notice_navigation .nav_item .nav_title:hover {
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .notice_navigation .nav_item .nav_title {
    font-size: 14px;
    width: 100%;
  }
}

/* 공지사항 버튼 영역 */
.notice_btn_area {
  display: flex;
  justify-content: center;
  gap: 10px;
  margin-top: 30px;
}
@media (max-width: 767px) {
  .notice_btn_area {
    margin-top: 20px;
  }
}
.notice_btn_area button {
  min-width: 150px;
}
@media (max-width: 767px) {
  .notice_btn_area button {
    min-width: 120px;
  }
}

.my_quote_list .btn_group {
  display: flex;
  gap: 10px;
}
.my_quote_list .btn_group .btn_pdfdown {
  display: none;
}
@media (max-width: 767px) {
  .my_quote_list .btn_group .btn_pdfdown {
    display: flex;
  }
  .my_quote_list .btn_group .open_popup_btn {
    display: none;
  }
}

/* =========================================================
   Coupon Management Styles (쿠폰 관리)
   ========================================================= */
.coupon_list {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 20px;
}
@media (max-width: 1199px) {
  .coupon_list {
    grid-template-columns: 1fr;
  }
}

.coupon_item {
  display: flex;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s ease;
}
.coupon_item:hover {
  box-shadow: 0 4px 12px rgba(var(--e_black_rgb), 0.1);
  border-color: var(--e_prime);
}
.coupon_item .coupon_left {
  flex: 0 0 120px;
  background: linear-gradient(135deg, var(--e_prime) 0%, color-mix(in srgb, var(--e_prime), black 15%) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.coupon_item .coupon_left::after {
  content: "";
  position: absolute;
  right: -8px;
  top: 50%;
  transform: translateY(-50%);
  width: 16px;
  height: 16px;
  background: #fff;
  border-radius: 50%;
}
@media (max-width: 767px) {
  .coupon_item .coupon_left {
    flex: 0 0 100px;
  }
}
.coupon_item .coupon_discount {
  display: flex;
  flex-direction: column;
  align-items: center;
  color: #fff;
  text-align: center;
  padding: 20px 10px;
}
.coupon_item .coupon_discount .discount_value {
  font-size: 24px;
  font-weight: 700;
  line-height: 1.2;
}
@media (max-width: 767px) {
  .coupon_item .coupon_discount .discount_value {
    font-size: 20px;
  }
}
.coupon_item .coupon_discount .discount_type {
  font-size: 14px;
  font-weight: 500;
}
@media (max-width: 767px) {
  .coupon_item .coupon_discount .discount_type {
    font-size: 12px;
  }
}
.coupon_item .coupon_right {
  flex: 1;
  padding: 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 15px;
}
@media (max-width: 767px) {
  .coupon_item .coupon_right {
    padding: 15px;
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
}
.coupon_item .coupon_info {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.coupon_item .coupon_info .coupon_name_wrap {
  display: flex;
  align-items: center;
  gap: 8px;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .coupon_item .coupon_info .coupon_name_wrap {
    gap: 6px;
  }
}
.coupon_item .coupon_info .coupon_name {
  font-size: 16px;
  font-weight: 600;
  color: #000;
  margin: 0;
}
@media (max-width: 767px) {
  .coupon_item .coupon_info .coupon_name {
    font-size: 14px;
  }
}
.coupon_item .coupon_info .coupon_dday {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 2px 8px;
  border-radius: 30px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
}
.coupon_item .coupon_info .coupon_dday.urgent {
  background: var(--e_red);
  color: #fff;
}
.coupon_item .coupon_info .coupon_dday.warning {
  background: var(--e_yellow);
  color: #fff;
}
.coupon_item .coupon_info .coupon_dday.normal {
  background: var(--e_prime);
  color: #fff;
}
.coupon_item .coupon_info .coupon_dday.expired {
  background: var(--e_gray_cc);
  color: #fff;
}
@media (max-width: 767px) {
  .coupon_item .coupon_info .coupon_dday {
    font-size: 10px;
    padding: 2px 6px;
  }
}
.coupon_item .coupon_info .coupon_condition {
  font-size: 14px;
  color: var(--e_gray_66);
  margin: 0;
}
@media (max-width: 767px) {
  .coupon_item .coupon_info .coupon_condition {
    font-size: 12px;
  }
}
.coupon_item .coupon_info .coupon_period {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 12px;
  color: var(--e_gray_99);
  margin: 0;
}
.coupon_item .coupon_info .coupon_period .material-symbols-rounded {
  font-size: 16px;
}
.coupon_item .coupon_badge {
  flex-shrink: 0;
  padding: 6px 14px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 600;
}
.coupon_item .coupon_badge.expired {
  background: var(--e_gray_ef);
  color: var(--e_gray_66);
}
.coupon_item .coupon_badge.used {
  background: rgba(var(--e_prime_rgb), 0.1);
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .coupon_item .coupon_badge {
    display: none;
  }
}
.coupon_item.expired, .coupon_item.used {
  opacity: 0.6;
}
.coupon_item.expired .coupon_left, .coupon_item.used .coupon_left {
  background: linear-gradient(135deg, var(--e_gray_99) 0%, var(--e_gray_66) 100%);
}
.coupon_item.expired:hover, .coupon_item.used:hover {
  box-shadow: none;
  border-color: var(--e_line);
}

/* 쿠폰 빈 상태 */
.coupon_empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  background: var(--e_gray_ef);
  border-radius: 12px;
  gap: 15px;
}
.coupon_empty .material-symbols-rounded {
  font-size: 60px;
  color: var(--e_gray_cc);
}
.coupon_empty p {
  font-size: 16px;
  color: var(--e_gray_66);
  margin: 0;
}

/* 쿠폰 등록 팝업 스타일 */
.coupon_register_form {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

/* =========================================================
   Address Management Styles (배송지 관리)
   ========================================================= */
.address_section {
  display: flex;
  flex-direction: column;
  gap: 40px;
}

/* 기본 배송지 영역 */
.address_default_wrap h3 {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 18px;
  font-weight: 700;
  color: var(--e_prime);
  margin: 0 0 15px 0;
}
.address_default_wrap h3 .material-symbols-rounded {
  font-size: 24px;
}
@media (max-width: 767px) {
  .address_default_wrap h3 {
    font-size: 16px;
    margin-bottom: 12px;
  }
  .address_default_wrap h3 .material-symbols-rounded {
    font-size: 20px;
  }
}
.address_default_wrap .delivery-up-list {
  background: transparent;
  padding: 0;
}
.address_default_wrap .delivery-up-list li {
  background: rgba(var(--e_prime_rgb), 0.03);
  border: 1px solid var(--e_line);
  border-radius: 10px;
  padding: 15px;
}
.address_default_wrap .delivery-up-list li.default {
  border-color: var(--e_prime);
}

/* 기본배송지 없을 때 */
.address_default_empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 30px 20px;
  text-align: center;
}
.address_default_empty .material-symbols-rounded {
  font-size: 48px;
  color: var(--e_gray_cc);
  margin-bottom: 10px;
}
.address_default_empty p {
  font-size: 14px;
  color: var(--e_gray_66);
  margin: 0;
  line-height: 1.6;
}

.add_header {
  display: flex;
  align-items: center;
  gap: 10px;
  justify-content: space-between;
}

/* 배송지 목록 영역 */
.address_list_wrap {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.address_list_wrap h3 {
  font-size: 18px;
  font-weight: 700;
}
@media (max-width: 767px) {
  .address_list_wrap h3 {
    font-size: 16px;
    margin-bottom: 12px;
  }
}
.address_list_wrap .delivery-up-list {
  display: flex;
  flex-direction: column;
  gap: 12px;
  background: transparent;
  padding: 0;
  max-height: 100%;
}
.address_list_wrap .delivery-up-list li {
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  padding: 15px;
  transition: all 0.2s;
  align-items: center;
}
.address_list_wrap .delivery-up-list li.default {
  background: rgba(var(--e_prime_rgb), 0.03);
  border-color: var(--e_prime);
}
.address_list_wrap .delivery-up-list li.default .btn_set_default {
  display: none;
}
.address_list_wrap .delivery-up-list li:hover {
  border-color: var(--e_prime);
  box-shadow: 0 2px 8px rgba(var(--e_black_rgb), 0.08);
}
.address_list_wrap .delivery-up-list .delivery-actions {
  display: flex;
  gap: 8px;
  flex-direction: row;
}
@media (max-width: 767px) {
  .address_list_wrap .delivery-up-list .delivery-actions {
    flex-wrap: wrap;
    justify-content: flex-end;
    width: 100%;
    margin-top: 10px;
  }
}

/* 배송지 빈 상태 */
.address_empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 20px;
  background: var(--e_gray_ef);
  border-radius: 12px;
  gap: 15px;
}
.address_empty .material-symbols-rounded {
  font-size: 60px;
  color: var(--e_gray_cc);
}
.address_empty p {
  font-size: 16px;
  color: var(--e_gray_66);
  margin: 0;
}

/* 기본 태그 스타일 */
.tag_s.primary {
  background: var(--e_prime);
  color: #fff;
}

.memout_btn {
  display: flex;
  justify-content: flex-end;
  margin-top: 10px;
}
.memout_btn a {
  font-size: 14px;
  color: var(--e_gray_99);
  text-decoration: underline;
}
.memout_btn a:hover {
  color: var(--e_gray_66);
}

/* ========================================================= */
/* 회원탈퇴 페이지 (my_secede.asp)                           */
/* ========================================================= */
.secede_page .info_seccon {
  gap: 40px;
  align-items: stretch;
}

/* 상단 경고 배너 */
.secede_alert_banner {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 16px 20px;
  background: rgba(var(--e_prime_rgb), 0.08);
  border: 1px solid rgba(var(--e_prime_rgb), 0.2);
  border-radius: 10px;
  margin-bottom: 30px;
}
@media (max-width: 767px) {
  .secede_alert_banner {
    flex-wrap: wrap;
    padding: 15px;
    gap: 10px;
  }
}
.secede_alert_banner .material-symbols-rounded {
  font-size: 24px;
  color: var(--e_prime);
  flex-shrink: 0;
}
.secede_alert_banner p {
  flex: 1;
  font-size: 14px;
  color: var(--e_prime);
  font-weight: 500;
  margin: 0;
}
@media (max-width: 767px) {
  .secede_alert_banner p {
    font-size: 12px;
  }
}
.secede_alert_banner .btn_check {
  padding: 8px 16px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 6px;
  font-size: 14px;
  color: var(--e_gray_66);
  text-decoration: none;
  white-space: nowrap;
}
.secede_alert_banner .btn_check:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .secede_alert_banner .btn_check {
    font-size: 12px;
    padding: 6px 12px;
    width: 100%;
    text-align: center;
  }
}

/* 탈퇴사유 섹션 */
.secede_reason_sec {
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 30px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .secede_reason_sec {
    padding: 20px;
  }
}

.secede_row {
  display: flex;
  gap: 20px;
}
.secede_row:first-child {
  padding-top: 0;
}
.secede_row:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
@media (max-width: 767px) {
  .secede_row {
    flex-direction: column;
    gap: 15px;
  }
}

.secede_label {
  flex: 0 0 80px;
  font-size: 14px;
  font-weight: 600;
  color: var(--e_gray_66);
  padding-top: 8px;
}
@media (max-width: 767px) {
  .secede_label {
    flex: none;
    padding-top: 0;
  }
}

.secede_content {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 15px;
}

/* 탈퇴사유 태그 버튼 (라디오) - 비즈하우스 스타일 정밀 구현 */
.reason_tag_group {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
@media (max-width: 767px) {
  .reason_tag_group {
    gap: 5px;
  }
}

.reason_tag_label {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 10px 22px;
  background: #fff;
  border: 1px solid #e2e2e2;
  border-radius: 50px;
  cursor: pointer;
  transition: all 0.2s;
  min-height: 42px;
}
.reason_tag_label .reason_radio {
  display: none;
}
.reason_tag_label .reason_tag_text {
  pointer-events: none;
  font-size: 14px;
  color: var(--e_gray_66);
  letter-spacing: -0.5px;
}
.reason_tag_label:hover {
  border-color: var(--e_gray_cc);
}
.reason_tag_label:hover .reason_tag_text {
  color: var(--e_gray_33);
}
.reason_tag_label:has(.reason_radio:checked) {
  border-color: #bcd5ff;
  background: #eef4ff;
}
.reason_tag_label:has(.reason_radio:checked) .reason_tag_text {
  color: #2d68ff;
  font-weight: 500;
}
@media (max-width: 767px) {
  .reason_tag_label {
    padding: 5px 10px;
  }
  .reason_tag_label .reason_tag_text {
    font-size: 12px;
  }
}

/* 피드백 안내 영역 - 비즈하우스 스타일 정밀 구현 */
.reason_feedback_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 22px 25px;
  background: #f8f9fb;
  border-radius: 8px;
  margin-top: 0;
  min-height: 74px;
}
@media (max-width: 767px) {
  .reason_feedback_box {
    flex-direction: column;
    align-items: center;
    gap: 15px;
    padding: 20px;
  }
}
.reason_feedback_box p {
  flex: 1;
  font-size: 14px;
  color: var(--e_gray_66);
  margin: 0;
  line-height: 1.5;
  word-break: keep-all;
}
@media (max-width: 767px) {
  .reason_feedback_box p {
    font-size: 12px;
    text-align: center;
  }
}
.reason_feedback_box .btn_grayline {
  flex-shrink: 0;
  white-space: nowrap;
  padding: 0 18px;
  height: 36px;
  line-height: 34px;
  font-size: 14px;
  background: #fff;
  border: 1px solid #d2d2d2;
  border-radius: 4px;
  color: var(--e_gray_33);
  font-weight: 400;
  transition: all 0.2s;
}
.reason_feedback_box .btn_grayline:hover {
  border-color: var(--e_gray_99);
  background: #fafafa;
}
@media (max-width: 767px) {
  .reason_feedback_box .btn_grayline {
    height: 34px;
    line-height: 32px;
    padding: 0 15px;
  }
}

/* 기타 의견 텍스트 영역 */
.secede_content .form_textarea {
  min-height: 120px;
  resize: vertical;
}

/* 꼭 읽어주세요 제목 */
.sec_tit.type_warning {
  color: #000;
}

/* 안내 박스 */
.secede_notice_box {
  padding: 25px;
  background: var(--e_gray_ef);
  border-radius: 10px;
}
@media (max-width: 767px) {
  .secede_notice_box {
    padding: 20px;
  }
}
.secede_notice_box .caution_list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.secede_notice_box .caution_list li {
  position: relative;
  padding-left: 15px;
  font-size: 14px;
  color: var(--e_gray_66);
  line-height: 1.7;
  margin-bottom: 10px;
}
.secede_notice_box .caution_list li:last-child {
  margin-bottom: 0;
}
.secede_notice_box .caution_list li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--e_gray_99);
}
.secede_notice_box .caution_list li strong {
  color: var(--e_prime);
  font-weight: 600;
}
@media (max-width: 767px) {
  .secede_notice_box .caution_list li {
    font-size: 12px;
  }
}

/* 동의 체크박스 영역 */
.secede_agree_area {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 0;
}
.secede_agree_area .check-container {
  padding: 0;
}
.secede_agree_area .check-container label {
  font-size: 14px;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .secede_agree_area .check-container label {
    font-size: 12px;
  }
}
.secede_agree_area .required_mark {
  color: var(--e_prime);
  font-weight: 600;
}

/* 하단 버튼 영역 */
.secede_btn_area {
  display: flex;
  justify-content: center;
  gap: 15px;
  margin-top: 20px;
  padding-top: 30px;
  border-top: 1px solid var(--e_line);
}
@media (max-width: 767px) {
  .secede_btn_area {
    gap: 10px;
  }
}
.secede_btn_area .btn_lg {
  min-width: 150px;
}
@media (max-width: 767px) {
  .secede_btn_area .btn_lg {
    min-width: 120px;
    flex: 1;
  }
}

/* 탈퇴 비밀번호 입력 팝업 */
.secede_pw_input {
  margin-top: 20px;
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.secede_pw_input label {
  font-size: 14px;
  font-weight: 600;
  color: #000;
}
.secede_pw_input .form_input {
  width: 100%;
}

/* ========================================================= */
/* 완료 공통 페이지 (탈퇴완료, 주문완료 등)                 */
/* ========================================================= */
.secede_complete_wrap, .order_complete_wrap {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 80px 20px;
  text-align: center;
}
@media (max-width: 767px) {
  .secede_complete_wrap, .order_complete_wrap {
    padding: 60px 15px;
  }
}

.secede_complete_icon, .order_complete_icon {
  width: 100px;
  height: 100px;
  border-radius: 50%;
  background: rgba(var(--e_prime_rgb), 0.1);
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 30px;
}
.secede_complete_icon .material-symbols-rounded, .order_complete_icon .material-symbols-rounded {
  font-size: 50px;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .secede_complete_icon, .order_complete_icon {
    width: 80px;
    height: 80px;
    margin-bottom: 20px;
  }
  .secede_complete_icon .material-symbols-rounded, .order_complete_icon .material-symbols-rounded {
    font-size: 40px;
  }
}
.secede_complete_icon.fail, .order_complete_icon.fail {
  background: rgba(var(--e_red_rgb), 0.1);
}
.secede_complete_icon.fail .material-symbols-rounded, .order_complete_icon.fail .material-symbols-rounded {
  color: var(--e_red);
}

.secede_complete_title, .order_complete_title {
  font-size: 28px;
  font-weight: 700;
  color: #000;
  margin: 0 0 15px 0;
}
@media (max-width: 767px) {
  .secede_complete_title, .order_complete_title {
    font-size: 24px;
  }
}

.secede_complete_desc, .order_complete_desc {
  font-size: 16px;
  color: var(--e_gray_66);
  line-height: 1.6;
  margin: 0 0 30px 0;
}
@media (max-width: 767px) {
  .secede_complete_desc, .order_complete_desc {
    font-size: 14px;
    margin-bottom: 20px;
  }
}

.secede_complete_info, .order_complete_info {
  width: 100%;
  max-width: 600px;
  padding: 25px 30px;
  background: var(--e_gray_ef);
  border-radius: 10px;
  margin-bottom: 30px;
  text-align: left;
}
@media (max-width: 767px) {
  .secede_complete_info, .order_complete_info {
    padding: 20px;
    margin-bottom: 20px;
  }
}
.secede_complete_info .info_summary, .order_complete_info .info_summary {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-bottom: 20px;
  padding-bottom: 20px;
  border-bottom: 1px solid var(--e_line);
}
.secede_complete_info .info_summary dl, .order_complete_info .info_summary dl {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 16px;
}
.secede_complete_info .info_summary dl dt, .order_complete_info .info_summary dl dt {
  color: var(--e_gray_66);
}
.secede_complete_info .info_summary dl dd, .order_complete_info .info_summary dl dd {
  color: #000;
  font-weight: 500;
}
.secede_complete_info .info_summary dl dd strong, .order_complete_info .info_summary dl dd strong {
  color: var(--e_prime);
  font-size: 20px;
}
@media (max-width: 767px) {
  .secede_complete_info .info_summary dl, .order_complete_info .info_summary dl {
    font-size: 14px;
  }
  .secede_complete_info .info_summary dl dd strong, .order_complete_info .info_summary dl dd strong {
    font-size: 18px;
  }
}
.secede_complete_info ul, .order_complete_info ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.secede_complete_info ul li, .order_complete_info ul li {
  position: relative;
  padding-left: 15px;
  font-size: 14px;
  color: var(--e_gray_66);
  line-height: 1.6;
  margin-bottom: 8px;
}
.secede_complete_info ul li:last-child, .order_complete_info ul li:last-child {
  margin-bottom: 0;
}
.secede_complete_info ul li::before, .order_complete_info ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .secede_complete_info ul li, .order_complete_info ul li {
    font-size: 12px;
  }
}

.secede_complete_btn, .order_complete_btn_group {
  display: flex;
  gap: 15px;
  justify-content: center;
  width: 100%;
}
.secede_complete_btn .btn_lg, .order_complete_btn_group .btn_lg {
  min-width: 200px;
}
@media (max-width: 767px) {
  .secede_complete_btn .btn_lg, .order_complete_btn_group .btn_lg {
    min-width: 140px;
    flex: 1;
  }
}

/* ========================================================= */
/* 등급별 혜택 페이지 (my_grade.asp)                         */
/* ========================================================= */
/* 등급 색상 변수 */
/* 나의 등급 현황 영역 */
.grade_current_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 30px 40px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 15px;
  margin-bottom: 30px;
  gap: 30px;
}
@media (max-width: 767px) {
  .grade_current_wrap {
    padding: 20px;
    gap: 20px;
  }
}

.grade_current_left {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 767px) {
  .grade_current_left {
    gap: 15px;
    flex-direction: column;
    width: 200px;
  }
}

.grade_icon_wrap {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .grade_icon_wrap {
    width: 60px;
    height: 60px;
  }
}
.grade_icon_wrap img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.grade_icon_wrap.lv_family {
  background: rgba(0, 194, 168, 0.1);
}
.grade_icon_wrap.lv_silver {
  background: rgba(153, 153, 153, 0.1);
}
.grade_icon_wrap.lv_gold {
  background: rgba(255, 152, 0, 0.1);
}
.grade_icon_wrap.lv_vip {
  background: rgba(175, 82, 222, 0.1);
}
.grade_icon_wrap.lv_premium {
  background: rgba(33, 150, 243, 0.1);
}

.grade_info {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.grade_info .grade_user {
  font-size: 16px;
  color: var(--e_gray_66);
  margin: 0;
}
.grade_info .grade_user strong {
  color: #000;
  font-weight: 600;
}
@media (max-width: 767px) {
  .grade_info .grade_user {
    font-size: 14px;
  }
}
.grade_info .grade_name {
  font-size: 24px;
  font-weight: 700;
  margin: 0;
}
@media (max-width: 767px) {
  .grade_info .grade_name {
    font-size: 20px;
  }
}
.grade_info .grade_name span {
  font-size: 16px;
  font-weight: 400;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .grade_info .grade_name span {
    font-size: 14px;
  }
}
.grade_info .grade_name.lv_family {
  color: #00C2A8;
}
.grade_info .grade_name.lv_silver {
  color: #999;
}
.grade_info .grade_name.lv_gold {
  color: #FF9800;
}
.grade_info .grade_name.lv_vip {
  color: #AF52DE;
}
.grade_info .grade_name.lv_premium {
  color: #2196F3;
}

.grade_current_right {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 10px;
}
@media (max-width: 767px) {
  .grade_current_right {
    align-items: flex-start;
    width: 100%;
    padding-left: 20px;
    border-left: 1px solid var(--e_line);
  }
}

.grade_stat {
  display: flex;
  align-items: baseline;
  gap: 10px;
}
@media (max-width: 767px) {
  .grade_stat {
    gap: 5px;
    flex-direction: column;
  }
}
.grade_stat .stat_value {
  font-size: 24px;
  font-weight: 700;
  color: var(--e_prime);
}
@media (max-width: 767px) {
  .grade_stat .stat_value {
    font-size: 20px;
  }
}
.grade_stat .stat_value em {
  font-style: normal;
  color: var(--e_gray_99);
  font-weight: 400;
}
.grade_stat .stat_label {
  font-size: 14px;
  color: var(--e_gray_66);
  width: 70px;
  text-align: right;
}
@media (max-width: 767px) {
  .grade_stat .stat_label {
    font-size: 12px;
    text-align: left;
    width: 100%;
  }
}

.grade_next_tip {
  font-size: 14px;
  color: var(--e_gray_66);
  margin: 5px 0 0 0;
}
@media (max-width: 767px) {
  .grade_next_tip {
    font-size: 12px;
  }
}
.grade_next_tip strong {
  color: var(--e_prime);
  font-weight: 600;
}

/* 등급별 혜택 카드 리스트 */
.grade_card_list {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  gap: 15px;
  margin-bottom: 40px;
}
@media (max-width: 1199px) {
  .grade_card_list {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 767px) {
  .grade_card_list {
    grid-template-columns: 1fr;
  }
}

.grade_card {
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 12px;
  overflow: hidden;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .grade_card {
    display: flex;
  }
}
.grade_card:hover {
  box-shadow: 0 4px 15px rgba(var(--e_black_rgb), 0.1);
}
.grade_card.active {
  border-color: var(--e_prime);
  box-shadow: 0 4px 15px rgba(var(--e_prime_rgb), 0.2);
}
.grade_card.active .grade_card_header::after {
  content: "현재 등급";
  position: absolute;
  top: 10px;
  right: 10px;
  padding: 4px 10px;
  background: var(--e_prime);
  color: #fff;
  font-size: 10px;
  font-weight: 600;
  border-radius: 20px;
}
@media (max-width: 767px) {
  .grade_card.active .grade_card_header::after {
    display: none;
  }
}

.grade_card_header {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  padding: 40px 0;
  background: var(--e_gray_ef);
}
@media (max-width: 767px) {
  .grade_card_header {
    padding: 20px 0;
    gap: 10px;
    justify-content: center;
    min-width: 120px;
  }
}
.lv_family .grade_card_header {
  background: linear-gradient(135deg, rgba(0, 194, 168, 0.1) 0%, rgba(0, 194, 168, 0.05) 100%);
}
.lv_silver .grade_card_header {
  background: linear-gradient(135deg, rgba(153, 153, 153, 0.15) 0%, rgba(153, 153, 153, 0.08) 100%);
}
.lv_gold .grade_card_header {
  background: linear-gradient(135deg, rgba(255, 152, 0, 0.15) 0%, rgba(255, 152, 0, 0.08) 100%);
}
.lv_vip .grade_card_header {
  background: linear-gradient(135deg, rgba(175, 82, 222, 0.15) 0%, rgba(175, 82, 222, 0.08) 100%);
}
.lv_premium .grade_card_header {
  background: linear-gradient(135deg, rgba(33, 150, 243, 0.15) 0%, rgba(33, 150, 243, 0.08) 100%);
}

.grade_card_icon {
  width: 70px;
  height: 70px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .grade_card_icon {
    width: 55px;
    height: 55px;
  }
}
.grade_card_icon img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.grade_card_name {
  font-size: 18px;
  font-weight: 700;
  margin: 0;
  text-align: center;
}
@media (max-width: 767px) {
  .grade_card_name {
    font-size: 16px;
  }
}
.lv_family .grade_card_name {
  color: #00C2A8;
}
.lv_silver .grade_card_name {
  color: #999;
}
.lv_gold .grade_card_name {
  color: #FF9800;
}
.lv_vip .grade_card_name {
  color: #AF52DE;
}
.lv_premium .grade_card_name {
  color: #2196F3;
}

.grade_card_body {
  display: flex;
  flex-direction: column;
  gap: 40px;
  padding: 20px 15px;
}
@media (max-width: 767px) {
  .grade_card_body {
    gap: 20px;
    padding: 15px 10px;
  }
}

.grade_section {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 767px) {
  .grade_section {
    gap: 5px;
  }
}
.grade_section .grade_section_tit {
  font-size: 12px;
  font-weight: 700;
  color: var(--e_gray_66);
  letter-spacing: 0.5px;
}
.grade_section p {
  font-size: 14px;
  color: var(--e_gray_33);
  margin: 0;
  line-height: 1.5;
}
.grade_section ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.grade_section ul li {
  position: relative;
  padding-left: 12px;
  font-size: 12px;
  color: var(--e_gray_66);
  line-height: 1.6;
  margin-bottom: 4px;
}
.grade_section ul li:last-child {
  margin-bottom: 0;
}
.grade_section ul li::before {
  content: "·";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--e_gray_99);
  font-weight: 700;
}
@media (max-width: 767px) {
  .grade_section ul li {
    padding-left: 10px;
    line-height: 1.2;
  }
}

/* 등급 참고사항 */
.grade_notice_wrap {
  background: var(--e_gray_ef);
  border-radius: 12px;
  overflow: hidden;
}

.grade_notice_tit {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 18px 25px;
  margin: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--e_prime);
  border-bottom: 1px solid rgba(var(--e_prime_rgb), 0.1);
}
@media (max-width: 767px) {
  .grade_notice_tit {
    padding: 15px 20px;
    font-size: 14px;
  }
}
.grade_notice_tit .material-symbols-rounded {
  font-size: 22px;
}
@media (max-width: 767px) {
  .grade_notice_tit .material-symbols-rounded {
    font-size: 20px;
  }
}

.grade_notice_content {
  padding: 25px;
}
@media (max-width: 767px) {
  .grade_notice_content {
    padding: 20px;
  }
}

.notice_group {
  margin-bottom: 20px;
}
.notice_group:last-child {
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .notice_group {
    margin-bottom: 15px;
  }
}
.notice_group h4 {
  font-size: 14px;
  font-weight: 700;
  color: #000;
  margin: 0 0 10px 0;
}
@media (max-width: 767px) {
  .notice_group h4 {
    font-size: 12px;
    margin-bottom: 8px;
  }
}
.notice_group ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.notice_group ul li {
  position: relative;
  padding-left: 15px;
  font-size: 14px;
  color: var(--e_gray_66);
  line-height: 1.7;
  margin-bottom: 6px;
}
.notice_group ul li:last-child {
  margin-bottom: 0;
}
.notice_group ul li::before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  color: var(--e_gray_99);
}
@media (max-width: 767px) {
  .notice_group ul li {
    font-size: 12px;
    padding-left: 12px;
  }
}

/* =========================================================
   Quote Request Page Styles (견적문의)
   ========================================================= */
.quote_form {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
@media (max-width: 767px) {
  .quote_form {
    gap: 35px;
  }
}

.sec_sub_desc {
  font-size: 16px;
  color: var(--e_gray_66);
  margin: -10px 0 20px 0;
}
@media (max-width: 767px) {
  .sec_sub_desc {
    font-size: 14px;
    margin: -5px 0 15px 0;
  }
}

/* 인쇄물 종류 버튼 그리드 */
.print_type_grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 15px;
}
@media (max-width: 767px) {
  .print_type_grid {
    gap: 10px;
  }
}

.print_type_item {
  cursor: pointer;
}
.print_type_item input[type=radio] {
  display: none;
}
.print_type_item input[type=radio]:checked + .print_type_btn {
  background: var(--e_prime);
  color: #fff;
  border-color: var(--e_prime);
}
.print_type_item .print_type_btn {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 18px 20px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  font-size: 16px;
  font-weight: 500;
  color: var(--e_gray_66);
  transition: all 0.2s;
  text-align: center;
}
.print_type_item .print_type_btn:hover {
  border-color: var(--e_prime);
  color: var(--e_prime);
  background: rgba(var(--e_prime_rgb), 0.03);
}
@media (max-width: 767px) {
  .print_type_item .print_type_btn {
    padding: 14px 12px;
    font-size: 14px;
  }
}

/* 마이페이지 견적문의 간판 슬라이더 */
.sign_type_sec .my_sign_swiper_wrap {
  position: relative;
  width: 100%;
  overflow: hidden;
  padding-top: 10px;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper {
  width: 100%;
  max-width: 100%;
  height: 320px;
  padding: 20px 0 60px;
  margin: 0 auto;
  overflow: hidden;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-wrapper {
  align-items: center;
  display: flex;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide {
  display: flex;
  justify-content: center;
  align-items: center;
  transition: all 0.3s ease;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .slide-inner {
  width: 140px;
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  cursor: pointer;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .img-box {
  width: 100%;
  aspect-ratio: 1/1;
  border-radius: 10px;
  box-shadow: 0 8px 20px rgba(var(--e_black_rgb), 0.08);
  overflow: hidden;
  background-color: #fff;
  transition: all 0.3s ease;
  border: 1px solid var(--e_line);
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .img-box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(100%);
  transition: all 0.3s ease;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .slide-title {
  margin-top: 14px;
  font-size: 14px;
  font-weight: 700;
  color: var(--e_gray_99);
  letter-spacing: 0.05px;
  text-align: center;
  transition: all 0.3s ease;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .slide-desc {
  opacity: 0;
  visibility: hidden;
  margin-top: 8px;
  font-size: 12px;
  font-weight: 500;
  color: var(--e_gray_66);
  text-align: center;
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  width: 280px;
  transition: all 0.3s ease;
  word-break: keep-all;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active {
  z-index: 10;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .slide-inner {
  width: 180px;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .slide-title {
  margin-top: 10px;
  font-size: 18px;
  color: #000;
  letter-spacing: 0.1px;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .slide-desc {
  opacity: 1;
  visibility: visible;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .img-box {
  border-color: var(--e_prime);
  box-shadow: 0 12px 28px rgba(var(--e_prime_rgb), 0.2);
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .img-box img {
  filter: grayscale(0%);
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-prev,
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-next {
  width: 34px;
  height: 34px;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 50%;
  box-shadow: 0 2px 5px rgba(var(--e_black_rgb), 0.15);
  color: #000;
  top: 42%;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-prev::after,
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-next::after {
  font-size: 12px;
  font-weight: bold;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-prev:hover,
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-next:hover {
  background: var(--e_prime);
  color: #fff;
  border-color: var(--e_prime);
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-prev {
  left: 10px;
}
.sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-next {
  right: 10px;
}
@media (max-width: 767px) {
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper {
    height: 280px;
    padding: 10px 0 50px;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .slide-inner {
    width: 110px;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .slide-title {
    font-size: 12px;
    margin-top: 10px;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide .slide-desc {
    width: 220px;
    font-size: 12px;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .slide-inner {
    width: 140px;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-slide-active .slide-title {
    font-size: 16px;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-prev {
    left: 0;
  }
  .sign_type_sec .my_sign_swiper_wrap .detail-quote-swiper .swiper-button-next {
    right: 0;
  }
}

/* 견적문의 파일 업로드 박스 */
.quote-upload-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 15px;
  padding: 40px 20px;
  background: #fff;
  border: 2px dashed var(--e_line);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s;
  min-height: 180px;
}
.quote-upload-box:hover, .quote-upload-box.dragover {
  border-color: var(--e_prime);
  background: rgba(var(--e_prime_rgb), 0.02);
}
@media (max-width: 767px) {
  .quote-upload-box {
    padding: 30px 15px;
    min-height: 150px;
    gap: 12px;
  }
}
.quote-upload-box .biz-script {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
}
.quote-upload-box .biz-upload-icon .material-symbols-rounded {
  font-size: 48px;
  color: var(--e_gray_cc);
}
@media (max-width: 767px) {
  .quote-upload-box .biz-upload-icon .material-symbols-rounded {
    font-size: 40px;
  }
}
.quote-upload-box .biz-upload-desc {
  font-size: 16px;
  color: var(--e_gray_66);
  text-align: center;
  line-height: 1.6;
}
.quote-upload-box .biz-upload-desc .upload-formats {
  font-size: 14px;
  color: var(--e_gray_99);
  display: block;
  margin-top: 5px;
}
@media (max-width: 767px) {
  .quote-upload-box .biz-upload-desc {
    font-size: 14px;
  }
  .quote-upload-box .biz-upload-desc .upload-formats {
    font-size: 12px;
  }
}
.quote-upload-box .biz-upload-preview {
  display: none;
  flex-wrap: wrap;
  gap: 10px;
  width: 100%;
  justify-content: flex-start;
  padding-top: 15px;
  border-top: 1px solid var(--e_line);
}
.quote-upload-box .biz-upload-preview:empty {
  display: none;
}

.upload-notice {
  font-size: 14px;
  color: var(--e_gray_66);
  margin: 10px 0 0 0;
}
@media (max-width: 767px) {
  .upload-notice {
    font-size: 12px;
  }
}

/* 개인정보 동의 섹션 */
.privacy_agree_sec {
  padding: 20px 0;
  border-top: 1px solid var(--e_line);
}
.privacy_agree_sec .check-container label {
  font-size: 16px;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .privacy_agree_sec .check-container label {
    font-size: 14px;
  }
}

/* 견적문의 버튼 영역 */
.quote_btn_area {
  justify-content: center;
  margin-top: 10px;
}
.quote_btn_area .btn_lg {
  min-width: 280px;
  height: 60px;
  font-size: 18px;
  font-weight: 600;
  border-radius: 12px;
}
@media (max-width: 767px) {
  .quote_btn_area .btn_lg {
    min-width: 100%;
    height: 56px;
    font-size: 16px;
  }
}

/* 견적문의 상세 페이지 스타일 */
.quote_view_content .info_sec {
  margin-bottom: 30px;
}
.quote_view_content .view_table_wrap {
  border-top: 1px solid var(--e_gray_33);
}
.quote_view_content .view_table_wrap .view_table {
  width: 100%;
  table-layout: fixed;
}
.quote_view_content .view_table_wrap .view_table th, .quote_view_content .view_table_wrap .view_table td {
  padding: 15px 10px;
  border-bottom: 1px solid var(--e_line);
  font-size: 14px;
}
.quote_view_content .view_table_wrap .view_table th {
  background-color: var(--e_gray_ef);
  color: var(--e_gray_33);
  font-weight: 500;
  text-align: left;
  padding-left: 20px;
}
.quote_view_content .view_table_wrap .view_table td {
  color: var(--e_gray_33);
}
@media (max-width: 767px) {
  .quote_view_content .view_table_wrap .view_table th, .quote_view_content .view_table_wrap .view_table td {
    display: block;
    width: 100%;
    padding: 10px 0;
    border: none;
  }
  .quote_view_content .view_table_wrap .view_table th {
    background: none;
    padding-bottom: 5px;
    color: var(--e_gray_99);
    padding-left: 0;
  }
  .quote_view_content .view_table_wrap .view_table td {
    padding-top: 0;
    border-bottom: 1px solid var(--e_line);
    padding-bottom: 15px;
    margin-bottom: 15px;
  }
  .quote_view_content .view_table_wrap .view_table tr:last-child td {
    border-bottom: none;
  }
}
.quote_view_content .view_text_box {
  padding: 15px 20px;
  background-color: var(--e_gray_ef);
  border-radius: 8px;
  font-size: 16px;
  color: var(--e_gray_33);
  font-weight: 500;
}
.quote_view_content .bg_gray {
  background-color: var(--e_gray_ef);
  padding: 20px;
  border-radius: 8px;
}

.guide_layout {
  display: flex;
  gap: 40px;
}
@media (max-width: 1199px) {
  .guide_layout {
    flex-direction: column;
    gap: 30px;
  }
}
.guide_layout .guide_main {
  width: 100%;
  min-width: 0;
  margin-top: 40px;
  display: flex;
  flex-direction: column;
  gap: 60px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main {
    margin-top: 0;
    gap: 40px;
  }
}
.guide_layout .guide_main.after_processing .guide_section .guide_header_wrap {
  border-bottom: 2px solid var(--e_line);
}
.guide_layout .guide_main .guide_page_header .guide_tit {
  font-size: 24px;
  font-weight: 700;
  color: var(--e_gray_33);
}
.guide_layout .guide_main .guide_section {
  border: none;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 24px;
}
.guide_layout .guide_main .guide_section .section_title {
  font-size: 22px;
  font-weight: 700;
  color: var(--e_gray_33);
  padding-bottom: 16px;
  border-bottom: 2px solid #000;
  display: flex;
  align-items: center;
  gap: 8px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .section_title {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .section_title {
    font-size: 16px;
  }
}
.guide_layout .guide_main .guide_section .section_title .material-symbols-rounded {
  font-size: 26px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .section_title .material-symbols-rounded {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .section_title .material-symbols-rounded {
    font-size: 18px;
  }
}
.guide_layout .guide_main .guide_section .section_title.bar {
  border: none !important;
  padding: 0 !important;
  font-size: 24px;
  font-weight: 500;
  color: var(--e_gray_33);
  gap: 12px;
}
.guide_layout .guide_main .guide_section .section_title.bar::before {
  content: "";
  width: 4px;
  height: 1em;
  background: var(--e_prime);
  display: block;
  flex-shrink: 0;
}
.guide_layout .guide_main .guide_section .section_title.bar .material-symbols-rounded {
  display: none;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .section_title.bar {
    font-size: 20px;
  }
}
.guide_layout .guide_main .guide_section .exam {
  font-size: 16px;
  font-weight: 500;
  color: #000;
  display: flex;
  align-items: center;
  gap: 5px;
}
.guide_layout .guide_main .guide_section .exam::before {
  content: "";
  display: inline-block;
  width: 16px;
  aspect-ratio: 1/1;
  background: rgba(var(--e_prime_rgb), 0.3);
  border-radius: 100%;
}
.guide_layout .guide_main .guide_section .guide_header_wrap {
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 2px solid #000;
  padding-bottom: 16px;
}
.guide_layout .guide_main .guide_section .guide_header_wrap .section_title {
  padding-bottom: 0;
  border-bottom: none;
}
.guide_layout .guide_main .guide_section .guide_header_wrap .breadcrumb {
  display: flex;
  align-items: center;
  font-size: 14px;
  color: var(--e_gray_66);
}
.guide_layout .guide_main .guide_section .guide_header_wrap .breadcrumb .material-symbols-rounded {
  font-size: 18px;
  color: var(--e_gray_99);
  margin: 0 4px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .guide_header_wrap {
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
  }
}
.guide_layout .guide_main .guide_section .intro_top_row {
  display: flex;
  justify-content: flex-end;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .intro_top_row {
    margin-bottom: 0;
  }
}
.guide_layout .guide_main .guide_section .intro_top_row .breadcrumb {
  display: flex;
  align-items: center;
  font-size: 14px;
  color: var(--e_gray_99);
}
.guide_layout .guide_main .guide_section .intro_top_row .breadcrumb .material-symbols-rounded {
  font-size: 16px;
  margin: 0 4px;
}
.guide_layout .guide_main .guide_section .intro_main_row {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 40px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .intro_main_row {
    flex-direction: column;
    align-items: flex-start;
    gap: 30px;
  }
}
.guide_layout .guide_main .guide_section .intro_main_row .intro_content {
  flex: 1;
}
.guide_layout .guide_main .guide_section .intro_main_row .intro_content .intro_title {
  font-size: 32px;
  font-weight: 600;
  color: #000;
  margin-bottom: 24px;
  letter-spacing: -0.5px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .intro_main_row .intro_content .intro_title {
    font-size: 28px;
  }
}
.guide_layout .guide_main .guide_section .intro_main_row .intro_content .intro_desc {
  font-size: 22px;
  font-weight: 500;
  color: var(--e_gray_66);
  line-height: 1.6;
  word-break: keep-all;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .intro_main_row .intro_content .intro_desc {
    font-size: 18px;
  }
}
.guide_layout .guide_main .guide_section .intro_main_row .intro_visual {
  width: 400px;
  aspect-ratio: 1/1;
  background: var(--e_gray_f5);
  display: flex;
  align-items: center;
  justify-content: center;
  overflow: hidden;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .intro_main_row .intro_visual {
    width: 100%;
  }
}
.guide_layout .guide_main .guide_section .intro_main_row .intro_visual img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.guide_layout .guide_main .guide_section .compare_wrap {
  padding: 50px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 40px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .compare_wrap {
    padding: 30px;
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .compare_wrap {
    flex-direction: column;
  }
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item {
  text-align: center;
  width: 100%;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .compare_tit {
  font-size: 24px;
  font-weight: 500;
  color: var(--e_gray_33);
  margin-bottom: 20px;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .compare_tit.boxed {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 6px 20px;
  background: var(--e_gray_ef);
  border-radius: 4px;
  font-size: 18px;
  color: var(--e_gray_33);
  margin-bottom: 16px;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .compare_img_box {
  width: 100%;
  aspect-ratio: 5/3;
  background: #fff;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .compare_img_box img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card {
  width: 100%;
  aspect-ratio: 5/3;
  background: #ffe062;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  box-shadow: 0px 4px 10px rgba(var(--e_black_rgb), 0.05);
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card.after {
  border-radius: 20px;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card.after.thomson {
  border-radius: 0;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card.after.thomson .mock_logo {
  background: #fff;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card > div {
  position: absolute;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card .mock_logo {
  width: 110px;
  height: 110px;
  border-radius: 50%;
  background: #fb8a2e;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  font-weight: bold;
  color: #000;
  letter-spacing: 1px;
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card .mock_txt1 {
  left: 20px;
  font-size: 14px;
  transform: rotate(-90deg);
}
.guide_layout .guide_main .guide_section .compare_wrap .compare_item .mock_card .mock_txt2 {
  right: 20px;
  font-size: 14px;
  transform: rotate(90deg);
}
.guide_layout .guide_main .guide_section .compare_wrap .arrow {
  padding-top: 50px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .compare_wrap .arrow {
    padding: 0;
    transform: rotate(90deg);
  }
}
.guide_layout .guide_main .guide_section .compare_wrap .arrow .material-symbols-rounded {
  font-size: 40px;
  color: #000;
}
.guide_layout .guide_main .guide_section .compare_result {
  background: var(--e_gray_ef);
  border-radius: 10px;
  text-align: center;
  padding: 20px;
  font-size: 20px;
  color: var(--e_gray_66);
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .compare_result {
    font-size: 16px;
  }
}
.guide_layout .guide_main .guide_section .corner_position, .guide_layout .guide_main .guide_section .numbering_flow {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: space-between;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item, .guide_layout .guide_main .guide_section .numbering_flow .pos_item {
  width: calc(25% - 15px);
  aspect-ratio: 1.5;
  background: #fb8a2e;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .corner_position .pos_item, .guide_layout .guide_main .guide_section .numbering_flow .pos_item {
    width: calc(50% - 10px);
  }
}
.guide_layout .guide_main .guide_section .corner_position .pos_item > .circle, .guide_layout .guide_main .guide_section .numbering_flow .pos_item > .circle {
  width: 80px;
  height: 80px;
  background: #fff;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-weight: bold;
  font-size: 18px;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.pos1, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.pos1 {
  border-top-left-radius: 30px;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.pos2, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.pos2 {
  border-top-right-radius: 30px;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.pos3, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.pos3 {
  border-bottom-left-radius: 30px;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.pos4, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.pos4 {
  border-bottom-right-radius: 30px;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item img, .guide_layout .guide_main .guide_section .numbering_flow .pos_item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.ex, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.ex {
  width: calc(33.33% - 14px);
  aspect-ratio: 1.5;
  background: none;
  border-radius: 10px;
  overflow: hidden;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .corner_position .pos_item.ex, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.ex {
    width: calc(50% - 10px);
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .corner_position .pos_item.ex, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.ex {
    width: 100%;
  }
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.ex.full, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.ex.full {
  width: 100%;
  aspect-ratio: auto;
}
.guide_layout .guide_main .guide_section .corner_position .pos_item.ex.full img, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.ex.full img {
  width: auto;
  height: auto;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .corner_position .pos_item.ex.full img, .guide_layout .guide_main .guide_section .numbering_flow .pos_item.ex.full img {
    width: 100%;
  }
}
.guide_layout .guide_main .guide_section .foil_type_list {
  display: flex;
  gap: 20px;
  justify-content: space-between;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .foil_type_list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .foil_type_list {
    gap: 10px;
  }
}
.guide_layout .guide_main .guide_section .foil_type_list .type_item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .foil_type_list .type_item {
    width: 100%;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .foil_type_list .type_item {
    gap: 12px;
  }
}
.guide_layout .guide_main .guide_section .foil_type_list .type_item .type_img {
  width: 100%;
  aspect-ratio: 220/150;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}
.guide_layout .guide_main .guide_section .foil_type_list .type_item .type_img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.guide_layout .guide_main .guide_section .foil_type_list .type_item .type_name {
  font-size: 18px;
  font-weight: 500;
  color: var(--e_gray_33);
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .foil_type_list .type_item .type_name {
    font-size: 16px;
  }
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin {
  border-radius: 0 !important;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mock_content_placeholder {
  position: absolute;
  top: 15px;
  right: 15px;
  width: 100px;
  height: 35px;
  background: #fff;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mishin_line_wrap {
  position: absolute;
  right: 60px;
  top: 0;
  height: 100%;
  width: 100px;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mishin_line_wrap .mishin_line {
  position: absolute;
  right: 0;
  top: 0;
  height: 100%;
  border-right: 2px dashed #ff4141;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mishin_line_wrap .mishin_indicator {
  position: absolute;
  right: 10px;
  bottom: 40px;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mishin_line_wrap .mishin_indicator .mishin_txt {
  font-size: 16px;
  font-weight: 700;
  color: #000;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mishin_line_wrap .mishin_indicator .mishin_arrow {
  width: 50px;
  height: 2px;
  background: #ff4141;
  position: relative;
}
.guide_layout .guide_main .guide_section .mock_card.after.mishin .mishin_line_wrap .mishin_indicator .mishin_arrow::after {
  content: "";
  position: absolute;
  right: -2px;
  top: 50%;
  transform: translateY(-50%);
  border-top: 5px solid transparent;
  border-bottom: 5px solid transparent;
  border-left: 8px solid #ff4141;
}
.guide_layout .guide_main .guide_section .numbering_flow .pos_item {
  background: #fb8a2e;
  border-radius: 0 !important;
}
.guide_layout .guide_main .guide_section .numbering_flow .pos_item > .circle {
  width: auto;
  height: auto;
  min-width: 120px;
  padding: 15px 20px;
  border-radius: 100px;
  font-size: 20px;
  font-weight: 500;
  color: #000;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .numbering_flow .pos_item > .circle {
    min-width: 100px;
    font-size: 16px;
  }
}
.guide_layout .guide_main .guide_section .method_wrap {
  display: flex;
  gap: 40px;
  justify-content: center;
  align-items: flex-start;
  padding: 30px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .method_wrap {
    flex-direction: column;
    align-items: center;
  }
}
.guide_layout .guide_main .guide_section .method_wrap .method_item {
  position: relative;
  width: 380px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .method_wrap .method_item {
    width: 100%;
  }
}
.guide_layout .guide_main .guide_section .method_wrap .method_item img {
  width: 100%;
  border-radius: 10px;
}
.guide_layout .guide_main .guide_section .mock_card.punch {
  background: #ffe062 !important;
  border-radius: 0 !important;
}
.guide_layout .guide_main .guide_section .mock_card.punch .mock_logo {
  background: none !important;
  width: auto;
  height: auto;
  border-radius: 0;
  font-size: 18px;
  color: #000;
  letter-spacing: -0.5px;
}
.guide_layout .guide_main .guide_section .mock_card.punch .punch_pos, .guide_layout .guide_main .guide_section .mock_card.punch .punch_hole {
  position: absolute;
  left: 30px;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  border: 3px solid #ff0000;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .mock_card.punch .punch_pos, .guide_layout .guide_main .guide_section .mock_card.punch .punch_hole {
    left: 20px;
    width: 34px;
    height: 34px;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .mock_card.punch .punch_pos, .guide_layout .guide_main .guide_section .mock_card.punch .punch_hole {
    left: 15px;
    width: 30px;
    height: 30px;
    border-width: 2px;
  }
}
.guide_layout .guide_main .guide_section .mock_card.punch .punch_pos.pos1, .guide_layout .guide_main .guide_section .mock_card.punch .punch_hole.pos1 {
  top: 20px;
}
.guide_layout .guide_main .guide_section .mock_card.punch .punch_pos.pos2, .guide_layout .guide_main .guide_section .mock_card.punch .punch_hole.pos2 {
  bottom: 20px;
}
.guide_layout .guide_main .guide_section .mock_card.punch.after .punch_hole {
  background: #fff;
  border-style: dashed;
}
.guide_layout .guide_main .guide_section .mock_card.folding {
  background: #ffe062;
  border-radius: 0 !important;
}
.guide_layout .guide_main .guide_section .mock_card.folding .mock_logo {
  background: none !important;
  width: auto;
  height: auto;
  border-radius: 0;
  font-size: 18px;
  color: #000;
  letter-spacing: -0.5px;
}
.guide_layout .guide_main .guide_section .mock_card.folding.before .folding_line {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 0;
  border-left: 2px dashed #0055ff;
  transform: translateX(-50%);
}
.guide_layout .guide_main .guide_section .mock_card.folding.before .folding_line::before {
  content: "오시/접지선";
  position: absolute;
  top: 10px;
  left: 10px;
  font-size: 12px;
  color: #0055ff;
  font-weight: 700;
  white-space: nowrap;
}
.guide_layout .guide_main .guide_section .mock_card.folding.before .folding_line.pos1 {
  left: 33.33%;
}
.guide_layout .guide_main .guide_section .mock_card.folding.before .folding_line.pos2 {
  left: 66.66%;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after {
  display: flex;
  background: none;
  box-shadow: none;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after .fold_part {
  flex: 1;
  height: 100%;
  border-right: 1px solid rgba(0, 0, 0, 0.1);
  background: #ffe062;
  position: relative;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after .fold_part:last-child {
  border-right: none;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after .fold_part.folded {
  background: #ffd000;
  box-shadow: inset -10px 0 20px rgba(0, 0, 0, 0.05);
}
.guide_layout .guide_main .guide_section .mock_card.folding.after.zigzag {
  padding: 0 10px;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after.zigzag .fold_part {
  border: none;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  position: relative;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after.zigzag .fold_part:nth-child(1) {
  transform: skewY(-8deg);
  z-index: 3;
  background: #ffe062;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after.zigzag .fold_part:nth-child(2) {
  transform: skewY(8deg);
  z-index: 2;
  background: #ffd000;
  margin-left: -2px;
}
.guide_layout .guide_main .guide_section .mock_card.folding.after.zigzag .fold_part:nth-child(3) {
  transform: skewY(-8deg);
  z-index: 1;
  background: #ffe062;
  margin-left: -2px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap {
  display: flex;
  align-items: flex-end;
  justify-content: center;
  gap: 40px;
  padding: 60px 40px;
  background: #fff;
  border-radius: 10px;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .punch_size_wrap {
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .punch_size_wrap {
    flex-wrap: wrap;
    gap: 20px;
    padding: 30px 20px;
  }
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 24px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle {
  border-radius: 50%;
  background: #adccff;
  border: 2px solid #4286f4;
  flex-shrink: 0;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle.s3 {
  width: 48px;
  height: 48px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle.s4 {
  width: 58px;
  height: 58px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle.s5 {
  width: 68px;
  height: 68px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle.s6 {
  width: 78px;
  height: 78px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle.s7 {
  width: 88px;
  height: 88px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .punch_circle.s8 {
  width: 98px;
  height: 98px;
}
.guide_layout .guide_main .guide_section .punch_size_wrap .size_item .size_label {
  width: 88px;
  height: 28px;
  background: #666666;
  border-radius: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
}
@media (max-width: 1199px) {
  .guide_layout .guide_main .guide_section .punch_size_wrap .size_item .size_label {
    width: 70px;
    height: 24px;
    font-size: 14px;
  }
}
.guide_layout .guide_main .guide_section .folding_method_wrap {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(160px, 1fr));
  gap: 15px;
  padding: 40px;
  background: #fff;
  border-radius: 10px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .folding_method_wrap {
    grid-template-columns: repeat(2, 1fr);
    padding: 20px;
  }
}
.guide_layout .guide_main .guide_section .folding_method_wrap .method_item {
  display: flex;
  flex-direction: column;
  border: 1px solid var(--e_line);
  border-radius: 10px;
  overflow: hidden;
  height: 100%;
}
.guide_layout .guide_main .guide_section .folding_method_wrap .method_item .method_icon_box {
  height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  padding: 20px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .guide_section .folding_method_wrap .method_item .method_icon_box {
    height: 120px;
  }
}
.guide_layout .guide_main .guide_section .folding_method_wrap .method_item .method_icon_box img {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
.guide_layout .guide_main .guide_section .folding_method_wrap .method_item .method_info {
  flex: 1;
  padding: 0 15px 20px;
  text-align: center;
}
.guide_layout .guide_main .guide_section .folding_method_wrap .method_item .method_info .method_tit_tag {
  display: inline-block;
  padding: 4px 12px;
  background: #666666;
  color: #fff;
  font-size: 14px;
  font-weight: 700;
  border-radius: 0 0 10px 10px;
  margin-bottom: 15px;
}
.guide_layout .guide_main .guide_section .folding_method_wrap .method_item .method_info .method_desc {
  font-size: 13px;
  color: var(--e_gray_66);
  line-height: 1.5;
  word-break: keep-all;
}
.guide_layout .guide_main .size_diagram_box {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 60px;
  background: rgba(var(--e_prime_rgb), 0.05);
  padding: 50px 40px;
  border-radius: 0;
  width: 100%;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .size_diagram_box {
    flex-direction: column;
    gap: 30px;
    padding: 30px 20px;
  }
}
.guide_layout .guide_main .size_diagram_box .diagram_visual {
  width: 210px;
  display: flex;
  align-items: center;
  aspect-ratio: 210/297;
  justify-content: center;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .size_diagram_box .diagram_visual {
    width: 50%;
    min-width: 200px;
  }
}
.guide_layout .guide_main .size_diagram_box .diagram_visual .box_work {
  width: 100%;
  height: 100%;
  background: rgba(var(--e_prime_rgb), 0.3);
  padding: 20px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.guide_layout .guide_main .size_diagram_box .diagram_visual .box_cut {
  width: 100%;
  height: 100%;
  background: #fff;
  border: 1px solid #000;
  padding: 19px;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.guide_layout .guide_main .size_diagram_box .diagram_visual .box_safe {
  width: 100%;
  height: 100%;
  border: 1px solid var(--e_yellow);
  background: transparent;
  box-sizing: border-box;
  display: flex;
  align-items: center;
  justify-content: center;
}
.guide_layout .guide_main .size_diagram_box .diagram_visual .box_safe .safe_txt {
  font-size: 16px;
  font-weight: 500;
  color: var(--e_yellow);
  text-align: center;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc {
  flex: 1;
  max-width: 500px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .size_diagram_box .diagram_desc {
    width: 100%;
    max-width: 100%;
  }
}
.guide_layout .guide_main .size_diagram_box .diagram_desc ul {
  display: flex;
  flex-direction: column;
  gap: 15px;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item {
  display: flex;
  align-items: stretch;
  gap: 16px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item {
    gap: 10px;
    flex-direction: column;
  }
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item .desc_box {
  width: 85px;
  height: 85px;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border: 1px solid var(--e_line);
  font-size: 14px;
  font-weight: 500;
  flex-shrink: 0;
  background: #fff;
}
@media (max-width: 767px) {
  .guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item .desc_box {
    width: auto;
    height: 40px;
    padding: 0 10px;
    border-radius: 4px;
  }
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item.safe .desc_box {
  border-color: var(--e_yellow);
  color: var(--e_yellow);
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item.cut .desc_box {
  border-color: var(--e_gray_99);
  color: #000;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item.work .desc_box {
  border: none;
  background: rgba(var(--e_prime_rgb), 0.3);
  color: #000;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item .desc_text {
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 8px;
  flex: 1;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item .desc_text strong {
  font-size: 12px;
  font-weight: 700;
  color: #000;
  margin-bottom: 0;
  display: block;
  line-height: 25px;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item .desc_text p {
  font-size: 12px;
  color: #000;
  line-height: 16px;
  margin: 0;
  word-break: keep-all;
  font-weight: 400;
}
.guide_layout .guide_main .size_diagram_box .diagram_desc .desc_item.safe .desc_text strong {
  color: var(--e_yellow);
}
.guide_layout .guide_main .table_section {
  gap: 0;
}
.guide_layout .guide_main .table_section .guide_header_wrap {
  border-bottom: none;
}
.guide_layout .guide_main .table_section .btn_down {
  padding: 8px 16px;
  background: var(--e_prime);
  color: #fff;
  border-radius: 4px;
  cursor: pointer;
  transition: all 0.2s;
}
.guide_layout .guide_main .table_section .btn_down:hover {
  background: color-mix(in srgb, var(--e_prime), black 20%);
  color: #fff;
}
.guide_layout .guide_main .table_section .fav {
  background: rgba(var(--e_prime_rgb), 0.1);
}
@media (max-width: 767px) {
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr {
    display: flex;
    flex-direction: column;
    padding: 20px;
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 10px 0;
    border: none !important;
    width: 100%;
    text-align: left;
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td::before {
    content: attr(data-label);
    font-weight: 700;
    color: #000;
    font-size: 14px;
    width: 100px;
    flex-shrink: 0;
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td + td {
    border-top: 1px solid var(--e_line) !important;
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td:nth-child(1)::before, .guide_layout .guide_main .table_section .guide_size_table table tbody tr td.m_rowspan_cloned::before {
    display: none;
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td:nth-child(1), .guide_layout .guide_main .table_section .guide_size_table table tbody tr td.m_rowspan_cloned {
    font-size: 18px;
    font-weight: 700;
    color: var(--e_prime);
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td:last-child::before {
    display: none;
  }
  .guide_layout .guide_main .table_section .guide_size_table table tbody tr td:last-child .btn_down {
    width: 100%;
    height: 45px;
    font-weight: 500;
  }
}

.m_rowspan_cloned {
  display: none !important;
}

@media (max-width: 767px) {
  .guide_size_table .m_rowspan_cloned {
    display: flex !important;
  }
}
.guide_top_menu {
  position: relative;
  border-bottom: 1px solid var(--e_line);
  background: #fff;
}
.guide_top_menu .top_menu_inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  height: 100px;
}
@media (max-width: 1199px) {
  .guide_top_menu .top_menu_inner {
    height: 60px;
  }
}
@media (max-width: 767px) {
  .guide_top_menu .top_menu_inner {
    flex-direction: column;
    align-items: flex-start;
    height: 80px;
  }
}
.guide_top_menu .top_menu_inner .guide_top_tit {
  font-size: 24px;
  font-weight: 700;
  color: #000;
  margin: 0;
}
@media (max-width: 1199px) {
  .guide_top_menu .top_menu_inner .guide_top_tit {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .guide_top_menu .top_menu_inner .guide_top_tit {
    font-size: 18px;
  }
}
.guide_top_menu .top_menu_inner .top_nav {
  display: flex;
  align-items: center;
  height: 100%;
  gap: 40px;
}
@media (max-width: 767px) {
  .guide_top_menu .top_menu_inner .top_nav {
    gap: 20px;
  }
}
.guide_top_menu .top_menu_inner .top_nav .nav_item {
  display: flex;
  align-items: center;
  height: 100%;
  position: relative;
  font-size: 16px;
  font-weight: 500;
  color: #000;
  text-decoration: none;
  transition: 0.2s color;
}
.guide_top_menu .top_menu_inner .top_nav .nav_item:hover {
  color: var(--e_prime);
}
.guide_top_menu .top_menu_inner .top_nav .nav_item.active {
  color: var(--e_prime);
}
.guide_top_menu .top_menu_inner .top_nav .nav_item.active::after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  height: 3px;
  background: var(--e_prime);
  display: block;
  z-index: 1;
}

.guide_side {
  width: 200px;
  border-right: 1px solid var(--e_line);
  background: #fff;
  padding: 40px 0;
  flex-shrink: 0;
}
@media (max-width: 1199px) {
  .guide_side {
    width: 100%;
    padding: 20px 0;
    border: none;
    border-bottom: 1px solid var(--e_line);
  }
}
.guide_side .side_list {
  display: flex;
  flex-direction: column;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}
@media (max-width: 1199px) {
  .guide_side .side_list {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 10px;
  }
}
.guide_side .side_list li {
  padding: 0 40px 0 0;
}
@media (max-width: 1199px) {
  .guide_side .side_list li {
    padding: 0;
  }
}
.guide_side .side_list li a {
  font-size: 20px;
  font-weight: 400;
  color: var(--e_gray_99);
  text-decoration: none;
  display: block;
  transition: 0.2s color;
}
@media (max-width: 1199px) {
  .guide_side .side_list li a {
    font-size: 14px;
    border: 1px solid var(--e_line);
    border-radius: 20px;
    padding: 10px 15px;
    color: #000;
  }
}
@media (max-width: 767px) {
  .guide_side .side_list li a {
    padding: 10px 10px;
  }
}
.guide_side .side_list li:hover a {
  color: #000;
}
.guide_side .side_list li.active a {
  color: var(--e_prime);
}
@media (max-width: 1199px) {
  .guide_side .side_list li.active a {
    color: #fff;
    background: var(--e_prime);
    border-color: var(--e_prime);
    font-weight: 500;
  }
}

.guide_section_etc {
  padding: 30px;
  border: 1px solid var(--e_line);
  border-radius: 8px;
  background: #fff;
}
.guide_section_etc h3 {
  font-size: 20px;
  font-weight: 600;
  margin-bottom: 16px;
  color: #000;
}
.guide_section_etc p {
  font-size: 15px;
  line-height: 1.6;
  color: var(--e_gray_66);
}

.guide_layout .guide_main.share_mode .share_mode_wrap .intro_title {
  font-size: 64px;
  font-weight: 500;
  color: #000;
  border-bottom: 1px solid #d9d9d9;
  padding-bottom: 20px;
  margin-bottom: 20px;
  letter-spacing: -1px;
}
.guide_layout .guide_main.share_mode .share_mode_wrap .intro_desc {
  font-size: 28px;
  line-height: 1.4;
  color: #666;
  font-weight: 400;
  margin-bottom: 0;
}
.guide_layout .guide_main.share_mode .share_mode_wrap .intro_desc strong {
  color: #666;
  font-weight: 600;
}
.guide_layout .guide_main.share_mode .share_mode_wrap .intro_main_row {
  flex-direction: column;
  align-items: flex-start;
  gap: 40px;
}
.guide_layout .guide_main.share_mode .color_mode_compare_area {
  display: flex;
  justify-content: center;
  width: 100%;
  margin: 60px 0;
}
.guide_layout .guide_main.share_mode .color_mode_compare {
  display: flex;
  align-items: center;
  gap: 60px;
  height: 100px;
}
@media (max-width: 767px) {
  .guide_layout .guide_main.share_mode .color_mode_compare {
    gap: 30px;
  }
}
.guide_layout .guide_main.share_mode .color_mode_compare .mode_item {
  display: flex;
  align-items: center;
  gap: 15px;
}
.guide_layout .guide_main.share_mode .color_mode_compare .mode_item .mode_txt {
  font-size: 32px;
  font-weight: 600;
  color: #666;
  letter-spacing: -0.5px;
}
.guide_layout .guide_main.share_mode .color_mode_compare .mode_item .material-symbols-rounded {
  font-size: 38px;
}
.guide_layout .guide_main.share_mode .color_mode_compare .mode_item .material-symbols-rounded.icon_x {
  color: #ff4141;
}
.guide_layout .guide_main.share_mode .color_mode_compare .mode_item .material-symbols-rounded.icon_check {
  color: #4286f4;
}
.guide_layout .guide_main.share_mode .color_mode_compare .divider {
  width: 1px;
  height: 100%;
  background: #454545;
}
.guide_layout .guide_main.share_mode .app_guide_wrap {
  display: flex;
  gap: 60px;
  justify-content: center;
  margin-top: 60px;
  padding-top: 80px;
  border-top: 1px solid #eee;
}
@media (max-width: 1024px) {
  .guide_layout .guide_main.share_mode .app_guide_wrap {
    flex-direction: column;
    align-items: center;
    gap: 80px;
  }
}
.guide_layout .guide_main.share_mode .app_guide_wrap .app_item {
  flex: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
  max-width: 560px;
  width: 100%;
}
.guide_layout .guide_main.share_mode .app_guide_wrap .app_item .app_visual {
  display: flex;
  flex-direction: column;
  gap: 20px;
  width: 100%;
}
.guide_layout .guide_main.share_mode .app_guide_wrap .app_item .app_visual img {
  width: 100%;
  height: auto;
  border: 1px solid #eee;
  border-radius: 4px;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}
.guide_layout .guide_main.share_mode .app_guide_wrap .app_item .app_info {
  text-align: center;
}
.guide_layout .guide_main.share_mode .app_guide_wrap .app_item .app_info .app_name {
  font-size: 24px;
  font-weight: 700;
  color: #444;
  margin-bottom: 12px;
  letter-spacing: -0.5px;
}
.guide_layout .guide_main.share_mode .app_guide_wrap .app_item .app_info .app_step {
  font-size: 24px;
  color: #666;
  font-weight: 400;
}

/*# sourceMappingURL=subC.css.map */
