/* ============================================================
   한성협 상담 상세페이지 (긴 상세페이지형, 남색+골드)
   프드프처럼 "장면 패널"을 20+장 쌓는 구조
   ============================================================ */
:root{
  --navy:#0e1a2b; --navy2:#16273d; --ink:#1a1f27; --gray:#5b6673;
  --gold:#c6a15b; --gold2:#b08b45; --gold-l:#e7ce9a; --gold-soft:#f2e6cc;
  --cream:#f7f3ec; --line:#e7e2d8; --red:#d6483b;
  --sans:"Pretendard",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;scroll-padding-top:64px}
body{font-family:var(--sans);color:var(--ink);background:#070d15;line-height:1.62;-webkit-font-smoothing:antialiased;word-break:keep-all}
img{max-width:100%;display:block}
/* 상세페이지 컬럼 (모바일폭 기준, 프드프 동일) */
.lp{max-width:720px;margin:0 auto;background:var(--cream);overflow:hidden}
.center{text-align:center}
.hl{color:var(--gold)}
.hl-w{color:#fff}
.mk{background:linear-gradient(transparent 58%, rgba(198,161,91,.55) 58%);padding:0 3px}
b{font-weight:800}

/* 버튼 */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;text-decoration:none;font-weight:800;border-radius:12px;padding:17px 30px;font-size:17px;cursor:pointer;border:none;transition:transform .15s,filter .15s;line-height:1.25}
.btn-cta{background:linear-gradient(135deg,var(--red),#bf3b2f);color:#fff;box-shadow:0 10px 24px rgba(214,72,59,.35)}
.btn-cta:hover{transform:translateY(-2px);filter:brightness(1.05)}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:var(--navy)}
.btn-ghost{background:transparent;color:#fff;border:1.5px solid rgba(255,255,255,.6)}
.btn-ghost:hover{background:#fff;color:var(--navy)}
.btn-full{display:flex;width:100%;max-width:440px;margin-left:auto;margin-right:auto}
.btn-lg{padding:19px 34px;font-size:18px}

/* 헤더 */
.nav{position:sticky;top:0;z-index:100;background:rgba(14,26,43,.96);backdrop-filter:blur(8px);border-bottom:1px solid rgba(255,255,255,.08)}
.nav-in{max-width:720px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:60px;padding:0 20px}
.nav .lg{display:flex;flex-direction:column;text-decoration:none;color:#fff;line-height:1.1}
.nav .lg b{font-size:19px}
.nav .lg span{font-size:10px;color:#9fb0c4}
.nav .btn{padding:9px 16px;font-size:13px}

/* 패널 공통 */
.p{padding:62px 28px;position:relative}
.p.navy{background:var(--navy);color:#fff}
.p.navy2{background:var(--navy2);color:#fff}
.p.cream{background:var(--cream)}
.p.white{background:#fff}
.p.gold{background:linear-gradient(135deg,#d9b978,#c6a15b);color:var(--navy)}
.p.tight{padding:44px 28px}
.eyebrow{font-weight:800;font-size:14px;letter-spacing:.6px;color:var(--gold2);margin-bottom:14px;text-align:center}
.navy .eyebrow,.navy2 .eyebrow,.gold .eyebrow{color:var(--gold-l)}
.gold .eyebrow{color:var(--navy)}
.big{font-size:32px;font-weight:800;line-height:1.32;letter-spacing:-1.2px;text-align:center}
.mid{font-size:24px;font-weight:800;line-height:1.4;letter-spacing:-.6px;text-align:center}
.lead{font-size:16.5px;line-height:1.75;text-align:center;margin-top:16px;color:inherit}
.navy .lead,.navy2 .lead{color:#cdd6e1}
.cream .lead,.white .lead{color:#4c545e}
.emoji{font-size:52px;line-height:1;text-align:center;margin-bottom:12px}
.arrow{color:var(--gold);font-size:34px;text-align:center;margin:22px 0 0}
.navy .arrow{color:var(--gold-l)}

/* 초대형 숫자 */
.huge{font-size:56px;font-weight:900;letter-spacing:-2px;text-align:center;line-height:1.05}
.navy .huge,.navy2 .huge{color:var(--gold-l)}
.huge-sub{text-align:center;font-size:16px;margin-top:6px}

/* 인용 */
.quote{font-size:24px;font-weight:800;line-height:1.5;text-align:center;letter-spacing:-.5px}
.qlist{max-width:520px;margin:0 auto;display:flex;flex-direction:column;gap:12px}
.qcard{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:16px 18px;font-size:16px;font-weight:600}
.cream .qcard,.white .qcard{background:#fff;border-color:var(--line);box-shadow:0 6px 16px rgba(14,26,43,.06);color:var(--ink)}

/* 체크리스트 */
.checks{max-width:520px;margin:22px auto 0;display:flex;flex-direction:column;gap:12px}
.checks li{list-style:none;background:#fff;border:1px solid var(--line);border-radius:12px;padding:15px 18px 15px 46px;position:relative;font-size:16px;box-shadow:0 6px 16px rgba(14,26,43,.05)}
.checks li::before{content:"✓";position:absolute;left:16px;top:15px;width:22px;height:22px;background:var(--gold);color:#fff;border-radius:50%;display:grid;place-items:center;font-size:13px;font-weight:800}

/* X-out */
.xrow{display:flex;justify-content:center;gap:14px;margin:26px 0 8px}
.xitem{position:relative;background:#fff;border-radius:16px;width:100px;height:100px;display:grid;place-items:center;font-size:40px;color:#333}
.xitem .l{position:absolute;bottom:-26px;left:0;right:0;text-align:center;font-size:13px;font-weight:700;color:#fff}
.navy2 .xitem .l,.navy .xitem .l{color:#fff}
.xitem::after{content:"✕";position:absolute;inset:0;display:grid;place-items:center;color:#e23b2e;font-size:82px;font-weight:900;opacity:.92}

/* 통계 타일 */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;max-width:560px;margin:26px auto 0}
.tile{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:14px;padding:22px 10px;text-align:center}
.cream .tile,.white .tile{background:#fff;border-color:var(--line)}
.tile .n{font-size:26px;font-weight:900;color:var(--gold-l)}
.cream .tile .n,.white .tile .n{color:var(--gold2)}
.tile .t{font-size:13px;margin-top:6px;color:#b6c2d1}
.cream .tile .t,.white .tile .t{color:var(--gray)}

/* Before/After 비교 */
.cmp{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:560px;margin:26px auto 0}
.cmp .col{border-radius:16px;padding:24px 20px}
.cmp .before{background:#eceae4;border:1px solid var(--line)}
.cmp .after{background:var(--navy);color:#fff}
.cmp h5{font-size:15px;font-weight:800;margin-bottom:12px;text-align:center}
.cmp .before h5{color:var(--gray)}
.cmp .after h5{color:var(--gold-l)}
.cmp ul{list-style:none;display:flex;flex-direction:column;gap:9px;font-size:14px}
.cmp .before li{color:#6b7078}
.cmp .after li{color:#eaf0f7}

/* 대표 자격 리스트 */
.creds{max-width:520px;margin:24px auto 0;display:flex;flex-direction:column;gap:14px}
.creds li{list-style:none;display:flex;gap:14px;align-items:flex-start;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.12);border-radius:12px;padding:16px 18px}
.creds .ic{font-size:24px;flex-shrink:0}
.creds b{display:block;font-size:16px;margin-bottom:3px}
.creds p{font-size:14px;color:#b6c2d1}

/* 단계 */
.steps{max-width:540px;margin:24px auto 0;display:flex;flex-direction:column;gap:14px}
.steps .s{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 6px 16px rgba(14,26,43,.05);overflow:hidden}
.steps .s .h{display:flex;align-items:center;gap:12px;background:var(--navy);color:#fff;padding:14px 18px;font-weight:800;font-size:16px}
.steps .s .h .no{background:var(--gold);color:var(--navy);width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;flex-shrink:0}
.steps .s .b{padding:14px 18px;font-size:15px;color:#4c545e}
.steps .s .b b{color:var(--ink)}

/* 인증 카드 */
.certs{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;max-width:640px;margin:26px auto 0}
.cert{background:var(--navy);border-radius:14px;padding:16px 16px 18px;text-align:center;box-shadow:0 12px 26px rgba(0,0,0,.16)}
.cert .tg{display:inline-block;background:var(--gold);color:var(--navy);font-weight:800;font-size:12px;padding:5px 13px;border-radius:999px;margin-bottom:12px}
.cert .fr{background:#fff;border-radius:9px;padding:6px;height:220px;display:grid;place-items:center;overflow:hidden}
.cert .fr img{max-width:100%;max-height:100%;width:auto;height:auto;border-radius:4px}
.cert .cap{color:#eef2f7;font-weight:700;font-size:13.5px;margin-top:12px;line-height:1.45}
.cert .cap b{color:var(--gold-l);font-size:17px;display:block;margin-top:2px}

/* 추천/비추천 */
.rec{display:grid;grid-template-columns:1fr 1fr;gap:16px;max-width:600px;margin:24px auto 0}
.rec .box{border-radius:16px;padding:22px 20px}
.rec .y{background:#eef4ea;border:1px solid #cfe2c6}
.rec .n{background:#f7f1ee;border:1px solid #ecd8d1}
.rec h5{font-size:16px;margin-bottom:14px}
.rec ul{list-style:none;display:flex;flex-direction:column;gap:10px}
.rec li{padding-left:24px;position:relative;font-size:14px;line-height:1.5}
.rec .y li::before{content:"✓";position:absolute;left:0;color:#3f6e2e;font-weight:800}
.rec .n li::before{content:"✕";position:absolute;left:0;color:#c0563f;font-weight:800}

/* 후기 마퀴 */
.marquee{display:flex;gap:16px;overflow:hidden;width:100%;padding:6px 0;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.mtrack{display:flex;gap:16px;flex:0 0 auto;animation:mq 60s linear infinite}
.marquee:hover .mtrack{animation-play-state:paused}
@keyframes mq{from{transform:translateX(0)}to{transform:translateX(calc(-100% - 16px))}}
@media (prefers-reduced-motion:reduce){.marquee{overflow-x:auto}.mtrack{animation:none}.mtrack[aria-hidden="true"]{display:none}}
.rev{flex:0 0 240px;width:240px;text-decoration:none;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:20px 18px;display:flex;flex-direction:column;gap:10px}
.rev .a{align-self:flex-start;background:var(--gold);color:var(--navy);font-weight:800;font-size:13px;padding:5px 12px;border-radius:999px}
.rev .t{color:#fff;font-size:15px;font-weight:700;line-height:1.45;flex-grow:1}
.rev .m{color:var(--gold-l);font-size:12px;font-weight:600}

/* FAQ */
.faq{max-width:540px;margin:22px auto 0;display:flex;flex-direction:column;gap:10px}
.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:2px 20px}
.faq summary{cursor:pointer;font-weight:700;font-size:16px;padding:16px 0;list-style:none;display:flex;justify-content:space-between;gap:10px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";color:var(--gold2);font-size:22px}
.faq details[open] summary::after{content:"−"}
.faq p{padding:0 0 16px;color:var(--gray);font-size:14px;line-height:1.6}

/* 신청 안내 */
.pay{max-width:460px;margin:20px auto 0;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);border-radius:12px;padding:18px 20px;font-size:14px;line-height:1.7;text-align:left;color:#cdd6e1}
.pay b{color:var(--gold-l)}

/* 이미지 후기(액자) 하나짜리 강조 */
.shot{max-width:300px;margin:22px auto 0;background:#fff;border-radius:14px;padding:10px;box-shadow:0 14px 30px rgba(0,0,0,.2)}
.shot img{border-radius:8px;width:100%}

/* 푸터 */
.foot{background:#070d15;color:#8794a3;padding:40px 28px 90px;text-align:center;font-size:13px}
.foot b{color:#fff;display:block;font-size:15px;margin-bottom:8px}
.foot a{color:var(--gold-l);text-decoration:none}

/* 하단 고정 CTA */
.sticky{position:fixed;bottom:0;left:0;right:0;z-index:120;max-width:720px;margin:0 auto;background:linear-gradient(135deg,var(--red),#bf3b2f);color:#fff;text-align:center;padding:16px;font-weight:800;font-size:17px;text-decoration:none;box-shadow:0 -6px 18px rgba(0,0,0,.2)}

/* 스크롤 등장 (하나씩) */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s ease, transform .7s ease}
.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none}}

/* 현장+금액 스토리 패널 */
.story{max-width:440px;margin:0 auto}
.story .img{border-radius:18px;overflow:hidden;box-shadow:0 20px 44px rgba(0,0,0,.28);background:#fff;display:grid;place-items:center}
.story .img img{max-width:100%;max-height:62vh;width:auto;height:auto;display:block}
.subhead{max-width:440px;margin:0 auto;text-align:center;font-weight:800;font-size:18px;color:var(--gold-l);padding:6px 0 4px;letter-spacing:.3px}
.navy .subhead,.navy2 .subhead{color:var(--gold-l)}
.cream .subhead{color:var(--gold2)}
.story .amt{font-size:42px;font-weight:900;text-align:center;margin-top:24px;letter-spacing:-1.5px;line-height:1.1;color:var(--gold-l)}
.cream .story .amt{color:var(--gold2)}
.story .cap{text-align:center;font-size:16px;margin-top:8px}
.navy .story .cap,.navy2 .story .cap{color:#cdd6e1}
.cream .story .cap{color:var(--gray)}
.story .lnk{display:block;text-align:center;margin-top:14px;color:var(--gold);font-weight:700;font-size:13px;text-decoration:none}
.cream .story .lnk{color:var(--gold2)}

/* 매출 계산 인증 보조 스트립 */
.calc-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;max-width:560px;margin:22px auto 0}
.calc-strip .c{background:#fff;border-radius:8px;padding:5px;height:120px;display:grid;place-items:center;overflow:hidden;box-shadow:0 6px 14px rgba(0,0,0,.12)}
.calc-strip .c img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}

@media (max-width:520px){
  .calc-strip{grid-template-columns:repeat(3,1fr)}
  .story .amt{font-size:34px}
  .big{font-size:26px}.mid{font-size:20px}.huge{font-size:44px}
  .certs{grid-template-columns:repeat(2,1fr)}
  .cmp{grid-template-columns:1fr}
  .rec{grid-template-columns:1fr}
  .xitem{width:88px;height:88px;font-size:34px}
  .xitem::after{font-size:70px}
}
