/* ===== main : hero (ref 1280x624) ===== */
.hero{height:624px;background:#000}
.hero__bg{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.70),rgba(0,0,0,.78)),url(../images/store_front.webp) center 30%/cover;filter:saturate(.75) contrast(1.05)}
.vline{position:absolute;top:0;height:443px;width:1px;background:var(--hair);z-index:2}
.vline--l{left:44px}.vline--r{right:44px}
.hero__ring{position:absolute;left:50%;top:130px;width:630px;height:324px;margin-left:-315px;z-index:3;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
.hero__ring::before{content:"";position:absolute;inset:-6px -30px;border-radius:50%;border:7px solid var(--or);transform:rotate(-3deg);box-shadow:0 0 12px 3px rgba(var(--or-rgb),.9),0 0 40px rgba(var(--or-rgb),.55),inset 0 0 12px 2px rgba(var(--or-rgb),.75)}
.hero__ring::after{content:"";position:absolute;inset:4px -20px;border-radius:50%;border:2px solid rgba(var(--lt-rgb),.9);transform:rotate(-3deg);filter:blur(.5px)}
.hero__mark{position:absolute;top:44%;font-family:var(--f-serif);font-weight:900;font-size:26px;color:var(--or);opacity:.9}
.hero__mark::after{content:"";position:absolute;top:120%;left:-12px;right:-12px;height:1px;background:var(--or)}
.hero__mark--l{left:32px}.hero__mark--r{right:32px}
.hero__lead{font-size:16px;margin-top:12px}
.hero__title{font-family:var(--f-serif);font-weight:900;font-size:29px;letter-spacing:-.05em;margin:2px 0 14px}
.hero__brand{display:block;width:330px;height:auto;margin-top:6px;filter:drop-shadow(0 0 1px #000) drop-shadow(0 3px 0 var(--or))}
.hero__stats{position:absolute;left:0;right:0;top:488px;z-index:3;display:flex;justify-content:center;align-items:center;gap:26px}
.hstat{display:flex;align-items:center;gap:10px}
.hstat small{font-size:18px;line-height:1.25;text-align:right}
.hstat:last-child small{text-align:left}
.hstat b{font-family:var(--f-en);font-weight:900;font-size:92px;line-height:1;color:var(--red);text-shadow:0 0 14px rgba(var(--red-rgb),.55)}
.hstat__unit{font-family:var(--f-en);font-size:30px;writing-mode:vertical-rl;color:transparent;-webkit-text-stroke:1px #fff;letter-spacing:.06em}
.hstat__unit--pre{writing-mode:horizontal-tb;font-family:var(--f-serif);font-size:34px;-webkit-text-stroke:1px #fff}
.hero__div{width:1px;height:96px;background:var(--red)}
.hero__corner{position:absolute;z-index:3;top:552px;font-family:var(--f-en);font-weight:900;font-size:27px;letter-spacing:.02em;line-height:1}
.hero__corner .vert{position:absolute;bottom:52px;writing-mode:vertical-rl;transform:rotate(180deg);font-size:27px}
.hero__corner--l{left:38px}.hero__corner--l .vert{left:0}
.hero__corner--r{right:38px;text-align:right}.hero__corner--r .vert{right:0;transform:none}

/* ===== main_2nd : media (ref 1280x761) ===== */
.media{height:621px;background:var(--stripe),var(--or);color:var(--ink)}
.dblline{position:absolute;left:0;right:0;top:0;height:21px;background:repeating-linear-gradient(180deg,rgba(0,0,0,.55) 0 1px,transparent 1px 5px)}
.dblline--b{top:auto;bottom:0}
.media .bigseal{top:76px}
.media__kicker{position:absolute;top:102px;left:0;right:0;display:flex;justify-content:center;align-items:center;gap:28px;font-family:var(--f-serif);font-weight:600;font-size:22px}
.media__kicker i{width:80px;height:5px;border-block:1px solid var(--ink)}
.media__title{position:absolute;top:150px;left:0;right:0;text-align:center;font-family:var(--f-heavy);font-weight:400;font-size:56px;line-height:1.1;letter-spacing:-.02em}
.media__box{position:absolute;left:128px;right:128px;top:288px;height:260px;background:#000;background-image:linear-gradient(rgba(0,0,0,.0),#000 90%)}
.media__ghost{position:absolute;top:0;width:146px;height:260px;display:grid;place-items:center;font-family:var(--f-heavy);font-size:150px;color:#161616;overflow:hidden}
.media__ghost--l{left:0}.media__ghost--r{right:0}
.media__track{position:absolute;left:36px;right:36px;top:-50px;display:flex;gap:24px}
.media__card{position:relative;flex:1;min-width:0;background:#000;cursor:pointer;transition:filter .4s}
.media__card:not(.is-on){filter:brightness(.55)}
.media__label{height:41px;display:flex;align-items:center;padding:0 20px;font-size:12px;font-weight:700;color:#fff;background:#000}
.media__card video{display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;background:#111}
.media .arrow--prev{left:14px;top:76px}.media .arrow--next{right:14px;top:76px}
.media__foot{position:absolute;left:0;right:0;bottom:22px;display:flex;justify-content:center;align-items:center;gap:30px;font-family:var(--f-cap);font-weight:900;letter-spacing:.35em;font-size:20px;color:var(--or)}
.media__foot i{width:318px;height:3px;background:#333}
.media__foot b{display:block;height:100%;background:var(--or);transition:transform .5s var(--ease);transform-origin:left}
.media__sound{position:absolute;right:36px;top:-84px;border:0;background:#000;color:#fff;font-size:12px;font-weight:700;padding:6px 12px;cursor:pointer}
.media__sound[aria-pressed=true]{background:#fff;color:#000}

/* ===== main_3rd : review (ref 1280x779) ===== */
.review{height:779px;background:#0b0b0b}
.review__bg{position:absolute;inset:0;background:linear-gradient(rgba(0,0,0,.45),rgba(0,0,0,.7)),url(../images/store_in2.webp) center/cover;filter:grayscale(1) contrast(1.15) brightness(.55)}
.review__badge{position:absolute;left:50%;top:52px;width:138px;height:40px;margin-left:-69px;display:grid;place-items:center;border-radius:50%;font-family:var(--f-en);font-weight:900;font-size:20px;color:var(--or);text-shadow:var(--glow);box-shadow:0 0 0 2px var(--or),0 0 12px rgba(var(--or-rgb),.85),inset 0 0 10px rgba(var(--or-rgb),.6);background:rgba(var(--deep-rgb),.45)}
.review__title{position:absolute;top:140px;left:0;right:0;text-align:center;font-family:var(--f-serif);font-weight:900;line-height:1.15}
.review__title span{display:block;font-size:40px;letter-spacing:-.05em}
.review__title em{display:block;font-style:normal;font-size:50px;margin-top:10px;letter-spacing:-.05em}
.review__sub{position:absolute;top:278px;left:0;right:0;text-align:center;font-size:16px}
.bubble{position:absolute;z-index:3;min-width:250px;height:52px;padding:0 18px;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.92);border:1px solid var(--or);font-size:13px;font-weight:700;white-space:nowrap}
.bubble em{font-style:normal;color:var(--or);margin-left:4px}
/* 레퍼 ddm_m: 2초 들썩임, 대각선 짝(1·4 / 2·3)이 1초 엇갈려 번갈아 */
.bubble{animation:ddm 2s infinite}
.bubble--2,.bubble--3{animation-delay:1s}
@keyframes ddm{0%,100%{transform:scale(1)}50%{transform:matrix(1.05,.01,.01,1.05,0,-15)}}
@media (prefers-reduced-motion:reduce){.bubble{animation:none}}
/* 꼬리: ::before 주황 삼각형 위에 ::after 검정 삼각형을 1px 안쪽으로 → 두 변 모두 주황 선, 몸통과 만나는 곳은 테두리를 덮어 열어 둠 */
.bubble::before,.bubble::after{content:"";position:absolute;bottom:-15px;width:20px;height:16px}
.bubble::before{background:var(--or);clip-path:polygon(0 1px,100% 1px,100% 100%)}
.bubble::after{background:#000;clip-path:polygon(1.8px 0,calc(100% - 1px) 0,calc(100% - 1px) calc(100% - 1.7px))}
.bubble--1{left:164px;top:283px}.bubble--1::before,.bubble--1::after{right:40px}
.bubble--2{left:218px;top:380px}.bubble--2::before,.bubble--2::after{right:22px}
.bubble--3{left:868px;top:272px}.bubble--3::before,.bubble--3::after{left:40px;transform:scaleX(-1)}
.bubble--4{left:830px;top:360px}.bubble--4::before,.bubble--4::after{left:24px;transform:scaleX(-1)}
.review__line{position:absolute;left:0;right:0;top:450px;height:1px;background:var(--or);box-shadow:0 0 6px var(--or)}
.review__stage{position:absolute;left:0;right:0;top:360px;height:420px}
.review__track{position:relative;height:100%}
.rcard{position:absolute;left:50%;top:158px;width:151px;height:224px;margin-left:-75px;border-radius:14px;overflow:hidden;background:#fff;transition:transform .6s var(--ease),width .6s var(--ease),height .6s var(--ease),top .6s var(--ease),margin .6s var(--ease)}
.rcard img{width:100%;height:100%;object-fit:cover;object-position:top}
.rcard.is-on{top:10px;width:199px;height:294px;margin-left:-99px;border:4px solid var(--or);box-shadow:0 0 18px rgba(var(--or-rgb),.8);z-index:3}
.review .arrow--prev{left:50%;top:190px;margin-left:-154px}
.review .arrow--next{left:50%;top:190px;margin-left:116px}
.review__en{position:absolute;left:0;right:0;bottom:24px;text-align:center;font-family:var(--f-cap);font-weight:900;font-size:14px;color:var(--or)}

/* ===== con1 : strip (ref 154) ===== */
.strip{position:relative;height:154px;overflow:hidden;background:#000}
.strip::after{content:"";position:absolute;inset:0;background:var(--stripe),linear-gradient(rgba(var(--red-rgb),.25),rgba(var(--red-rgb),.25));pointer-events:none}
.strip__track{display:flex;height:100%;width:max-content;animation:rail 60s linear infinite}
.strip__track img{height:100%;width:300px;object-fit:cover;filter:saturate(1.4) contrast(1.1)}
@keyframes rail{to{transform:translateX(-50%)}}
