/* 02 section01 — 풀폭 영상 (레퍼: 16:9, DOM 글자 없음) */
#section01 { max-width: var(--max); margin: 0 auto; background: #000; }
#section01 video { display: block; width: 100%; aspect-ratio: 16 / 9; object-fit: cover; }

/* 03 section02 — 매출 카운트업 (레퍼 s02: 좌 제목·큰 숫자 / 우 지점 카드, 숫자는 자리마다 슬롯처럼 돎) */
.sec_txt p { letter-spacing: -.05em; }
.sec_txt .slogan { font-size: calc(48 * var(--u)); line-height: 1; font-weight: 600; margin-bottom: calc(20 * var(--u)); }
.sec_txt .title { font-size: calc(78 * var(--u)); line-height: 1; font-weight: 800; color: var(--red-txt); margin-bottom: calc(30 * var(--u)); }
.sec_txt .desc { font-size: calc(25 * var(--u)); line-height: calc(36 * var(--u)); font-weight: 500; }
.sec_txt .desc b { font-weight: 700; }

#section02 { position: relative; max-width: var(--max); margin: 0 auto; padding: calc(150 * var(--u)) 0 calc(170 * var(--u)); overflow: hidden; }
.s02_bg { position: absolute; inset: 0; background: url(../img/s02_bg.jpg) center / cover no-repeat; filter: brightness(.3) saturate(.8); }
.s02_inner { position: relative; width: calc(1545 * var(--u)); margin: 0 auto; }
#section02 .sec_txt p { text-shadow: calc(2 * var(--u)) calc(2 * var(--u)) 0 #000; }

.s02_price_wrap { margin-top: calc(120 * var(--u)); width: calc(720 * var(--u)); }
.s02_pr_tit { margin-bottom: calc(20 * var(--u)); font-size: calc(46 * var(--u)); line-height: 1.2; letter-spacing: -.02em; }
.s02_pr_tit .bk { display: inline-block; height: 1.2em; width: auto; aspect-ratio: var(--ar); vertical-align: top; }   /* 산돌 광야 SVG */
.s02_pr_tit .bk + .bk { margin-left: .28em; }
.s02_pr_tit .em { color: var(--red-txt); }
.s02_description { float: right; height: calc(42 * var(--u)); margin: calc(15 * var(--u)) calc(7 * var(--u)) 0 0; padding: 0 calc(20 * var(--u)); background: var(--red); display: flex; align-items: center; }
.s02_description p { font-size: calc(24 * var(--u)); font-weight: 700; opacity: .85; }

/* 숫자: 자리마다 0~9 띠를 세로로 굴려 멈춤 */
.price_num { display: flex; list-style: none; font-weight: 700; letter-spacing: -.025em; font-variant-numeric: tabular-nums; line-height: 1; }
.price_num .num { height: 1em; overflow: hidden; }
.price_num .reel { display: flex; flex-direction: column; will-change: transform; }
.price_num .reel i { font-style: normal; height: 1em; }
.price_num .unit { align-self: flex-end; }
.s02_price_wrap .price_num { font-size: calc(103 * var(--u)); }
.s02_price_wrap .price_num .unit { font-size: calc(83 * var(--u)); margin-left: calc(24 * var(--u)); }

.s02_list_wrap { position: absolute; right: 0; top: 0; display: flex; flex-direction: column; gap: calc(20 * var(--u)); }
.s02_list { display: flex; align-items: center; }
.s02_img_box { width: calc(206 * var(--u)); height: calc(160 * var(--u)); overflow: hidden; background: #fff; }
.s02_img_box img { width: 100%; height: 100%; object-fit: cover; }
.s02_data_box { width: calc(493 * var(--u)); }
.s02_data_top { height: calc(68 * var(--u)); background: var(--red); display: flex; align-items: center; justify-content: center; gap: calc(30 * var(--u)); }
.s02_data_top span { font-size: calc(26 * var(--u)); letter-spacing: -.02em; }
.s02_data_top b { position: relative; font-size: calc(36 * var(--u)); font-weight: 700; letter-spacing: -.02em; }
.s02_data_top b::after { content: ''; position: absolute; right: calc(-15 * var(--u)); top: 50%; translate: 0 -50%; width: calc(3 * var(--u)); height: calc(26 * var(--u)); background: #fff; }
.s02_data_bottom { height: calc(92 * var(--u)); background: #fff; display: flex; align-items: center; justify-content: center; }
.s02_data_bottom .price_num { font-size: calc(58 * var(--u)); color: var(--red); }
.s02_data_bottom .price_num .unit { font-size: calc(44 * var(--u)); }

.js .sec_txt .reveal { opacity: 0; }

@media (max-width: 768px) {
  .sec_txt .slogan { font-size: calc(58 * var(--u)); margin-bottom: calc(20 * var(--u)); }
  .sec_txt .title { font-size: calc(76 * var(--u)); margin-bottom: calc(50 * var(--u)); }
  .sec_txt .desc { font-size: calc(35 * var(--u)); line-height: calc(50 * var(--u)); }
  #section02 { padding: calc(130 * var(--u)) 0 calc(130 * var(--u)); }
  .s02_inner { width: 100%; padding: 0 calc(25 * var(--u)); }
  #section02 .sec_txt { text-align: center; }
  .s02_price_wrap { width: 100%; margin-top: calc(120 * var(--u)); text-align: center; display: flex; flex-direction: column; align-items: center; }
  .s02_pr_tit { font-size: calc(54 * var(--u)); }
  .s02_price_wrap .price_num { font-size: calc(96 * var(--u)); }
  .s02_price_wrap .price_num .unit { font-size: calc(80 * var(--u)); margin-left: calc(20 * var(--u)); }
  .s02_description { float: none; height: calc(56 * var(--u)); margin: calc(20 * var(--u)) 0 0; }
  .s02_description p { font-size: calc(30 * var(--u)); }
  .s02_list_wrap { position: static; gap: calc(40 * var(--u)); margin-top: calc(110 * var(--u)); }
  .s02_img_box { width: calc(213 * var(--u)); height: calc(167 * var(--u)); }
  .s02_data_box { width: calc(100% - 213 * var(--u)); }
  .s02_data_top { height: calc(70 * var(--u)); gap: calc(30 * var(--u)); }
  .s02_data_top b { font-size: calc(36 * var(--u)); }
  .s02_data_top span { font-size: calc(27 * var(--u)); }
  .s02_data_bottom { height: calc(97 * var(--u)); }
  .s02_data_bottom .price_num { font-size: calc(60 * var(--u)); }
  .s02_data_bottom .price_num .unit { font-size: calc(46 * var(--u)); }
}
