/* 해내 — 연출·전환 레이어 (2026-10-12). 새 클래스는 모두 hx- 접두어. */
:root{
  --hx-ink:#0d1015;--hx-ink2:#151a21;--hx-ink3:#1d232c;
  --hx-paper:#f3eee6;--hx-paper2:#e8dfd2;--hx-text:#1b1f24;--hx-muted:#5f5a54;
  --hx-rust:#c4502c;--hx-rust-hi:#ef8a66;--hx-rust-soft:rgba(196,80,44,.16);
  --hx-kakao:#fee500;--hx-ok:#3ccf7a;--hx-off:#f0b44c;
  --hx-ease:cubic-bezier(.2,.9,.1,1);--hx-spring:cubic-bezier(.2,1.5,.4,1)
}
.hx-page{background:var(--hx-paper)}
.hx-nw{white-space:nowrap}
.hx-ib{display:inline-block}
.hx-page .reading-progress i{background:var(--hx-rust-hi)}
.hx-kicker{font-size:15px;line-height:1.4;font-weight:700;letter-spacing:-.02em;color:var(--hx-rust)}
.hx-page h2 em,.hx-final h2 em{font-style:normal;color:var(--hx-rust)}

/* 버튼 */
.hx-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:60px;padding:16px 28px;border-radius:100px;font-size:17px;font-weight:800;letter-spacing:-.02em;white-space:nowrap;transition:transform .25s var(--hx-ease),background .25s,box-shadow .25s,color .25s}
.hx-btn svg{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round;transition:transform .25s var(--hx-ease)}
.hx-btn:hover{transform:translateY(-3px)}
.hx-btn:hover svg{transform:translateX(4px)}
.hx-btn-primary{background:var(--hx-rust);color:#fff;box-shadow:0 16px 36px rgba(196,80,44,.32)}
.hx-btn-primary:hover{background:#a9421f}
.hx-btn-primary:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;animation:hxPulse 2.6s 1.6s infinite}
.hx-btn-ghost{color:#fff;border:1.5px solid rgba(255,255,255,.34);background:rgba(255,255,255,.04)}
.hx-btn-ghost svg{fill:currentColor;stroke:none;width:18px;height:18px}
.hx-btn-ghost:hover{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.6)}
.hx-btn-ghost:hover svg{transform:none}
@keyframes hxPulse{0%{box-shadow:0 0 0 0 rgba(239,138,102,.55)}70%{box-shadow:0 0 0 16px rgba(239,138,102,0)}100%{box-shadow:0 0 0 0 rgba(239,138,102,0)}}

/* ───── 1. 히어로 ───── */
.hx-hero{position:relative;isolation:isolate;overflow:hidden;background:var(--hx-ink);color:#fff}
.hx-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:4vw;min-height:min(calc(100vh - 76px),880px)}
.hx-hero-copy{position:relative;z-index:2;padding:56px 0 64px;display:flex;flex-direction:column;justify-content:center}
.hx-notice{display:flex;align-items:center;gap:12px;width:max-content;max-width:100%;padding:11px 16px 11px 11px;border-radius:18px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);box-shadow:0 18px 40px rgba(0,0,0,.35);animation:hxDrop .55s var(--hx-ease) both,hxBuzz .5s .6s 2 both}
.hx-notice-icon{position:relative;display:grid;place-items:center;width:38px;height:38px;flex:none;border-radius:11px;background:var(--hx-ok)}
.hx-notice-icon svg{position:relative;width:19px;height:19px;fill:#fff;animation:hxWiggle 1.2s .6s 3}
.hx-ring,.hx-ring:after{position:absolute;inset:0;border-radius:inherit;border:2px solid var(--hx-ok);animation:hxRing 1.5s .6s 4 both}
.hx-ring:after{content:"";inset:-2px;animation-delay:1.1s}
@keyframes hxWiggle{0%,50%,100%{transform:none}10%,30%{transform:rotate(-14deg)}20%,40%{transform:rotate(14deg)}}
.hx-notice-text{display:grid;gap:2px;min-width:0;font-size:13.5px;line-height:1.35}
.hx-notice-text b{font-size:14px;font-weight:800}
.hx-notice-text span{color:#d5d7db}
.hx-notice-time{align-self:flex-start;font-size:12px;color:#9aa0a8;margin-left:6px}
@keyframes hxDrop{from{opacity:0;transform:translateY(-26px) scale(.96)}to{opacity:1;transform:none}}
@keyframes hxBuzz{0%,100%{transform:translateX(0)}20%{transform:translateX(-4px) rotate(-.6deg)}40%{transform:translateX(4px) rotate(.6deg)}60%{transform:translateX(-3px)}80%{transform:translateX(3px)}}
.hx-eyebrow{margin-top:34px;font-size:15px;font-weight:700;color:#cdb3a5;letter-spacing:-.02em;animation:hxFade .5s .25s both}
.hx-title{margin-top:16px;font-size:clamp(60px,6.3vw,104px);line-height:1.06;letter-spacing:-.055em;font-weight:900}
.hx-line{display:block;overflow:hidden;padding-bottom:.07em;margin-bottom:-.07em}
.hx-line>span{display:inline-block;animation:hxRise .7s var(--hx-ease) both}
.hx-line:nth-child(1)>span{animation-delay:.12s}
.hx-line:nth-child(2)>span{animation-delay:.22s}
@keyframes hxRise{from{transform:translateY(108%)}to{transform:none}}
.hx-accent{position:relative;color:var(--hx-rust-hi);overflow:visible}
.hx-accent>span{position:relative;z-index:0}
.hx-accent>span{animation:hxRise .7s .34s var(--hx-ease) both,hxInvert .3s 1.05s forwards}
.hx-accent>span:before{content:"";position:absolute;z-index:-1;left:-.1em;right:-.12em;top:.1em;bottom:.02em;background:var(--hx-rust);transform:scaleX(0);transform-origin:left;animation:hxSweep .5s .9s var(--hx-ease) forwards}
@keyframes hxInvert{to{color:#fff}}
.hx-accent{animation:hxThud .42s 1.05s both}
@keyframes hxSweep{to{transform:scaleX(1)}}
@keyframes hxThud{0%{transform:none}30%{transform:scale(1.035) translateY(-2px)}100%{transform:none}}
.hx-lead{margin-top:30px;max-width:560px;font-size:19px;line-height:1.65;color:#c9ccd1;animation:hxFade .55s .5s both}
.hx-lead strong{display:block;margin-bottom:6px;font-size:22px;color:#fff;font-weight:800}
.hx-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px;animation:hxFade .55s .62s both}
@keyframes hxFade{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:none}}
.hx-status{display:flex;align-items:center;gap:9px;margin-top:20px;font-size:14px;font-weight:650;color:#c3c6cb;animation:hxFade .5s .72s both}
.hx-status i,.hx-dock-status i,.hx-q-status i{position:relative;width:9px;height:9px;flex:none;border-radius:50%;background:#8b9097}
.hx-status i.is-open,.hx-q-status i.is-open{background:var(--hx-ok)}
.hx-status i.is-closed,.hx-q-status i.is-closed{background:var(--hx-off)}
.hx-status i:after,.hx-q-status i:after{content:"";position:absolute;inset:0;border-radius:50%;background:inherit;animation:hxDot 1.8s infinite}
@keyframes hxDot{0%{transform:scale(1);opacity:.7}100%{transform:scale(2.8);opacity:0}}
.hx-trust{display:flex;align-items:center;gap:12px;margin:26px 0 0;padding:20px 0 0;border-top:1px solid rgba(255,255,255,.12);font-size:15px;line-height:1.5;color:#c9ccd1;animation:hxFade .5s .82s both}
.hx-trust b{color:#fff;font-weight:750}
.hx-trust-face{width:40px;height:40px;border-radius:50%;overflow:hidden;background:#8a7a70;flex:none}
.hx-trust-face img{width:100%;height:100%;object-fit:cover;object-position:50% 8%}
/* 무대 */
.hx-hero-stage{position:relative;align-self:end;height:min(calc(100vh - 140px),780px);min-height:560px}
.hx-spot{position:absolute;left:50%;bottom:-8%;width:118%;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(closest-side,rgba(255,236,220,.2),rgba(255,236,220,.05) 55%,transparent 72%);animation:hxLight 1.4s .15s both}
.hx-portrait{position:absolute;left:50%;bottom:0;width:min(100%,560px);height:auto;transform:translateX(-50%);transform-origin:50% 100%;-webkit-mask-image:linear-gradient(to bottom,#000 78%,transparent 100%);mask-image:linear-gradient(to bottom,#000 78%,transparent 100%);animation:hxLightOn 1.6s .1s both}
@keyframes hxLight{from{opacity:0;transform:translateX(-50%) scale(.7)}to{opacity:1;transform:translateX(-50%) scale(1)}}
@keyframes hxLightOn{0%{filter:brightness(.18) saturate(.4);transform:translateX(-50%) scale(1.07)}40%{filter:brightness(.3) saturate(.5)}100%{filter:none;transform:translateX(-50%) scale(1)}}
@keyframes hxRing{0%{transform:scale(1);opacity:.9}100%{transform:scale(2.4);opacity:0}}
@keyframes hxPop{from{opacity:0;transform:translateY(22px) scale(.88)}to{opacity:1;transform:none}}
@keyframes hxFloat{0%,100%{translate:0 0}50%{translate:0 -8px}}
.hx-chip{position:absolute;z-index:2;display:grid;gap:2px;padding:14px 18px;border-radius:16px;background:#f3eee6;color:var(--hx-text);box-shadow:0 20px 40px rgba(0,0,0,.4)}
.hx-chip small{font-size:12px;font-weight:700;color:var(--hx-rust)}
.hx-chip strong{font-size:17px;letter-spacing:-.03em}
.hx-chip-date{top:40%;right:-2%;animation:hxPop .6s 1.25s var(--hx-spring) both,hxFloat 7s 2s ease-in-out infinite reverse}
.hx-chip-date{max-width:270px;overflow:hidden}
.hx-urge{display:flex;align-items:center;gap:11px;margin:12px -18px -14px;padding:12px 16px 13px 12px;background:var(--hx-rust);color:#fff;font-size:13.5px;font-weight:750;line-height:1.4;letter-spacing:-.02em;animation:hxUrge .5s 1.9s var(--hx-ease) both}
.hx-urge b{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#fff;color:var(--hx-rust);font-size:14px;font-weight:900;animation:hxBeat 1.8s 2.5s infinite}
@keyframes hxUrge{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:none}}
@keyframes hxBeat{0%,40%,100%{transform:scale(1)}10%{transform:scale(1.16)}20%{transform:scale(1)}30%{transform:scale(1.1)}}
.hx-mark{white-space:nowrap;color:var(--hx-rust-hi);background:linear-gradient(var(--hx-rust-hi),var(--hx-rust-hi)) 0 100%/0 3px no-repeat;padding-bottom:2px;-webkit-box-decoration-break:clone;box-decoration-break:clone;animation:hxMark .8s 1.2s var(--hx-ease) forwards}
@keyframes hxMark{to{background-size:100% 3px}}
.hx-name{position:absolute;z-index:2;left:4%;bottom:34px;display:grid;gap:3px;padding:16px 20px;border-left:3px solid var(--hx-rust);background:rgba(13,16,21,.82);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:hxFade .6s 1s both}
.hx-name small{font-size:12px;color:#c9a99a;font-weight:700}
.hx-name strong{font-size:21px;letter-spacing:-.03em}
.hx-name span{font-size:13px;color:#c3c6cb}
/* 결과 띠 */
.hx-proofbar{position:relative;z-index:3;background:#08090c;border-top:1px solid rgba(255,255,255,.1)}
.hx-proofbar-inner{display:flex;align-items:center;gap:14px 34px;flex-wrap:wrap;min-height:84px;padding:14px 0}
.hx-proofbar-label{font-size:13px;font-weight:800;color:#9aa0a8}
.hx-proofbar a{display:flex;align-items:baseline;gap:10px;color:#fff;transition:opacity .2s}
.hx-proofbar a:hover{opacity:.78}
.hx-proofbar small{font-size:14px;color:#b9bcc1;font-weight:650}
.hx-ink{display:inline-block;font-size:22px;font-weight:900;letter-spacing:-.04em;color:var(--hx-rust-hi)}
.hx-proofbar-note{margin-left:auto;font-size:12.5px;color:#80858c}
.hx-js .hx-ink[data-stamp]{opacity:0}
.hx-js .hx-ink.is-stamped{animation:hxInk .55s var(--hx-spring) forwards}
.hx-js .hx-proofbar a:nth-of-type(1) .hx-ink.is-stamped{animation-delay:1.25s}
.hx-js .hx-proofbar a:nth-of-type(2) .hx-ink.is-stamped{animation-delay:1.45s}
@keyframes hxInk{0%{opacity:0;transform:scale(1.9) rotate(-6deg);filter:blur(3px)}60%{opacity:1;filter:none}100%{opacity:1;transform:none}}

/* ───── 공통: 고정 스크롤 무대 ───── */
.hx-sticky{position:relative}
.hx-js .hx-spiral,.hx-js .hx-stakes,.hx-js .hx-records{position:relative}

/* ───── 2. 불안의 소용돌이 ───── */
.hx-spiral{background:#050608;color:#fff}
.hx-spiral-inner{position:relative;padding:110px 0}
.hx-spiral .hx-kicker{color:var(--hx-rust-hi)}
.hx-thoughts{margin:30px 0 0;padding:0;list-style:none;display:grid;gap:18px}
.hx-thoughts li{font-size:clamp(30px,4.6vw,64px);font-weight:850;letter-spacing:-.06em;line-height:1.15}
.hx-spiral-answer{margin-top:70px}
.hx-spiral-answer h2{font-size:clamp(40px,5.6vw,84px);line-height:1.1;letter-spacing:-.045em;font-weight:800}
.hx-spiral-answer em{font-style:normal;color:var(--hx-rust-hi)}
.hx-spiral-answer .hx-btn{margin-top:36px}
.hx-spiral-meter{display:none}
.hx-js .hx-spiral{height:calc(100vh + 7 * 42vh)}
.hx-js .hx-spiral .hx-sticky{position:sticky;top:0;height:100vh;overflow:hidden}
@supports(height:100svh){.hx-js .hx-spiral{height:calc(100svh + 7 * 42svh)}.hx-js .hx-spiral .hx-sticky{height:100svh}}
.hx-js .hx-spiral .hx-sticky:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(196,80,44,calc(var(--p,0) * .5)),transparent 62%);transition:opacity .6s}
.hx-js .hx-spiral[data-stage="6"] .hx-sticky:before{opacity:.25}
.hx-js .hx-spiral-inner{height:100%;padding:0}
.hx-js .hx-spiral .hx-kicker{position:absolute;top:calc(var(--hx-head,76px) + 26px);left:0;right:0;text-align:center;z-index:3}
.hx-js .hx-thoughts{position:absolute;inset:var(--hx-head,76px) 0 0;margin:0;display:block}
.hx-js .hx-thoughts li{position:absolute;left:50%;top:50%;width:max-content;max-width:min(92vw,1100px);text-align:center;opacity:0;transform:translate(-50%,calc(-50% + 70px)) scale(.94);filter:blur(8px);transition:opacity .7s var(--hx-ease),transform .9s var(--hx-ease),filter .7s,color .7s}
.hx-js .hx-thoughts li.is-now{opacity:1;transform:translate(-50%,-50%) scale(1);filter:none}
.hx-js .hx-thoughts li.is-past{opacity:.14;color:#c9c9c9;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) scale(.5) rotate(var(--r));filter:blur(1.5px)}
.hx-js .hx-thoughts li.is-gone{opacity:0;transform:translate(-50%,-50%) scale(.25);filter:blur(12px)}
.hx-js .hx-spiral-answer{position:absolute;inset:var(--hx-head,76px) 0 0;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;opacity:0;transform:scale(1.08);pointer-events:none;transition:opacity .8s var(--hx-ease),transform 1s var(--hx-ease)}
.hx-js .hx-spiral[data-stage="6"] .hx-spiral-answer{opacity:1;transform:none;pointer-events:auto}
.hx-js .hx-spiral-meter{display:block;position:absolute;left:50%;bottom:max(30px,5vh);width:min(220px,50vw);height:3px;transform:translateX(-50%);background:rgba(255,255,255,.14);border-radius:3px;overflow:hidden}
.hx-js .hx-spiral-meter i{display:block;height:100%;background:var(--hx-rust-hi);transform-origin:left;transform:scaleX(var(--p,0))}

/* ───── 3. 첫 진술의 무게 ───── */
.hx-stakes{background:var(--hx-paper);color:var(--hx-text)}
.hx-stakes-inner{position:relative;padding:120px 0}
.hx-stakes-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:12px 6vw;align-items:end}
.hx-stakes-head .hx-kicker{grid-column:1/-1}
.hx-stakes h2{font-size:clamp(46px,5.4vw,84px);line-height:1.06;letter-spacing:-.045em;font-weight:800}
.hx-stakes-head>p:last-child{font-size:18px;line-height:1.75;color:var(--hx-muted);padding-bottom:10px}
.hx-track{position:relative;z-index:1;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;margin:76px 0 0;padding:0;list-style:none}
.hx-track li{position:relative;z-index:1;display:grid;align-content:start;gap:6px;padding:36px 4px 0 0;transition:opacity .6s,transform .6s var(--hx-ease)}
.hx-track li:before{content:"";position:absolute;top:0;left:0;width:20px;height:20px;border-radius:50%;background:var(--hx-paper);border:3px solid #c9bfb2;transition:background .4s,border-color .4s,transform .4s var(--hx-spring)}
.hx-track b{font-size:13px;color:#9a9087;font-weight:800}
.hx-track strong{font-size:21px;letter-spacing:-.04em}
.hx-track span{font-size:15px;color:var(--hx-muted)}
.hx-track em{font-style:normal}
.hx-here{justify-self:start;margin-top:12px;padding:8px 14px;border-radius:100px;background:var(--hx-rust);color:#fff;font-size:13.5px;font-weight:800}
.hx-track-case{display:block}
.hx-track .hx-track-case{margin-top:14px;padding:12px 14px;border-left:3px solid var(--hx-rust);background:#fff;font-size:14px;line-height:1.45;font-weight:700;color:var(--hx-text);box-shadow:0 10px 24px rgba(60,40,25,.08)}
.hx-stakes-foot{margin-top:46px;font-size:13.5px;color:#7a736c}
.hx-stakes-foot a{margin-left:6px;font-weight:800;color:var(--hx-rust);text-decoration:underline;text-underline-offset:3px}
.hx-track li.is-on:before{background:var(--hx-rust);border-color:var(--hx-rust);transform:scale(1.15)}
.hx-track .hx-now.is-on:before{animation:hxNow 1.6s infinite}
@keyframes hxNow{0%{box-shadow:0 0 0 0 rgba(196,80,44,.5)}100%{box-shadow:0 0 0 18px rgba(196,80,44,0)}}
.hx-js .hx-track li{opacity:.28;transform:translateY(16px)}
.hx-js .hx-track li.is-on{opacity:1;transform:none}
.hx-js .hx-track .hx-track-case,.hx-js .hx-track .hx-here{opacity:0;transform:translateY(10px);transition:opacity .5s .2s,transform .5s .2s var(--hx-ease)}
.hx-js .hx-track li.is-on .hx-track-case,.hx-js .hx-track li.is-on .hx-here{opacity:1;transform:none}

/* ───── 4. 기억이 아니라 기록 ───── */
.hx-records{background:var(--hx-ink2);color:#fff}
.hx-records-inner{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:6vw;align-items:center;padding:120px 0}
.hx-records .hx-kicker{color:var(--hx-rust-hi)}
.hx-records h2{margin-top:16px;font-size:clamp(44px,4.8vw,76px);line-height:1.08;letter-spacing:-.045em;font-weight:800}
.hx-records h2 em{font-style:normal;color:var(--hx-rust-hi)}
.hx-records-lead{margin-top:18px;font-size:17px;color:#a7adb6}
.hx-records-steps{display:flex;flex-wrap:wrap;gap:8px;margin-top:34px}
.hx-records-steps span{padding:8px 14px;border-radius:100px;border:1px solid rgba(255,255,255,.2);font-size:14px;font-weight:700;color:#9aa0a8;transition:all .4s}
.hx-records-steps span.is-on{background:#fff;border-color:#fff;color:var(--hx-text)}
.hx-board{position:relative;padding:30px;border-radius:26px;background:var(--hx-ink3);border:1px solid rgba(255,255,255,.08);box-shadow:0 40px 80px rgba(0,0,0,.35)}
.hx-claim{position:relative;padding:22px 24px;border-radius:16px;background:#2a2f37;transition:filter .6s,opacity .6s}
.hx-claim small{font-size:12.5px;font-weight:800;color:#9aa0a8}
.hx-claim strong{display:block;margin-top:8px;font-size:26px;line-height:1.3;letter-spacing:-.04em}
.hx-claim-tag{position:absolute;top:20px;right:20px;font-size:12px;font-weight:800;color:#d8b7a8;border:1px solid #6d5249;padding:4px 9px;border-radius:100px}
.hx-evidence{display:grid;gap:10px;margin:14px 0 0;padding:0;list-style:none}
.hx-evidence li{position:relative;display:grid;grid-template-columns:76px 1fr;gap:2px 14px;padding:16px 52px 16px 18px;border-radius:14px;background:#f3eee6;color:var(--hx-text);transition:opacity .55s,transform .6s var(--hx-ease)}
.hx-evidence b{grid-row:span 2;align-self:center;font-size:12.5px;font-weight:800;color:var(--hx-rust)}
.hx-evidence strong{font-size:17px;letter-spacing:-.03em}
.hx-evidence span{font-size:13.5px;color:var(--hx-muted)}
.hx-evidence li:after{content:"";position:absolute;right:18px;top:50%;width:22px;height:22px;margin-top:-11px;border-radius:50%;background:var(--hx-rust) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='m5 10.5 3.2 3L15 6.5' fill='none' stroke='%23fff' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/16px no-repeat;transition:transform .45s .2s var(--hx-spring)}
.hx-verdict{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-top:14px;padding:20px 22px;border-radius:14px;border:2px solid var(--hx-rust-hi);transition:opacity .6s,transform .6s var(--hx-spring)}
.hx-verdict small{font-size:13px;font-weight:800;color:#d8b7a8}
.hx-verdict strong{font-size:28px;letter-spacing:-.04em;color:var(--hx-rust-hi)}
.hx-board-note{margin-top:14px;font-size:12.5px;line-height:1.5;color:#80858c}
.hx-js .hx-evidence li{opacity:.12;transform:translateX(26px)}
.hx-js .hx-evidence li:after{transform:scale(0)}
.hx-js .hx-evidence li.is-on{opacity:1;transform:none}
.hx-js .hx-evidence li.is-on:after{transform:scale(1)}
.hx-js .hx-verdict{opacity:0;transform:scale(.9)}
.hx-js .hx-records[data-stage="4"] .hx-verdict{opacity:1;transform:none}
.hx-js .hx-records[data-stage="4"] .hx-claim{filter:grayscale(1);opacity:.55}

/* 고정 무대(데스크톱): 높이 충분할 때만 */
@media (min-width:900px) and (min-height:680px){
  .hx-js .hx-stakes{height:calc(100vh + 6 * 34vh)}
  .hx-js .hx-records{height:calc(100vh + 5 * 40vh)}
  .hx-js .hx-stakes .hx-sticky,.hx-js .hx-records .hx-sticky{position:sticky;top:0;height:100vh;display:flex;align-items:center}
  .hx-js .hx-stakes-inner,.hx-js .hx-records-inner{padding:60px 0;width:min(calc(100% - 72px),1320px)}
  .hx-track:before,.hx-track:after{content:"";position:absolute;z-index:-1;top:9px;left:10px;right:calc((100% - 56px) / 5 - 10px);height:3px;background:#ddd3c6}
  .hx-track:after{background:var(--hx-rust);transform-origin:left;transform:scaleX(var(--fill,0));transition:transform .7s var(--hx-ease)}
}

/* ───── 5. 공개 사건 ───── */
.hx-cases{background:var(--hx-paper);padding:130px 0 120px;color:var(--hx-text)}
.hx-cases-head h2{margin-top:16px;font-size:clamp(46px,5.4vw,84px);line-height:1.06;letter-spacing:-.045em;font-weight:800}
.hx-cases-lead{margin-top:18px;font-size:17px;color:var(--hx-muted)}
.hx-case-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px;margin-top:60px}
.hx-case{position:relative;display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1fr);border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 30px 60px rgba(60,40,25,.12);transition:transform .45s var(--hx-ease),box-shadow .45s}
.hx-case:hover{transform:translateY(-6px);box-shadow:0 40px 70px rgba(60,40,25,.18)}
.hx-case-art{position:relative;overflow:hidden;background:#1a2230}
.hx-case-art img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--hx-ease)}
.hx-case:hover .hx-case-art img{transform:scale(1.06)}
.hx-case-body{position:relative;display:flex;flex-direction:column;gap:14px;padding:30px 28px}
.hx-case-meta{display:flex;gap:6px;flex-wrap:wrap}
.hx-case-meta span{padding:5px 10px;border-radius:100px;background:var(--hx-paper);font-size:12.5px;font-weight:800;color:var(--hx-muted)}
.hx-case-body h3{font-size:24px;line-height:1.3;letter-spacing:-.045em}
.hx-case-body>p:not(.hx-case-meta){font-size:15px;line-height:1.65;color:var(--hx-muted)}
.hx-stamp{align-self:flex-start;display:grid;width:max-content;max-width:100%;gap:4px;margin:6px 0 4px;padding:12px 18px 14px;border:3px solid var(--hx-rust);border-radius:10px;color:var(--hx-rust);transform:rotate(-6deg);box-shadow:inset 0 0 0 2px rgba(196,80,44,.18)}
.hx-stamp strong span{font-size:.62em;letter-spacing:-.02em}
.hx-stamp small{font-size:12px;font-weight:800;opacity:.9}
.hx-stamp strong{font-size:34px;line-height:1.05;letter-spacing:-.05em;font-weight:900}
.hx-case-more{margin-top:auto;display:inline-flex;align-items:center;gap:8px;font-size:15px;font-weight:800;color:var(--hx-text)}
.hx-case-more svg,.hx-routes svg{width:8px;height:14px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .2s}
.hx-case:hover .hx-case-more svg{transform:translateX(4px)}
.hx-caveat{margin-top:28px;font-size:13.5px;line-height:1.6;color:#7a736c}
.hx-js .hx-stamp[data-stamp]{opacity:0}
.hx-js .hx-stamp.is-stamped{animation:hxStamp .55s var(--hx-spring) forwards}
.hx-js .hx-case.is-impact{animation:hxImpact .32s .3s}
@keyframes hxStamp{0%{opacity:0;transform:scale(2.6) rotate(-18deg)}55%{opacity:1}100%{opacity:1;transform:scale(1) rotate(-6deg)}}
@keyframes hxImpact{0%,100%{translate:0 0}25%{translate:0 3px}50%{translate:-2px -1px}75%{translate:1px 1px}}

/* ───── 6. 변호사 ───── */
.hx-lawyer{background:var(--hx-paper2);padding:120px 0;color:var(--hx-text)}
.hx-lawyer-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:6vw;align-items:center}
.hx-lawyer-photo{position:relative;border-radius:26px;overflow:hidden;background:linear-gradient(160deg,#3a3f46,#1d2229)}
.hx-lawyer-photo img{width:100%;height:auto;transition:transform 1.4s var(--hx-ease)}
.hx-lawyer-photo span{position:absolute;left:18px;bottom:18px;padding:10px 14px;background:rgba(13,16,21,.84);color:#fff;font-size:15px;font-weight:800;border-left:3px solid var(--hx-rust)}
.hx-lawyer h2{margin-top:16px;font-size:clamp(42px,4.6vw,72px);line-height:1.1;letter-spacing:-.045em;font-weight:800}
.hx-pillars{display:grid;margin:34px 0 28px;padding:0;list-style:none}
.hx-pillars li{display:grid;gap:4px;padding:18px 0;border-top:1px solid #cfc3b3}
.hx-pillars li:last-child{border-bottom:1px solid #cfc3b3}
.hx-pillars strong{font-size:19px;letter-spacing:-.035em}
.hx-pillars span{font-size:15px;line-height:1.6;color:var(--hx-muted)}
.hx-source{margin-top:18px;font-size:12.5px;color:#7a736c}
.hx-source a{text-decoration:underline;text-underline-offset:3px}
.hx-lawyer-photo:after{content:"";position:absolute;z-index:2;inset:0;background:var(--hx-ink);transform:scaleY(0);transform-origin:top;pointer-events:none}
.hx-js .hx-lawyer-photo[data-hx-reveal]:after{transform:scaleY(1);transition:transform 1.1s .1s var(--hx-ease)}
.hx-js .hx-lawyer-photo[data-hx-reveal] img{transform:scale(1.18)}
.hx-js .hx-lawyer-photo.is-visible:after{transform:scaleY(0)}
.hx-js .hx-lawyer-photo.is-visible img{transform:none}

/* ───── 7. 걱정 FAQ ───── */
.hx-worries{background:var(--hx-paper);padding:120px 0;color:var(--hx-text)}
.hx-worries-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:6vw}
.hx-worries h2{margin-top:16px;font-size:clamp(40px,4.4vw,66px);line-height:1.1;letter-spacing:-.045em;font-weight:800}
.hx-worries-lead{margin-top:22px;font-size:16px;line-height:1.7;color:var(--hx-muted)}
.hx-faq{border-top:2px solid var(--hx-text)}
.hx-faq details{border-bottom:1px solid #d6ccbf}
.hx-faq summary{position:relative;display:flex;align-items:center;min-height:78px;padding:18px 56px 18px 0;list-style:none;cursor:pointer;font-size:21px;font-weight:800;letter-spacing:-.04em}
.hx-faq summary::-webkit-details-marker{display:none}
.hx-faq summary i{position:absolute;right:6px;top:50%;width:30px;height:30px;margin-top:-15px;border-radius:50%;background:var(--hx-text);transition:transform .35s var(--hx-ease),background .3s}
.hx-faq summary i:before,.hx-faq summary i:after{content:"";position:absolute;left:50%;top:50%;width:12px;height:2px;margin:-1px 0 0 -6px;background:#fff}
.hx-faq summary i:after{transform:rotate(90deg);transition:transform .35s var(--hx-ease)}
.hx-faq details[open] summary i{background:var(--hx-rust);transform:rotate(180deg)}
.hx-faq details[open] summary i:after{transform:rotate(0)}
.hx-faq details p{padding:0 50px 26px 0;font-size:16.5px;line-height:1.75;color:#4f4a45;animation:hxFade .4s both}

/* ───── 8. 상황별 안내 ───── */
.hx-routes{background:var(--hx-paper2);padding:100px 0;color:var(--hx-text)}
.hx-routes h2{margin-top:14px;font-size:clamp(32px,3.4vw,50px);letter-spacing:-.04em;font-weight:800}
.hx-route-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:38px}
.hx-route-grid a{position:relative;display:grid;align-content:start;gap:8px;min-height:190px;padding:24px 22px 56px;border-radius:18px;background:var(--hx-paper);transition:background .3s,color .3s,transform .35s var(--hx-ease)}
.hx-route-grid a:after{content:"→";position:absolute;left:22px;bottom:20px;font-size:20px;font-weight:800;transition:transform .3s var(--hx-ease)}
.hx-route-grid a:hover{background:var(--hx-ink);color:#fff;transform:translateY(-4px)}
.hx-route-grid a:hover:after{transform:translateX(8px)}
.hx-route-grid small{font-size:12.5px;font-weight:800;color:var(--hx-rust)}
.hx-route-grid a:hover small{color:var(--hx-rust-hi)}
.hx-route-grid strong{font-size:19px;line-height:1.35;letter-spacing:-.04em}
.hx-route-grid span{font-size:14px;color:var(--hx-muted)}
.hx-route-grid a:hover span{color:#b9bcc1}

/* ───── 9. 마지막 신청 ───── */
.hx-final{position:relative;overflow:hidden;background:var(--hx-ink);color:#fff;padding:120px 0}
.hx-final-grid{position:relative;display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:6vw;align-items:center}
.hx-final .hx-kicker{color:var(--hx-rust-hi)}
.hx-final h2{margin-top:16px;font-size:clamp(44px,5vw,80px);line-height:1.08;letter-spacing:-.045em;font-weight:800}
.hx-final h2 em{color:var(--hx-rust-hi)}
.hx-final-copy>p:not(.hx-kicker){margin-top:24px;font-size:18px;line-height:1.75;color:#c9ccd1}
.hx-final-note{margin-top:26px;font-size:14.5px;line-height:1.7;color:#a7adb6}

/* ───── 공통 등장 ───── */
.hx-js [data-hx-reveal]:not(.hx-lawyer-photo){opacity:0;transform:translateY(40px);transition:opacity .8s var(--hx-ease),transform .9s var(--hx-ease)}
.hx-js [data-hx-reveal].is-visible:not(.hx-lawyer-photo){opacity:1;transform:none}
.hx-js .hx-case[data-hx-reveal].is-visible{transform:none}
.hx-js .hx-case[data-hx-reveal].is-visible:hover{transform:translateY(-6px)}

/* ───── 30초 상담 신청 (공통 컴포넌트) ───── */
.hx-q{position:relative;padding:28px;border-radius:24px;background:#fff;color:var(--hx-text);box-shadow:0 40px 80px rgba(0,0,0,.35)}
.hx-q-top{display:flex;align-items:center;gap:14px}
.hx-q-count{font-size:13px;font-weight:800;color:var(--hx-muted);white-space:nowrap}
.hx-q-count b{color:var(--hx-rust);font-size:16px}
.hx-q-bar{flex:1;height:5px;border-radius:5px;background:#ece5da;overflow:hidden}
.hx-q-bar i{display:block;height:100%;width:100%;background:var(--hx-rust);transform-origin:left;transform:scaleX(.08);transition:transform .5s var(--hx-ease)}
.hx-q-back{flex:none;min-height:36px;padding:6px 12px;border:1px solid #d6ccbf;border-radius:100px;background:#fff;font-size:13px;font-weight:750;color:var(--hx-muted);cursor:pointer}
.hx-q-stage{position:relative;margin-top:20px}
.hx-q-step{margin:0;padding:0;border:0;min-width:0}
.hx-q-step legend,.hx-q-done-title{padding:0;font-size:24px;font-weight:900;letter-spacing:-.05em;line-height:1.3}
.hx-q-hint{margin-top:6px;font-size:14px;color:var(--hx-muted)}
.hx-q-opts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:18px}
.hx-q-opt{position:relative;display:flex;align-items:center;min-height:58px;padding:12px 16px;border:1.5px solid #e1d8cc;border-radius:14px;background:#faf7f2;text-align:left;font-size:16px;font-weight:750;letter-spacing:-.03em;color:var(--hx-text);cursor:pointer;transition:border-color .2s,background .2s,transform .2s var(--hx-ease)}
.hx-q-opt:hover{border-color:var(--hx-rust);background:#fff}
.hx-q-opt:active{transform:scale(.97)}
.hx-q-opt.is-picked{border-color:var(--hx-rust);background:var(--hx-rust);color:#fff}
.hx-q-opt.is-wide{grid-column:1/-1}
.hx-q-step.is-enter,.hx-q-done.is-enter{animation:hxStepIn .42s var(--hx-ease) both}
@keyframes hxStepIn{from{opacity:0;transform:translateX(34px)}to{opacity:1;transform:none}}
.hx-q-urgent{display:flex;gap:10px;align-items:flex-start;margin-top:14px;padding:12px 14px;border-radius:12px;background:#fdece6;color:#8a3517;font-size:14.5px;font-weight:750;line-height:1.5}
.hx-q-urgent:before{content:"!";display:grid;place-items:center;flex:none;width:22px;height:22px;border-radius:50%;background:var(--hx-rust);color:#fff;font-size:13px;font-weight:900}
.hx-q-msg-label{display:block;margin-top:16px;font-size:13px;font-weight:800;color:var(--hx-muted)}
.hx-q-msg{display:block;width:100%;min-height:150px;margin-top:6px;padding:14px;border:1.5px solid #e1d8cc;border-radius:14px;background:#faf7f2;font:inherit;font-size:16px;line-height:1.55;color:var(--hx-text);resize:vertical}
.hx-q-msg:focus{outline:2px solid var(--hx-rust);outline-offset:1px;border-color:transparent}
.hx-q-acts{display:grid;gap:8px;margin-top:12px}
.hx-q-acts .hx-btn{width:100%;min-height:60px;white-space:normal;text-align:center}
.hx-btn-kakao{flex-direction:column;gap:2px;background:var(--hx-kakao);color:#191919;box-shadow:0 12px 26px rgba(0,0,0,.12)}
.hx-btn-kakao:hover{background:#f5dc00}
.hx-btn-kakao span{display:flex;align-items:center;gap:8px}
.hx-btn-kakao svg{width:20px;height:20px;fill:#191919;stroke:none}
.hx-btn-kakao small{font-size:12.5px;font-weight:700;opacity:.72}
.hx-btn-kakao.is-copied small{opacity:1}
.hx-btn-call{background:var(--hx-ink);color:#fff}
.hx-btn-call:hover{background:#2a313b}
.hx-btn-call svg{fill:currentColor;stroke:none;width:18px;height:18px}
.hx-q.is-urgent .hx-btn-call{order:-1;background:var(--hx-rust)}
.hx-q-privacy{margin-top:12px;font-size:12.5px;line-height:1.5;color:var(--hx-muted)}
.hx-q-restart{margin-top:6px;padding:6px 0;border:0;background:none;font-size:13px;font-weight:750;color:var(--hx-muted);text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.hx-q-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 14px;margin-top:20px;padding-top:16px;border-top:1px solid #ece5da;font-size:13px;color:var(--hx-muted)}
.hx-q-foot a{font-weight:800;color:var(--hx-text);text-decoration:underline;text-underline-offset:3px}
.hx-q-status{display:flex;align-items:center;gap:8px;font-weight:700}

/* 바텀시트 */
.hx-sheet{width:min(560px,calc(100% - 32px));max-width:none;max-height:calc(100% - 40px);margin:auto;padding:0;border:0;border-radius:26px;background:transparent;overflow:visible}
.hx-sheet::backdrop{background:rgba(8,10,13,.62);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}
.hx-sheet[open]{animation:hxSheetIn .38s var(--hx-ease)}
.hx-sheet[open]::backdrop{animation:hxFadeOnly .3s}
@keyframes hxSheetIn{from{opacity:0;transform:translateY(30px) scale(.97)}to{opacity:1;transform:none}}
@keyframes hxFadeOnly{from{opacity:0}}
.hx-sheet .hx-q{max-height:calc(100vh - 40px);overflow:auto;padding-top:22px;box-shadow:0 40px 90px rgba(0,0,0,.45)}
.hx-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:16px}
.hx-sheet-head strong{font-size:15px;font-weight:900;letter-spacing:-.02em}
.hx-sheet-head strong span{color:var(--hx-rust)}
.hx-sheet-close{display:grid;place-items:center;width:40px;height:40px;flex:none;border:0;border-radius:50%;background:#f1ebe2;cursor:pointer}
.hx-sheet-close:before,.hx-sheet-close:after{content:"";grid-area:1/1;width:16px;height:2px;background:var(--hx-text);transform:rotate(45deg)}
.hx-sheet-close:after{transform:rotate(-45deg)}
html.hx-locked{overflow:hidden}

/* 데스크톱 떠 있는 신청 버튼 */
.hx-float{position:fixed;z-index:75;right:28px;bottom:28px;display:none}
@media(min-width:621px){
  .hx-float{display:block;opacity:0;transform:translateY(20px) scale(.95);pointer-events:none;transition:opacity .35s,transform .45s var(--hx-ease)}
  .hx-float.is-shown{opacity:1;transform:none;pointer-events:auto}
  .hx-float .hx-btn{box-shadow:0 18px 40px rgba(0,0,0,.3)}
}

/* 모바일 하단 고정 */
@media(max-width:620px){
  .mobile-contact.hx-dock{grid-template-columns:1.5fr 1fr;background:var(--hx-ink);border-top:1px solid rgba(255,255,255,.14);padding-bottom:env(safe-area-inset-bottom);transition:transform .4s var(--hx-ease)}
  .mobile-contact.hx-dock a{min-height:60px;font-size:16px;font-weight:850;letter-spacing:-.02em}
  .mobile-contact.hx-dock a:first-child{background:var(--hx-rust)}
  .mobile-contact.hx-dock a+a{border-left:1px solid rgba(255,255,255,.16)}
  .hx-page .mobile-contact.hx-dock{transform:translateY(110%)}
  .hx-page .mobile-contact.hx-dock.is-shown{transform:none}
  .hx-sheet{width:100%;max-height:92vh;margin:auto 0 0;border-radius:24px 24px 0 0}
  .hx-sheet[open]{animation:hxSheetUp .42s var(--hx-ease)}
  .hx-sheet .hx-q{max-height:92vh;border-radius:24px 24px 0 0;padding:18px 18px calc(22px + env(safe-area-inset-bottom))}
  @keyframes hxSheetUp{from{transform:translateY(100%)}to{transform:none}}
}

/* ───── 반응형 ───── */
@media(max-width:1100px){
  .hx-chip-date{right:0}
  .hx-route-grid{grid-template-columns:1fr 1fr}
  .hx-case{grid-template-columns:1fr}
  .hx-case-art{aspect-ratio:16/10}
  .hx-case-art img{object-position:50% 22%}
}
@media(max-width:899px),(max-height:679px){
  .hx-track{grid-template-columns:1fr;gap:0;margin-top:48px;padding-left:4px}
  .hx-track li{grid-template-columns:auto;padding:0 0 30px 40px}
  .hx-track li:after{content:"";position:absolute;left:9px;top:22px;bottom:0;width:2px;background:#ddd3c6}
  .hx-track li:last-child:after{display:none}
  .hx-track li.is-on:after{background:var(--hx-rust)}
  .hx-track li:before{top:2px}
  .hx-track .hx-here,.hx-track .hx-track-case{justify-self:start}
  .hx-records-inner{grid-template-columns:1fr;gap:44px}
  .hx-stakes-head{grid-template-columns:1fr}
}
@media(max-width:899px){
  .hx-hero-grid{grid-template-columns:1fr;gap:0;min-height:0}
  .hx-hero-copy{padding:40px 0 34px}
  .hx-hero-stage{height:460px;min-height:0;margin:0 -18px}
  .hx-chip-date{top:18%;right:4%}
  .hx-name{left:18px;bottom:22px}
  .hx-case-grid,.hx-lawyer-grid,.hx-worries-grid,.hx-final-grid{grid-template-columns:1fr}
  .hx-lawyer-photo{max-width:420px}
  .hx-final-grid{gap:44px}
  .hx-proofbar-note{margin-left:0;flex-basis:100%}
}
@media(max-width:620px){
  .hx-page .wrap{width:calc(100% - 32px)}
  .hx-hero-copy{padding:20px 0 30px}
  .hx-notice{padding:9px 12px 9px 9px;gap:10px;border-radius:15px}
  .hx-notice-icon{width:32px;height:32px;border-radius:9px}
  .hx-notice-icon svg{width:16px;height:16px}
  .hx-notice-text{font-size:12.5px}
  .hx-notice-text b{font-size:13px}
  .hx-eyebrow{margin-top:22px;font-size:13.5px}
  .hx-title{margin-top:10px;font-size:clamp(42px,12.2vw,58px);line-height:1.1;letter-spacing:-.05em}
  .hx-lead{margin-top:18px;font-size:16px;line-height:1.6}
  .hx-lead strong{font-size:18px;margin-bottom:4px}
  .hx-actions{margin-top:22px;display:grid;grid-template-columns:1fr;gap:8px}
  .hx-actions .hx-btn{width:100%;min-height:58px}
  .hx-btn-ghost{min-height:52px!important;font-size:16px}
  .hx-status{margin-top:14px;font-size:13px}
  .hx-trust{margin-top:16px;padding-top:14px;font-size:13.5px}
  .hx-trust-face{width:34px;height:34px}
  .hx-hero-stage{height:400px;margin:0 -16px}
  .hx-chip{padding:11px 14px}
  .hx-chip strong{font-size:15px}
  .hx-chip-date{max-width:230px}
  .hx-urge{font-size:12.5px;margin:10px -14px -11px;padding:10px 12px}
  .hx-urge b{width:36px;height:36px;font-size:12.5px}
  .hx-name{padding:12px 15px}
  .hx-name strong{font-size:18px}
  .hx-proofbar-inner{gap:10px 20px;padding:18px 0}
  .hx-proofbar-label{flex-basis:100%}
  .hx-ink{font-size:19px}
  .hx-proofbar small{font-size:13px}
  .hx-thoughts li{font-size:clamp(26px,8vw,36px)}
  .hx-js .hx-thoughts li{max-width:calc(100vw - 40px);white-space:normal}
  .hx-spiral-answer h2{font-size:clamp(34px,10vw,46px)}
  .hx-stakes-inner,.hx-records-inner{padding:84px 0}
  .hx-stakes h2,.hx-cases-head h2{font-size:clamp(40px,11vw,54px)}
  .hx-stakes-head>p:last-child{font-size:16px}
  .hx-track strong{font-size:19px}
  .hx-records h2{font-size:clamp(38px,10.4vw,50px)}
  .hx-board{padding:16px;border-radius:20px}
  .hx-claim{padding:18px}
  .hx-claim strong{font-size:22px}
  .hx-claim-tag{top:16px;right:14px}
  .hx-evidence li{grid-template-columns:1fr;padding:14px 48px 14px 14px}
  .hx-evidence b{grid-row:auto}
  .hx-evidence strong{font-size:16px}
  .hx-verdict strong{font-size:24px}
  .hx-cases{padding:90px 0}
  .hx-case-grid{margin-top:38px;gap:18px}
  .hx-case-body{padding:22px 20px 24px}
  .hx-case-body h3{font-size:21px}
  .hx-stamp strong{font-size:28px}
  .hx-lawyer,.hx-worries,.hx-final{padding:88px 0}
  .hx-lawyer h2,.hx-final h2{font-size:clamp(38px,10.4vw,50px)}
  .hx-worries h2{font-size:clamp(36px,10vw,46px)}
  .hx-pillars li{padding:15px 0}
  .hx-pillars strong{font-size:17px}
  .hx-faq summary{font-size:18px;min-height:70px;padding-right:48px}
  .hx-faq details p{padding-right:0;font-size:15.5px}
  .hx-routes{padding:76px 0}
  .hx-route-grid{grid-template-columns:1fr;gap:8px}
  .hx-route-grid a{min-height:0;padding:18px 18px 18px;grid-template-columns:1fr auto}
  .hx-route-grid a:after{position:static;grid-row:1/span 3;grid-column:2;align-self:center}
  .hx-final-copy>p:not(.hx-kicker){font-size:16px}
  .hx-q{padding:20px 16px}
  .hx-q-step legend,.hx-q-done-title{font-size:21px}
  .hx-q-opts{gap:7px}
  .hx-q-opt{min-height:56px;padding:10px 12px;font-size:15px}
}
@media(max-width:360px){
  .hx-title{font-size:40px}
  .hx-q-opts{grid-template-columns:1fr}
}

/* ───── 동작 줄이기 ───── */
@media(prefers-reduced-motion:reduce){
  .hx-hero *,.hx-hero,.hx-btn:after{animation:none!important}
  .hx-accent>span{color:#fff}
  .hx-mark{background-size:100% 3px}
  .hx-accent>span:before{transform:none}
  .hx-js .hx-ink[data-stamp],.hx-js .hx-stamp[data-stamp]{opacity:1}
  .hx-js .hx-stamp.is-stamped,.hx-js .hx-ink.is-stamped,.hx-js .hx-case.is-impact{animation:none}
  .hx-js [data-hx-reveal]:not(.hx-lawyer-photo){opacity:1;transform:none;transition:none}
  .hx-js .hx-lawyer-photo[data-hx-reveal]:after{transform:scaleY(0);transition:none}
  .hx-js .hx-lawyer-photo[data-hx-reveal] img{transform:none}
  .hx-q-step.is-enter,.hx-q-done.is-enter,.hx-sheet[open],.hx-faq details p{animation:none}
}

/* 상태 문구 시간대 줄바꿈 금지 · 태블릿 헤더 CTA 오른쪽 정렬 */
.hx-status small,.hx-q-status small{font-size:inherit;white-space:nowrap}
@media(min-width:621px) and (max-width:1150px){.site-header .header-cta{margin-left:auto}.site-header .menu-toggle{margin-left:10px}}

/* 상담 안내 페이지 인라인 신청 */
.mp-hero-grid:has(.hx-consult-quick){grid-template-columns:minmax(0,1fr) minmax(360px,.9fr);align-items:center;gap:5vw}
.hx-consult-quick .hx-q{box-shadow:0 30px 70px rgba(0,0,0,.4)}
@media(max-width:850px){.mp-hero-grid:has(.hx-consult-quick){grid-template-columns:1fr;gap:40px}}

/* 홈 법률 가이드 링크 묶음 */
.hx-guidechips{margin-top:30px;padding-top:26px;border-top:1px solid #cfc3b3}
.hx-guidechips p{font-size:14px;font-weight:800;color:var(--hx-rust)}
.hx-guidechips nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.hx-guidechips a{padding:9px 14px;border-radius:100px;background:var(--hx-paper);font-size:14.5px;font-weight:700;color:var(--hx-text);transition:background .2s,color .2s}
.hx-guidechips a:hover,.hx-guidechips a.is-faq{background:var(--hx-ink);color:#fff}
