/* 해내 서브페이지 (2026-10-13). drama.css 다음에 읽는다. 새 클래스는 hx- 접두어. */
.hx-hand{font-family:"Nanum Pen Script",cursive;font-weight:400;letter-spacing:0}
.hx-serif{font-family:"Nanum Myeongjo",serif}

/* ───── 서브 히어로 ───── */
.hx-phero-grid>*,.hx-split>*,.hx-dont>*,.hx-dday>*,.hx-story>*,.hx-rule>*,.hx-ask>*,.hx-pair>*,.hx-when>div>*,.hx-src>*,.hx-profile>div>*,.hx-scene>*,.hx-phone-input span{min-width:0}
.hx-phero{position:relative;overflow:hidden;background:var(--hx-ink);color:#fff}
.hx-phero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:5vw;align-items:center;min-height:min(calc(100vh - 76px),780px);padding:60px 0 76px}
.hx-crumb{font-size:14px;color:#8d939b;animation:hxFade .4s both}
.hx-crumb a{color:#c9ccd1}
.hx-crumb a:hover{color:#fff}
.hx-crumb span{margin:0 8px;opacity:.5}
.hx-phero .hx-title{margin-top:20px;font-size:clamp(50px,5.4vw,90px)}
.hx-phero .hx-lead{font-size:18.5px;max-width:540px}
.hx-pvis{position:relative;animation:hxPop .7s .35s var(--hx-spring) both}

/* ───── 섹션 ───── */
.hx-s{padding:120px 0;overflow-x:clip}
.hx-s.is-paper{background:var(--hx-paper);color:var(--hx-text)}
.hx-s.is-paper2{background:var(--hx-paper2);color:var(--hx-text)}
.hx-s.is-ink{background:var(--hx-ink2);color:#fff}
.hx-s.is-black{background:#07080a;color:#fff}
.hx-s h2{font-size:clamp(38px,4.3vw,66px);line-height:1.13;letter-spacing:-.045em;font-weight:800}
.hx-s h2 em{font-style:normal;color:var(--hx-rust)}
.hx-s.is-ink h2 em,.hx-s.is-black h2 em{color:var(--hx-rust-hi)}
.hx-s-lead{margin-top:20px;max-width:620px;font-size:18px;line-height:1.75;color:var(--hx-muted)}
.hx-s.is-ink .hx-s-lead,.hx-s.is-black .hx-s-lead{color:#a7adb6}
.hx-split{display:grid;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);gap:6vw;align-items:center}
.hx-small{margin-top:18px;font-size:14px;line-height:1.65;color:#7a736c}
.hx-s.is-ink .hx-small,.hx-s.is-black .hx-small{color:#80858c}
.hx-small a,.hx-inline-link{font-weight:750;text-decoration:underline;text-underline-offset:3px}
.hx-s.is-paper .hx-inline-link,.hx-s.is-paper2 .hx-inline-link{color:var(--hx-rust)}

/* ───── 출석요구 문자 (휴대전화) ───── */
.hx-phone{position:relative;width:min(100%,370px);margin-inline:auto;padding:12px;border-radius:46px;background:#050506;box-shadow:0 50px 90px rgba(0,0,0,.55),inset 0 0 0 2px #2e333a}
.hx-phone-screen{display:flex;flex-direction:column;min-height:560px;border-radius:35px;background:#eceef2;color:#14171c;overflow:hidden}
.hx-phone-bar{display:flex;flex-direction:column;align-items:center;gap:6px;padding:22px 16px 14px;background:#f7f7f9;border-bottom:1px solid #dcdfe4}
.hx-phone-bar i{display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:#9aa3ae;color:#fff;font-style:normal;font-size:17px;font-weight:800}
.hx-phone-bar strong{font-size:14px}
.hx-phone-thread{flex:1;display:flex;flex-direction:column;gap:8px;padding:16px 14px}
.hx-phone-day{align-self:center;font-size:11.5px;color:#8a9099;margin-bottom:4px}
.hx-sms{align-self:flex-start;max-width:88%;padding:11px 14px;border-radius:18px 18px 18px 5px;background:#fff;font-size:14px;line-height:1.55;white-space:pre-line}
.hx-sms b{font-weight:800}
.hx-phone-input{display:flex;align-items:center;gap:10px;margin:0 10px 12px;padding:10px 14px;border-radius:22px;background:#fff;font-size:14px;color:#14171c;min-height:42px}
.hx-phone-input span{flex:1;overflow:hidden;white-space:nowrap}
.hx-phone-input em{font-style:normal;display:inline-block;max-width:100%;overflow:hidden;white-space:nowrap;vertical-align:bottom}
.hx-phone-input i{width:2px;height:18px;background:#2f7cf6;animation:hxBlink 1s steps(1) infinite}
@keyframes hxBlink{50%{opacity:0}}
.hx-js .hx-sms{animation:hxPop .45s var(--hx-spring) both}
.hx-js .hx-sms:nth-of-type(1){animation-delay:.7s}
.hx-js .hx-sms:nth-of-type(2){animation-delay:1.5s}
.hx-js .hx-phone-input em{animation:hxTypeErase 6.5s 2.6s infinite both}
@keyframes hxTypeErase{0%{clip-path:inset(0 100% 0 0)}35%{clip-path:inset(0 0 0 0)}62%{clip-path:inset(0 0 0 0)}80%,100%{clip-path:inset(0 100% 0 0)}}
.hx-phone-note{position:absolute;right:-6%;bottom:16%;max-width:210px;padding:12px 15px;border-radius:12px;background:var(--hx-rust);color:#fff;font-size:14px;font-weight:750;line-height:1.45;box-shadow:0 16px 30px rgba(0,0,0,.35);transform:rotate(2deg);animation:hxPop .5s 3.4s var(--hx-spring) both}

/* ───── 손글씨 메모 ───── */
.hx-memo{position:relative;padding:40px 28px 26px 58px;background:#fffdf5 repeating-linear-gradient(to bottom,transparent 0 41px,#d8e2ee 41px 42px);background-position:0 26px;border-radius:3px;box-shadow:0 22px 44px rgba(60,40,25,.18);transform:rotate(-1.4deg);color:#1f2c4c}
.hx-memo:before{content:"";position:absolute;top:0;bottom:0;left:42px;width:2px;background:#efb0a8}
.hx-memo:after{content:"";position:absolute;top:-14px;left:50%;width:120px;height:30px;margin-left:-60px;background:rgba(246,226,160,.78);transform:rotate(-3deg);box-shadow:0 2px 4px rgba(0,0,0,.06)}
.hx-memo-title{font-size:30px;line-height:42px;color:#5b6577}
.hx-memo ul{margin:0;padding:0;list-style:none}
.hx-memo li{font-size:29px;line-height:42px;word-break:keep-all}
.hx-memo .is-red{color:#c63a28}
.hx-memo .hx-circled{position:relative;display:inline-block;padding:0 6px}
.hx-memo .hx-circled:after{content:"";position:absolute;inset:2px -2px 0;border:2px solid #c63a28;border-radius:50%;transform:rotate(-4deg)}
.hx-js .hx-memo li,.hx-js .hx-memo .hx-memo-title{clip-path:inset(0 100% 0 0);transition:clip-path .9s cubic-bezier(.4,0,.3,1)}
.hx-js .is-visible>.hx-memo li,.hx-js .is-visible>.hx-memo .hx-memo-title{clip-path:inset(0 -6% 0 0)}
.hx-js .is-visible>.hx-memo li:nth-child(1){transition-delay:.35s}
.hx-js .is-visible>.hx-memo li:nth-child(2){transition-delay:.85s}
.hx-js .is-visible>.hx-memo li:nth-child(3){transition-delay:1.35s}
.hx-js .is-visible>.hx-memo li:nth-child(4){transition-delay:1.85s}
.hx-js .is-visible>.hx-memo li:nth-child(5){transition-delay:2.35s}
.hx-memo-under{margin-top:34px;padding-left:4px;font-size:16px;line-height:1.7;color:var(--hx-muted)}

/* ───── 하지 마세요 ───── */
.hx-donts{margin-top:56px;border-bottom:1px solid rgba(255,255,255,.14)}
.hx-dont{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw;align-items:center;padding:44px 0;border-top:1px solid rgba(255,255,255,.14)}
.hx-dont h3{font-size:clamp(26px,2.6vw,38px);line-height:1.25;letter-spacing:-.04em}
.hx-dont p{margin-top:14px;max-width:520px;font-size:17px;line-height:1.75;color:#b9bcc1}
.hx-dont-vis{position:relative;justify-self:center;width:max-content;max-width:100%;padding:10px 0}
.hx-bubble{position:relative;max-width:min(100%,400px);padding:15px 19px;border-radius:20px 20px 6px 20px;background:var(--hx-kakao);color:#191919;font-size:16px;line-height:1.55;box-shadow:0 14px 30px rgba(0,0,0,.3)}
.hx-bubble.is-gray{border-radius:20px 20px 20px 6px;background:#2a2f37;color:#e6e7e9}
.hx-bubble small{display:block;margin-top:6px;font-size:11.5px;opacity:.55}
.hx-sheetmenu{width:300px;max-width:100%;border-radius:16px;overflow:hidden;background:#2a2f37;box-shadow:0 14px 30px rgba(0,0,0,.3)}
.hx-sheetmenu span{display:block;padding:15px 18px;text-align:center;font-size:16px;color:#ff6b5e;border-bottom:1px solid rgba(255,255,255,.08)}
.hx-sheetmenu span:last-child{border:0;color:#7cb2ff}
.hx-searchbar{display:flex;align-items:center;gap:10px;width:340px;max-width:100%;padding:15px 18px;border-radius:100px;background:#fff;color:#191919;font-size:16px;box-shadow:0 14px 30px rgba(0,0,0,.3)}
.hx-searchbar:before{content:"";width:15px;height:15px;flex:none;border:2.5px solid #777;border-radius:50%;box-shadow:5px 5px 0 -3px #777}
.hx-x{position:absolute;inset:-4px -14px;pointer-events:none}
.hx-x:before,.hx-x:after{content:"";position:absolute;left:0;right:0;top:50%;height:5px;margin-top:-2px;border-radius:5px;background:#e8473a;box-shadow:0 0 0 2px rgba(7,8,10,.25);transform:rotate(-11deg)}
.hx-x:after{transform:rotate(11deg)}
.hx-x b{position:absolute;right:-6px;top:-16px;white-space:nowrap;padding:4px 10px;border:2px solid #e8473a;border-radius:6px;color:#ff6b5e;font-size:13px;font-weight:850;transform:rotate(6deg);background:rgba(7,8,10,.6)}
.hx-js .hx-dont .hx-x:before,.hx-js .hx-dont .hx-x:after{transform:rotate(-11deg) scaleX(0);transform-origin:left;transition:transform .4s cubic-bezier(.6,0,.3,1)}
.hx-js .hx-dont .hx-x:after{transform:rotate(11deg) scaleX(0);transform-origin:right}
.hx-js .hx-dont .hx-x b{opacity:0;transform:rotate(6deg) scale(1.35);transition:opacity .3s .75s,transform .4s .75s var(--hx-spring)}
.hx-js .hx-dont-vis>:not(.hx-x){transition:filter .4s .5s,opacity .4s .5s}
.hx-js .hx-dont.is-visible .hx-x:before{transform:rotate(-11deg) scaleX(1);transition-delay:.25s}
.hx-js .hx-dont.is-visible .hx-x:after{transform:rotate(11deg) scaleX(1);transition-delay:.5s}
.hx-js .hx-dont.is-visible .hx-x b{opacity:1;transform:rotate(6deg)}
.hx-js .hx-dont.is-visible .hx-dont-vis>:not(.hx-x){filter:saturate(.55);opacity:.82}

/* ───── 시간대별 할 일 ───── */
.hx-when{margin-top:50px;border-top:2px solid var(--hx-text)}
.hx-when>div{display:grid;grid-template-columns:200px minmax(0,1fr);gap:4vw;padding:30px 0;border-bottom:1px solid #d3c8ba}
.hx-when dt{font-size:15px;font-weight:800;color:var(--hx-rust);padding-top:6px}
.hx-when dd{margin:0}
.hx-when strong{display:block;font-size:24px;letter-spacing:-.04em}
.hx-when p{margin-top:8px;max-width:640px;font-size:16.5px;line-height:1.75;color:#4f4a45}
.hx-when dl,.hx-when{margin-bottom:0}

/* ───── 그날의 시간표 ───── */
.hx-tsheet{position:relative;width:min(100%,520px);margin-inline:auto;padding:26px 24px 22px;border-radius:4px;background:#fbf8f1;color:#1b1f24;box-shadow:0 40px 80px rgba(0,0,0,.5);transform:rotate(1.2deg)}
.hx-tsheet-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;padding-bottom:10px;border-bottom:2px solid #1b1f24}
.hx-tsheet-head .hx-hand{font-size:34px;line-height:1}
.hx-tsheet-head small{font-size:12px;font-weight:800;color:#8a8178;border:1px solid #cfc5b8;border-radius:100px;padding:3px 9px}
.hx-trow{display:grid;grid-template-columns:76px minmax(0,1fr) auto;gap:10px;align-items:center;padding:12px 0;border-bottom:1px solid #e3dbcf;font-size:15px}
.hx-trow time{font-variant-numeric:tabular-nums;font-weight:800;color:#5b5550;font-size:14px}
.hx-trow span{line-height:1.4}
.hx-trow em{font-style:normal;font-size:12px;font-weight:800;color:#6b625a;background:#efe8dd;border-radius:6px;padding:4px 8px;white-space:nowrap}
.hx-trow.is-gap em{background:#fde3da;color:#a2361c}
.hx-tnote{margin:4px 6px 2px 0;text-align:right;color:#c63a28;font-size:27px;line-height:1.1;transform:rotate(-2deg)}
.hx-js .hx-trow{opacity:0;transform:translateX(-14px);animation:hxRowIn .45s var(--hx-ease) forwards}
.hx-js .hx-trow:nth-of-type(2){animation-delay:.7s}
.hx-js .hx-trow:nth-of-type(3){animation-delay:.95s}
.hx-js .hx-trow:nth-of-type(4){animation-delay:1.2s}
.hx-js .hx-trow:nth-of-type(5){animation-delay:1.45s}
.hx-js .hx-trow:nth-of-type(6){animation-delay:1.7s}
.hx-js .hx-tnote{animation:hxFade .5s 2.3s both}
@keyframes hxRowIn{to{opacity:1;transform:none}}
.hx-tsheet-foot{margin-top:12px;font-size:12px;color:#8a8178}

/* ───── 기록 목록 ───── */
.hx-sources{margin-top:50px;border-top:2px solid var(--hx-text)}
.hx-src{display:grid;grid-template-columns:240px minmax(0,1fr);gap:4vw;padding:28px 0;border-bottom:1px solid #d3c8ba}
.hx-src h3{font-size:22px;letter-spacing:-.035em}
.hx-src h3 small{display:block;margin-top:6px;font-size:13.5px;font-weight:700;color:#8a8178;letter-spacing:-.01em}
.hx-src p{font-size:16.5px;line-height:1.75;color:#4f4a45}
.hx-src p b{color:var(--hx-text)}

/* ───── 두 장면 (기록이 말해준 것) ───── */
.hx-scenes{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:54px}
.hx-scene{display:grid;grid-template-columns:120px minmax(0,1fr);gap:22px;padding:26px;border-radius:20px;background:var(--hx-ink3);border:1px solid rgba(255,255,255,.07)}
.hx-scene img{width:120px;height:160px;object-fit:cover;border-radius:10px}
.hx-scene small{font-size:13px;font-weight:800;color:#d8b7a8}
.hx-scene h3{margin-top:8px;font-size:22px;line-height:1.35;letter-spacing:-.04em}
.hx-scene p{margin-top:10px;font-size:15px;line-height:1.7;color:#b9bcc1}
.hx-scene strong{display:inline-block;margin-top:14px;font-size:20px;color:var(--hx-rust-hi);letter-spacing:-.03em}
.hx-scene a{display:inline-block;margin-top:12px;font-size:14px;font-weight:750;color:#fff;text-decoration:underline;text-underline-offset:3px}

/* ───── 조서 ───── */
.hx-doc{position:relative;width:min(100%,500px);margin-inline:auto;padding:34px 34px 28px;border-radius:3px;background:#fdfcf8;color:#1d1d1d;box-shadow:0 40px 80px rgba(0,0,0,.55);transform:rotate(-1deg)}
.hx-doc-title{text-align:center;font-size:24px;letter-spacing:.42em;padding-left:.42em}
.hx-doc-sub{margin-top:6px;text-align:center;font-size:12px;color:#777;letter-spacing:.05em}
.hx-doc-body{margin-top:22px;border-top:1px solid #333;padding-top:16px}
.hx-doc p{font-size:15.5px;line-height:1.95}
.hx-doc p+p{margin-top:2px}
.hx-doc .q{color:#1d1d1d}
.hx-doc .a{padding-left:1.6em}
.hx-strike{position:relative;white-space:nowrap}
.hx-strike:after{content:"";position:absolute;left:-2px;right:-2px;top:52%;height:2.5px;background:#d2312a;transform-origin:left}
.hx-fix{display:block;margin:-4px 0 4px 1.6em;color:#d2312a;font-size:24px;line-height:1.25;transform:rotate(-1.5deg)}
.hx-doc-blur{height:10px;margin:9px 0;border-radius:3px;background:#e7e4dc}
.hx-doc-blur.short{width:62%}
.hx-doc-sign{display:flex;justify-content:flex-end;gap:10px;align-items:baseline;margin-top:18px;font-size:14px;color:#555}
.hx-doc-sign i{display:inline-block;width:110px;border-bottom:1px solid #555}
.hx-doc-note{position:absolute;left:-12%;bottom:-8%;max-width:230px;padding:14px 16px;border-radius:4px;background:#fff6b8;color:#3a2f12;font-size:25px;line-height:1.15;box-shadow:0 14px 26px rgba(0,0,0,.3);transform:rotate(-4deg)}
.hx-js .hx-strike:after{transform:scaleX(0);animation:hxStrike .45s 1.3s cubic-bezier(.6,0,.3,1) forwards}
.hx-js .hx-fix{clip-path:inset(0 100% 0 0);animation:hxWrite 1s 1.75s cubic-bezier(.4,0,.3,1) forwards}
.hx-js .hx-doc-note{animation:hxPop .5s 2.8s var(--hx-spring) both}
@keyframes hxStrike{to{transform:scaleX(1)}}
@keyframes hxWrite{to{clip-path:inset(0 -5% 0 0)}}

/* ───── D-day ───── */
.hx-dday{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:6vw;align-items:center}
.hx-dday-box{padding:34px;border-radius:24px;background:#fff;box-shadow:0 30px 60px rgba(60,40,25,.12)}
.hx-dday-box label{display:block;font-size:15px;font-weight:800}
.hx-dday-box input{display:block;width:100%;margin-top:10px;min-height:60px;padding:12px 16px;border:2px solid #e1d8cc;border-radius:14px;background:#faf7f2;font:inherit;font-size:20px;font-weight:700;color:var(--hx-text)}
.hx-dday-box input:focus{outline:none;border-color:var(--hx-rust)}
.hx-dday-out{margin-top:26px;min-height:150px}
.hx-dday-num{font-size:clamp(64px,8vw,108px);line-height:1;font-weight:900;letter-spacing:-.05em;color:var(--hx-rust);font-variant-numeric:tabular-nums}
.hx-dday-num.is-pop{animation:hxThud .4s}
.hx-dday-msg{margin-top:12px;font-size:18px;line-height:1.65;font-weight:650}
.hx-dday-empty{font-size:16px;line-height:1.7;color:var(--hx-muted)}
.hx-dday-box .hx-btn{margin-top:20px;width:100%}

/* ───── 조사실 순서 ───── */
.hx-proc{position:relative;margin-top:56px;padding-left:46px}
.hx-proc:before,.hx-proc:after{content:"";position:absolute;left:11px;top:8px;bottom:8px;width:2px;background:rgba(255,255,255,.16)}
.hx-proc:after{background:var(--hx-rust-hi);transform-origin:top;transform:scaleY(var(--p,1))}
.hx-step{position:relative;padding:0 0 46px}
.hx-step:before{content:"";position:absolute;left:-43px;top:6px;width:18px;height:18px;border-radius:50%;background:var(--hx-ink2);border:3px solid #5a606a;transition:all .4s}
.hx-step.is-on:before{background:var(--hx-rust-hi);border-color:var(--hx-rust-hi)}
.hx-step h3{font-size:clamp(23px,2.3vw,32px);letter-spacing:-.04em}
.hx-step p{margin-top:10px;max-width:620px;font-size:17px;line-height:1.75;color:#b9bcc1}
.hx-step a{display:inline-block;margin-top:10px;font-size:14px;font-weight:750;color:#e6c2b3;text-decoration:underline;text-underline-offset:3px}
.hx-js .hx-step{opacity:.3;transition:opacity .5s}
.hx-js .hx-step.is-on{opacity:1}

/* ───── 큰 글씨 원칙 ───── */
.hx-rules{margin-top:50px}
.hx-rule{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:5vw;padding:32px 0;border-top:1px solid #d3c8ba}
.hx-rule:last-child{border-bottom:1px solid #d3c8ba}
.hx-rule h3{font-size:clamp(26px,2.8vw,40px);line-height:1.2;letter-spacing:-.045em}
.hx-rule p{font-size:17px;line-height:1.75;color:#4f4a45;padding-top:6px}

/* ───── 사건 스토리 ───── */
.hx-pcover{position:relative;width:min(100%,400px);margin-inline:auto}
.hx-pcover img{width:100%;height:auto;border-radius:16px;box-shadow:0 40px 80px rgba(0,0,0,.55)}
.hx-pcover .hx-stamp{position:absolute;right:-8%;bottom:10%;margin:0;background:rgba(253,251,247,.94);font-size:15px}
.hx-pcover .hx-stamp strong{font-size:38px}
.hx-story{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:6vw;align-items:start}
.hx-story-art{position:sticky;top:110px}
.hx-story-art img{width:100%;height:auto;border-radius:16px;box-shadow:0 30px 60px rgba(60,40,25,.2)}
.hx-beats{display:grid;gap:12px}
.hx-beat{padding:28px 0 30px;border-top:1px solid #d3c8ba}
.hx-beat small{font-size:14px;font-weight:800;color:var(--hx-rust)}
.hx-beat h3{margin-top:8px;font-size:clamp(24px,2.4vw,34px);line-height:1.3;letter-spacing:-.04em}
.hx-beat p{margin-top:12px;font-size:17px;line-height:1.8;color:#4f4a45}
.hx-beat ul{margin:14px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:8px}
.hx-beat li{padding:8px 13px;border-radius:8px;background:#fff;font-size:15px;font-weight:700}
.hx-beat.is-result{padding:34px 30px;border:0;border-radius:20px;background:var(--hx-ink);color:#fff}
.hx-beat.is-result small{color:var(--hx-rust-hi)}
.hx-beat.is-result p{color:#c9ccd1}
.hx-beat.is-result .hx-stamp{margin-top:18px;color:var(--hx-rust-hi);border-color:var(--hx-rust-hi)}
.hx-js .hx-beat[data-at]{opacity:.28;transform:translateY(16px);transition:opacity .55s,transform .6s var(--hx-ease)}
.hx-js .hx-beat[data-at].is-on{opacity:1;transform:none}
.hx-js .hx-beat .hx-stamp{opacity:0}
.hx-js .hx-beat.is-on .hx-stamp{animation:hxStamp .55s .25s var(--hx-spring) forwards}

/* ───── 비슷한 상황이라면 ───── */
.hx-asks{margin-top:46px;display:grid;gap:12px}
.hx-ask{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:4vw;padding:26px 30px;border-radius:18px;background:var(--hx-paper)}
.hx-ask h3{font-size:21px;line-height:1.45;letter-spacing:-.035em}
.hx-ask p{font-size:16px;line-height:1.75;color:#4f4a45}

/* ───── 사건 목록 ───── */
.hx-fan{position:relative;height:520px}
.hx-fan figure{position:absolute;top:0;width:58%;margin:0}
.hx-fan figure img{width:100%;height:auto;border-radius:14px;box-shadow:0 40px 80px rgba(0,0,0,.55)}
.hx-fan figure:first-child{left:2%;transform:rotate(-6deg)}
.hx-fan figure:last-child{right:2%;top:40px;transform:rotate(5deg)}
.hx-fan .hx-stamp{position:absolute;bottom:14%;right:-6%;margin:0;background:rgba(253,251,247,.95)}
.hx-fan .hx-stamp strong{font-size:30px}
.hx-js .hx-fan figure:first-child{animation:hxFanL .9s .3s var(--hx-ease) both}
.hx-js .hx-fan figure:last-child{animation:hxFanR .9s .45s var(--hx-ease) both}
.hx-js .hx-fan .hx-stamp{opacity:0;animation:hxStamp .55s var(--hx-spring) forwards}
.hx-js .hx-fan figure:first-child .hx-stamp{animation-delay:1.3s}
.hx-js .hx-fan figure:last-child .hx-stamp{animation-delay:1.6s}
@keyframes hxFanL{from{opacity:0;transform:translate(30%,20px) rotate(0)}to{opacity:1;transform:rotate(-6deg)}}
@keyframes hxFanR{from{opacity:0;transform:translate(-30%,20px) rotate(0)}to{opacity:1;transform:rotate(5deg)}}
.hx-pair{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:5vw;align-items:center;padding:60px 0;border-top:1px solid #d3c8ba}
.hx-pair:nth-child(even){grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}
.hx-pair:nth-child(even) .hx-pair-art{order:2}
.hx-pair-art img{width:100%;height:auto;border-radius:16px;box-shadow:0 30px 60px rgba(60,40,25,.2)}
.hx-pair small{font-size:14px;font-weight:800;color:var(--hx-rust)}
.hx-pair h3{margin-top:10px;font-size:clamp(28px,3vw,44px);line-height:1.2;letter-spacing:-.045em}
.hx-pair p{margin-top:16px;font-size:17px;line-height:1.8;color:#4f4a45}
.hx-pair .hx-stamp{margin-top:20px}
.hx-pair .hx-case-more{margin-top:18px}
.hx-table{width:100%;margin-top:40px;border-collapse:collapse;font-size:16px}
.hx-table th,.hx-table td{padding:18px 16px;text-align:left;vertical-align:top;border-bottom:1px solid rgba(255,255,255,.14);line-height:1.6}
.hx-table thead th{font-size:14px;color:#a7adb6;border-bottom:2px solid rgba(255,255,255,.5)}
.hx-table tbody th{width:150px;font-size:14.5px;color:#d8b7a8}
.hx-table td strong{color:var(--hx-rust-hi);font-size:18px}

/* ───── 변호사 ───── */
.hx-pportrait{position:relative;width:min(100%,460px);margin-inline:auto;align-self:end}
.hx-pportrait img{width:100%;height:auto;-webkit-mask-image:linear-gradient(to bottom,#000 80%,transparent);mask-image:linear-gradient(to bottom,#000 80%,transparent)}
.hx-phero .hx-pportrait{margin-bottom:-76px}
.hx-profile{margin-top:44px;border-top:2px solid var(--hx-text)}
.hx-profile>div{display:grid;grid-template-columns:180px minmax(0,1fr);gap:3vw;padding:20px 0;border-bottom:1px solid #d3c8ba;font-size:17px;line-height:1.6}
.hx-profile dt{font-weight:800;color:#8a8178;font-size:15px;padding-top:2px}
.hx-profile dd{margin:0}
.hx-profile dd small{display:block;font-size:13.5px;color:#8a8178}
.hx-profile a{text-decoration:underline;text-underline-offset:3px}

/* ───── 상담 절차·예시 ───── */
.hx-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:50px;border-top:2px solid var(--hx-text)}
.hx-flow>div{padding:26px 22px 28px 0;border-right:1px solid #d3c8ba}
.hx-flow>div+div{padding-left:22px}
.hx-flow>div:last-child{border-right:0}
.hx-flow small{font-size:13px;font-weight:800;color:var(--hx-rust)}
.hx-flow strong{display:block;margin-top:8px;font-size:21px;line-height:1.35;letter-spacing:-.035em}
.hx-flow p{margin-top:8px;font-size:15px;line-height:1.7;color:#4f4a45}
.hx-chat{width:min(100%,460px);margin-inline:auto;padding:22px 18px;border-radius:26px;background:#b2c7da}
.hx-chat-day{text-align:center;font-size:12px;color:#55657a;margin-bottom:12px}
.hx-chat .hx-bubble{margin-left:auto;font-size:15.5px;white-space:pre-line}
.hx-chat-caption{margin-top:12px;text-align:center;font-size:13px;color:var(--hx-muted)}

/* ───── 다음 글 ───── */
.hx-next{background:var(--hx-paper)}
.hx-next a{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:46px 0;border-top:1px solid #d3c8ba;color:var(--hx-text)}
.hx-next a+a{padding-top:30px}
.hx-next small{display:block;font-size:14px;font-weight:800;color:var(--hx-rust)}
.hx-next strong{display:block;margin-top:6px;font-size:clamp(26px,3vw,44px);letter-spacing:-.045em;line-height:1.2}
.hx-next i{flex:none;display:grid;place-items:center;width:64px;height:64px;border-radius:50%;background:var(--hx-text);color:#fff;font-style:normal;font-size:24px;transition:transform .35s var(--hx-ease),background .3s}
.hx-next a:hover i{transform:translateX(8px);background:var(--hx-rust)}
.hx-next a+a strong{font-size:clamp(20px,2vw,28px)}
.hx-next a+a i{width:48px;height:48px;font-size:19px;background:#fff;color:var(--hx-text);border:1px solid #d3c8ba}

/* ───── 반응형 ───── */
@media(max-width:1100px){
  .hx-scenes{grid-template-columns:1fr}
  .hx-phone-note{right:0}
  .hx-doc-note{left:-4%}
}
@media(max-width:899px){
  .hx-phero-grid{grid-template-columns:1fr;min-height:0;padding:38px 0 60px;gap:48px}
  .hx-split,.hx-dont,.hx-dday,.hx-story,.hx-rule,.hx-ask,.hx-pair,.hx-pair:nth-child(even){grid-template-columns:1fr}
  .hx-pair:nth-child(even) .hx-pair-art{order:0}
  .hx-pair-art{max-width:340px}
  .hx-dont{gap:26px}
  .hx-dont-vis{justify-self:start;margin-left:14px}
  .hx-story-art{position:relative;top:0;max-width:300px}
  .hx-flow{grid-template-columns:1fr 1fr}
  .hx-flow>div:nth-child(2){border-right:0}
  .hx-flow>div:nth-child(3){padding-left:0}
  .hx-flow>div:nth-child(n+3){border-top:1px solid #d3c8ba}
  .hx-fan{height:440px;max-width:480px;margin-inline:auto}
  .hx-phero .hx-pportrait{margin-bottom:-60px;max-width:380px}
}
@media(max-width:620px){
  .hx-phero-grid{padding:24px 0 52px}
  .hx-phero .hx-title{font-size:clamp(40px,11.4vw,54px)}
  .hx-phero .hx-lead{font-size:16px}
  .hx-s{padding:84px 0}
  .hx-s h2{font-size:clamp(32px,9vw,44px)}
  .hx-s-lead{font-size:16px}
  .hx-phone-screen{min-height:470px}
  .hx-phone-note{right:-2%;bottom:6%;max-width:180px;font-size:13px}
  .hx-memo{padding:34px 18px 22px 46px}
  .hx-memo:before{left:32px}
  .hx-memo li{font-size:25px;line-height:42px}
  .hx-memo-title{font-size:26px}
  .hx-dont{padding:34px 0}
  .hx-dont p{font-size:16px}
  .hx-bubble{font-size:15px}
  .hx-searchbar{width:min(300px,calc(100vw - 72px))}
  .hx-sheetmenu{width:min(280px,calc(100vw - 72px))}
  .hx-when>div,.hx-src,.hx-profile>div{grid-template-columns:1fr;gap:8px}
  .hx-when strong{font-size:21px}
  .hx-tsheet{padding:20px 16px 18px}
  .hx-trow{grid-template-columns:60px minmax(0,1fr);font-size:14px}
  .hx-trow em{grid-column:2;justify-self:start}
  .hx-tnote{font-size:24px}
  .hx-scene{grid-template-columns:84px minmax(0,1fr);gap:16px;padding:20px}
  .hx-scene img{width:84px;height:112px}
  .hx-doc{padding:26px 20px 22px}
  .hx-doc p{font-size:14.5px}
  .hx-doc-note{position:relative;left:auto;bottom:auto;margin:-10px 0 0 auto;max-width:220px;font-size:22px}
  .hx-dday-box{padding:22px}
  .hx-proc{padding-left:38px}
  .hx-step:before{left:-35px}
  .hx-proc:before,.hx-proc:after{left:8px}
  .hx-rule{padding:26px 0;gap:10px}
  .hx-beat.is-result{padding:26px 20px}
  .hx-ask{padding:20px}
  .hx-fan{height:360px}
  .hx-pcover .hx-stamp{right:-2%}
  .hx-pcover{width:min(100%,300px)}
  .hx-table{font-size:14.5px}
  .hx-table th,.hx-table td{padding:14px 8px}
  .hx-table tbody th{width:84px}
  .hx-flow{grid-template-columns:1fr}
  .hx-flow>div,.hx-flow>div+div{padding:20px 0;border-right:0;border-top:1px solid #d3c8ba}
  .hx-flow>div:first-child{border-top:0}
  .hx-next a{padding:34px 0}
  .hx-next i{width:52px;height:52px}
  .hx-phero .hx-pportrait{margin-bottom:-52px;max-width:300px}
}
@media(prefers-reduced-motion:reduce){
  .hx-pvis,.hx-crumb,.hx-phone-note,.hx-doc-note{animation:none}
  .hx-phone-input em{clip-path:none}
}

/* ───── 법률 가이드·FAQ (2026-10-13) ───── */
.hx-lawcard{width:min(100%,520px);margin-inline:auto;padding:26px 26px 22px;border-radius:20px;background:#f8f4ec;color:var(--hx-text);box-shadow:0 40px 80px rgba(0,0,0,.45)}
.hx-lawcard-head{display:flex;justify-content:space-between;align-items:baseline;gap:10px;flex-wrap:wrap;padding-bottom:12px;border-bottom:2px solid var(--hx-text);font-size:15px;font-weight:850}
.hx-lawcard-head span{font-size:12.5px;font-weight:700;color:#8a8178}
.hx-lawcard dl{margin:0}
.hx-lawcard dl>div{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:4px 14px;padding:13px 0;border-bottom:1px solid #ddd3c6}
.hx-lawcard dt{font-size:15px;font-weight:800;letter-spacing:-.03em;line-height:1.4}
.hx-lawcard dt small{display:block;margin-top:3px;font-size:12.5px;font-weight:700;color:#8a8178}
.hx-lawcard dd{margin:0;font-size:14.5px;line-height:1.5;color:#3f3a35}
.hx-lawcard-foot{margin-top:12px;font-size:12px;color:#8a8178}
.hx-js .hx-lawcard dl>div{opacity:0;transform:translateY(10px);animation:hxRowIn .45s var(--hx-ease) forwards}
.hx-js .hx-lawcard dl>div:nth-child(1){animation-delay:.6s}
.hx-js .hx-lawcard dl>div:nth-child(2){animation-delay:.75s}
.hx-js .hx-lawcard dl>div:nth-child(3){animation-delay:.9s}
.hx-js .hx-lawcard dl>div:nth-child(4){animation-delay:1.05s}
.hx-js .hx-lawcard dl>div:nth-child(5){animation-delay:1.2s}
.hx-guide{display:grid;grid-template-columns:minmax(0,300px) minmax(0,1fr);gap:5vw;align-items:start}
.hx-toc{position:sticky;top:100px;padding:22px;border-radius:16px;background:var(--hx-paper2)}
.hx-toc p{font-size:13px;font-weight:800;color:var(--hx-rust)}
.hx-toc ol{margin:12px 0 0;padding-left:20px;display:grid;gap:10px;font-size:14.5px;line-height:1.5}
.hx-toc a:hover{color:var(--hx-rust);text-decoration:underline;text-underline-offset:3px}
.hx-guide-body{max-width:760px}
.hx-qa{padding:0 0 44px;margin-bottom:44px;border-bottom:1px solid #d3c8ba;scroll-margin-top:96px}
.hx-qa h2{font-size:clamp(25px,2.4vw,34px);line-height:1.3;letter-spacing:-.04em;font-weight:800}
.hx-ans{margin-top:16px;padding:18px 20px;border-left:4px solid var(--hx-rust);border-radius:0 12px 12px 0;background:#fff;font-size:17.5px;line-height:1.75;font-weight:600;color:var(--hx-text)}
.hx-qa>p:not(.hx-ans){margin-top:14px;font-size:16.5px;line-height:1.8;color:#4f4a45}
.hx-qa a,.hx-guide-note a{color:var(--hx-rust);font-weight:750;text-decoration:underline;text-underline-offset:3px}
.hx-casebox{display:grid;grid-template-columns:96px minmax(0,1fr);gap:18px;align-items:center;margin-bottom:40px;padding:18px;border-radius:18px;background:var(--hx-ink);color:#fff;transition:transform .3s var(--hx-ease)}
.hx-casebox:hover{transform:translateY(-3px)}
.hx-casebox img{width:96px;height:128px;object-fit:cover;border-radius:10px}
.hx-casebox small{display:block;font-size:12.5px;font-weight:800;color:#d8b7a8}
.hx-casebox strong{display:block;margin-top:6px;font-size:19px;line-height:1.35;letter-spacing:-.035em}
.hx-casebox em{display:inline-block;margin-top:10px;font-style:normal;font-size:16px;font-weight:850;color:var(--hx-rust-hi)}
.hx-guide-note{padding:20px 22px;border-radius:14px;background:var(--hx-paper2);font-size:13.5px;line-height:1.7;color:#6b645d}
.hx-guide-note p+p{margin-top:6px}
.hx-gcards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:34px}
.hx-gcards.is-wide{grid-template-columns:repeat(3,minmax(0,1fr));margin:24px 0 64px}
.hx-gcards a{display:grid;align-content:start;gap:8px;min-height:170px;padding:22px 20px;border-radius:18px;background:var(--hx-paper);color:var(--hx-text);transition:background .3s,color .3s,transform .35s var(--hx-ease)}
.hx-s.is-paper .hx-gcards a{background:#fff}
.hx-gcards a:hover{background:var(--hx-ink);color:#fff;transform:translateY(-4px)}
.hx-gcards small{font-size:12.5px;font-weight:800;color:var(--hx-rust)}
.hx-gcards a:hover small{color:var(--hx-rust-hi)}
.hx-gcards strong{font-size:21px;letter-spacing:-.04em;line-height:1.3}
.hx-gcards span{font-size:14px;line-height:1.6;color:var(--hx-muted)}
.hx-gcards a:hover span{color:#b9bcc1}
.hx-ghead{font-size:clamp(28px,2.8vw,40px)!important;margin-top:10px}
.hx-faqhub{max-width:900px}
.hx-faqgroup{margin-bottom:60px;scroll-margin-top:96px}
.hx-faqgroup h2{font-size:clamp(24px,2.4vw,32px)!important;margin-bottom:14px}
.hx-faqgroup h2 a:hover{color:var(--hx-rust)}
.hx-faqhub .hx-faq p a{color:var(--hx-rust);font-weight:750;text-decoration:underline;text-underline-offset:3px}
.hx-jump{display:flex;flex-wrap:wrap;gap:8px;max-width:520px;margin-inline:auto}
.hx-jump a{padding:10px 14px;border-radius:100px;border:1px solid rgba(255,255,255,.22);font-size:14px;font-weight:700;color:#e3e4e6;transition:background .2s,color .2s}
.hx-jump a:hover{background:#fff;color:var(--hx-text)}
@media(max-width:1100px){.hx-gcards{grid-template-columns:1fr 1fr}.hx-gcards.is-wide{grid-template-columns:1fr 1fr}}
@media(max-width:899px){.hx-guide{grid-template-columns:1fr}.hx-toc{position:relative;top:0}}
@media(max-width:620px){
  .hx-lawcard{padding:20px 16px 16px}
  .hx-lawcard dl>div{grid-template-columns:1fr}
  .hx-ans{font-size:16px;padding:15px 16px}
  .hx-qa>p:not(.hx-ans){font-size:15.5px}
  .hx-gcards,.hx-gcards.is-wide{grid-template-columns:1fr}
  .hx-gcards a{min-height:0}
  .hx-casebox{grid-template-columns:70px minmax(0,1fr);gap:14px}
  .hx-casebox img{width:70px;height:94px}
  .hx-jump a{font-size:13px;padding:8px 12px}
}
