
:root{
  --bg:#f5f1ec;        /* 따뜻한 아이보리 */
  --soft:#ece7e0;      /* 보조 배경 */
  --white:#ffffff;
  --dark:#1c1b19;      /* 다크 섹션 */
  --dark2:#26241f;
  --accent:#7c5a48;    /* 월넛 브라운 */
  --accent-d:#634537;
  --text:#5f5b57;
  --head:#2f2c29;
  --line:#ddd6cd;
  --line-d:rgba(255,255,255,.12);
  --maxw:1160px;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:"Noto Sans KR","Apple SD Gothic Neo",sans-serif;color:var(--text);background:var(--white);line-height:1.85;letter-spacing:-.01em;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,video{max-width:100%;display:block}
.wrap{max-width:var(--maxw);margin:0 auto;padding:0 26px;position:relative}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}

.btn{display:inline-flex;align-items:center;justify-content:center;padding:15px 32px;font-size:14.5px;font-weight:600;font-family:inherit;border:1px solid transparent;cursor:pointer;transition:.2s}
.btn-ac{background:var(--accent);color:#fff}
.btn-ac:hover{background:var(--accent-d)}
.btn-out{border-color:var(--head);color:var(--head)}
.btn-out:hover{background:var(--head);color:#fff}
.btn-lt{border-color:rgba(255,255,255,.4);color:#fff}
.btn-lt:hover{background:#fff;color:var(--head)}

/* 섹션 헤더 — 짧은 액센트 바 + 한글 제목 */
.stitle{margin-bottom:52px;max-width:640px}
.stitle .bar{width:34px;height:2px;background:var(--accent);margin-bottom:20px}
.stitle .lb{font-size:13.5px;font-weight:700;color:var(--accent);letter-spacing:-.01em;margin-bottom:10px}
.stitle h2{font-size:31px;font-weight:700;color:var(--head);letter-spacing:-.015em;line-height:1.52}
.stitle p{margin-top:16px;font-size:15.5px;line-height:1.85}
.on-dark .stitle h2{color:#fff}
.on-dark .stitle p{color:#a29d96}
.on-dark .stitle .lb{color:#c9a68f}
@media(max-width:760px){.stitle h2{font-size:25px}.stitle{margin-bottom:36px}}

/* ── 헤더 ── */
header{position:absolute;top:0;left:0;right:0;z-index:60}
header .wrap{display:flex;align-items:center;justify-content:space-between;height:80px;max-width:1400px}
.logo{display:flex;align-items:center;gap:9px}
.logo .sym{width:24px;height:24px;flex:none}
.logo b{font-size:18px;font-weight:700;color:var(--head);letter-spacing:-.01em}
nav{display:flex;gap:32px}
nav>a{font-size:15px;font-weight:600;color:var(--head)}
nav>a:hover{color:var(--accent)}
.mbtn{width:34px;height:34px;background:var(--head);border:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer}
.mbtn span{width:14px;height:1.5px;background:#fff;display:block}
@media(max-width:1080px){
  nav{position:fixed;left:0;right:0;top:80px;background:var(--bg);flex-direction:column;gap:0;transform:translateY(-140%);transition:transform .3s;border-bottom:1px solid var(--line);z-index:70}
  nav.open{transform:translateY(0)}
  nav>a{padding:15px 26px;border-top:1px solid var(--line)}
}

/* ── 히어로 ── */
.hero{background:var(--bg);padding:150px 0 96px;position:relative}
.hero .wrap{display:grid;grid-template-columns:1fr auto;gap:56px;align-items:center}
.hero .kicker{display:inline-flex;align-items:center;gap:10px;font-size:13.5px;font-weight:700;color:var(--accent);margin-bottom:22px}
.hero .kicker::before{content:"";width:26px;height:1px;background:var(--accent)}
.hero h1{font-size:48px;font-weight:700;color:var(--head);letter-spacing:-.02em;line-height:1.48}
.hero .sub{margin-top:24px;font-size:16.5px;line-height:1.95;max-width:26em;font-weight:400}
.hero .acts{margin-top:34px;display:flex;gap:10px;flex-wrap:wrap}
.hero .film{position:relative;width:370px;height:370px;border-radius:50%;overflow:hidden;background:#111;box-shadow:0 20px 46px rgba(47,44,41,.18);flex:none}
.hero .film video{width:100%;height:100%;object-fit:cover}
.hero .film .veil{position:absolute;inset:0;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(28,27,25,0) 55%,rgba(28,27,25,.42) 100%)}
@media(max-width:980px){
  .hero{padding:118px 0 64px}
  .hero .wrap{grid-template-columns:1fr;gap:44px}
  .hero h1{font-size:32px}
  .hero .film{width:min(300px,78vw);height:min(300px,78vw);margin:0 auto}
}

/* ── 연락 스트립 ── */
.strip{background:var(--dark)}
.strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);max-width:1400px}
.strip a{padding:26px 20px;border-right:1px solid var(--line-d);display:flex;align-items:center;gap:14px;color:#fff}
.strip a:first-child{border-left:1px solid var(--line-d)}
.strip a:hover{background:var(--dark2)}
.strip .ic{width:38px;height:38px;border:1px solid rgba(201,166,143,.45);display:flex;align-items:center;justify-content:center;flex:none}
.strip .lb{font-size:12px;color:#c9a68f;font-weight:700;letter-spacing:.02em}
.strip .vv{font-size:16.5px;font-weight:700;color:#fff;letter-spacing:-.01em}
@media(max-width:860px){.strip .wrap{grid-template-columns:1fr}.strip a{border-left:1px solid var(--line-d);border-bottom:1px solid var(--line-d);padding:18px 20px}}

section{padding:106px 0}
@media(max-width:760px){section{padding:68px 0}}

/* ── 변호사 소개 ── */
.intro{background:var(--white)}
.intro .grid{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}
.intro .pic{position:relative}
.intro .pic img{width:100%}
.intro .pic figcaption{margin-top:14px;font-size:13px;color:#9c968f}
.intro h3{font-size:23px;font-weight:700;color:var(--head);letter-spacing:-.015em;line-height:1.68;margin-bottom:20px}
.intro p{font-size:15.5px;line-height:2.05;margin-bottom:16px}
.intro .pull{margin:26px 0;padding:22px 24px;background:var(--bg);border-left:2px solid var(--accent);font-size:16.5px;font-weight:700;color:var(--head);line-height:1.7;letter-spacing:-.01em}
.intro .btn{margin-top:12px}
@media(max-width:980px){.intro .grid{grid-template-columns:1fr;gap:36px}.intro h3{font-size:21px}}

/* ── 일하는 방식 ── */
.method{background:var(--bg)}
.method .grid{display:grid;grid-template-columns:340px 1fr;gap:60px;align-items:start}
.method .rows{border-top:1px solid var(--line)}
.method .row{display:grid;grid-template-columns:64px 1fr;gap:20px;padding:30px 0;border-bottom:1px solid var(--line)}
.method .row .n{font-size:14px;font-weight:700;color:var(--accent);padding-top:4px;letter-spacing:.02em}
.method .row h3{font-size:19px;font-weight:700;color:var(--head);letter-spacing:-.01em;margin-bottom:10px}
.method .row p{font-size:15px;line-height:1.9}
@media(max-width:900px){.method .grid{grid-template-columns:1fr;gap:28px}.method .row{grid-template-columns:48px 1fr;gap:14px;padding:24px 0}}

/* ── 업무분야 (다크) ── */
.task{background:var(--soft)}
.t-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line);background:#fff}
.t-item{padding:34px 34px 36px;border-bottom:1px solid var(--line);border-right:1px solid var(--line);transition:background .22s}
.t-item:nth-child(2n){border-right:0}
.t-item:hover{background:#fbf7f2}
.t-item h3{font-size:20px;color:var(--head);font-weight:700;letter-spacing:-.01em;margin-bottom:12px;display:flex;align-items:baseline;gap:12px}
.t-item h3 i{font-style:normal;font-size:12.5px;color:var(--accent);font-weight:700}
.t-item p{color:var(--text);font-size:14.5px;line-height:1.9}
@media(max-width:760px){.t-grid{grid-template-columns:1fr}.t-item{border-right:0;padding:26px 22px 28px}}

/* ── 해결 사례 ── */
.cases{background:var(--white)}
.c-list{border-top:2px solid var(--head)}
.c-row{display:grid;grid-template-columns:150px 1fr 120px;gap:24px;align-items:center;padding:28px 0;border-bottom:1px solid var(--line);transition:.2s}
.c-row:hover{background:var(--bg);padding-left:16px;padding-right:16px}
.c-row .tag{font-size:12.5px;font-weight:700;color:var(--accent);border:1px solid var(--line);padding:6px 12px;justify-self:start;letter-spacing:-.01em}
.c-row h3{font-size:18px;font-weight:700;color:var(--head);letter-spacing:-.01em;line-height:1.55;margin-bottom:6px}
.c-row p{font-size:14.5px;line-height:1.8}
.c-row .go{font-size:13px;font-weight:700;color:var(--head);justify-self:end;white-space:nowrap}
@media(max-width:860px){.c-row{grid-template-columns:1fr;gap:12px;padding:22px 0}.c-row .go{justify-self:start}}

/* ── 법률 콘텐츠 ── */
.notes{background:var(--soft)}
.n-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.nc{background:#fff;padding:28px 24px 26px;display:flex;flex-direction:column;min-height:200px;transition:.22s;border-bottom:2px solid transparent}
.nc:hover{border-bottom-color:var(--accent);transform:translateY(-3px)}
.nc .lb{font-size:12px;font-weight:700;color:var(--accent);margin-bottom:14px}
.nc h3{font-size:16px;font-weight:700;color:var(--head);line-height:1.6;letter-spacing:-.01em;flex:1}
.nc .go{margin-top:18px;font-size:12.5px;font-weight:700;color:#9c968f}
@media(max-width:1000px){.n-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.n-grid{grid-template-columns:1fr}}

/* ── 상담 문의 ── */
.contact{background:var(--dark);padding:104px 0}
.contact .box{display:grid;grid-template-columns:1fr 1fr;gap:0;background:#fff}
.contact .side{background:var(--dark2);padding:48px 44px;display:flex;flex-direction:column;justify-content:center}
.contact .side h3{font-size:23px;color:#fff;font-weight:700;letter-spacing:-.01em;line-height:1.55;margin-bottom:16px}
.contact .side p{color:#a29d96;font-size:14.5px;line-height:1.85}
.contact .side .blk{margin-top:28px;padding-top:24px;border-top:1px solid var(--line-d)}
.contact .side .blk .lb{font-size:12px;color:#c9a68f;font-weight:700;margin-bottom:6px}
.contact .side .blk b{display:block;font-size:22px;color:#fff;font-weight:700;letter-spacing:-.01em;line-height:1.55}
.contact .side .blk .ad{margin-top:16px;font-size:14px;color:#a29d96;line-height:1.8}
.contact form{padding:44px 40px}
form h3{font-size:20px;color:var(--head);font-weight:700;letter-spacing:-.01em;margin-bottom:6px}
form .sb{font-size:13.5px;color:var(--text);margin-bottom:24px}
.fl{margin-bottom:16px}
.fl label{display:block;font-size:12.5px;font-weight:700;color:var(--head);margin-bottom:7px}
.fl input,.fl select,.fl textarea{width:100%;border:1px solid var(--line);background:#faf8f5;padding:12px 13px;font-family:inherit;font-size:14.5px;color:var(--head);border-radius:0}
.fl textarea{min-height:96px;resize:vertical}
.fl input:focus,.fl select:focus,.fl textarea:focus{outline:none;border-color:var(--accent);background:#fff}
.agree{display:flex;align-items:center;gap:9px;font-size:12.5px;color:var(--text);margin:4px 0 18px}
form .btn-ac{width:100%}
form .memo{margin-top:11px;font-size:11.5px;color:#9c968f;text-align:center}
@media(max-width:900px){.contact .box{grid-template-columns:1fr}.contact .side,.contact form{padding:34px 26px}}

/* ── 푸터 ── */
footer{background:#f7f5f2;padding:48px 0 44px;border-top:1px solid var(--line)}
footer .fw{display:flex;justify-content:space-between;gap:30px;flex-wrap:wrap;align-items:flex-start}
footer p{font-size:13px;color:var(--text);line-height:1.95}
footer .cp{margin-top:18px;font-size:11.5px;color:#a49e97}
@media(max-width:700px){footer .fw{flex-direction:column;gap:18px}}

/* ── 우측 퀵바 ── */
.side-q{position:fixed;right:16px;top:50%;transform:translateY(-50%);z-index:70;background:#fff;box-shadow:0 6px 22px rgba(47,44,41,.15);width:60px}
.side-q a{display:flex;flex-direction:column;align-items:center;gap:5px;padding:13px 4px;font-size:10.5px;color:var(--head);font-weight:700;border-bottom:1px solid var(--line);letter-spacing:-.01em}
.side-q a:last-child{border-bottom:0}
.side-q a:hover{background:var(--bg);color:var(--accent)}
@media(max-width:1080px){
  .side-q{top:auto;bottom:0;left:0;right:0;transform:none;width:100%;display:grid;grid-template-columns:repeat(4,1fr);box-shadow:0 -4px 16px rgba(0,0,0,.13)}
  .side-q a{border-bottom:0;border-right:1px solid var(--line);padding:10px 2px}
  .side-q a:last-child{border-right:0}
  body{padding-bottom:62px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto}}


/* ═══════════ 하위 페이지 공통 ═══════════ */
.subhero{background:var(--bg);padding:126px 0 52px;border-bottom:1px solid var(--line)}
.subhero .crumb{font-size:13px;color:#9c968f;margin-bottom:16px}
.subhero .crumb a{color:var(--accent)}
.subhero h1{font-size:32px;font-weight:700;color:var(--head);letter-spacing:-.015em;line-height:1.55}
.subhero p{margin-top:14px;font-size:15.5px;max-width:56em}
@media(max-width:760px){.subhero{padding:100px 0 38px}.subhero h1{font-size:23px}}

.finder{margin-bottom:22px}
.finder .sbox{position:relative;max-width:520px}
.finder input{width:100%;border:1px solid var(--line);background:#fff;padding:14px 16px 14px 44px;font-family:inherit;font-size:15px;color:var(--head)}
.finder input:focus{outline:none;border-color:var(--accent)}
.finder .sbox svg{position:absolute;left:15px;top:50%;transform:translateY(-50%);opacity:.55}
.chips{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:30px}
.chip{border:1px solid var(--line);background:#fff;padding:9px 16px;font-size:13.5px;font-weight:500;color:var(--text);cursor:pointer;font-family:inherit;transition:.18s}
.chip:hover{border-color:var(--accent);color:var(--accent)}
.chip.on{background:var(--head);border-color:var(--head);color:#fff}
.empty{padding:60px 0;text-align:center;color:#9c968f;font-size:15px}

/* ═══════════ 사례 목록 (판결문 썸네일) ═══════════ */
.cl{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.cl-card{display:flex;border:1px solid var(--line);background:#fff;transition:.22s;overflow:hidden}
.cl-card:hover{border-color:var(--accent);transform:translateY(-3px);box-shadow:0 14px 30px rgba(47,44,41,.08)}
.cl-card .thumb{width:132px;flex:none;background:#efeae3;overflow:hidden;display:block;position:relative}
.cl-card .thumb img{width:100%;height:100%;object-fit:cover;object-position:top center}
.cl-card .bd{padding:22px 22px 20px;display:flex;flex-direction:column;flex:1;min-width:0}
.cl-card .meta{display:flex;gap:7px;align-items:center;flex-wrap:wrap;margin-bottom:12px}
.cl-card .tag{font-size:11.5px;font-weight:700;color:var(--accent);border:1px solid rgba(124,90,72,.35);padding:4px 9px}
.cl-card .res{font-size:11.5px;font-weight:700;color:#fff;background:var(--head);padding:5px 9px}
.cl-card .ti{display:block;font-size:16.5px;font-weight:700;color:var(--head);line-height:1.6;letter-spacing:-.015em;margin-bottom:9px}
.cl-card .ds{display:block;font-size:14px;line-height:1.8;color:var(--text);flex:1}
.cl-card .ft{display:flex;justify-content:space-between;gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid var(--line);font-size:12px;color:#9c968f}
@media(max-width:1000px){.cl{grid-template-columns:1fr}}
@media(max-width:520px){.cl-card .thumb{width:94px}.cl-card .bd{padding:18px 16px}}

/* 홈 화면 사례 리스트 (썸네일 포함) */
.c-list{border-top:2px solid var(--head)}
.c-row{display:grid;grid-template-columns:96px 1fr 130px;gap:22px;align-items:center;padding:22px 0;border-bottom:1px solid var(--line);transition:.2s}
.c-row:hover{background:var(--bg);padding-left:14px;padding-right:14px}
.c-row .th{width:96px;height:118px;overflow:hidden;border:1px solid var(--line);background:#efeae3}
.c-row .th img{width:100%;height:100%;object-fit:cover;object-position:top center}
.c-row .tag{display:inline-block;font-size:11.5px;font-weight:700;color:var(--accent);border:1px solid var(--line);padding:4px 10px;margin-bottom:9px}
.c-row h3{font-size:17.5px;font-weight:700;color:var(--head);letter-spacing:-.015em;line-height:1.6;margin-bottom:7px}
.c-row p{font-size:14px;line-height:1.8}
.c-row .go{font-size:12.5px;font-weight:700;color:var(--head);text-align:right;white-space:nowrap}
@media(max-width:820px){
  .c-row{grid-template-columns:76px 1fr;gap:16px;padding:20px 0}
  .c-row .th{width:76px;height:94px}
  .c-row .go{grid-column:2;text-align:left;margin-top:6px}
}

/* ═══════════ 법률가이드 ═══════════ */
.gd{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.gd-card{display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;padding:26px 24px 24px;transition:.22s}
.gd-card:hover{border-color:var(--accent);transform:translateY(-3px)}
.gd-card .tag{align-self:flex-start;font-size:11.5px;font-weight:700;color:var(--accent);border:1px solid rgba(124,90,72,.35);padding:4px 10px;margin-bottom:16px}
.gd-card .ti{display:block;font-size:17px;font-weight:700;color:var(--head);line-height:1.6;letter-spacing:-.015em;margin-bottom:10px}
.gd-card .ds{display:block;font-size:14px;line-height:1.8;flex:1}
.gd-card .ft{margin-top:18px;padding-top:14px;border-top:1px solid var(--line);font-size:12px;color:#9c968f}
@media(max-width:900px){.gd{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.gd{grid-template-columns:1fr}}

/* 홈: 키워드 3개 */
.kw-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.kw{display:block;background:#fff;border:1px solid var(--line);padding:38px 30px 34px;transition:.22s;position:relative}
.kw:hover{border-color:var(--accent);transform:translateY(-4px);box-shadow:0 16px 34px rgba(47,44,41,.08)}
.kw .n{font-size:12.5px;font-weight:700;color:var(--accent);letter-spacing:.04em;margin-bottom:16px}
.kw h3{font-size:23px;font-weight:700;color:var(--head);letter-spacing:-.02em;margin-bottom:12px}
.kw p{font-size:14.5px;line-height:1.85}
.kw .arw{margin-top:22px;font-size:13px;font-weight:700;color:var(--head)}
@media(max-width:820px){.kw-grid{grid-template-columns:1fr}.kw{padding:28px 24px}}

/* ═══════════ 상세 페이지 ═══════════ */
.detail{padding:52px 0 96px;background:#fff}
.detail .head{border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:34px}
.detail .head .meta{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:14px}
.detail .head .tag{font-size:12px;font-weight:700;color:var(--accent);border:1px solid rgba(124,90,72,.35);padding:5px 12px}
.detail .head .res{font-size:12px;font-weight:700;color:#fff;background:var(--head);padding:6px 12px}
.detail .head .by{font-size:13.5px;color:#9c968f}
.doc{margin:0 auto 42px;max-width:520px}
.doc img{width:100%;border:1px solid var(--line)}
.doc figcaption{margin-top:12px;font-size:12.5px;color:#9c968f;text-align:center}
.blk{margin-bottom:38px}
.blk h2{font-size:20px;font-weight:700;color:var(--head);letter-spacing:-.02em;margin-bottom:16px;padding-left:14px;border-left:3px solid var(--accent)}
.blk p{font-size:15.5px;line-height:2.05;margin-bottom:14px}
.blk ul{list-style:none;margin-top:6px}
.blk ul li{position:relative;padding-left:16px;font-size:15.5px;line-height:2;margin-bottom:6px}
.blk ul li::before{content:"";position:absolute;left:0;top:16px;width:4px;height:4px;background:var(--accent);border-radius:50%}
.guide-body h2{margin-top:38px}
.guide-body h2:first-child{margin-top:0}
.verdict{background:var(--bg);border:1px solid var(--line);padding:24px 26px}
.verdict .lb{font-size:12.5px;font-weight:700;color:var(--accent);margin-bottom:8px}
.verdict b{font-size:16.5px;color:var(--head);font-weight:700;letter-spacing:-.015em;line-height:1.8}
.terms{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line)}
.terms div{background:#fff;padding:20px 22px}
.terms dt{font-size:15px;font-weight:700;color:var(--head);margin-bottom:7px}
.terms dd{font-size:14.5px;line-height:1.9}
@media(max-width:700px){.terms{grid-template-columns:1fr}}
.faq{display:flex;flex-direction:column;gap:10px}
.faq details{border:1px solid var(--line);background:#fff}
.faq summary{padding:18px 22px;font-size:15.5px;font-weight:700;color:var(--head);cursor:pointer;list-style:none;display:flex;gap:10px;letter-spacing:-.015em}
.faq summary::-webkit-details-marker{display:none}
.faq summary::before{content:"Q.";color:var(--accent);font-weight:700;flex:none}
.faq details[open] summary{border-bottom:1px solid var(--line);background:var(--bg)}
.faq .a{padding:18px 22px;font-size:15px;line-height:2;display:flex;gap:10px}
.faq .a::before{content:"A.";color:var(--accent);font-weight:700;flex:none}
.rels{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.rels .rel{border:1px solid var(--line);padding:18px 20px;font-size:15px;font-weight:700;color:var(--head);line-height:1.6;transition:.2s}
.rels .rel:hover{border-color:var(--accent)}
.rels .rel span{display:block;font-size:11.5px;color:var(--accent);font-weight:700;margin-bottom:8px}
@media(max-width:700px){.rels{grid-template-columns:1fr}}
.notice{margin-top:36px;padding:20px 22px;background:var(--bg);border-left:2px solid var(--line);font-size:13.5px;line-height:1.9;color:#8c857e}
.pager{margin-top:44px;padding-top:26px;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap}
.pager a{font-size:14px;font-weight:600;color:var(--head)}
.pager a:hover{color:var(--accent)}
.pager .mid{color:var(--accent)}

/* ═══════════ 관리자 ═══════════ */
footer .adm{color:#9c968f;border-bottom:1px solid var(--line)}
footer .adm:hover{color:var(--accent)}
.gate{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);padding:24px}
.gate .card{background:#fff;border:1px solid var(--line);padding:40px 36px;width:100%;max-width:380px;text-align:center}
.gate h1{font-size:20px;font-weight:700;color:var(--head);margin-bottom:8px}
.gate p{font-size:13.5px;margin-bottom:24px}
.gate input{width:100%;border:1px solid var(--line);padding:13px 14px;font-family:inherit;font-size:15px;text-align:center;letter-spacing:.3em}
.gate input:focus{outline:none;border-color:var(--accent)}
.gate .btn{width:100%;margin-top:12px}
.gate .err{margin-top:12px;font-size:13px;color:#b4453a;min-height:18px}
.dash{padding:46px 0 90px;background:var(--bg);min-height:100vh}
.dhead{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:16px;margin-bottom:26px}
.dhead .lb{font-size:13px;font-weight:700;color:var(--accent);margin-bottom:7px}
.dhead h1{font-size:27px;font-weight:700;color:var(--head);letter-spacing:-.02em}
.btn.sm{padding:10px 18px;font-size:13.5px}
.tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:28px;flex-wrap:wrap}
.tab{background:none;border:0;border-bottom:2px solid transparent;padding:13px 20px;font-family:inherit;font-size:14.5px;font-weight:700;color:#9c968f;cursor:pointer;margin-bottom:-1px}
.tab:hover{color:var(--head)}
.tab.on{color:var(--accent);border-bottom-color:var(--accent)}
.pane{display:none}
.pane.on{display:block}
.rangebar{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;align-items:center;margin-bottom:12px}
.rchips{display:flex;gap:7px;flex-wrap:wrap}
.rchips .chip{padding:8px 14px;font-size:13px}
.rdate{display:flex;gap:7px;align-items:center;font-size:13px;color:#9c968f}
.rdate input{border:1px solid var(--line);padding:8px 10px;font-family:inherit;font-size:13px;background:#fff}
.rinfo{font-size:13px;color:#9c968f;margin-bottom:22px}
.kpi{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}
.kpi div{background:#fff;border:1px solid var(--line);padding:22px 20px}
.kpi .lb{font-size:12.5px;font-weight:700;color:var(--accent);margin-bottom:8px}
.kpi .v{font-size:28px;font-weight:700;color:var(--head);letter-spacing:-.03em;line-height:1.3}
.kpi .s{font-size:12.5px;color:#9c968f;margin-top:4px}
@media(max-width:860px){.kpi{grid-template-columns:1fr 1fr}}
.panels{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.panel{background:#fff;border:1px solid var(--line);padding:26px 24px}
.panel.full{grid-column:1/-1}
.panel h2{font-size:16px;font-weight:700;color:var(--head);margin-bottom:8px}
.panel .hint{font-size:13px;color:#9c968f;margin-bottom:22px;line-height:1.8}
.panel table{width:100%;border-collapse:collapse}
.panel th{text-align:left;font-size:12px;color:#9c968f;font-weight:700;padding:14px 0 10px;border-bottom:1px solid var(--line)}
.panel th.r{text-align:right}
.panel td{font-size:14px;padding:11px 0;border-bottom:1px solid #f2eee9;color:var(--head)}
.panel td.num{text-align:right;font-weight:700}
.panel td.mut{color:#9c968f;font-size:13px}
.bars{display:flex;align-items:flex-end;gap:3px;height:150px;margin-top:14px}
.bars .b{flex:1;background:var(--accent);opacity:.82;min-height:2px;border-radius:1px}
.bars .b:hover{opacity:1}
.blabel{display:flex;justify-content:space-between;font-size:11.5px;color:#9c968f;margin-top:8px}
.tools{display:flex;gap:8px;flex-wrap:wrap;margin-top:24px}
.tools button{border:1px solid var(--line);background:#fff;padding:12px 20px;font-family:inherit;font-size:13.5px;font-weight:700;color:var(--head);cursor:pointer;transition:.18s}
.tools button:hover{border-color:var(--accent);color:var(--accent)}
.tools button.prim{background:var(--accent);border-color:var(--accent);color:#fff}
.tools button.prim:hover{background:var(--accent-d);color:#fff}
.frow{display:grid;gap:16px;margin-bottom:16px}
.frow.c2{grid-template-columns:1fr 1fr}
.frow.c3{grid-template-columns:1fr 1fr 1fr}
.f label{display:block;font-size:12.5px;font-weight:700;color:var(--head);margin-bottom:7px}
.f label em{font-style:normal;font-weight:500;color:#9c968f;font-size:11.5px;margin-left:6px}
.f input,.f select,.f textarea{width:100%;border:1px solid var(--line);background:#fbfaf8;padding:12px 13px;font-family:inherit;font-size:14px;color:var(--head);border-radius:0;line-height:1.8}
.f textarea{resize:vertical}
.f input:focus,.f select:focus,.f textarea:focus{outline:none;border-color:var(--accent);background:#fff}
.f .tip{font-size:11.5px;color:#9c968f;margin-top:6px}
.err{font-size:13px;color:#b4453a;margin-top:12px;min-height:18px}
.steps{margin:8px 0 0 18px}
.steps li{font-size:14.5px;line-height:2;margin-bottom:12px;color:var(--text)}
.steps li b{color:var(--head)}
.mono{font-family:ui-monospace,Menlo,Consolas,monospace;font-size:13px;background:var(--bg);padding:2px 6px;border:1px solid var(--line)}
@media(max-width:860px){.panels{grid-template-columns:1fr}.frow.c2,.frow.c3{grid-template-columns:1fr}}

/* ═══════════ 로고 이미지 ═══════════ */
.logo .lg{height:38px;width:auto}
footer .logo .lg{height:36px;width:auto}
@media(max-width:760px){.logo .lg{height:32px}}

/* ═══════════ 연락 스트립 (재구성) ═══════════ */
.strip{background:var(--dark)}
.strip .wrap{display:grid;grid-template-columns:repeat(3,1fr);max-width:1240px;padding:0}
.strip a{display:flex;align-items:center;gap:18px;padding:30px 32px;color:#fff;border-right:1px solid var(--line-d);transition:background .2s}
.strip a:first-child{border-left:1px solid var(--line-d)}
.strip a:hover{background:var(--dark2)}
.strip .ic{width:44px;height:44px;flex:none;border:1px solid rgba(201,166,143,.4);border-radius:50%;display:flex;align-items:center;justify-content:center}
.strip .tx{display:flex;flex-direction:column;gap:7px;min-width:0}
.strip .lb{font-size:12px;font-weight:500;color:#a89f96;letter-spacing:.04em;line-height:1}
.strip .vv{font-size:17px;font-weight:700;color:#fff;letter-spacing:-.01em;line-height:1.35}
@media(max-width:980px){
  .strip .wrap{grid-template-columns:1fr}
  .strip a{border-left:1px solid var(--line-d);border-right:1px solid var(--line-d);border-bottom:1px solid var(--line-d);padding:22px 24px;gap:15px}
  .strip .ic{width:38px;height:38px}
  .strip .vv{font-size:15.5px}
}

/* ═══════════ 하단 고정 온라인 상담 바 ═══════════ */
body{padding-bottom:164px}
body.cbar-mini{padding-bottom:62px}
@media(max-width:900px){body{padding-bottom:236px}body.cbar-mini{padding-bottom:58px}}

.cbar{
  position:fixed;left:0;right:0;bottom:0;z-index:95;
  background:rgba(255,255,255,.62);
  backdrop-filter:saturate(160%) blur(18px);
  -webkit-backdrop-filter:saturate(160%) blur(18px);
  border-top:1px solid rgba(124,90,72,.22);
  box-shadow:0 -10px 34px rgba(47,44,41,.10);
  transition:transform .28s ease;
}
.cbar .cb-form{transition:max-height .32s ease,opacity .2s ease;max-height:360px;overflow:hidden}
.cbar.mini .cb-form{max-height:0;opacity:0}
.cb-toggle{
  position:absolute;right:22px;top:-30px;width:38px;height:30px;
  background:rgba(255,255,255,.72);backdrop-filter:blur(12px);
  border:1px solid rgba(124,90,72,.22);border-bottom:0;border-radius:4px 4px 0 0;
  display:flex;align-items:center;justify-content:center;cursor:pointer;color:var(--accent);
}
.cb-toggle svg{transition:transform .28s}
.cbar.mini .cb-toggle svg{transform:rotate(180deg)}

.cb-form .wrap{padding-top:16px;padding-bottom:12px;max-width:1240px}
.cb-row{display:flex;align-items:center;gap:12px}
.cb-title{display:flex;align-items:center;gap:9px;font-size:14px;font-weight:700;color:var(--head);white-space:nowrap;letter-spacing:-.02em}
.cb-title .ic{width:26px;height:26px;flex:none;background:var(--accent);color:#fff;display:flex;align-items:center;justify-content:center;border-radius:3px}
.cb-title em{font-style:normal;font-size:12px;font-weight:500;color:#8c857e;margin-left:2px}
.cb-row input{
  border:1px solid rgba(124,90,72,.25);background:rgba(255,255,255,.92);
  padding:12px 14px;font-family:inherit;font-size:14px;color:var(--head);border-radius:3px;
}
.cb-row input:focus{outline:none;border-color:var(--accent);background:#fff}
#cb_text{flex:1;min-width:0}
#cb_tel{width:180px;flex:none}
.cb-send{
  flex:none;background:var(--accent);color:#fff;border:0;padding:12px 26px;
  font-family:inherit;font-size:14px;font-weight:700;cursor:pointer;border-radius:3px;transition:.2s;
}
.cb-send:hover{background:var(--accent-d)}
.cb-send:disabled{opacity:.6;cursor:default}
.cb-agree{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:10px;font-size:12px;color:#7d766f;line-height:1.6}
.cb-agree input{width:14px;height:14px;accent-color:var(--accent)}
.cb-agree b{color:var(--head);font-weight:700}
.cb-msg{color:#b4453a;font-weight:700;margin-left:6px}
.cb-msg.ok{color:#3d7a52}

.cb-menu{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(124,90,72,.16);background:rgba(255,255,255,.5)}
.cb-menu a{display:flex;align-items:center;justify-content:center;gap:8px;padding:15px 8px;font-size:13.5px;font-weight:700;color:var(--head);border-right:1px solid rgba(124,90,72,.13);transition:background .18s}
.cb-menu a:last-child{border-right:0}
.cb-menu a:hover{background:rgba(124,90,72,.07);color:var(--accent)}
.cb-menu a svg{color:var(--accent);flex:none}
.cb-menu a em{font-style:normal;font-weight:700;color:var(--accent);letter-spacing:-.01em}
@media(max-width:900px){
  .cb-row{flex-wrap:wrap;gap:8px}
  .cb-title{width:100%;font-size:13.5px}
  .cb-title em{display:none}
  #cb_text{flex:1 1 100%}
  #cb_tel{flex:1;width:auto}
  .cb-send{padding:12px 20px}
  .cb-agree{font-size:11.5px;margin-top:8px}
  .cb-menu a em{display:none}
  .cb-menu a{font-size:12.5px;flex-direction:column;gap:5px;padding:10px 4px}
}

/* ═══════════ 온라인 상담 게시판 ═══════════ */
.bd-head{display:flex;justify-content:space-between;align-items:baseline;gap:16px;flex-wrap:wrap;padding-bottom:16px;border-bottom:2px solid var(--head);margin-bottom:4px}
.bd-head p{font-size:14px;color:var(--text)}
.bd-head b{color:var(--accent);font-weight:700}
.bd-head .bd-note{font-size:13px;color:#9c968f}
.bd-item{border-bottom:1px solid var(--line);background:#fff}
.bd-item summary{display:flex;align-items:center;gap:14px;padding:20px 4px;cursor:pointer;list-style:none}
.bd-item summary::-webkit-details-marker{display:none}
.bd-item .no{width:36px;flex:none;font-size:13px;color:#9c968f;font-weight:700;text-align:center}
.bd-item .q{flex:1;min-width:0;font-size:15.5px;font-weight:700;color:var(--head);letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.bd-item .st{flex:none;font-size:11.5px;font-weight:700;color:#9c968f;border:1px solid var(--line);padding:4px 10px}
.bd-item .st.done{color:#fff;background:var(--accent);border-color:var(--accent)}
.bd-item .dt{flex:none;font-size:12.5px;color:#9c968f;width:88px;text-align:right}
.bd-item[open] summary{background:var(--bg)}
.bd-body{padding:8px 4px 28px 54px}
.bd-q{font-size:15.5px;line-height:2;color:var(--head);white-space:pre-wrap}
.bd-meta{margin-top:14px;font-size:12.5px;color:#9c968f}
.bd-a{margin-top:20px;padding:20px 22px;background:var(--bg);border-left:2px solid var(--accent)}
.bd-a b{display:block;font-size:13px;color:var(--accent);font-weight:700;margin-bottom:8px}
.bd-a p{font-size:15px;line-height:1.95;color:var(--head);white-space:pre-wrap}
.bd-wait{margin-top:18px;font-size:13.5px;color:#9c968f}
@media(max-width:700px){
  .bd-item summary{flex-wrap:wrap;gap:8px;padding:16px 4px}
  .bd-item .q{flex:1 1 100%;white-space:normal;line-height:1.6}
  .bd-item .no{width:auto}
  .bd-item .dt{width:auto}
  .bd-body{padding-left:4px}
}

/* 관리자 상담 관리 */
.cs-item{border:1px solid var(--line);padding:20px 22px;margin-bottom:12px;background:#fff}
.cs-item .top{display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:12px;font-size:12.5px;color:#9c968f}
.cs-item .top b{color:var(--accent)}
.cs-item .qt{font-size:15px;line-height:1.9;color:var(--head);white-space:pre-wrap;margin-bottom:14px}
.cs-item textarea{width:100%;border:1px solid var(--line);background:#fbfaf8;padding:12px 13px;font-family:inherit;font-size:14px;line-height:1.8;color:var(--head);resize:vertical}
.cs-item textarea:focus{outline:none;border-color:var(--accent);background:#fff}
.cs-item .row{display:flex;gap:8px;margin-top:10px;align-items:center}
.cs-item .row button{border:1px solid var(--line);background:#fff;padding:9px 16px;font-family:inherit;font-size:13px;font-weight:700;color:var(--head);cursor:pointer}
.cs-item .row button.prim{background:var(--accent);border-color:var(--accent);color:#fff}
.cs-item .row .saved{font-size:12.5px;color:#3d7a52;font-weight:700}

/* ═══════════ 법률가이드 상세 ═══════════ */
.detail.guide .head{margin-bottom:28px}

/* 핵심 요약 박스 */
.sumbox{background:linear-gradient(180deg,#f7f3ee,#f2ece4);border:1px solid var(--line);border-left:3px solid var(--accent);padding:26px 28px;margin-bottom:34px}
.sumbox .st{font-size:12.5px;font-weight:700;color:var(--accent);letter-spacing:.06em;margin-bottom:14px}
.sumbox ul{list-style:none}
.sumbox li{position:relative;padding-left:22px;font-size:15.5px;line-height:1.95;color:var(--head);margin-bottom:9px;font-weight:500}
.sumbox li:last-child{margin-bottom:0}
.sumbox li::before{content:"";position:absolute;left:0;top:13px;width:7px;height:7px;border:1.5px solid var(--accent);border-radius:50%}
@media(max-width:640px){.sumbox{padding:20px 20px}.sumbox li{font-size:14.5px}}

/* 목차 */
.toc{border:1px solid var(--line);background:#fff;padding:22px 26px;margin-bottom:38px}
.toc .tt{font-size:12.5px;font-weight:700;color:#9c968f;letter-spacing:.04em;margin-bottom:12px}
.toc ol{margin:0;padding-left:18px}
.toc li{font-size:14.5px;line-height:2;color:var(--text)}
.toc a{color:var(--text)}
.toc a:hover{color:var(--accent);text-decoration:underline}

/* 강조 콜아웃 */
.callout{background:#fbf6f0;border:1px solid rgba(124,90,72,.28);border-left:3px solid var(--accent);padding:24px 28px;margin:30px 0 34px;position:relative}
.callout .ct{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--accent);margin-bottom:12px;letter-spacing:.01em}
.callout .ct::before{content:"";width:15px;height:15px;flex:none;border:1.6px solid var(--accent);border-radius:50%;background:radial-gradient(circle,var(--accent) 0 2px,transparent 2px)}
.callout p{font-size:15.5px;line-height:1.95;color:var(--head);margin:0}

/* 표 */
.gtable{margin:30px 0 34px}
.gtable figcaption{font-size:13px;font-weight:700;color:var(--accent);margin-bottom:12px}
.gtable .tw{overflow-x:auto;border:1px solid var(--line)}
.gtable table{width:100%;border-collapse:collapse;background:#fff;min-width:420px}
.gtable th{background:var(--head);color:#fff;font-size:13.5px;font-weight:700;padding:13px 16px;text-align:left;white-space:nowrap}
.gtable td{font-size:14.5px;padding:14px 16px;border-bottom:1px solid var(--line);color:var(--head);line-height:1.75;vertical-align:top}
.gtable tbody tr:nth-child(even) td{background:#faf8f5}
.gtable tbody tr:last-child td{border-bottom:0}

/* 단계 박스 */
.steps-box{list-style:none;counter-reset:st;margin:26px 0 30px;display:grid;gap:10px}
.steps-box li{counter-increment:st;position:relative;background:#fff;border:1px solid var(--line);padding:20px 22px 20px 62px}
.steps-box li::before{content:counter(st);position:absolute;left:20px;top:20px;width:26px;height:26px;background:var(--accent);color:#fff;font-size:13px;font-weight:700;display:flex;align-items:center;justify-content:center;border-radius:50%}
.steps-box li b{display:block;font-size:15.5px;color:var(--head);font-weight:700;margin-bottom:7px;letter-spacing:-.015em}
.steps-box li span{font-size:14.5px;line-height:1.95;color:var(--text)}

/* 체크리스트 박스 */
.chk-box{list-style:none;margin:24px 0 30px;background:#faf8f5;border:1px solid var(--line);padding:8px 22px}
.chk-box li{position:relative;padding:16px 0 16px 28px;border-bottom:1px dashed var(--line)}
.chk-box li:last-child{border-bottom:0}
.chk-box li::before{content:"✔";position:absolute;left:0;top:16px;color:var(--accent);font-size:14px;font-weight:700}
.chk-box li b{display:block;font-size:15px;color:var(--head);font-weight:700;margin-bottom:5px}
.chk-box li span{font-size:14.5px;line-height:1.9;color:var(--text)}

/* 본문 속 참고 링크 */
.inref{border:1px dashed rgba(124,90,72,.4);background:#fbf8f4;padding:18px 22px;margin:24px 0 28px}
.inref b{display:block;font-size:12px;font-weight:700;color:var(--accent);margin-bottom:8px;letter-spacing:.03em}
.inref p{font-size:15px;font-weight:700;color:var(--head);line-height:1.7;margin:0 0 6px}
.inref span{font-size:13.5px;color:#8c857e;line-height:1.7}

.guide-body p.bullet{position:relative;padding-left:16px}
.guide-body p.bullet::before{content:"";position:absolute;left:0;top:15px;width:4px;height:4px;background:var(--accent);border-radius:50%}
.relwrap{margin-top:44px}

/* ═══════════ 상단 상담 바 (앵커 자리) ═══════════ */


.cbar.docked .cb-toggle{display:none}
body.has-anchor{padding-bottom:0}
body.has-anchor.floating{padding-bottom:164px}
@media(max-width:900px){body.has-anchor.floating{padding-bottom:236px}}

/* 법률가이드 키워드 7개 그리드 */
.kw-grid.seven{grid-template-columns:repeat(4,1fr)}
.kw-grid.seven .kw{padding:30px 26px 28px}
.kw-grid.seven .kw h3{font-size:20px}
.kw-grid.seven .kw p{font-size:14px}
@media(max-width:1000px){.kw-grid.seven{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.kw-grid.seven{grid-template-columns:1fr}}


/* ═══════════ 가이드 본문 가독성 ═══════════ */
.guide-body p{font-size:16px;line-height:1.95;color:#4a4641;margin:0 0 22px}
.guide-body h2{font-size:21px;font-weight:700;color:var(--head);letter-spacing:-.02em;line-height:1.55;
  margin:52px 0 20px;padding:0 0 12px;border-left:0;border-bottom:1px solid var(--line)}
.guide-body h2:first-child{margin-top:8px}
.guide-body strong{font-weight:700;color:var(--head)}
.guide-body mark{background:linear-gradient(transparent 52%, rgba(214,178,120,.45) 52%);
  color:var(--head);font-weight:700;padding:0 2px}
.guide-body u{text-decoration:none;background:linear-gradient(transparent 92%, rgba(124,90,72,.55) 92%);
  color:var(--head);font-weight:500;padding-bottom:2px}
.steps-box li mark,.chk-box li mark{background:linear-gradient(transparent 52%, rgba(214,178,120,.45) 52%);font-weight:700;color:var(--head)}
.steps-box li u,.chk-box li u{text-decoration:none;background:linear-gradient(transparent 92%, rgba(124,90,72,.5) 92%);color:var(--head)}
.steps-box li strong,.chk-box li strong{color:var(--head);font-weight:700}
.guide-body p:last-child{margin-bottom:0}

/* 관련 법 조항 박스 */
.lawbox{border:1px solid var(--line);border-top:3px solid var(--head);background:#fcfbf9;padding:26px 28px;margin:44px 0 8px}
.lawbox .lt{display:inline-block;font-size:11.5px;font-weight:700;color:#fff;background:var(--head);padding:5px 12px;letter-spacing:.04em;margin-bottom:16px}
.lawbox .ln{font-size:16px;font-weight:700;color:var(--head);letter-spacing:-.015em;line-height:1.6;margin-bottom:12px}
.lawbox .lx{font-size:15px;line-height:1.95;color:#4a4641;margin-bottom:14px}
.lawbox .lf{font-size:12.5px;color:#9c968f;padding-top:12px;border-top:1px dashed var(--line)}
@media(max-width:640px){.lawbox{padding:20px 20px}}

/* 가이드 소항목 제목 */
.guide-body h3{font-size:16.5px;font-weight:700;color:var(--head);letter-spacing:-.015em;
  margin:32px 0 12px;padding-left:12px;border-left:3px solid rgba(124,90,72,.45);line-height:1.6}
.guide-body h3 + p{margin-top:0}

/* 나열형 카드 — 제목 없는 항목도 자연스럽게 */
.steps-box li span{display:block}
.steps-box li b + span{margin-top:0}


/* ═══════════ 우측 플로팅 버튼 ═══════════ */
.fabs{position:fixed;right:20px;top:132px;z-index:96;display:flex;flex-direction:column;gap:10px}
.fab{position:relative;width:54px;height:54px;border-radius:50%;display:flex;align-items:center;justify-content:center;
  color:#fff;box-shadow:0 5px 16px rgba(47,44,41,.22);transition:transform .18s,box-shadow .18s}
.fab:hover{transform:translateY(-2px);box-shadow:0 9px 22px rgba(47,44,41,.3)}
.fab .ic{display:flex}
.fab .tp{position:absolute;right:64px;top:50%;transform:translateY(-50%) translateX(6px);
  background:var(--head);color:#fff;font-size:12.5px;font-weight:700;padding:7px 12px;border-radius:3px;
  white-space:nowrap;opacity:0;pointer-events:none;transition:.18s}
.fab:hover .tp{opacity:1;transform:translateY(-50%) translateX(0)}
.f-tel{background:#7c5a48}
.f-ask{background:#2f2c29}
.f-blog{background:#03c75a}
.f-map{background:#2d6cdf}
@media(max-width:900px){
  .fabs{right:12px;top:auto;bottom:130px;gap:8px}
  .fab{width:46px;height:46px}
  .fab .tp{display:none}
}

/* ═══════════ 하단 상담 바 — 축소 & 강조 ═══════════ */
body{padding-bottom:108px}
body.cbar-mini{padding-bottom:44px}
@media(max-width:900px){body{padding-bottom:168px}body.cbar-mini{padding-bottom:42px}}
.cbar{background:rgba(255,255,255,.78)}
.cb-form .wrap{padding-top:14px;padding-bottom:14px}
.cb-toggle{top:-28px}

/* ═══════════ 스크롤 등장 효과 ═══════════ */
html.reveal-on .reveal{opacity:0;transform:translateY(22px)}
html.reveal-on .reveal.in{opacity:1;transform:none;
  transition:opacity .7s cubic-bezier(.22,.61,.36,1),transform .7s cubic-bezier(.22,.61,.36,1)}
html.reveal-on .reveal.d1.in{transition-delay:.08s}
html.reveal-on .reveal.d2.in{transition-delay:.16s}
html.reveal-on .reveal.d3.in{transition-delay:.24s}
@media(prefers-reduced-motion:reduce){
  html.reveal-on .reveal{opacity:1!important;transform:none!important}
}


/* 섹션 배경 리듬 (업무분야 밝게 전환에 맞춘 조정) */
.intro{background:#fff}
.cases{background:var(--bg)}
.notes{background:#fff}
.method{background:var(--bg)}
.task{background:var(--soft)}
.task .stitle h2{color:var(--head)}
.task .stitle p{color:var(--text)}
.task .stitle .lb{color:var(--accent)}




/* ═══════════ 게시판 상단 상담 패널 ═══════════ */
.board-anchor{background:transparent;padding:0 0 34px}
.board-anchor .cbar.docked{max-width:none}


/* ═══════════ 홈·게시판 상단 상담 바 (하단 바와 동일 디자인) ═══════════ */
.cbar-anchor{background:var(--bg);border:0;padding:30px 22px 34px}
.board-anchor{background:transparent;padding:0 0 30px}

.cbar.docked{
  position:relative;max-width:1160px;margin:0 auto;
  background:rgba(255,255,255,.78);
  backdrop-filter:saturate(160%) blur(18px);
  -webkit-backdrop-filter:saturate(160%) blur(18px);
  border:1px solid rgba(124,90,72,.42);
  box-shadow:0 2px 10px rgba(47,44,41,.06);
  overflow:visible;
}
.board-anchor .cbar.docked{max-width:none}
.cbar.docked .cb-toggle{display:none}
.cbar.docked .cb-form{max-height:none;overflow:visible}
.cbar.docked .cb-form .wrap{padding:18px 24px 16px;max-width:none}

.cbar.docked .cb-row{flex-wrap:wrap;gap:10px}
.cbar.docked .cb-title{width:100%;margin-bottom:2px;padding-bottom:12px;
  border-bottom:1px solid var(--line)}
.cbar.docked #cb_text{flex:1 1 360px}
.cbar.docked #cb_tel{width:200px;flex:0 0 200px}
.cbar.docked .cb-send{flex:0 0 auto;min-width:142px}
@media(max-width:900px){
  .cbar-anchor{padding:22px 14px 26px}
  .cbar.docked #cb_tel{flex:1 1 auto;width:auto}
  .cbar.docked .cb-send{flex:1 1 100%}
  .fabs{bottom:150px}
}

/* ═══════════ 히어로 버튼 ═══════════ */
.hero .acts .btn-ac{background:#7c5a48;color:#fff;border:1px solid #7c5a48;
  border-radius:3px;padding:16px 32px;font-size:15px}
.hero .acts .btn-ac:hover{background:#634537;border-color:#634537}
.hero .acts .btn-out{border-color:rgba(124,90,72,.5);color:var(--head);background:transparent;
  border-radius:3px;padding:16px 30px;font-size:15px}
.hero .acts .btn-out:hover{background:var(--head);color:#fff;border-color:var(--head)}
