@charset "UTF-8";

/* merge-build.js 산출물 — 납품 시 css/sections/*.css 전량이 이 아래로 합쳐진다. 손으로 쓰지 않는다(CLAUDE.md 원칙 14). */
/* merge-build:acon14 */
.acon14 {
  background-color: #f6f5f1;
}

.acon14__deco {
  top: calc(var(--px)*156);
  right: calc(var(--px)*58);
}

.acon14__line {
  top: calc(var(--px)*649);
  left: calc(var(--px)*-9);
}

.acon14_iner {
  padding: calc(var(--px)*155) 0 calc(var(--px)*108);
}

.acon14__head {
  gap: calc(var(--px)*36);
}

.acon14__cards {
  margin-top: calc(var(--px)*67);
  gap: calc(var(--px)*98);
}

.acon14__label {
  margin-top: calc(var(--px)*46);
  padding-right: calc(var(--px)*7);
  gap: calc(var(--px)*17);
}

.acon14__num {
  display: flex;
  flex-direction: column;
  align-items: center;
  width: calc(var(--px)*26);
  margin-top: calc(var(--px)*4);
  margin-bottom: calc(var(--px)*-4);
}

.acon14__num::after {
  content: "";
  width: 100%;
  height: calc(var(--px)*5); /* HEIGHT: 번호 밑 장식 바, 콘텐츠로 못 만듦 */
  margin-top: calc(var(--px)*4);
  background-color: #db1e1e;
}

.acon14__card-title {
  margin-top: calc(var(--px)*62);
}

.acon14__desc {
  margin-top: calc(var(--px)*15);
}

/* IMG:AUTO acon14 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.acon14__deco {
    width: calc(var(--px)*555);
    aspect-ratio: 555 / 338;
}

.acon14__line {
    width: calc(var(--px)*1938);
    aspect-ratio: 1938 / 18;
}

.acon14__thumb {
    width: calc(var(--px)*415);
    aspect-ratio: 415 / 490;
}
/* /IMG:AUTO acon14 END */

/* FONT:AUTO acon14 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.acon14__head {
    text-align: center;
    color: #0c0c0c;
}

.acon14__title {
    font-family: var(--font-ackbar);
    font-size: var(--displayM);
    font-weight: 400;
    letter-spacing: -0.03em;
    line-height: 0.91; /* OVR */
}

.acon14__title-point {
    color: #790909;
}

.acon14__lead {
    font-family: var(--font-noto);
    font-size: var(--headM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.04;
}

.acon14__num {
    font-family: var(--font-noto);
    font-size: var(--bodyS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1; /* OVR */
    color: #db1e1e;
}

.acon14__name {
    font-family: var(--font-ackbar);
    font-size: var(--headL);
    font-weight: 400;
    letter-spacing: -0.03em;
    line-height: 1.5;
    color: #0c0c0c;
}

.acon14__card-title {
    font-family: var(--font-noto);
    font-size: var(--subheadL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.61;
    text-align: center;
    color: #0c0c0c;
}

.acon14__desc {
    font-family: var(--font-noto);
    font-size: var(--bodyL);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.35;
    text-align: center;
    color: #0c0c0c;
}
/* /FONT:AUTO acon14 END */

/* INK:AUTO acon14 */
.acon14__name.acon14__name--01 { margin-top: calc(var(--px) * -12); margin-bottom: calc(var(--px) * -13); } /* base 0,0 */
.acon14__name.acon14__name--03 { margin-top: calc(var(--px) * -12); margin-bottom: calc(var(--px) * -13); } /* base 0,0 */
.acon14__name.acon14__name--02 { margin-top: calc(var(--px) * -12); margin-bottom: calc(var(--px) * -12); } /* base 0,0 */
.acon14__title-point { margin-top: calc(var(--px) * -5.62); margin-bottom: calc(var(--px) * -15.37); } /* base 0,0 */
.acon14__card-title.acon14__card-title--02 { margin-top: calc(var(--px) * 53.49); margin-bottom: calc(var(--px) * -6.5); } /* base 62,0 */
.acon14__card-title.acon14__card-title--03 { margin-top: calc(var(--px) * 53.49); margin-bottom: calc(var(--px) * -6.5); } /* base 62,0 */
.acon14__title { margin-top: calc(var(--px) * -5.62); margin-bottom: calc(var(--px) * -6.62); } /* base 0,0 */
.acon14__card-title.acon14__card-title--01 { margin-top: calc(var(--px) * 53.49); margin-bottom: calc(var(--px) * -3.5); } /* base 62,0 */
.acon14__num { margin-top: calc(var(--px) * 2); margin-bottom: calc(var(--px) * 2); } /* base 4,-4 */
.acon14__desc { margin-top: calc(var(--px) * 9.85); margin-bottom: calc(var(--px) * -2.14); } /* base 15,0 */
.acon14__lead { margin-top: calc(var(--px) * -2.56); margin-bottom: calc(var(--px) * 4.45); } /* base 0,0 */
/* /INK:AUTO acon14 END */

@media (max-width:599px) {
  .acon14_iner {
    padding: 21.3333vw 5.3333vw 17.0667vw;
  }

  .acon14__head {
    gap: 5.3333vw;
  }

  .acon14__title {
    font-size: 8vw; /* --displayM 22.67vw 면 INGREDIENTS 가 375 폭 초과 */
  }

  .acon14__cards {
    flex-direction: column;
    align-items: center;
    margin-top: 10.6667vw;
    gap: 14.9333vw;
  }

  .acon14__thumb {
    width: 72vw;
  }

  .acon14__label {
    margin-top: 6.4vw;
    padding-right: 0;
    gap: 2.1333vw;
  }

  .acon14__label .acon14__num {
    width: 4.2667vw;
    margin-top: 0.5333vw;
    margin-bottom: -0.5333vw;
  }

  .acon14__num::after {
    height: 1.0667vw; /* HEIGHT: 번호 밑 4px 장식 바, 콘텐츠로 못 만듦 */
    margin-top: 0.5333vw;
  }

  .acon14__card .acon14__card-title {
    margin-top: 5.3333vw;
    margin-bottom: 0;
  }

  .acon14__card .acon14__desc {
    margin-top: 2.1333vw;
    margin-bottom: 0;
  }
}

/* /merge-build:acon14 */
/* merge-build:bcon05 */
/* bcon05 — 좌 인트로 패널 + 우 매장 이미지 2단 (모바일: flex-direction:column 으로 인트로 위·매장 아래) */
.bcon05 {
    padding-bottom: calc(var(--px)*4);
    background: #fff;
}

.bcon05__intro {
    flex: 1 1 0;
}

.bcon05__intro-body {
    padding: calc(var(--px)*213) 0 0 calc(var(--px)*154);
}

.bcon05__title {
    text-transform: uppercase;
}

.bcon05__desc {
    margin-top: calc(var(--px)*45);
}

.bcon05__store {
    flex-shrink: 0;
}

/* IMG:AUTO bcon05 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.bcon05__store {
    width: calc(var(--px)*1254);
    aspect-ratio: 1254 / 843;
}
/* /IMG:AUTO bcon05 END */

/* FONT:AUTO bcon05 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.bcon05 {
    color: #ffffff;
}

.bcon05__title {
    font-family: var(--font-ackbar);
    font-size: var(--titleL);
    font-weight: 400;
    letter-spacing: -0.0341em;  /* OVR */
    line-height: 1.2;  /* OVR */
}

.bcon05__desc {
    font-family: var(--font-noto);
    font-size: var(--subheadS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.82;
}

.bcon05__desc-brand {
    font-size: var(--headM);
    letter-spacing: -0.05em;
    line-height: 1.4;
}
/* /FONT:AUTO bcon05 END */

/* INK:AUTO bcon05 */
.bcon05__desc { margin-top: calc(var(--px) * 35.3); margin-bottom: calc(var(--px) * -13.68); } /* base 45,0 */
.bcon05__title { margin-top: calc(var(--px) * -11.5); margin-bottom: calc(var(--px) * -11.5); } /* base 0,0 */
.bcon05__desc-brand { margin-top: calc(var(--px) * -9.6); margin-bottom: calc(var(--px) * -7.4); } /* base 0,0 */
/* /INK:AUTO bcon05 END */

@media (max-width:599px) {
    .bcon05 { padding-bottom: 0.5333vw; }
    .bcon05_iner { flex-direction: column; }
    .bcon05__intro { flex: none; }
    .bcon05__intro-body { padding: 12.8vw 5.3333vw; align-items: center; }
    .bcon05__title { margin-top: -1.7173vw; margin-bottom: -1.7173vw; }
    .bcon05__desc { margin-top: 4.5893vw; margin-bottom: -2.5536vw; }
    .bcon05__store { width: 100vw; }
}

/* /merge-build:bcon05 */
/* merge-build:fcon01 */
.fcon01 {
  /* HEIGHT: 유저 지시(서브 첫 화면 = 뷰포트 높이, 4:3 비율까지만) — 뷰포트 기준이라 콘텐츠로 못 만듦 */
  height: min(100vh, 75vw);
  height: min(100dvh, 75vw);
}

.fcon01_iner {
  display: flex;
  height: 100%;
  padding-bottom: calc(var(--px) * 2);
}

.fcon01__panel {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  padding-top: calc(var(--px) * 282);
  padding-left: calc(var(--px) * 206);
}

.fcon01__title {
  text-shadow: 0.48px 0.87px 3px rgba(0, 0, 0, .18);
}

.fcon01__photo {
  flex: 0 0 auto;
}

.fcon01__photo img {
  height: 100%; /* 사진 칸을 섹션 높이만큼 채움(원본 890 → 화면 높이, 거의 등배) */
}

/* IMG:AUTO fcon01 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon01__photo {
    width: calc(var(--px)*1106);
    aspect-ratio: auto; /* OVR 섹션 높이(100dvh)를 따라감 */
}
/* /IMG:AUTO fcon01 END */

/* FONT:AUTO fcon01 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon01__title {
    font-family: var(--font-ackbar);
    font-size: var(--displayL);
    font-weight: 400;
    letter-spacing: -0.01em;
    line-height: 0.957; /* OVR */
    color: #ffffff;
}
/* /FONT:AUTO fcon01 END */

/* INK:AUTO fcon01 */
.fcon01__title { margin-top: calc(var(--px) * -9.3); margin-bottom: calc(var(--px) * -9.26); } /* base 0,0 */
/* /INK:AUTO fcon01 END */

@media (max-width: 599px) {
  .fcon01 {
    height: auto;
  }

  .fcon01_iner {
    height: auto;
    flex-direction: column;
    padding-bottom: 0;
  }

  .fcon01__panel {
    padding: 24vw 0 17.0667vw; /* 상단 = 고정 헤더(56) + sub nav(46) 아래로 여유 */
    align-items: center;
    flex: none;
  }

  .fcon01__title {
    font-size: 13.3333vw; /* M2 목업 결정: --displayL 16.8vw 면 HANDMADE 가 375 폭 초과 (acon08 동일 카피 선례) */
    margin-top: -0.1177em;
    margin-bottom: -0.1172em;
  }

  .fcon01__photo {
    width: 100vw;
    aspect-ratio: 1106 / 890;
  }

  .fcon01__photo img {
    height: auto;
  }
}


/* /merge-build:fcon01 */
/* merge-build:fcon02 */
.fcon02_iner.front {
  display: flex;
  flex-direction: column;
  align-items: center;
  z-index: auto; /* .front 의 z-index:10 이 스택 컨텍스트를 만들어 말풍선 overlay 가 bg_img 와 못 섞임 — DOM 순서로 이미 bg_img 위 */
}

.fcon02__badge {
  margin-top: calc(var(--px)*155);
  width: fit-content;
  padding-inline: calc(var(--px)*28);
  background: #090909;
  border-radius: 50vw;
}

.fcon02__eyebrow {
  margin-top: calc(var(--px)*37);
}

.fcon02__title {
  margin-top: calc(var(--px)*18);
}

.fcon02__stats {
  position: relative;
  display: flex;
  align-items: center;
  width: calc(var(--px)*1086);
  margin-top: calc(var(--px)*48);
  margin-inline: auto;
}

.fcon02__stats-ring {
  position: absolute;
  inset: 0;
  margin: auto;
  opacity: .2;
}

/* 레거시 .scaleopa2 계승 — 링이 퍼지며 사라지는 2초 루프(래퍼 opacity 는 GSAP 등장이 소유해 img 에 건다) */
.fcon02__stats-ring img {
  animation: fcon02-ring-pulse 2s infinite;
}

@keyframes fcon02-ring-pulse {
  100% { transform: scale(1.4); opacity: 0; }
}

@media (prefers-reduced-motion: reduce) {
  .fcon02__stats-ring img { animation: none; }
}

.fcon02__stat {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: #fff;
}

.fcon02__stat--left {
  width: calc(var(--px)*352);
  height: calc(var(--px)*353); /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  margin-right: calc(var(--px)*-29);
  padding-top: calc(var(--px)*13);
}

.fcon02__stat--right {
  width: calc(var(--px)*352);
  height: calc(var(--px)*353); /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  margin-left: calc(var(--px)*-30);
}

.fcon02__stat--center {
  width: calc(var(--px)*441);
  height: calc(var(--px)*442); /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  z-index: 1; /* 읽기 순서(좌→중→우)는 두고 중앙 원이 우측 원 위로 겹쳐야 함 */
  padding-top: calc(var(--px)*22);
  background: #163587;
  box-shadow: inset 0 calc(var(--px)*3) calc(var(--px)*95) rgba(0, 0, 0, .52);
}

.fcon02__stat-tag {
  margin-bottom: calc(var(--px)*-16);
}

.fcon02__stat-text-label--sm {
  margin-top: calc(var(--px)*13);
}

.fcon02__stat-value-num {
  padding-right: calc(var(--px)*10);
}

.fcon02__stat-text-line {
  font-size: var(--titleM);
  line-height: 1.33;
}

.fcon02__stat-text-num,
.fcon02__stat-text-label--right2 {
  display: inline-block;
}

.fcon02__stat-text-label--lg,
.fcon02__stat-text-accent--1,
.fcon02__stat-text-accent--2,
.fcon02__stat-text-label--sm,
.fcon02__stat-value-num,
.fcon02__stat-text-label--right1,
.fcon02__stat-text-line {
  display: block;
}

.fcon02__desc {
  margin-top: calc(var(--px)*49);
}

.fcon02__reviews {
  position: relative;
  width: 100%;
  margin-top: calc(var(--px)*-115); /* 리뷰 카드 상단이 desc 옆으로 올라와 겹침 */
}

.fcon02__review-grid {
  display: flex;
  justify-content: space-between;
  width: 100%;
  padding-inline: calc(var(--px)*22) calc(var(--px)*25);
}

.fcon02__review-cluster {
  display: flex;
}

.fcon02__review-cluster--left {
  gap: calc(var(--px)*19);
}

.fcon02__review-cluster--right {
  gap: calc(var(--px)*18);
}

.fcon02__review-col {
  display: flex;
  flex-direction: column;
  gap: calc(var(--px)*18);
  --rv-gap: calc(var(--px)*18);
  align-self: flex-start;
  overflow: hidden; /* 마퀴 클립 창 */
  border-radius: calc(var(--px)*10); /* 클립 창 위·아래 모서리도 카드와 같은 라운드 */
}

.fcon02__review-col--outer {
  gap: calc(var(--px)*19);
  --rv-gap: calc(var(--px)*19);
  margin-top: calc(var(--px)*172);
}

.fcon02__review-card {
  border-radius: calc(var(--px)*10);
  overflow: hidden;
}

.fcon02__review-track {
  position: relative;
  display: flex;
  flex-direction: column;
  gap: var(--rv-gap);
  will-change: transform;
}

.fcon02__review-track.v-marquee-y {
  padding-bottom: var(--rv-gap);
  margin-bottom: calc(var(--rv-gap)*-1);
}

.fcon02__review-track.v-marquee-y-rev {
  padding-top: var(--rv-gap);
  margin-top: calc(var(--rv-gap)*-1);
}

.fcon02__review-clone {
  display: flex;
  flex-direction: column;
  gap: var(--rv-gap);
  left: 0;
  width: 100%;
}

.v-marquee-y > .fcon02__review-clone { top: 100%; }
.v-marquee-y-rev > .fcon02__review-clone { bottom: 100%; }

.fcon02__review-cluster--left .fcon02__review-col--outer .fcon02__review-track { animation-duration: 25s; }
.fcon02__review-cluster--left .fcon02__review-col--inner .fcon02__review-track { animation-duration: 22s; animation-delay: -7s; }
.fcon02__review-cluster--right .fcon02__review-col--inner .fcon02__review-track { animation-duration: 24s; animation-delay: -4s; }
.fcon02__review-cluster--right .fcon02__review-col--outer .fcon02__review-track { animation-duration: 23s; animation-delay: -9s; }

@media (prefers-reduced-motion: reduce) {
  .fcon02__review-track { animation: none; }
}

.fcon02__reviews-eyebrow {
  position: absolute;
  top: calc(var(--px)*547);
  left: 0;
  right: 0;
}

.fcon02__reviews-title {
  position: absolute;
  top: calc(var(--px)*597);
  left: 0;
  right: 0;
}

.fcon02__reviews-watermark {
  position: absolute;
  top: calc(var(--px)*492);
  left: 0;
  right: 0;
}

.fcon02__hero-media {
  position: absolute;
  top: calc(var(--px)*673);
  left: calc(var(--px)*651);
}

.fcon02__hero-bubble {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: calc(var(--px)*16) calc(var(--px)*12);
  /* TEXT-WIDTH: 말풍선 배경 박스 폭(rects[3-5]) */
  width: calc(var(--px)*217);
}

/* 시안 = 사각만 overlay 블렌드 · 글자는 normal — 박스 통째에 걸면 글자까지 블렌드돼 빵 위에서 묻힘 */
/* 박스를 실요소로 분리 */
.fcon02__hero-bubble-box {
  position: absolute;
  inset: 0;
  background: rgba(255, 255, 255, .451);
  mix-blend-mode: overlay;
}

.fcon02__hero-bubble-text {
  position: relative;
}

.fcon02__hero-bubble--01 {
  top: calc(var(--px)*891);
  left: calc(var(--px)*499);
  width: calc(var(--px)*217); /* TEXT-WIDTH: 말풍선 배경 박스 폭(rects[3]) */
}

.fcon02__hero-bubble--02 {
  top: calc(var(--px)*706);
  left: calc(var(--px)*1041);
  width: calc(var(--px)*147); /* TEXT-WIDTH: 말풍선 배경 박스 폭(rects[4]) */
}

.fcon02__hero-bubble--03 {
  top: calc(var(--px)*956);
  left: calc(var(--px)*1210);
  width: calc(var(--px)*209); /* TEXT-WIDTH: 말풍선 배경 박스 폭(rects[5]) */
}

.fcon02__tagbar {
  position: relative; /* absol 버거 하단을 덮어야 해서 positioned 로 올림(DOM 순서상 위) */
  width: 100%;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: calc(var(--px)*67);
  padding-block: calc(var(--px)*26);
  padding-inline: calc(var(--px)*377) calc(var(--px)*371);
  background: #090909;
}

.fcon02__tagbar-static {
  flex: 1;
  align-items: center;
  justify-content: space-between;
}

.fcon02__tagbar-cluster {
  display: flex;
  gap: calc(var(--px)*6);
}

.fcon02__tagbar-cluster--right {
  gap: calc(var(--px)*9);
}

@media (prefers-reduced-motion: reduce) {
  .fcon02__tagbar-track { animation: none; }
}

.fcon02__tag--01 {
  width: calc(var(--px)*176);
}

.fcon02__tag--02 {
  width: calc(var(--px)*182);
}

.fcon02__tag--03 {
  width: calc(var(--px)*196);
}

.fcon02__tag--04 {
  width: calc(var(--px)*156);
}

.fcon02__tag {
  display: flex;
  justify-content: center;
  padding-block: calc(var(--px)*6.5);
  background: rgba(219, 30, 30, .8784);
  border-radius: 50vw;
}

/* IMG:AUTO fcon02 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon02__stats-ring {
    width: calc(var(--px)*656);
    aspect-ratio: 656 / 656;
}

.fcon02__review-card {
    width: calc(var(--px)*322);
    aspect-ratio: 322 / 419;
}

.fcon02__hero-media {
    width: calc(var(--px)*613);
    aspect-ratio: 613 / 509;
}
/* /IMG:AUTO fcon02 END */

/* FONT:AUTO fcon02 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon02 {
    font-family: var(--font-noto);
    text-align: center;
}

.fcon02__badge {
    font-size: var(--subheadL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 2.13;  /* OVR psd:2.72 */
    color: #ffffff;
}

.fcon02__eyebrow {
    font-size: var(--titleS);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.5;
    color: #ffffff;
}

.fcon02__title {
    font-size: var(--titleL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.2;
    color: #ffffff;
}

.fcon02__stats {
    font-weight: 700;
}

.fcon02__stat-text-label--lg,
.fcon02__stat-text-label--right1 {
    font-size: var(--headL);
    letter-spacing: -0.05em;
    line-height: 2;
    color: #090909;
}

.fcon02__stat-text-accent--1 {
    font-size: var(--titleM);
    letter-spacing: -0.05em;
    line-height: 1.43;
    color: #db1e1e;
}

.fcon02__stat-text-accent--2 {
    font-size: var(--titleM);
    letter-spacing: -0.05em;
    line-height: 1.2;
    color: #db1e1e;
}

.fcon02__stat-text-label--sm {
    font-size: var(--subheadL);
    letter-spacing: -0.05em;
    line-height: 1.87;
    color: #090909;
}

.fcon02__stat.fcon02__stat--center,
.fcon02__reviews {
    color: #ffffff;
}

.fcon02__stat-tag {
    font-size: var(--headL);
    letter-spacing: -0.05em;
    line-height: 2.61;
}

.fcon02__stat-value {
    font-size: var(--titleM);
    letter-spacing: -0.05em;
    line-height: 1.5;
}

.fcon02__stat-value-num {
    font-size: calc(var(--px)*59.2);
    letter-spacing: -0.05em;
    line-height: 1.12;
}

.fcon02__stat-note {
    font-size: var(--subheadL);
    letter-spacing: -0.05em;
    line-height: 3.56;
}

.fcon02__stat-text-line {
    font-size: var(--titleM);
    letter-spacing: -0.05em;
    line-height: 1.33;
}

.fcon02__stat-text-num,
.fcon02__tagbar-rating-num {
    color: #db1e1e;
}

.fcon02__stat-text-label--right2 {
    color: #090909;
}

.fcon02__desc {
    font-size: var(--headS);
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 1.5;
    color: #ffffff;
}

.fcon02__reviews-eyebrow {
    font-size: var(--titleXS);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.71;
}

.fcon02__reviews-title {
    font-size: var(--titleM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.33;
}

.fcon02__reviews-watermark {
    font-size: var(--subheadS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 3;
}

.fcon02__hero {
    font-size: var(--bodyL);
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 1.47;
}

.fcon02__tagbar {
    font-weight: 700;
    color: #ffffff;
}

.fcon02__tagbar-cluster,
.fcon02__tagbar-cluster.fcon02__tagbar-cluster--right {
    font-size: var(--subheadS);
    letter-spacing: -0.05em;
    line-height: 1.8;
}

.fcon02__tagbar-rating {
    font-size: var(--titleXS);
    letter-spacing: -0.05em;
    line-height: 1.4;  /* OVR psd:1.71 */
}
/* /FONT:AUTO fcon02 END */

/* INK:AUTO fcon02 */
.fcon02__reviews-watermark { margin-top: calc(var(--px) * -23.5); margin-bottom: calc(var(--px) * -20.5); } /* base 0,0 */
.fcon02__stat-text-label--lg { margin-top: calc(var(--px) * -19); margin-bottom: calc(var(--px) * -15); } /* base 0,0 */
.fcon02__stat-text-label--right1 { margin-top: calc(var(--px) * -19); margin-bottom: calc(var(--px) * -15); } /* base 0,0 */
.fcon02__reviews-eyebrow { margin-top: calc(var(--px) * -16.42); margin-bottom: calc(var(--px) * -11.42); } /* base 0,0 */
.fcon02__stat-text-num { margin-top: calc(var(--px) * -15.42); margin-bottom: calc(var(--px) * -9.42); } /* base 0,0 */
.fcon02__tagbar-rating-num { margin-top: calc(var(--px) * -13); margin-bottom: calc(var(--px) * -10); } /* base 0,0 */
.fcon02__stat-text-accent--1 { margin-top: calc(var(--px) * -13.67); margin-bottom: calc(var(--px) * -8.67); } /* base 0,0 */
.fcon02__eyebrow { margin-top: calc(var(--px) * 24); margin-bottom: calc(var(--px) * -9); } /* base 37,0 */
.fcon02__stat-text-label--sm { margin-top: calc(var(--px) * 2.5); margin-bottom: calc(var(--px) * -7.5); } /* base 13,0 */
.fcon02__stat-text-label--right2 { margin-top: calc(var(--px) * -11.42); margin-bottom: calc(var(--px) * -6.42); } /* base 0,0 */
.fcon02__reviews-title { margin-top: calc(var(--px) * -11.42); margin-bottom: calc(var(--px) * -6.42); } /* base 0,0 */
.fcon02__desc { margin-top: calc(var(--px) * 40.5); margin-bottom: calc(var(--px) * -5.5); } /* base 49,0 */
.fcon02__title { margin-top: calc(var(--px) * 8); margin-bottom: calc(var(--px) * -3); } /* base 18,0 */
.fcon02__stat-text-accent--2 { margin-top: calc(var(--px) * -8.5); margin-bottom: calc(var(--px) * -3.5); } /* base 0,0 */
.fcon02__stat-value-num { margin-top: calc(var(--px) * -9.15); margin-bottom: calc(var(--px) * -1.14); } /* base 0,0 */
/* /INK:AUTO fcon02 END */

@media (max-width: 599px) {
  .fcon02__badge {
    margin-top: 24.8vw;
    padding-inline: 4.2667vw;
  }

  .fcon02__eyebrow {
    margin-top: 6.4vw;
  }

  .fcon02__title {
    margin-top: 3.2vw;
  }

  .fcon02__stats {
    flex-wrap: wrap;
    justify-content: center;
    width: 96vw;
    margin-top: 8.5333vw;
  }

  .fcon02__stats-ring {
    inset: auto;
    top: -3vw; /* 링 70vw 를 중앙 원 64vw 의 중심에 맞춤 */
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 70vw;
  }

  .fcon02__stat--left,
  .fcon02__stat--right {
    width: 48vw;
    height: 48vw; /* HEIGHT: 정원 배지 — 모바일도 CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
    margin-top: -10.6667vw;
  }

  .fcon02__stat--left {
    margin-right: 0;
    padding-top: 2.1333vw;
  }

  .fcon02__stat--right {
    margin-left: 0;
  }

  .fcon02__stat--center {
    order: -1;
    width: 64vw;
    height: 64vw; /* HEIGHT: 정원 배지 — 모바일도 CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
    padding-top: 3.2vw;
  }

  .fcon02__stat-tag {
    margin-bottom: -2.1333vw;
  }

  .fcon02__stat-text-label--sm {
    margin-top: 2.1333vw;
  }

  .fcon02__stat-value-num {
    padding-right: 1.6vw;
    font-size: 9.472vw; /* raw vw 예외: PC 도 calc(var(--px)*59.2) 로 토큰 미사용 값이라 1/5 붕괴 방지 */
  }

  .fcon02__desc {
    margin-top: 8.5333vw;
    padding-inline: 5.3333vw;
  }

  .fcon02__reviews {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 0;
  }

  .fcon02__reviews-watermark {
    order: 1;
    margin-top: 10.6667vw;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
  }

  .fcon02__reviews-eyebrow {
    order: 2;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
  }

  .fcon02__reviews-title {
    order: 3;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
  }

  .fcon02__hero {
    order: 4;
    position: relative;
  }

  .fcon02__hero-media {
    position: relative;
    top: auto;
    left: auto;
    width: 84vw;
  }

  .fcon02__hero-bubble--01 {
    top: 28vw;
    left: -2.1333vw;
    width: 46vw; /* TEXT-WIDTH: 말풍선 박스 폭 — PC 2줄 개행을 모바일에서도 유지할 최소폭 */
    padding: 2.1333vw;
  }

  .fcon02__hero-bubble--02 {
    top: 4.2667vw;
    left: auto;
    right: -2.1333vw;
    width: 32vw; /* TEXT-WIDTH: 말풍선 박스 폭 — PC 2줄 개행을 모바일에서도 유지할 최소폭 */
    padding: 2.1333vw;
  }

  .fcon02__hero-bubble--03 {
    top: auto;
    left: auto;
    right: 0;
    bottom: 4.2667vw;
    width: 44vw; /* TEXT-WIDTH: 말풍선 박스 폭 — PC 2줄 개행을 모바일에서도 유지할 최소폭 */
    padding: 2.1333vw;
  }

  .fcon02__review-swiper {
    order: 5;
    width: 100%;
    margin-top: 8.5333vw;
    overflow: hidden;
  }

  .fcon02__review-swiper .swiper-slide {
    height: auto;
  }

  .fcon02__review-card {
    border-radius: 1.6vw;
  }

  .fcon02__tagbar {
    margin-top: 10.6667vw;
    padding-block: 4.2667vw;
    padding-inline: 0;
    overflow: hidden;
  }

  .fcon02__tagbar-marquee {
    width: 100%;
  }

  .fcon02__tagbar-track {
    display: flex;
    width: max-content;
    animation-duration: 12s;
  }

  .fcon02__tagbar-set {
    display: flex;
    flex-shrink: 0;
    align-items: center;
    gap: 3.2vw;
    padding-right: 3.2vw;
  }

  .fcon02__tag--01,
  .fcon02__tag--02,
  .fcon02__tag--03,
  .fcon02__tag--04 {
    width: auto;
  }

  .fcon02__tag {
    flex-shrink: 0;
    white-space: nowrap;
    padding-block: 1.0667vw;
    padding-inline: 3.2vw;
  }

  .fcon02__tagbar-rating {
    flex-shrink: 0;
    white-space: nowrap;
  }
}


/* /merge-build:fcon02 */
/* merge-build:fcon03 */
.fcon03 {
  overflow: hidden;
}

.fcon03 .bg_img {
  top: calc(var(--px)*-298);
  left: calc(var(--px)*-43);
  width: calc(var(--px)*1989);
  height: auto;
}

.fcon03__darken {
  position: absolute;
  inset: 0;
  background: rgba(0, 0, 0, .78);
}

.fcon03_iner {
  display: flow-root; /* head margin-top 이 iner 밖으로 collapse 되어 absol 자식(tag) 기준점이 밀리던 것 차단 */
}

.fcon03__head {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: calc(var(--px)*147);
  gap: calc(var(--px)*20);
  padding-bottom: calc(var(--px)*20.9); /* 마지막 자식(note)의 INK 음수 margin-bottom 이 박스 밖으로 새는 것 흡수 */
}

.fcon03__note {
  opacity: .5;
}

.fcon03__panel {
  width: calc(var(--px)*1708);
  margin: calc(var(--px)*20) 0 0 calc(var(--px)*97);
  padding: calc(var(--px)*1) calc(var(--px)*73) calc(var(--px)*111) calc(var(--px)*62);
}

.fcon03__cards-swiper {
  font-weight: 700;
}

.fcon03__card {
  width: calc(var(--px)*307);
  display: flex;
  flex-direction: column;
  overflow: hidden;
  border-radius: calc(var(--px)*15);
  background: #790909;
}

.fcon03__card-head {
  background: #fff;
  padding: calc(var(--px)*19.4) 0;
}

.fcon03__card-body {
  position: relative;
  flex: 1;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: calc(var(--px)*13.5) 0 calc(var(--px)*22.5);
  min-height: calc(var(--px)*100); /* card-media 가 absolute 라 레이아웃에 안 잡혀 높이가 새는 것 보강 */
}

.fcon03__card-media {
  position: absolute;
  right: calc(var(--px)*-16);
  bottom: calc(var(--px)*-25);
  pointer-events: none;
}

.fcon03__title {
  padding-bottom: calc(var(--px)*3.9); /* INK 음수 margin 잔여 박스 밖 유출 흡수 */
}

.fcon03__badge {
  margin-top: calc(var(--px)*-4);
}

.fcon03__subtitle {
  margin: calc(var(--px)*-3) 0 calc(var(--px)*-5);
  padding-bottom: calc(var(--px)*2.2); /* INK 음수 margin 잔여 박스 밖 유출 흡수 */
}

.fcon03__card-value {
  position: relative;
  z-index: 1; /* 절대배치 card-media(watermark, z-index:auto) 위로 값 텍스트를 올림 */
}

/* IMG:AUTO fcon03 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon03__badge {
    width: calc(var(--px)*117);
    aspect-ratio: 117 / 62;
}

.fcon03__card-media {
    width: calc(var(--px)*191);
    aspect-ratio: 191 / 106;
}
/* /IMG:AUTO fcon03 END */

/* FONT:AUTO fcon03 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon03 {
    font-family: var(--font-noto);
    text-align: center;
}

.fcon03__title {
    font-size: var(--titleM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.27;
}

.fcon03__title-base {
    color: #ffffff;
}

.fcon03__title--accent {
    color: #db1e1e;
}

.fcon03__subtitle {
    font-size: var(--titleXS);
    letter-spacing: -0.055em; /* OVR */
    line-height: 1.31;
    color: #ffffff;
}

.fcon03__subtitle--accent,
.fcon03__cards {
    font-weight: 700;
}

.fcon03__subtitle-base {
    font-weight: 400;
}

.fcon03__note {
    font-size: var(--bodyM);
    font-weight: 400;
    letter-spacing: -0.0485em;  /* OVR psd:-0.05em */
    line-height: 3.74;
    color: #ffffff;
}

.fcon03__card-head {
    font-size: var(--subheadL);
    letter-spacing: -0.0486em;  /* OVR psd:-0.05em */
    line-height: 1.14;
    color: #790909;
}

.fcon03__card-value {
    font-size: var(--titleM);
    letter-spacing: -0.0787em;  /* OVR psd:-0.05em */
    line-height: 1;
    color: #ffffff;
}
/* /FONT:AUTO fcon03 END */

/* INK:AUTO fcon03 */
.fcon03__note { margin-top: calc(var(--px) * -22.92); margin-bottom: calc(var(--px) * -20.91); } /* base 0,0 */
.fcon03__title-base { margin-top: calc(var(--px) * -10.08); margin-bottom: calc(var(--px) * -12.92); } /* base 0,0 */
.fcon03__title--accent { margin-top: calc(var(--px) * -10.08); margin-bottom: calc(var(--px) * -12.92); } /* base 0,0 */
.fcon03__subtitle-base { margin-top: calc(var(--px) * -9.42); margin-bottom: calc(var(--px) * -9.57); } /* base 0,0 */
.fcon03__subtitle--accent { margin-top: calc(var(--px) * -8.42); margin-bottom: calc(var(--px) * -8.58); } /* base 0,0 */
.fcon03__card-value { margin-top: calc(var(--px) * -4); margin-bottom: calc(var(--px) * 1); } /* base 0,0 */
/* /INK:AUTO fcon03 END */

@media (max-width: 599px) {
  .fcon03 img.bg_img {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
  }

  .fcon03__head {
    margin-top: 21.3333vw;
    gap: 3.2vw;
    padding: 0 5.3333vw 3.2vw;
  }

  .fcon03__title {
    padding-bottom: 0.5333vw;
  }

  .fcon03__badge {
    margin-top: -0.5333vw;
    width: 22vw;
  }

  .fcon03__subtitle {
    margin: -0.5333vw 0 -1.0667vw;
    padding-bottom: 0.5333vw;
  }

  .fcon03__panel {
    width: 100%;
    margin: 3.2vw 0 0;
    padding: 0.5333vw 0 17.0667vw;
  }

  .fcon03 .fcon03__cards-swiper {
    width: 74%;
    margin: 0 auto;
    overflow: visible; /* 양옆 슬라이드 peek 노출 — swiper-bundle 의 .swiper{overflow:hidden} 보다 셀렉터를 강하게 */
  }

  .fcon03__card {
    border-radius: 2.1333vw;
  }

  .fcon03__cards-swiper .swiper-slide {
    flex-shrink: 0;
    height: auto;
  }

  .fcon03__card-head {
    padding: 3.2vw 0;
  }

  .fcon03__card-body {
    padding: 2.1333vw 0 3.2vw;
    min-height: 12.5516vw;
  }

  .fcon03__card-media {
    right: -2.0083vw;
    bottom: -3.1379vw;
    width: 23.9735vw;
  }
}


/* /merge-build:fcon03 */
/* merge-build:fcon04 */
.fcon04_iner {
  display: flex;
  align-items: stretch;
}

.fcon04__content {
  flex: 1 1 0;
  display: flex;
  flex-direction: column;
  padding-top: calc(var(--px) * 253);
  padding-left: calc(var(--px) * 306);
}

.fcon04__brand {
  margin-top: calc(var(--px) * 113);
}

.fcon04__desc {
  margin-top: calc(var(--px) * 39);
}

.fcon04__photo {
  flex: 0 0 auto;
}

.fcon04__logo {
  left: calc(var(--px) * 87);
  bottom: calc(var(--px) * 27);
}

/* IMG:AUTO fcon04 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon04__photo-media {
    width: calc(var(--px)*1016);
    aspect-ratio: 1016 / 960;
}

.fcon04__logo {
    width: calc(var(--px)*801);
    aspect-ratio: 801 / 390;
}
/* /IMG:AUTO fcon04 END */

/* FONT:AUTO fcon04 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon04 {
    font-family: var(--font-noto);
    color: #ffffff;
}

.fcon04__title {
    font-size: var(--titleL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.2;
}

.fcon04__brand {
    font-size: var(--headM);
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 1.32;
}

.fcon04__brand-name {
    font-weight: 700;
}

.fcon04__brand-highlight {
    font-size: var(--subheadM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.76;
    color: #db1e1e;
}

.fcon04__desc {
    font-size: var(--subheadL);
    font-weight: 400;
    letter-spacing: -0.087em; /* OVR */
    line-height: 1.45;
}
/* /FONT:AUTO fcon04 END */

/* INK:AUTO fcon04 */
.fcon04__title { margin-top: calc(var(--px) * -10); margin-bottom: calc(var(--px) * -3); } /* base 0,0 */
.fcon04__brand-name { margin-top: calc(var(--px) * -6.48); margin-bottom: calc(var(--px) * -6.52); } /* base 0,0 */
.fcon04__brand-highlight { margin-top: calc(var(--px) * -11.48); margin-bottom: calc(var(--px) * -1.52); } /* base 0,0 */
.fcon04__brand { margin-top: calc(var(--px) * 106.52); margin-bottom: calc(var(--px) * -6.47); } /* base 113,0 */
.fcon04__desc { margin-top: calc(var(--px) * 32.33); margin-bottom: calc(var(--px) * -4.65); } /* base 39,0 */
/* /INK:AUTO fcon04 END */

@media (max-width: 599px) {
  .fcon04_iner {
    flex-direction: column;
  }

  .fcon04__content {
    padding-top: 12.8vw;
    padding-left: 6.4vw;
    padding-right: 6.4vw;
  }

  .fcon04__brand {
    margin-top: 17.0667vw;
  }

  .fcon04__desc {
    margin-top: 6.4vw;
  }

  .fcon04__photo-media {
    width: 100vw;
  }

  .fcon04__logo {
    left: 8.5630vw;
    bottom: 2.6575vw;
    width: 78.8386vw;
  }
}


/* /merge-build:fcon04 */
/* merge-build:fcon05 */
.fcon05_iner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: calc(var(--px) * 145);
  padding-bottom: calc(var(--px) * 140);
}

.fcon05__intro {
  gap: calc(var(--px) * 18);
  margin-bottom: calc(var(--px) * 53);
}

.fcon05__eyebrow {
  margin-bottom: calc(var(--px) * 31);
}

.fcon05__headline-highlight {
  display: inline-block;
  background: #db1e1e;
  line-height: calc(var(--px) * 52);
  padding: 0 calc(var(--px) * 16) calc(var(--px) * 8) calc(var(--px) * 8);
}

.fcon05__cards {
  gap: calc(var(--px) * 23);
}

.fcon05__card {
  width: calc(var(--px) * 380);
  aspect-ratio: 380 / 544;
  perspective: calc(var(--px) * 1200);
  outline: none;
}

.fcon05__card-flip {
  height: 100%;
  transform-style: preserve-3d;
  transition: transform 0.72s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.fcon05__card-face {
  backface-visibility: hidden;
  -webkit-backface-visibility: hidden;
}

.fcon05__card-face--front {
  height: 100%;
}

.fcon05__card-face--back {
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: rotateY(180deg);
}

.fcon05__card.is-flipped .fcon05__card-flip {
  transform: rotateY(180deg);
}

@media (prefers-reduced-motion: reduce) {
  .fcon05__card-flip {
    transition: none;
  }

  .fcon05__card.is-flipped .fcon05__card-flip {
    transform: none;
  }

  .fcon05__card-face {
    backface-visibility: visible;
    -webkit-backface-visibility: visible;
    transition: opacity 0.2s ease-out;
  }

  .fcon05__card-face--back {
    transform: none;
    opacity: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .fcon05__card.is-flipped .fcon05__card-face--back {
    opacity: 1;
  }

  .fcon05__card.is-flipped .fcon05__card-face--front {
    opacity: 0;
  }
}

.fcon05__card-inner {
  height: 100%;
  padding: calc(var(--px) * 55) calc(var(--px) * 40) calc(var(--px) * 40) calc(var(--px) * 49);
}

.fcon05__card-num {
  align-self: flex-end;
  margin-right: calc(var(--px) * 6);
  margin-bottom: calc(var(--px) * 80);
}

.fcon05__card-title {
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  gap: calc(var(--px) * 6);
  min-height: calc(var(--px) * 118);
}

.fcon05__card-title-mark {
  display: inline-block;
  width: fit-content;
  margin-left: calc(var(--px) * -4);
  background: #db1e1e;
  line-height: calc(var(--px) * 34);
  padding: calc(var(--px) * 2) calc(var(--px) * 6) calc(var(--px) * 4) calc(var(--px) * 4);
}

.fcon05__card-title-line.fcon05__card-title-line--tail {
  margin-bottom: calc(var(--px) * 5);
}

.fcon05__card-title-line.fcon05__card-title-line--03 {
  margin-bottom: calc(var(--px) * -4);
}

.fcon05__card-desc {
  margin-top: calc(var(--px) * 31);
}

/* FONT:AUTO fcon05 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon05__intro {
    font-family: var(--font-noto);
    text-align: center;
}

.fcon05__eyebrow {
    font-size: var(--subheadS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 3;
    color: #db1e1e;
}

.fcon05__subtitle {
    font-size: var(--titleXS);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.71;
    color: #ffffff;
}

.fcon05__headline {
    font-size: var(--titleM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.33;
    color: #ffffff;
}

.fcon05__card-num {
    font-family: var(--font-ackbar);
    font-size: var(--titleXS);
    font-weight: 400;
    letter-spacing: -0.03em;
    line-height: 1.38;
    color: #163587;
}

.fcon05__card-title {
    font-family: var(--font-noto);
    font-size: var(--headL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.31;
}

.fcon05__card-title-line,
.fcon05__card-title-line.fcon05__card-title-line--03 {
    color: #0c0c0c;
}

.fcon05__card-title-mark {
    color: #ffffff;
}

.fcon05__card-desc {
    font-family: var(--font-noto);
    font-size: var(--subheadM);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.38;
    color: #090909;
}
/* /FONT:AUTO fcon05 END */

/* INK:AUTO fcon05 */
.fcon05__eyebrow { margin-top: calc(var(--px) * -23.5); margin-bottom: calc(var(--px) * 10.5); } /* base 0,31 */
.fcon05__subtitle { margin-top: calc(var(--px) * -16.42); margin-bottom: calc(var(--px) * -11.42); } /* base 0,0 */
.fcon05__card-num { margin-top: calc(var(--px) * -11.15); margin-bottom: calc(var(--px) * 68.85); } /* base 0,80 */
.fcon05__headline { margin-top: calc(var(--px) * -11.42); margin-bottom: calc(var(--px) * -10.58); } /* base 0,0 */
.fcon05__card-title-line.fcon05__card-title-line--tail { margin-top: calc(var(--px) * -7.96); margin-bottom: calc(var(--px) * 1.05); } /* base 0,5 */
.fcon05__card-title-line { margin-top: calc(var(--px) * -7.96); margin-bottom: calc(var(--px) * -3.95); } /* base 0,0 */
.fcon05__card-desc { margin-top: calc(var(--px) * 25.51); margin-bottom: calc(var(--px) * -3.46); } /* base 31,0 */
.fcon05__card-title-line.fcon05__card-title-line--03 { margin-top: calc(var(--px) * -7.96); margin-bottom: calc(var(--px) * -3.95); } /* base 0,-4 */
/* /INK:AUTO fcon05 END */

@media (max-width: 599px) {
  .fcon05_iner {
    padding-top: 23.2vw;
    padding-bottom: 22.4vw;
  }

  .fcon05__intro {
    gap: 3.2vw;
    margin-bottom: 8.5333vw;
  }

  .fcon05__eyebrow {
    margin-top: -4.3866vw;
    margin-bottom: 1.5067vw;
  }

  .fcon05__subtitle {
    margin-top: -3.0025vw;
    margin-bottom: -2.0882vw;
  }

  .fcon05__headline {
    margin-top: -1.7595vw;
    margin-bottom: -1.6301vw;
  }

  .fcon05__headline-highlight {
    line-height: 8.0118vw;
    padding: 0 2.1333vw 1.0667vw 1.0667vw;
  }

  /* 레거시 fcon5 모바일 = 가운데 카드 70vw + 양옆 peek, 카드 비율은 PC 와 같은 380:544(뒷면 포스터가 안 잘림) */
  .fcon05__cards-swiper {
    width: 100%;
    overflow: visible;
  }

  .fcon05__cards-swiper .swiper-slide {
    width: auto;
  }

  .fcon05__card {
    width: 70vw;
    perspective: 200vw;
  }

  .fcon05__card-inner {
    padding: 8.5333vw 6.4vw 6.4vw;
  }

  .fcon05__card-num {
    margin-right: 1.0667vw;
    margin-top: -2.0389vw;
    margin-bottom: 10.7611vw;
  }

  .fcon05__card-title {
    gap: 1.0667vw;
    min-height: auto;
  }

  .fcon05__card-title-mark {
    align-self: center;
    margin-left: 0;
    line-height: 5.1vw;
    padding: 0.5333vw 1.0667vw 0.5333vw 0.5333vw;
  }

  .fcon05__card-title-line {
    margin-top: -1.194vw;
    margin-bottom: -0.5925vw;
  }

  .fcon05__card-title-line.fcon05__card-title-line--tail {
    margin-top: -1.194vw;
    margin-bottom: -0.0592vw;
  }

  .fcon05__card-title-line.fcon05__card-title-line--03 {
    margin-top: -1.194vw;
    margin-bottom: -0.5925vw;
  }

  .fcon05__card-desc {
    margin-top: 4.2876vw;
    margin-bottom: -0.659vw;
  }
}


/* /merge-build:fcon05 */
/* merge-build:fcon06-1 */
.fcon06-1 {
  /* 상단 베이지 / 하단 흰색 배경판 — 경계는 포토(y117~718)에 가려져 고정 height 불필요, 그라디언트 경계선으로 대체 */
  background: linear-gradient(to bottom, var(--fc) 51%, #fff 51%);
}

.fcon06-1_iner {
  padding-top: calc(var(--px) * 117);
  padding-bottom: calc(var(--px) * 97);
}

.fcon06-1__photo-wrap {
  overflow: hidden;
}

/* IMG:AUTO fcon06-1 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon06-1__photo-wrap {
    width: calc(var(--px)*1599);
    aspect-ratio: 1599 / 601;
}
/* /IMG:AUTO fcon06-1 END */

@media (max-width: 599px) {
  .fcon06-1_iner {
    padding-top: 17.0667vw;
    padding-bottom: 14.9333vw;
  }
}

/* /merge-build:fcon06-1 */
/* merge-build:fcon06-2 */
.fcon06-2 {
  overflow: clip; /* 전역 section{overflow:hidden} 은 스크롤 컨테이너라 스텝바 sticky 를 막음 — clip 은 자르기만 함 */
  background: #fff;
}

.fcon06-2_iner {
  padding-top: calc(var(--px) * 97);
  padding-bottom: calc(var(--px) * 0);
}

.fcon06-2__intro {
  gap: calc(var(--px) * 32);
  margin-bottom: calc(var(--px) * 54);
}

.fcon06-2__stage {
  width: calc(var(--px) * 1710);
  margin-inline: auto;
  align-items: stretch;
}

.fcon06-2__steps {
  position: relative;
  width: calc(var(--px) * 228);
  flex-shrink: 0;
  background: url(/images/fcon06-2_01.webp) repeat-y 0 0 / 100% auto; /* 텍스처 228x514 를 원배율로 세로 반복 — img cover 는 패널 4장 높이(2056)로 4배 확대돼 뭉개짐 */
}

/* 유저 댓글 지시 — 스텝바는 패널 4장 높이 전체, 번호는 보이는 화면 가운데에 붙어 따라옴 */
.fcon06-2__steps-list {
  position: sticky;
  top: calc(var(--px) * 58); /* 고정 헤더 높이 실측 */
  height: calc(100vh - var(--px) * 152); /* HEIGHT: 헤더 58 + 하단 퀵바 94 를 뺀 보이는 화면 — 번호 세로 가운데 기준이라 콘텐츠로 못 만듦 */
  justify-content: center;
  gap: calc(var(--px) * 56);
}

.fcon06-2__step {
  opacity: 0.3;
  transition: opacity 0.4s ease;
}

.fcon06-2__step--current {
  opacity: 1;
}

.fcon06-2__panels {
  flex: 1;
}

.fcon06-2__panel {
  height: calc(var(--px) * 514); /* HEIGHT: 이미지 직계 부모(bg_img fcon06-2_02·03.webp) — 패널 4장 세로 나열, 장마다 같은 높이 */
  isolation: isolate; /* 패널마다 스택 컨텍스트 — 안쪽 .front(z-index:10)가 다음 패널 위로 새지 않게 */
}

.fcon06-2__panel--02 {
  background: #fff;
}

.fcon06-2__panel--03 {
  background: #db1e1e;
}

.fcon06-2__panel-body {
  height: 100%;
  padding: 0 calc(var(--px) * 150) 0 calc(var(--px) * 105);
}

.fcon06-2__panel-copy {
  margin-top: calc(var(--px) * 99);
}

.fcon06-2__panel-headline {
  margin-top: calc(var(--px) * 8);
  margin-left: calc(var(--px) * 26); /* 번호 01 이 헤드라인보다 26px 왼쪽에 걸린 시안 배치 */
}

.fcon06-2__cards {
  display: grid;
  grid-template-columns: repeat(2, calc(var(--px) * 314));
  gap: calc(var(--px) * 7) calc(var(--px) * 8);
  margin-top: calc(var(--px) * 120);
  height: fit-content;
}

.fcon06-2__card {
  height: calc(var(--px) * 125); /* HEIGHT: 구조 카드 — 2x2 고정 그리드 셀(spec rects 314x125), 텍스트는 flex center 로 셀 안에 담김 */
  border-radius: calc(var(--px) * 11);
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

/* 스텝 02 — 흰 바탕 + 진홍 카드(카드 텍스트 화이트) */
.fcon06-2__panel--02 .fcon06-2__panel-num {
  color: #0c0c0c;
}

.fcon06-2__panel--02 .fcon06-2__panel-headline {
  color: #0c0c0c;
}

.fcon06-2__panel--02 .fcon06-2__card {
  background: #790909;
}

.fcon06-2__panel--02 .fcon06-2__card-text {
  color: #fff;
}

/* INK:AUTO fcon06-2 */
.fcon06-2__step.fcon06-2__step--current { margin-top: calc(var(--px) * -12.16); margin-bottom: calc(var(--px) * -13.15); } /* base 0,0 */
.fcon06-2__eyebrow { margin-top: calc(var(--px) * -23.5); margin-bottom: calc(var(--px) * -20.5); } /* base 0,0 */
.fcon06-2__step { margin-top: calc(var(--px) * -12.16); margin-bottom: calc(var(--px) * -13.15); } /* base 0,0 */
.fcon06-2__title { margin-top: calc(var(--px) * -11.42); margin-bottom: calc(var(--px) * -6.42); } /* base 0,0 */
.fcon06-2__panel-num { margin-top: calc(var(--px) * -8.12); margin-bottom: calc(var(--px) * -5.11); } /* base 0,0 */
.fcon06-2__panel-headline { margin-top: calc(var(--px) * -0.44); margin-bottom: calc(var(--px) * -3.43); } /* base 8,0 */
.fcon06-2__panel-headline-em { margin-top: calc(var(--px) * -8.44); margin-bottom: calc(var(--px) * -10.56); } /* base 0,0 */
/* /INK:AUTO fcon06-2 END */

/* FONT:AUTO fcon06-2 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon06-2__intro {
    font-family: var(--font-noto);
    font-weight: 700;
    text-align: center;
}

.fcon06-2__eyebrow {
    font-size: var(--subheadS);
    letter-spacing: -0.05em;
    line-height: 3;
    color: #db1e1e;
}

.fcon06-2__title {
    font-size: var(--titleM);
    letter-spacing: -0.05em;
    line-height: 1.33;
    color: #090909;
}

.fcon06-2__steps-list {
    font-family: var(--font-ackbar);
    font-size: var(--headL);
    font-weight: 400;
    letter-spacing: -0.03em;
    line-height: 1.51;
    color: #ffffff;
}

.fcon06-2__panels {
    font-family: var(--font-noto);
}

.fcon06-2__panel-copy {
    font-weight: 700;
    color: #ffffff;
}

.fcon06-2__panel-num {
    font-size: var(--bodyM);
    letter-spacing: -0.05em;
    line-height: 1.64;
}

.fcon06-2__panel-headline {
    font-size: var(--titleS);
    letter-spacing: -0.05em;
    line-height: 1.26;
}

.fcon06-2__panel-headline-em,
.fcon06-2__panel-headline-em.fcon06-2__panel-headline-em--mid {
    color: #db1e1e;
}

.fcon06-2__cards {
    font-size: var(--headS);
    font-weight: 500;
    letter-spacing: -0.05em;
    line-height: 1.29;
    text-align: center;
    color: #0c0c0c;
}
/* /FONT:AUTO fcon06-2 END */

@media (max-width: 599px) {
  .fcon06-2_iner {
    padding-top: 3.2vw;
  }

  .fcon06-2__intro {
    gap: 2.1333vw;
    margin-bottom: 3.2vw;
  }

  .fcon06-2__eyebrow { margin-top: -3.76vw; margin-bottom: -3.28vw; }
  .fcon06-2__title { margin-top: -1.8272vw; margin-bottom: -1.0272vw; }
  .fcon06-2__step,
  .fcon06-2__step.fcon06-2__step--current { margin-top: -1.9456vw; margin-bottom: -2.104vw; }
  .fcon06-2__panel-num { margin-top: -1.2992vw; margin-bottom: -0.8176vw; }
  .fcon06-2__panel-headline { margin-top: -0.0704vw; margin-bottom: -0.5488vw; margin-left: 0; }
  .fcon06-2__panel-headline-em { margin-top: -1.3504vw; margin-bottom: -1.6896vw; }

  .fcon06-2__stage {
    width: 91.4667vw;
    flex-direction: column;
  }

  .fcon06-2__steps {
    position: sticky;
    top: 27.2vw; /* 고정 헤더 + 서브 메뉴바 높이 실측(56+46px@375) */
    z-index: 2; /* DOM 상 패널 앞(읽기 순서)이라 sticky 로 겹칠 때 isolation 패널 밑에 깔림 */
    width: 100%;
  }

  .fcon06-2__steps-list {
    position: relative;
    height: auto;
    flex-direction: row;
    align-items: center;
    justify-content: center;
    padding: 2.1333vw 0;
    gap: 8.5333vw;
  }

  .fcon06-2__panel {
    height: auto;
  }

  .fcon06-2__panel-body {
    flex-direction: column;
    height: auto;
    padding: 4.2667vw 5.3333vw;
  }

  .fcon06-2__panel-copy {
    margin-top: 0;
    align-items: center;
  }

  .fcon06-2__cards {
    grid-template-columns: repeat(2, 1fr);
    grid-auto-rows: 1fr; /* 텍스트 줄수와 무관하게 카드 높이를 가장 큰 칸에 통일 */
    gap: 2.1333vw;
    margin-top: 3.2vw;
  }

  .fcon06-2__card {
    height: auto;
    padding: 2.1333vw 1.6vw;
    border-radius: 3.2vw;
  }
}

/* /merge-build:fcon06-2 */
/* merge-build:fcon07 */
.fcon07 {
  background: #f6f5f1;
}

.fcon07_iner {
  padding-top: calc(var(--px) * 120);
  padding-bottom: calc(var(--px) * 12);
}

.fcon07__intro {
  gap: calc(var(--px) * 31);
  margin-bottom: calc(var(--px) * 56.4);
}

.fcon07__promo {
  width: calc(var(--px) * 1432);
  margin-inline: auto;
  margin-bottom: calc(var(--px) * 25);
  height: calc(var(--px) * 171); /* HEIGHT: 이미지 직계 부모(bg_img fcon07_01.webp) — bg_img 가 absolute 라 콘텐츠가 못 만드는 프로모 배너 높이 */
}

.fcon07__promo-text {
  height: 100%;
}

.fcon07__panel {
  width: calc(var(--px) * 1432);
  margin-inline: auto;
  background: #fff;
  padding: calc(var(--px) * 101) calc(var(--px) * 131) calc(var(--px) * 97);
}

.fcon07__cost-head {
  margin-bottom: calc(var(--px) * 28);
}

.fcon07__cost-unit {
  margin-bottom: calc(var(--px) * 20);
}

.fcon07__table {
  width: 100%;
  table-layout: fixed;
  border-collapse: collapse;
}

.fcon07__table--fee {
  margin-bottom: calc(var(--px) * 26);
}

.fcon07__cell {
  padding: 0;
}

.fcon07__cell--label {
  width: calc(var(--px) * 236);
  border-right: 1px solid rgba(9, 9, 9, 0.1216);
}

.fcon07__cell--content {
  width: calc(var(--px) * 693);
  border-right: 1px solid rgba(9, 9, 9, 0.1216);
}

.fcon07__cell--amount {
  width: calc(var(--px) * 241);
  text-align: center;
}

.fcon07__table thead .fcon07__cell {
  background: #f3f3f3;
  border-top: 1px solid rgba(9, 9, 9, 0.302);
  border-bottom: 1px solid rgba(9, 9, 9, 0.302);
}

.fcon07__table--fee tbody tr td {
  border-bottom: 1px solid rgba(9, 9, 9, 0.1216);
}

.fcon07__table--fee tbody tr:last-child td {
  border-bottom: 1px solid rgba(9, 9, 9, 0.302);
}

.fcon07__table--other tbody .fcon07__cell--label {
  border-bottom: 1px solid rgba(9, 9, 9, 0.1216);
}

.fcon07__table-note {
  vertical-align: middle;
  text-align: center;
  padding: calc(var(--px) * 6) 0 0 calc(var(--px) * 27.5);
}

.fcon07__table-note-text.fcon07__table-note-text--em {
  margin-top: calc(var(--px) * 30);
}

/* INK:AUTO fcon07 */
.fcon07__eyebrow { margin-top: calc(var(--px) * -23.5); margin-bottom: calc(var(--px) * -20.5); } /* base 0,0 */
.fcon07__cost-unit { margin-top: calc(var(--px) * -20.52); margin-bottom: calc(var(--px) * 2.49); } /* base 0,20 */
.fcon07__cost-title { margin-top: calc(var(--px) * -15.42); margin-bottom: calc(var(--px) * -10.42); } /* base 0,0 */
.fcon07__title { margin-top: calc(var(--px) * -11.42); margin-bottom: calc(var(--px) * -6.42); } /* base 0,0 */
.fcon07__promo-text { margin-top: calc(var(--px) * -15.42); margin-bottom: calc(var(--px) * -1.87); } /* base 0,0 */
.fcon07__table-note-strong { margin-top: calc(var(--px) * -4.51); margin-bottom: calc(var(--px) * -4.49); } /* base 0,0 */
.fcon07__table-note-text.fcon07__table-note-text--em { margin-top: calc(var(--px) * 26); margin-bottom: calc(var(--px) * -2); } /* base 30,0 */
/* /INK:AUTO fcon07 END */

/* FONT:AUTO fcon07 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon07 {
    font-family: var(--font-noto);
}

.fcon07__intro {
    font-weight: 700;
    text-align: center;
}

.fcon07__eyebrow {
    font-size: var(--subheadS);
    letter-spacing: -0.05em;
    line-height: 3;
    color: #db1e1e;
}

.fcon07__title {
    font-size: var(--titleM);
    letter-spacing: -0.05em;
    line-height: 1.33;
    color: #090909;
}

.fcon07__promo-text {
    font-size: var(--titleXS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.71;
    color: #ffffff;
}

.fcon07__cost-title {
    font-size: var(--titleXS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.71;
    color: #090909;
}

.fcon07__cost-unit {
    font-size: var(--bodyM);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 3.44;
    text-align: right;
    color: #090909;
}

.fcon07__table.fcon07__table--fee {
    font-size: var(--bodyXL);
    letter-spacing: -0.05em;
}

.fcon07__cell.fcon07__cell--head.fcon07__cell--label,
.fcon07__cell.fcon07__cell--head.fcon07__cell--amount {
    font-size: var(--bodyXL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 3.1;  /* OVR psd:2.9 */
    text-align: center;
    color: #090909;
}

.fcon07__cell.fcon07__cell--head.fcon07__cell--content {
    font-size: var(--bodyXL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 3.1;  /* OVR psd:2.9 */
    color: #090909;
}

.fcon07__cell.fcon07__cell--label {
    font-size: var(--bodyXL);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 2.87;  /* OVR psd:2.9 */
    text-align: center;
    color: #090909;
}

.fcon07__cell.fcon07__cell--content {
    font-weight: 400;
    line-height: 2.84;
    text-align: center;
    color: #090909;
}

.fcon07__cell.fcon07__cell--amount {
    font-weight: 700;
    line-height: 2.84;
    text-align: center;
    color: #163587;
}

.fcon07__table-note {
    text-align: center;
}

.fcon07__table-note-text {
    font-size: var(--bodyXL);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.26;
    color: #090909;
}

.fcon07__table-note-strong {
    font-weight: 700;
}

.fcon07__table-note-text.fcon07__table-note-text--em {
    font-size: var(--subheadS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.25;
    color: #db1e1e;
}
/* /FONT:AUTO fcon07 END */

@media (max-width: 599px) {
  .fcon07_iner {
    padding-top: 17.0667vw;
    padding-bottom: 2.1333vw;
  }

  .fcon07__intro {
    gap: 5.3333vw;
    margin-bottom: 8.5333vw;
  }

  .fcon07__promo {
    width: 91.4667vw;
    height: auto;
    padding: 8.5333vw 0;
    margin-bottom: 4.2667vw;
  }

  .fcon07__promo-text {
    height: auto;
    margin-top: -2.4672vw;
    margin-bottom: -0.2992vw;
  }

  .fcon07__panel {
    width: 91.4667vw;
    padding: 10.6667vw 4.2667vw;
  }

  .fcon07__cost-head {
    margin-bottom: 4.2667vw;
  }

  .fcon07__table--fee {
    margin-bottom: 4.2667vw;
  }

  .fcon07__cell--label,
  .fcon07__cell--amount {
    width: 17.0667vw;
  }

  .fcon07__cell--content {
    width: auto;
  }

  .fcon07__cell.fcon07__cell--content {
    padding: 2.1333vw 1.0667vw;
    line-height: 1.5;
  }

  .fcon07__table-note {
    padding: 4.2667vw 2.1333vw;
  }

  .fcon07__eyebrow { margin-top: -3.76vw; margin-bottom: -3.28vw; }
  .fcon07__cost-unit { margin-top: -3.2832vw; margin-bottom: 0.3984vw; }
  .fcon07__cost-title { margin-top: -2.4672vw; margin-bottom: -1.6672vw; }
  .fcon07__title { margin-top: -1.8272vw; margin-bottom: -1.0272vw; }
  .fcon07__table-note-strong { margin-top: -0.7216vw; margin-bottom: -0.7184vw; }
  .fcon07__table-note-text.fcon07__table-note-text--em { margin-top: 4.2667vw; margin-bottom: -0.32vw; }
}

/* /merge-build:fcon07 */
/* merge-build:fcon09 */
.fcon09 {
  background: #790909;
}

.fcon09_iner {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: calc(var(--px) * 116);
  padding-bottom: calc(var(--px) * 176);
}

.fcon09__title {
  margin-bottom: calc(var(--px) * 64);
}

.fcon09__list {
  display: flex;
  flex-direction: column;
  width: calc(var(--px) * 1485);
}

.fcon09__item {
  display: flex;
  flex-direction: column;
  border-bottom: 1px solid #790909;
}

.fcon09__question {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: calc(var(--px) * 24);
  padding-top: calc(var(--px) * 25);
  padding-bottom: calc(var(--px) * 28);
  padding-inline: calc(var(--px) * 60);
  background: #ffffff;
  cursor: pointer;
  list-style: none;
  transition: background-color .25s ease-out, color .25s ease-out;
}

.fcon09__question::-webkit-details-marker {
  display: none;
}

/* 열림 비주얼은 is-open 이 소유 — [open] 은 닫힘 트윈이 끝나야 빠져서 검정 배경이 늦게 사라졌다 */
.fcon09__item.is-open > .fcon09__question {
  padding-top: calc(var(--px) * 26);
  padding-bottom: calc(var(--px) * 23);
  background: #090909;
  border-bottom: 1px solid #ffffff;
}

.fcon09__question-body {
  display: flex;
  align-items: center;
  gap: calc(var(--px) * 70);
}

.fcon09__answer {
  display: flex;
  align-items: flex-start;
  gap: calc(var(--px) * 76);
  padding-top: calc(var(--px) * 28);
  padding-bottom: calc(var(--px) * 27);
  padding-inline: calc(var(--px) * 60);
  background: #f6f5f1;
}

.fcon09__item:not([open]) > .fcon09__answer {
  display: none;
}

@media (prefers-reduced-motion: reduce) {
  .fcon09__question { transition: none; }
}

.fcon09__a-mark {
  margin-top: calc(var(--px) * 8);
}

.fcon09__toggle {
  flex-shrink: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(var(--px) * 84);
  padding-block: calc(var(--px) * 19.5);
  border-radius: 50vw;
  background: #db1e1e;
}

.fcon09__toggle-icon-wrap {
  display: none;
}

.fcon09__toggle-icon-wrap--close {
  display: flex;
}

.fcon09__item.is-open .fcon09__toggle-icon-wrap--open {
  display: flex;
}

.fcon09__item.is-open .fcon09__toggle-icon-wrap--close {
  display: none;
}

/* IMG:AUTO fcon09 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon09__toggle-icon-wrap.fcon09__toggle-icon-wrap--open {
    width: calc(var(--px)*19);
    aspect-ratio: 19 / 11;
}

.fcon09__toggle-icon-wrap.fcon09__toggle-icon-wrap--close {
    width: calc(var(--px)*18);
    aspect-ratio: 18 / 11;
}
/* /IMG:AUTO fcon09 END */

/* FONT:AUTO fcon09 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon09 {
    font-family: var(--font-noto);
}

.fcon09__title {
    font-size: var(--titleM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.33;
    text-align: center;
    color: #ffffff;
}

.fcon09__question-body,
.fcon09__item {
    font-weight: 700;
}

.fcon09__q-mark {
    font-size: var(--headL);
    letter-spacing: -0.05em;
    line-height: 1.1;
    color: #db1e1e;
}

.fcon09__question-text.fcon09__question-text--open {
    font-size: var(--subheadS);
    letter-spacing: -0.05em;
    line-height: 1.65;
    color: #ffffff;
}

.fcon09__a-mark {
    font-size: var(--headL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.1;
    color: #db1e1e;
}

.fcon09__answer-text {
    font-size: var(--bodyL);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.61;
    color: #0c0c0c;
}

.fcon09__question-text {
    font-size: var(--subheadS);
    letter-spacing: -0.05em;
    line-height: 1.65;
    color: #090909;
}
/* /FONT:AUTO fcon09 END */

/* INK:AUTO fcon09 */
.fcon09__title { margin-top: calc(var(--px) * -15.42); margin-bottom: calc(var(--px) * 63.58); } /* base 0,65 */
.fcon09__question-text.fcon09__question-text--open { margin-top: calc(var(--px) * -8); margin-bottom: calc(var(--px) * -6); } /* base 0,0 */
.fcon09__question-text { margin-top: calc(var(--px) * -8); margin-bottom: calc(var(--px) * -6); } /* base 0,0 */
.fcon09__answer-text { margin-top: calc(var(--px) * -7.49); margin-bottom: calc(var(--px) * -4.47); } /* base 0,0 */
.fcon09__a-mark { margin-top: calc(var(--px) * -7.6); margin-bottom: calc(var(--px) * -3.59); } /* base 0,0 */
.fcon09__q-mark { margin-top: calc(var(--px) * -6.6); margin-bottom: calc(var(--px) * 3.41); } /* base 0,0 */
/* /INK:AUTO fcon09 END */

@media (max-width: 599px) {
  .fcon09_iner { padding-top: 17.0667vw; padding-bottom: 21.3333vw; }
  .fcon09__title { margin-top: -2.4672vw; margin-bottom: 17.0667vw; }
  .fcon09__list { width: 91.4667vw; }
  .fcon09__question,
  .fcon09__item.is-open > .fcon09__question { gap: 3.2vw; padding-top: 4.2667vw; padding-bottom: 4.2667vw; padding-inline: 5.3333vw; }
  .fcon09__question-body { gap: 4.2667vw; }
  .fcon09__question-text.fcon09__question-text--open,
  .fcon09__question-text { margin-top: -1.28vw; margin-bottom: -0.96vw; }
  .fcon09__q-mark { margin-top: -1.056vw; margin-bottom: 0.5456vw; }
  .fcon09__answer { gap: 4.2667vw; padding-top: 4.2667vw; padding-bottom: 4.2667vw; padding-inline: 5.3333vw; }
  .fcon09__a-mark { margin-top: -1.216vw; margin-bottom: -0.5744vw; }
  .fcon09__answer-text { margin-top: -1.1984vw; margin-bottom: -0.7152vw; }
  .fcon09__toggle { width: 12.8vw; padding-block: 3.2vw; }
  .fcon09__toggle-icon-wrap.fcon09__toggle-icon-wrap--open { width: 3.04vw; }
  .fcon09__toggle-icon-wrap.fcon09__toggle-icon-wrap--close { width: 2.88vw; }
}

/* /merge-build:fcon09 */
/* merge-build:fcon10 */
.fcon10_iner {
  padding: calc(var(--px) * 82) 0 0 calc(var(--px) * 234);
}

.fcon10__panel {
  width: calc(var(--px) * 716);
  background: #fff;
  padding: calc(var(--px) * 86) calc(var(--px) * 96) calc(var(--px) * 78.73);
}

.fcon10__title {
  width: fit-content;
  margin-bottom: calc(var(--px) * 51.5);
}

.fcon10__form {
  display: flex;
  flex-direction: column;
  gap: calc(var(--px) * 23.5);
}

.fcon10__row {
  display: flex;
  align-items: baseline;
  width: calc(var(--px) * 458);
  padding-bottom: calc(var(--px) * 20);
  border-bottom: 1px solid #090909;
  transition: border-color .2s ease-out;
}

.fcon10__row:focus-within {
  border-color: var(--secondary);
}

.fcon10__row-head {
  position: relative;
  display: flex;
  width: calc(var(--px) * 146);
  padding-left: calc(var(--px) * 3);
  flex-shrink: 0;
}

.fcon10__required {
  position: absolute;
  left: calc(var(--px) * -7);
  top: calc(var(--px) * -6);
}

.fcon10__input {
  flex: 1 1 0;
  min-width: 0;
  border: 0;
  background: none;
  padding: 0;
  font-size: var(--bodyS);
  letter-spacing: -0.05em;
  color: var(--tc);
}

.fcon10__input::placeholder {
  color: #7d7d7d;
}

.fcon10__select {
  appearance: none;
  cursor: pointer;
}

.fcon10__select:invalid {
  color: #7d7d7d;
}

.fcon10__select-wrap {
  position: relative;
  flex: 1 1 0;
  min-width: 0;
  display: flex;
}

.fcon10__caret {
  position: absolute;
  right: calc(var(--px) * 27);
  top: 50%;
  transform: translateY(-50%);
  font-size: var(--bodyS);
  color: var(--tc);
  pointer-events: none;
}

.fcon10__consent {
  display: flex;
  align-items: center;
  gap: calc(var(--px) * 14);
  margin-top: calc(var(--px) * 8.5);
  padding-left: calc(var(--px) * 3);
}

.fcon10__consent-label {
  display: flex;
  cursor: pointer;
}

.fcon10__consent-input {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip: rect(0 0 0 0);
}

.fcon10__consent-dot {
  width: calc(var(--px) * 25);
  height: calc(var(--px) * 25); /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  border-radius: 50%;
  border: 1px solid #7d7d7d;
  background: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
}

.fcon10__consent-dot::after {
  content: "";
  width: calc(var(--px) * 19);
  height: calc(var(--px) * 19); /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  border-radius: 50%;
  background: #090909;
  opacity: 0;
}

.fcon10__consent-input:checked + .fcon10__consent-dot::after {
  opacity: 1;
}

.fcon10__consent-view {
  display: inline-flex;
  align-items: center;
  margin-left: calc(var(--px) * 6);
  padding: calc(var(--px) * 2) calc(var(--px) * 12);
  font: inherit;
  font-size: calc(var(--px) * 13);
  letter-spacing: -0.05em;
  line-height: 1.4;
  color: inherit;
  vertical-align: middle;
  background: none;
  border: 1px solid currentColor;
  border-radius: 50vw;
  cursor: pointer;
  transition: color .2s ease-out, background-color .2s ease-out, border-color .2s ease-out;
}

@media (hover: hover) {
  .fcon10__consent-view:hover {
    color: #fff;
    background-color: var(--secondary);
    border-color: var(--secondary);
  }

  .fcon10__submit:hover {
    background-color: var(--secondary);
  }
}

.fcon10__submit {
  display: block;
  width: calc(var(--px) * 196);
  padding-block: calc(var(--px) * 16);
  margin: calc(var(--px) * 6.5) auto 0;
  border: 0;
  border-radius: 50vw;
  background: #090909;
  cursor: pointer;
  transition: background-color .25s ease-out;
}

/* FONT:AUTO fcon10 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon10 {
    font-family: var(--font-noto);
}

.fcon10__title {
    font-size: var(--titleS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.33;
    text-align: center;
    color: #090909;
}

.fcon10__row-head {
    font-weight: 700;
}

.fcon10__required {
    font-size: var(--bodyM);
    letter-spacing: -0.05em;
    line-height: 1.38;
    color: #db1e1e;
}

.fcon10__label {
    font-size: var(--bodyL);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.25;
    color: #090909;
}

.fcon10__label.fcon10__label--flat {
    font-size: var(--bodyL);
    letter-spacing: -0.05em;
    line-height: 1.25;
    color: #090909;
}

.fcon10__caret {
    font-size: var(--bodyS);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.49;
    color: #7d7d7d;
}

.fcon10__consent-copy {
    font-size: var(--bodyS);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.67;
    color: #353535;
}

.fcon10__submit {
    font-size: var(--bodyM);
    font-weight: 700;
    letter-spacing: -0.03em;
    line-height: 1.33;  /* OVR psd:13.3 */
    text-align: center;
    color: #ffffff;
}
/* /FONT:AUTO fcon10 END */

/* INK:AUTO fcon10 */
.fcon10__required { margin-top: calc(var(--px) * -5.04); margin-bottom: calc(var(--px) * -10.04); } /* base 0,0 */
.fcon10__title { margin-top: calc(var(--px) * -9.77); margin-bottom: calc(var(--px) * 46.74); } /* base 0,51.5 */
.fcon10__consent-copy { margin-top: calc(var(--px) * -6.02); margin-bottom: calc(var(--px) * -4.02); } /* base 0,0 */
.fcon10__consent-view { margin-top: calc(var(--px) * -6.02); margin-bottom: calc(var(--px) * -4.02); } /* base 0,0 */
.fcon10__caret { margin-top: calc(var(--px) * -5.68); margin-bottom: calc(var(--px) * -3.67); } /* base 0,0 */
.fcon10__label.fcon10__label--flat { margin-top: calc(var(--px) * -7.5); margin-bottom: calc(var(--px) * -2.5); } /* base -3.25,-1.25 */
.fcon10__label { margin-top: calc(var(--px) * -3.25); margin-bottom: calc(var(--px) * -1.25); } /* base 0,0 */
/* /INK:AUTO fcon10 END */

@media (max-width: 599px) {
  .fcon10_iner {
    padding: 17.0667vw 0 0;
  }

  .fcon10__panel {
    width: 91.4667vw;
    margin-inline: auto;
    padding: 10.6667vw 6.4vw;
  }

  .fcon10__title {
    margin-inline: auto;
    margin-top: -1.5632vw;
    margin-bottom: 7.7717vw;
  }

  .fcon10__form {
    gap: 4.2667vw;
  }

  .fcon10__row {
    width: 100%;
    padding-bottom: 3.2vw;
  }

  .fcon10__row-head {
    width: 26.6667vw;
    padding-left: 0.5333vw;
  }

  .fcon10__required {
    left: -1.0667vw;
    top: -1.0667vw;
    margin-top: -0.8064vw;
    margin-bottom: -1.6064vw;
  }

  .fcon10__caret {
    right: 4.2667vw;
    margin-top: -0.9088vw;
    margin-bottom: -0.5872vw;
  }

  .fcon10__label {
    margin-top: -0.52vw;
    margin-bottom: -0.2vw;
  }

  .fcon10__label.fcon10__label--flat {
    margin-top: -1.2vw;
    margin-bottom: -0.4vw;
  }

  .fcon10__consent {
    gap: 2.1333vw;
    margin-top: 1.0667vw;
    padding-left: 0.5333vw;
  }

  .fcon10__consent-copy {
    margin-top: -0.9632vw;
    margin-bottom: -0.6432vw;
  }

  .fcon10__consent-view {
    margin: 0 0 0 1.6vw;
    padding: 0.5333vw 2.6667vw;
    font-size: 3.2vw;
  }

  .fcon10__consent-dot {
    width: 4.2667vw;
    height: 4.2667vw; /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  }

  .fcon10__consent-dot::after {
    width: 3.2vw;
    height: 3.2vw; /* HEIGHT: 정원 배지(원 지름) — CSS 도형이라 콘텐츠로 높이를 만들 수 없음 */
  }

  .fcon10__submit {
    width: 40vw;
    padding-block: 3.2vw;
    margin-top: 1.0667vw;
  }
}

/* /merge-build:fcon10 */
/* merge-build:fcon11 */
/* fcon11 — 창업 절차 (2행 x 4열 스텝 카드 + 하단 마퀴). 모바일: 카드 4열 → 1열, 화살표 숨김 후보 */
.fcon11 {
  background-color: #790909;
}

.fcon11_iner {
  padding-top: calc(var(--px)*162);
  padding-bottom: calc(var(--px)*4);
}

.fcon11__title {
  margin-top: calc(var(--px)*50);
}

.fcon11__desc {
  margin-top: calc(var(--px)*18);
}

.fcon11__steps {
  display: grid;
  grid-template-columns: repeat(4, calc(var(--px)*311));
  column-gap: calc(var(--px)*41);
  row-gap: calc(var(--px)*19);
  margin-top: calc(var(--px)*56);
}

.fcon11__step-card {
  padding: calc(var(--px)*29) calc(var(--px)*20) calc(var(--px)*35) calc(var(--px)*56);
  background-color: #fff;
  border: 1px solid var(--bc);
  border-radius: calc(var(--px)*30);
}

.fcon11__step-card--highlight {
  background-color: #db1e1e;
  border-color: #db1e1e;
}

.fcon11__step-no::after {
  content: "";
  display: block;
  width: calc(var(--px)*37); /* TEXT-WIDTH: 텍스트가 아닌 라벨 밑 장식 바 */
  height: 3px;
  margin-top: calc(var(--px)*5);
  background-color: #db1e1e;
}

.fcon11__step-card--highlight .fcon11__step-title {
  margin-top: calc(var(--px)*36);
  margin-left: calc(var(--px)*1);
}

.fcon11__step-card--highlight .fcon11__step-desc {
  margin-top: calc(var(--px)*16);
  margin-left: calc(var(--px)*1);
}

.fcon11__step-card--highlight .fcon11__step-no::after {
  background-color: #fff;
}

.fcon11__step-title {
  margin-top: calc(var(--px)*38);
}

.fcon11__step-desc {
  margin-top: calc(var(--px)*18);
}

.fcon11__clip {
  overflow: hidden;
  border-radius: inherit;
}

.fcon11__store {
  left: calc(var(--px)*48);
  bottom: calc(var(--px)*-92);
}

.fcon11__arrow {
  top: calc(var(--px)*70);
  right: calc(var(--px)*-35);
  width: calc(var(--px)*28);
  padding: calc(var(--px)*13) 0;
  background-color: #4f0606;
  border-radius: calc(var(--px)*14);
}

.fcon11__marquee {
  display: flex;
  align-self: stretch;
  margin-top: calc(var(--px)*128);
  overflow: hidden;
}

.fcon11__marquee-track {
  display: flex;
  flex-shrink: 0;
  margin-left: calc(var(--px)*-38);
}

.fcon11__marquee-tile {
  flex-shrink: 0;
}

/* IMG:AUTO fcon11 */
/* 섹션 HTML 파생 (tools/img-size-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon11__store {
    width: calc(var(--px)*213);
    aspect-ratio: 213 / 145;
}

.fcon11__marquee-tile {
    width: calc(var(--px)*763);
    aspect-ratio: 763 / 31;
}
/* /IMG:AUTO fcon11 END */

/* FONT:AUTO fcon11 */
/* spec.json 파생 (tools/spec-font-to-css.js · unit=--px) — 재생성 대상, 직접 수정 금지 */
/* 예외: line-height · letter-spacing 는 값을 고치고 뒤에 OVR 주석을 붙이면 재생성이 보존한다 */
.fcon11__head {
    font-family: var(--font-noto);
    text-align: center;
    color: #ffffff;
}

.fcon11__eyebrow {
    font-size: var(--subheadS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.2; /* OVR */
}

.fcon11__title {
    font-size: var(--titleM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.2; /* OVR */
}

.fcon11__desc {
    font-size: var(--headS);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.5; /* OVR */
}

.fcon11__step-no {
    font-family: var(--font-noto);
    font-size: var(--bodyXS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.87;
    color: #db1e1e;
}

.fcon11__step-title {
    font-family: var(--font-noto);
    font-size: var(--subheadM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.25;
    color: #090909;
}

.fcon11__step-desc {
    font-family: var(--font-noto);
    font-size: var(--bodyM);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.31;
    color: #090909;
}

.fcon11__arrow {
    font-family: var(--font-suit);
    font-size: var(--bodyM);
    font-weight: 500;
    letter-spacing: -0.03em;
    line-height: 1.5; /* OVR */
    text-align: center;
    color: #ffffff;
}

.fcon11__step-card {
    font-family: var(--font-noto);
}

.fcon11__step-desc.fcon11__step-desc--spaced {
    font-size: var(--bodyM);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.49;
    color: #090909;
}

.fcon11__step-card.fcon11__step-card--highlight {
    color: #ffffff;
}

.fcon11__step-no.fcon11__step-no--invert {
    font-family: var(--font-noto);
    font-size: var(--bodyXS);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.87;
    color: #ffffff;
}

.fcon11__step-title.fcon11__step-title--invert {
    font-family: var(--font-noto);
    font-size: var(--subheadM);
    font-weight: 700;
    letter-spacing: -0.05em;
    line-height: 1.25;
    color: #ffffff;
}

.fcon11__step-desc.fcon11__step-desc--invert {
    font-family: var(--font-noto);
    font-size: var(--bodyM);
    font-weight: 400;
    letter-spacing: -0.05em;
    line-height: 1.31;
    color: #ffffff;
}
/* /FONT:AUTO fcon11 END */

/* INK:AUTO fcon11 */
.fcon11__step-no.fcon11__step-no--invert { margin-top: calc(var(--px) * -8.09); margin-bottom: calc(var(--px) * -14.08); } /* base 0,0 */
.fcon11__step-no { margin-top: calc(var(--px) * -8.09); margin-bottom: calc(var(--px) * -14.08); } /* base 0,0 */
.fcon11__title { margin-top: calc(var(--px) * 41.5); margin-bottom: calc(var(--px) * -3.5); } /* base 50,0 */
.fcon11__desc { margin-top: calc(var(--px) * 9.5); margin-bottom: calc(var(--px) * -3.5); } /* base 18,0 */
.fcon11__step-title.fcon11__step-title--07.fcon11__step-title--invert { margin-top: calc(var(--px) * 29.88); margin-bottom: calc(var(--px) * -3.12); } /* base 36,0 */
.fcon11__step-desc.fcon11__step-desc--04.fcon11__step-desc--spaced { margin-top: calc(var(--px) * 13.08); margin-bottom: calc(var(--px) * -2.9); } /* base 18,0 */
.fcon11__step-title.fcon11__step-title--01 { margin-top: calc(var(--px) * 33.88); margin-bottom: calc(var(--px) * -2.12); } /* base 38,0 */
.fcon11__step-title.fcon11__step-title--03 { margin-top: calc(var(--px) * 33.88); margin-bottom: calc(var(--px) * -2.12); } /* base 38,0 */
.fcon11__step-title.fcon11__step-title--04 { margin-top: calc(var(--px) * 33.88); margin-bottom: calc(var(--px) * -2.12); } /* base 38,0 */
.fcon11__step-title.fcon11__step-title--05 { margin-top: calc(var(--px) * 33.88); margin-bottom: calc(var(--px) * -2.12); } /* base 38,0 */
.fcon11__step-title.fcon11__step-title--06 { margin-top: calc(var(--px) * 33.88); margin-bottom: calc(var(--px) * -2.12); } /* base 38,0 */
.fcon11__step-title.fcon11__step-title--08 { margin-top: calc(var(--px) * 33.88); margin-bottom: calc(var(--px) * -2.12); } /* base 38,0 */
.fcon11__eyebrow { margin-top: calc(var(--px) * -3.5); margin-bottom: calc(var(--px) * -1.5); } /* base 0,0 */
.fcon11__step-desc.fcon11__step-desc--07.fcon11__step-desc--invert { margin-top: calc(var(--px) * 12.52); margin-bottom: calc(var(--px) * -1.47); } /* base 16,0 */
.fcon11__step-desc.fcon11__step-desc--01 { margin-top: calc(var(--px) * 14.52); margin-bottom: calc(var(--px) * -1.47); } /* base 18,0 */
.fcon11__step-desc.fcon11__step-desc--02 { margin-top: calc(var(--px) * 14.52); margin-bottom: calc(var(--px) * -1.47); } /* base 18,0 */
.fcon11__step-desc.fcon11__step-desc--05 { margin-top: calc(var(--px) * 14.52); margin-bottom: calc(var(--px) * -1.47); } /* base 18,0 */
.fcon11__step-desc.fcon11__step-desc--06 { margin-top: calc(var(--px) * 14.52); margin-bottom: calc(var(--px) * -1.47); } /* base 18,0 */
.fcon11__step-desc.fcon11__step-desc--08 { margin-top: calc(var(--px) * 14.52); margin-bottom: calc(var(--px) * -1.47); } /* base 18,0 */
.fcon11__step-title.fcon11__step-title--02 { margin-top: calc(var(--px) * 34.88); margin-bottom: calc(var(--px) * -1.12); } /* base 38,0 */
.fcon11__step-desc.fcon11__step-desc--03 { margin-top: calc(var(--px) * 14.52); margin-bottom: calc(var(--px) * -0.47); } /* base 18,0 */
/* /INK:AUTO fcon11 END */

@media (max-width:599px) {
  .fcon11_iner {
    padding-top: 21.3333vw;
    padding-bottom: 0;
  }

  .fcon11__title {
    margin-top: 2.1333vw;
  }

  .fcon11__desc {
    margin-top: 1.0667vw;
  }

  .fcon11__steps {
    grid-template-columns: 1fr;
    width: 89.3333vw;
    row-gap: 3.2vw;
    margin-top: 8.5333vw;
  }

  .fcon11__step-card {
    padding: 5.3333vw 5.3333vw 6.4vw 6.4vw;
    border-radius: 5.3333vw;
  }

  .fcon11__step-no::after {
    width: 6.4vw; /* TEXT-WIDTH: 텍스트가 아닌 라벨 밑 장식 바 */
    margin-top: 1.0667vw;
  }

  .fcon11__steps .fcon11__step-card .fcon11__step-title {
    margin-top: 2.1333vw;
    margin-bottom: 0;
    margin-left: 0;
  }

  .fcon11__steps .fcon11__step-card .fcon11__step-desc {
    margin-top: 1.0667vw;
    margin-bottom: 0;
    margin-left: 0;
  }

  .fcon11__store {
    left: auto;
    right: 4.2667vw;
    bottom: -6.4vw;
    width: 32vw;
  }

  .fcon11__marquee {
    margin-top: 12.8vw;
  }

  .fcon11__marquee-track {
    margin-left: -4.2667vw;
  }

  .fcon11__marquee-tile {
    width: 120vw;
  }
}

/* /merge-build:fcon11 */