/* 참고: storeinterior.jibsarepair.com 디자인 시스템 기반 — 색상만 Navy+Gold로 교체 */

@font-face{font-family:'Paperlogy';src:url('https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-3Light.woff2') format('woff2');font-weight:300;font-style:normal;font-display:swap}
@font-face{font-family:'Paperlogy';src:url('https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-4Regular.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Paperlogy';src:url('https://cdn.jsdelivr.net/gh/fonts-archive/Paperlogy/Paperlogy-5Medium.woff2') format('woff2');font-weight:500;font-style:normal;font-display:swap}

:root{
  --concrete:#f4f0e8;
  --paper:#fefcf8;
  --ink:#2e2a22;
  --ink-2:#1e1a14;
  --redline:#a07840;
  --redline-dark:#8a6434;
  --redline-rgb:160,120,64;
  --acc-soft:#f0e8d8;
  --steel:#6a6258;
  --sub:#6a6258;
  --line:#ddd5c5;
  --line-dark:rgba(255,255,255,.14);
  --text-on-light:#1a1a18;
  --text-on-dark:#ffffff;
  --ff:'Paperlogy','Pretendard Variable',-apple-system,BlinkMacSystemFont,'Malgun Gothic',sans-serif;
  --ff-display:'Paperlogy','Pretendard Variable',-apple-system,sans-serif;
  --ff-mono:ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --max:1220px;
  --radius:8px;
  --radius-sm:6px;
  --radius-pill:999px;
  --shadow-sm:0 2px 4px rgba(46,42,34,.08),0 1px 3px rgba(46,42,34,.1);
  --shadow-md:0 8px 20px rgba(46,42,34,.12),0 3px 6px rgba(46,42,34,.08);
  --shadow-lg:0 24px 48px -12px rgba(46,42,34,.22),0 10px 20px rgba(46,42,34,.1);
}

*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body,p,h1,h2,h3,h4,h5,h6,li,td,th,a,span,div,button{word-break:keep-all;overflow-wrap:break-word}
body{
  font-family:var(--ff);font-weight:400;color:var(--text-on-light);
  background:var(--concrete);overflow-x:hidden;
  -webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;
  line-height:1.65;counter-reset:sec;
}
img{max-width:100%;height:auto;display:block}
a{text-decoration:none;color:inherit}
ul,ol{list-style:none}
button{font-family:var(--ff);border:none;background:none;cursor:pointer}
table{border-collapse:collapse;width:100%}
h1,h2,h3,h4{font-weight:500;letter-spacing:-.01em;line-height:1.25}
:focus-visible{outline:2px solid var(--redline);outline-offset:3px}

.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}

/* ── 버튼 ── */
.btn{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;
  padding:15px 30px;border-radius:var(--radius-pill);
  font-weight:400;font-size:.95rem;letter-spacing:-.01em;
  transition:background .18s,color .18s,border-color .18s,transform .15s,box-shadow .18s;
  box-shadow:var(--shadow-sm);
}
.btn-gold{background:var(--redline);color:#fff}
.btn-outline{background:transparent;color:var(--text-on-dark);border:1px solid rgba(255,255,255,.32);box-shadow:none}
.btn-outline-dark{background:#fff;color:var(--ink);border:1.5px solid var(--ink)}
@media(hover:hover) and (pointer:fine){
  .btn-gold:hover{background:var(--redline-dark);transform:translateY(-2px);box-shadow:var(--shadow-md)}
  .btn-outline:hover{border-color:rgba(255,255,255,.6);background:rgba(255,255,255,.08);transform:translateY(-2px)}
  .btn-outline-dark:hover{border-color:var(--redline);color:var(--redline);transform:translateY(-2px);box-shadow:var(--shadow-md)}
}

/* ── 헤더 ── */
.hdr{position:sticky;top:0;z-index:100;background:var(--ink);border-bottom:1px solid var(--line-dark)}
.hdr-inner{max-width:var(--max);margin:0 auto;padding:16px 24px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.hdr-logo{font-weight:500;font-size:1.05rem;color:var(--text-on-dark);letter-spacing:-.01em;display:inline-flex;align-items:center;gap:9px}
.hdr-logo::before{content:'';width:8px;height:8px;background:var(--redline);flex-shrink:0}
.hdr-nav{display:flex;gap:28px}
.hdr-nav a{color:rgba(255,255,255,.72);font-size:.88rem;font-weight:500;position:relative}
.hdr-nav a::after{
  content:'';position:absolute;left:0;bottom:-4px;width:100%;height:2px;
  background:var(--redline);transform:scaleX(0);transform-origin:left;
  transition:transform .25s cubic-bezier(.16,1,.3,1);
}
@media(hover:hover) and (pointer:fine){
  .hdr-nav a:hover{color:var(--text-on-dark)}
  .hdr-nav a:hover::after{transform:scaleX(1)}
}
.hdr-cta{background:var(--redline);color:#fff;padding:10px 20px;border-radius:var(--radius-pill);font-weight:500;font-size:.85rem;transition:background .18s}
.hdr-cta:hover{background:var(--redline-dark)}
.hdr-burger{display:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:44px;height:44px;flex-shrink:0}
.hdr-burger span{display:block;width:24px;height:2px;background:var(--text-on-dark)}
#mob-nav{display:none}

@media(max-width:768px){
  .hdr-nav{display:none}
  .hdr-burger{display:flex}
  #mob-nav{
    position:fixed;top:0;right:-100%;width:78%;max-width:320px;height:100vh;
    background:var(--ink);z-index:200;padding:28px 24px;
    transition:right .3s ease;overflow-y:auto;
  }
  #mob-nav.active{right:0}
  #mob-nav a{display:block;color:var(--text-on-dark);font-weight:500;padding:14px 0;border-bottom:1px solid var(--line-dark)}
  #mob-nav-close{color:var(--text-on-dark);font-size:1.6rem;display:inline-flex;width:44px;height:44px;align-items:center;justify-content:center}
  body{padding-bottom:64px}
}

/* ── 히어로 ── */
.hero{position:relative;min-height:82vh;display:flex;align-items:center;overflow:hidden}
.hero-slides{position:absolute;inset:0;z-index:0}
.hero-slide{position:absolute;inset:0;opacity:0;animation:hero-fade 15s infinite}
.hero-slide:nth-child(1){animation-delay:0s}
.hero-slide:nth-child(2){animation-delay:5s}
.hero-slide:nth-child(3){animation-delay:10s}
@keyframes hero-fade{0%{opacity:0}4%{opacity:1}30%{opacity:1}36%{opacity:0}100%{opacity:0}}
@keyframes hero-drift{0%{transform:scale(1.02) translate(0,0)}100%{transform:scale(1.08) translate(-1%,-1%)}}
.hero-drift-layer{position:absolute;inset:0;background-size:cover;background-position:center;animation:hero-drift 15s ease-in-out infinite alternate}
.hero-overlay{
  position:absolute;inset:0;z-index:1;
  background:linear-gradient(135deg,rgba(20,16,10,.75) 0%,rgba(20,16,10,.45) 60%,rgba(20,16,10,.2) 100%);
}
.hero-content{position:relative;z-index:2;padding:100px 0 80px;max-width:760px}
.hero-badge{
  display:inline-flex;align-items:center;gap:8px;
  font-weight:500;color:rgba(255,255,255,.55);
  font-size:.8rem;letter-spacing:.08em;margin-bottom:20px;text-transform:uppercase;
}
.hero-badge::before{content:'';width:18px;height:1px;background:var(--redline)}
h1.hero-title{
  font-family:var(--ff-display);color:#fff;
  font-size:clamp(2.8rem,6.5vw,5.4rem);font-weight:300;line-height:1.08;
  margin-bottom:20px;letter-spacing:-.01em;
}
.hero-tagline{color:rgba(255,255,255,.85);font-size:1.15rem;font-weight:400;line-height:1.6;margin-bottom:12px}
.hero-desc{color:rgba(255,255,255,.58);font-size:.95rem;margin-bottom:32px;max-width:480px;line-height:1.75}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
@media(max-width:768px){
  .hero{min-height:65vh}
  .hero-content{padding:80px 0 60px}
  h1.hero-title{font-size:2.5rem}
}

/* ── 섹션 공통 ── */
section{padding:80px 0}
.sec-tight{padding:48px 0}
.sec-dark{background:var(--ink);color:var(--text-on-dark)}
.sec-cream{background:var(--paper)}
.sec-head{
  max-width:680px;margin:0 0 44px;position:relative;
  padding-left:84px;min-height:64px;
}
.sec-head::before{
  counter-increment:sec;
  content:counter(sec,decimal-leading-zero);
  position:absolute;left:0;top:-.28em;
  font-family:var(--ff-display);font-size:3.4rem;line-height:1;
  color:rgba(26,26,24,.09);
}
.sec-dark .sec-head::before{color:rgba(255,255,255,.08)}
.sec-eyebrow{
  font-weight:500;color:var(--redline);font-size:.8rem;
  letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase;
}
.sec-title{font-family:var(--ff-display);font-size:clamp(1.5rem,2.6vw,2.05rem);font-weight:300;line-height:1.35;letter-spacing:-.015em}
.sec-desc{color:var(--steel);margin-top:12px;font-size:.98rem;max-width:52ch}
.sec-dark .sec-desc{color:rgba(255,255,255,.7)}
.sec-lead{color:var(--steel);margin-top:16px;font-size:.98rem;line-height:1.7;max-width:60ch}
.sec-dark .sec-lead{color:rgba(255,255,255,.68)}

@media(max-width:600px){
  .sec-head{padding-left:0}
  .sec-head::before{position:static;display:block;font-size:2.2rem;margin-bottom:6px;color:rgba(26,26,24,.14)}
  .sec-dark .sec-head::before{color:rgba(255,255,255,.14)}
}

/* ── Trust bar ── */
.trust-bar{background:var(--paper);border-bottom:1px solid var(--line);padding:40px 0}
.dp-stat3{display:grid;grid-template-columns:repeat(4,1fr);gap:32px;text-align:center;align-items:center}
.stat-num{font-family:var(--ff-mono);font-size:2.1rem;font-weight:500;color:var(--redline)}
.trust-bar .stat-num{font-family:'궁서체','Gungsuh','GungSeo',serif}
.stat-label{font-size:.86rem;color:var(--steel);margin-top:6px}
@media(max-width:640px){.dp-stat3{grid-template-columns:repeat(2,1fr);gap:20px}}

/* ── Statement (G-6 정의 섹션) ── */
.stmt-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:64px;align-items:center;padding-top:20px}
.stmt-quote{
  font-family:var(--ff-display);font-weight:300;color:var(--ink);
  font-size:clamp(1.5rem,2.9vw,2.35rem);line-height:1.42;margin:18px 0 22px;
}
.sec-dark .stmt-quote{color:#fff}
.stmt-sub{color:var(--steel);font-size:.98rem;max-width:50ch}
.sec-dark .stmt-sub{color:rgba(255,255,255,.72)}
.stmt-img{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-lg)}
.stmt-img img{aspect-ratio:3/4;object-fit:cover;width:100%}
.stmt-img-cap{
  position:absolute;left:0;bottom:0;background:var(--ink);color:#fff;
  font-size:.78rem;font-weight:500;padding:9px 16px;
}
.biz-info{background:rgba(255,255,255,.06);border:1px solid var(--line-dark);border-radius:var(--radius);padding:24px 28px;margin-top:28px}
.biz-info dt{color:rgba(255,255,255,.5);font-size:.78rem}
.biz-info dd{color:rgba(255,255,255,.9);font-size:.88rem;margin-bottom:10px;font-weight:500}
.biz-info a{color:var(--redline)}
@media(max-width:900px){
  .stmt-grid{grid-template-columns:1fr;gap:28px}
  .stmt-img{max-width:340px}
}

/* ── 서비스 인덱스 리스트 ── */
.idx-list{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}
.idx-row{border:1px solid var(--line);border-radius:var(--radius);background:var(--paper);position:relative;overflow:hidden}
.idx-row::before{
  content:'';position:absolute;left:0;top:0;bottom:0;width:3px;
  background:var(--redline);transform:scaleY(0);transform-origin:center;
  transition:transform .25s ease;
}
.idx-row a{
  display:grid;grid-template-columns:44px 1fr 90px;gap:18px;align-items:center;
  padding:22px 20px;transition:background .16s;
}
.idx-num{font-family:var(--ff-mono);font-size:1.35rem;color:var(--redline);font-weight:500}
.idx-cat{display:block;color:var(--steel);font-size:.78rem;font-weight:500;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px}
.idx-title{display:block;font-size:clamp(1.05rem,1.6vw,1.3rem);font-weight:500;letter-spacing:-.01em;transition:color .16s}
.idx-thumb{border-radius:var(--radius-sm);overflow:hidden}
.idx-thumb img{width:100%;height:64px;object-fit:cover}
.idx-row:last-child:nth-child(odd){grid-column:1/-1}
@media(hover:hover) and (pointer:fine){
  .idx-row a:hover{background:rgba(var(--redline-rgb),.05)}
  .idx-row a:hover .idx-title{color:var(--redline)}
  .idx-row:hover::before{transform:scaleY(1)}
}
@media(max-width:640px){
  .idx-list{grid-template-columns:1fr}
  .idx-row a{grid-template-columns:36px 1fr;padding:18px 16px}
  .idx-thumb{display:none}
}

/* ── 갤러리 그리드 (시공사례) ── */
.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:36px;counter-reset:shot}
.gallery-item{background:var(--paper);counter-increment:shot;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow-sm);transition:box-shadow .18s,transform .18s}
@media(hover:hover) and (pointer:fine){.gallery-item:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}}
.gallery-item img{aspect-ratio:4/3;object-fit:cover;width:100%}
.gallery-cap{padding:12px 14px;font-size:.84rem;color:var(--steel);font-weight:500}
.gallery-cap::before{content:counter(shot,decimal-leading-zero)' — ';font-family:var(--ff-mono);color:var(--redline);font-weight:500}
.gallery-cap a{color:inherit;transition:color .16s}
@media(hover:hover) and (pointer:fine){.gallery-cap a:hover{color:var(--redline)}}
@media(max-width:768px){.gallery-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.gallery-grid{grid-template-columns:1fr}}

/* ── 프로세스 ── */
.proc-list{
  display:flex;list-style:none;margin:0;padding:0;
  border-top:1px solid var(--line-dark);margin-top:48px;
}
.proc-step{
  flex:1;position:relative;text-align:left;
  padding:0 28px;
}
.proc-step:first-child{padding-left:0}
.proc-step:not(:last-child){border-right:1px solid var(--line-dark)}
.proc-step::before{
  content:'';position:absolute;left:0;top:-1px;width:34px;height:2px;background:var(--redline);
}
.proc-num{
  display:block;font-family:var(--ff-mono);color:var(--redline);
  font-size:.78rem;font-weight:500;letter-spacing:.08em;margin:22px 0 12px;
}
.proc-step h3{font-size:1.05rem;font-weight:500;color:#fff;letter-spacing:-.01em;line-height:1.5;padding-right:8px}
.proc-step p{font-size:.9rem;color:rgba(255,255,255,.62);margin-top:8px;line-height:1.65}
@media(max-width:768px){
  .proc-list{flex-direction:column;border-top:none;border-left:1px solid var(--line-dark);margin-left:12px;padding-left:28px}
  .proc-step{padding:0 0 28px;border-right:none}
  .proc-step::before{left:-29px;top:0;width:2px;height:34px}
  .proc-step:last-child{padding-bottom:0}
}

/* ── FAQ ── */
.faq-item{border-bottom:1px solid var(--line)}
.faq-item:first-child{border-top:1px solid var(--line)}
.faq-q-btn{
  display:flex;justify-content:space-between;align-items:center;
  padding:20px 4px;font-weight:500;cursor:pointer;width:100%;text-align:left;
  background:none;border:none;font-family:var(--ff);font-size:1rem;color:var(--text-on-light);
}
.sec-dark .faq-q-btn{color:#fff}
.faq-plus{font-family:var(--ff-mono);color:var(--redline);font-size:1.2rem;transition:transform .25s;flex-shrink:0;margin-left:16px}
.faq-item.active .faq-plus{transform:rotate(45deg)}
.faq-a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--steel);font-size:.94rem;padding:0 4px}
.faq-item.active .faq-a{padding-bottom:20px}

/* ── CTA 블록 ── */
.cta-block{
  background:var(--ink);padding:64px 32px;text-align:center;
  border-radius:var(--radius);border-top:3px solid var(--redline);
  box-shadow:var(--shadow-lg);
}
.cta-block h3{color:#fff;font-size:clamp(1.5rem,3vw,2rem);font-weight:300;margin-bottom:14px;letter-spacing:-.015em;line-height:1.35;font-family:var(--ff-display)}
.cta-block p{color:rgba(255,255,255,.72);margin-bottom:30px;line-height:1.6}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}

/* ── 카드형 내부링크 ── */
.link-card{display:block;background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:box-shadow .18s,transform .18s}
@media(hover:hover) and (pointer:fine){.link-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}}
.link-card img{aspect-ratio:16/10;object-fit:cover;width:100%}
.link-card .lc-body{padding:18px 20px}
.link-card .lc-eyebrow{color:var(--redline);font-size:.76rem;font-weight:500;margin-bottom:6px;text-transform:uppercase;letter-spacing:.04em}
.link-card h4{font-size:1.02rem;font-weight:500;letter-spacing:-.01em}

/* ── 카드 (일반) ── */
.card{background:var(--paper);border:1px solid var(--line);border-radius:var(--radius);padding:34px 30px;transition:box-shadow .18s,transform .18s}
@media(hover:hover) and (pointer:fine){.card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}}
.card h3{font-size:1.08rem;font-weight:500;margin-bottom:10px}
.card p{color:var(--steel);font-size:.93rem}
.card-icon{font-family:var(--ff-mono);font-size:.92rem;font-weight:500;color:var(--redline);display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;background:var(--acc-soft);border-radius:var(--radius-sm);margin-bottom:18px}

/* ── 비교표 ── */
.cmp-table{width:100%;border-collapse:collapse;margin-top:8px}
.cmp-table th,.cmp-table td{padding:14px 16px;border-bottom:1px solid var(--line);text-align:left;font-size:.91rem}
.cmp-table th{background:var(--ink);color:#fff;font-weight:500;font-size:.83rem}

/* ── 체크리스트 ── */
.check-card{
  max-width:560px;
  background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--redline);
  border-radius:var(--radius);box-shadow:var(--shadow-sm);
  padding:6px 32px;
}
.check-card li{display:flex;align-items:center;gap:14px;padding:14px 0;border-bottom:1px dashed var(--line);font-size:.95rem}
.check-card li:last-child{border-bottom:none}
.check-card li::before{content:'✓';flex-shrink:0;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:5px;background:var(--redline);color:#fff;font-size:.75rem;font-weight:500}
@media(max-width:600px){.check-card{padding:4px 20px;max-width:100%}}

/* ── 그리드 헬퍼 ── */
.dp-g2{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.dp-g3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
@media(max-width:1024px){.dp-g3{grid-template-columns:repeat(2,1fr)}}
@media(max-width:768px){.dp-g2,.dp-g3{grid-template-columns:1fr}}

/* ── 푸터 ── */
.ftr{background:var(--ink);color:rgba(255,255,255,.72);padding:56px 0 28px}
.ftr-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:36px}
.ftr h5{color:#fff;font-weight:500;margin-bottom:16px;font-size:.86rem;text-transform:uppercase;letter-spacing:.05em}
.ftr a{display:block;padding:5px 0;font-size:.9rem}
@media(hover:hover) and (pointer:fine){.ftr a:hover{color:#fff}}
.ftr-biz p{font-size:.86rem;line-height:1.9}
.ftr-bottom{max-width:var(--max);margin:32px auto 0;padding:20px 24px 0;border-top:1px solid var(--line-dark);font-size:.78rem;color:rgba(255,255,255,.42);display:flex;justify-content:space-between;flex-wrap:wrap;gap:.5rem}
.ftr-bottom a:hover{color:rgba(255,255,255,.72)}
@media(max-width:768px){.ftr-grid{grid-template-columns:1fr;gap:28px}.ftr-bottom{flex-direction:column}}

/* ── 모바일 스티키 바 ── */
#mob-bar{display:none}
@media(max-width:768px){
  #mob-bar{
    display:flex;position:fixed;bottom:0;left:0;right:0;z-index:150;
    background:var(--ink);padding:10px 16px;gap:10px;
    border-top:2px solid var(--redline);
  }
  #mob-bar a{flex:1;text-align:center;padding:12px;border-radius:var(--radius);font-weight:500;font-size:.9rem}
  #mob-bar .mb-call{background:var(--redline);color:#fff}
  #mob-bar .mb-text{background:transparent;border:1px solid rgba(255,255,255,.4);color:#fff}
}

/* ── 세부페이지 공통 ── */
.sec-hero-photo{position:relative;background-size:cover;background-position:center;isolation:isolate;padding-top:150px}
.sec-hero-photo::before{content:'';position:absolute;inset:0;z-index:0;background:linear-gradient(180deg,rgba(30,45,90,.85),rgba(21,33,63,.95))}
.sec-hero-photo>.wrap{position:relative;z-index:1}
.page-head{max-width:680px;margin:0 0 44px;padding-bottom:20px}
.page-head .bc{font-size:.8rem;color:rgba(255,255,255,.5);margin-bottom:16px}
.page-head .bc a{color:rgba(255,255,255,.5)}
.page-head .bc a:hover{color:rgba(255,255,255,.85)}
h1.page-title{font-family:var(--ff-display);color:#fff;font-size:clamp(2rem,5vw,3.2rem);font-weight:300;line-height:1.1;letter-spacing:-.01em}
.page-meta{display:flex;gap:20px;margin-top:14px;flex-wrap:wrap}
.page-meta span{font-size:.82rem;color:rgba(255,255,255,.6)}
.page-meta strong{color:var(--redline)}

/* ── 상세 콘텐츠 ── */
.detail-wrap{max-width:780px;margin-inline:auto;padding:64px 0}
.detail-wrap h2{font-size:1.15rem;font-weight:500;color:var(--ink);margin:2.5rem 0 .75rem;padding-bottom:.5rem;border-bottom:2px solid var(--acc-soft)}
.detail-wrap p{font-size:.97rem;line-height:1.85;color:var(--steel);margin-bottom:1rem}
.detail-photo{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:1.5rem 0;box-shadow:var(--shadow-sm)}
.detail-photo img{width:100%;object-fit:cover}
.detail-cap{font-size:.78rem;color:var(--steel);text-align:center;padding:.6rem 1rem;border-top:1px solid var(--line)}
.detail-cap::before{font-family:var(--ff-mono);color:var(--redline);font-weight:500;margin-right:.4rem}
.summary-box{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--redline);border-radius:var(--radius);padding:24px 28px;margin:2rem 0}
.summary-box h3{font-size:.9rem;font-weight:500;color:var(--ink);margin-bottom:.75rem}
.summary-box li{font-size:.9rem;color:var(--steel);padding:.3rem 0 .3rem 1.2rem;position:relative}
.summary-box li::before{content:'–';position:absolute;left:0;color:var(--redline)}
.quote-bar{border-left:3px solid var(--redline);padding-left:24px;margin:2rem 0;position:relative}
.quote-bar::before{content:'\201C';font-size:3.2rem;line-height:1;color:var(--redline);opacity:.35;position:absolute;left:-6px;top:-18px}
.quote-bar p{font-size:.92rem;color:var(--steel);font-style:italic;line-height:1.75;margin:0}
.quote-bar cite{display:block;margin-top:.5rem;font-style:normal;font-size:.8rem;color:var(--steel)}
.related-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:1.5rem}
@media(max-width:600px){.related-row{grid-template-columns:1fr}}
.related-row:has(>.link-card:only-child){grid-template-columns:minmax(0,420px)}

/* ── 상담 페이지 ── */
.consult-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:32px}
@media(max-width:640px){.consult-steps{grid-template-columns:1fr}}
.consult-step-num{font-family:var(--ff-mono);font-size:1.8rem;color:var(--redline);margin-bottom:14px}
.guide-box{background:var(--paper);border:1px solid var(--line);border-left:3px solid var(--redline);border-radius:var(--radius);padding:24px 28px;margin-top:24px}
.guide-box h4{font-size:.95rem;font-weight:500;color:var(--ink);margin-bottom:.75rem}
.guide-box li{font-size:.9rem;color:var(--steel);padding:.3rem 0 .3rem 1.2rem;position:relative}
.guide-box li::before{content:'·';position:absolute;left:0;color:var(--redline);font-weight:900}
.consult-cta-row{display:flex;gap:14px;flex-wrap:wrap;margin-top:2.5rem}

/* ── 404 ── */
.not-found{text-align:center;padding:120px 0}
.not-found h1{font-family:var(--ff-mono);font-size:5rem;font-weight:500;color:var(--redline);line-height:1}
.not-found p{font-size:1.1rem;color:var(--steel);margin:1rem 0 2rem}

/* ── 애니메이션 ── */
.reveal{opacity:0;transform:translateY(24px) scale(.988);transition:opacity .6s cubic-bezier(.16,1,.3,1),transform .6s cubic-bezier(.16,1,.3,1)}
.reveal.in{opacity:1;transform:none}
.stagger>*{opacity:0;transform:translateY(16px);transition:opacity .5s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.16,1,.3,1)}
.stagger.in>*{opacity:1;transform:none}
.stagger.in>*:nth-child(1){transition-delay:.05s}
.stagger.in>*:nth-child(2){transition-delay:.11s}
.stagger.in>*:nth-child(3){transition-delay:.17s}
.stagger.in>*:nth-child(4){transition-delay:.23s}
.stagger.in>*:nth-child(5){transition-delay:.29s}
.stagger.in>*:nth-child(6){transition-delay:.35s}
