/* HIM Law Office — bright real-estate identity.
   White + warm paper, logo brown (#5A2D16) and logo grey (#6F6E6A) as the only accents. No dark sections.
   Layout follows the 심평 분양 site rhythm: numbered section heads (index · English label · Korean title). */
:root{
  color-scheme:light;
  --white:#ffffff;
  --bg:#ffffff;
  --bg2:#f7f6f4;
  --bg3:#efece8;
  --ink:#1f1b18;
  --ink-2:#5c5651;
  --mute:#8f8983;
  --line:#e7e3de;
  --line-2:#d9d3cc;
  --brown:#5a2d16;
  --brown-2:#74401f;
  --brown-soft:#f4ede7;
  --grey:#6f6e6a;
  --paper:#ffffff;
  --accent:#5a2d16;
  --accent-ink:#ffffff;
  --accent-soft:#f4ede7;
  --amber:#5a2d16;
  --amber-2:#74401f;
  --amber-ink:#5a2d16;
  --night:#ffffff;
  --night-2:#f7f6f4;
  --on-night:#1f1b18;
  --on-night-2:#5c5651;
  --hair-n:#e7e3de;
  --shadow:0 24px 48px -28px rgba(60,40,25,.28);
  --shadow-s:0 10px 24px -16px rgba(60,40,25,.25);
  --r:6px;
  --f-sans:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,sans-serif;
  --f-num:"Hahmlet","Noto Serif KR",Georgia,serif;
  --f-mono:"IBM Plex Mono",ui-monospace,Menlo,monospace;
  --f-display:var(--f-sans);
  --f-body:var(--f-sans);
  --wrap:1200px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-sans);font-size:16px;line-height:1.75;letter-spacing:-.01em;-webkit-font-smoothing:antialiased;word-break:keep-all;overflow-wrap:anywhere;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0 0 auto;height:env(safe-area-inset-top,0px);z-index:70;background:#fff}
img{max-width:100%}
[hidden]{display:none!important}
a{color:inherit}
::selection{background:var(--brown);color:#fff}
:focus-visible{outline:2px solid var(--brown);outline-offset:3px}
h1,h2,h3,h4{font-weight:700;line-height:1.3;letter-spacing:-.035em;margin:0;text-wrap:balance}
p{margin:0}
.wrap{max-width:var(--wrap);margin-inline:auto;padding-left:max(20px,env(safe-area-inset-left,0px));padding-right:max(20px,env(safe-area-inset-right,0px))}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.001s!important;transition-duration:.001s!important}}
.rv{transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.rv.pre{transform:translateY(28px)}
.eyebrow{font-family:var(--f-mono);font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--brown);font-weight:500;display:inline-flex;align-items:center;gap:10px}
.eyebrow::before{content:"";width:18px;height:1px;background:currentColor}
.chip{display:inline-block;font-size:12.5px;padding:4px 10px;border:1px solid var(--line);color:var(--ink-2);background:#fff;border-radius:999px}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:52px;padding:0 24px;font:inherit;font-size:15px;font-weight:700;text-decoration:none;border:1px solid transparent;border-radius:var(--r);cursor:pointer;transition:background .2s,color .2s,border-color .2s,box-shadow .2s}
.btn-main,.btn-light,.btn-ink{background:var(--brown);color:#fff}
.btn-main:hover,.btn-light:hover,.btn-ink:hover{background:var(--brown-2);box-shadow:var(--shadow-s)}
.btn-line,.btn-ghost{background:#fff;color:var(--ink);border-color:var(--line-2)}
.btn-line:hover,.btn-ghost:hover{border-color:var(--brown);color:var(--brown)}
.hero-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:30px}

/* ===== header ===== */
.hd{position:sticky;top:env(safe-area-inset-top,0px);z-index:60;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.hd-in{max-width:1320px;margin:0 auto;display:flex;align-items:center;gap:28px;height:76px;padding:0 max(20px,env(safe-area-inset-right,0px)) 0 max(20px,env(safe-area-inset-left,0px))}
.logo{display:flex;align-items:center;text-decoration:none;flex:none}
.logo-img{display:block;height:38px;width:auto}
.nav{display:flex;gap:4px;margin-left:auto}
.nav a{position:relative;text-decoration:none;color:var(--ink);font-size:15px;font-weight:500;padding:10px 14px;transition:color .2s}
.nav a::after{content:"";position:absolute;left:14px;right:14px;bottom:2px;height:2px;background:var(--brown);transform:scaleX(0);transition:transform .25s}
.nav a:hover,.nav a[aria-current="page"]{color:var(--brown)}
.nav a:hover::after,.nav a[aria-current="page"]::after{transform:scaleX(1)}
.hd-call{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-size:15px;text-decoration:none;height:44px;padding:0 18px;border-radius:999px;background:var(--brown);color:#fff;white-space:nowrap}
.hd-call:hover{background:var(--brown-2)}
.menu-btn{all:unset;display:none;cursor:pointer;width:44px;height:44px;place-items:center;color:var(--ink)}
.menu-btn span{display:block;width:20px;height:2px;background:currentColor;box-shadow:0 -6px 0 currentColor,0 6px 0 currentColor}
.mnav{background:#fff;border-top:1px solid var(--line);padding:8px max(20px,env(safe-area-inset-right,0px)) 16px max(20px,env(safe-area-inset-left,0px));display:grid}
.mnav a{text-decoration:none;padding:13px 2px;border-bottom:1px solid var(--line);font-size:15px}
.mnav .sep{height:10px}
@media (max-width:1060px){.nav{display:none}.menu-btn{display:grid}.hd-call{margin-left:auto}}
@media (max-width:480px){.hd-in{height:64px}.logo-img{height:30px}.hd-call{display:none}.menu-btn{margin-left:auto}}

/* ===== hero ===== */
.hero{background:linear-gradient(180deg,#fff 0%,#fff 78%,var(--bg2) 78%);padding:64px 0 0}
.hero-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:center}
.dki{display:inline-flex;gap:6px;margin-bottom:18px;padding:7px 14px;border-radius:999px;background:var(--brown-soft);color:var(--brown);font-size:14px;max-width:100%}
.dki b{font-weight:700}
.hero .meta{font-size:15px;font-weight:700;color:var(--brown);letter-spacing:-.01em;display:flex;align-items:center;gap:10px}
.hero .meta::before{content:"";width:28px;height:2px;background:var(--brown)}
.hero-title{font-size:clamp(30px,3.7vw,54px);font-weight:700;line-height:1.22;letter-spacing:-.05em;margin-top:22px}
.hero-title .ln{display:block;overflow:hidden;padding-bottom:.06em;white-space:nowrap}
@media (max-width:420px){.hero-title .ln{white-space:normal}}
.hero-title .ln>span{display:inline-block;animation:lnup 1.1s cubic-bezier(.2,.75,.15,1) both}
.hero-title .ln:nth-child(2)>span{animation-delay:.12s}
.hero-title em{font-style:normal;color:var(--brown)}
@keyframes lnup{from{transform:translateY(105%)}to{transform:none}}
.lede{margin-top:22px;font-size:17px;color:var(--ink-2);max-width:30em;line-height:1.8}
.find{position:relative;margin-top:34px;max-width:560px}
.find form{display:flex;height:60px;border:2px solid var(--brown);border-radius:var(--r);background:#fff;overflow:hidden;box-shadow:var(--shadow-s)}
.find input{flex:1;min-width:0;border:0;outline:0;padding:0 18px;font:inherit;font-size:16px;color:var(--ink);background:none}
.find input::placeholder{color:var(--mute)}
.find button[type=submit]{flex:none;border:0;padding:0 26px;background:var(--brown);color:#fff;font:inherit;font-weight:700;font-size:16px;cursor:pointer}
.sug{position:absolute;left:0;right:0;top:64px;z-index:20;list-style:none;margin:0;padding:6px;background:#fff;border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow);max-height:320px;overflow:auto}
.sug a{display:flex;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:4px;text-decoration:none;font-size:14.5px}
.sug a small{color:var(--mute);font-size:12px;flex:none}
.sug a:hover,.sug a.on{background:var(--brown-soft);color:var(--brown)}
.ex{margin-top:14px;font-size:13.5px;color:var(--mute);display:flex;flex-wrap:wrap;gap:6px;align-items:center}
.ex button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:5px 12px;font:inherit;font-size:13px;color:var(--ink-2);cursor:pointer}
.ex button:hover{border-color:var(--brown);color:var(--brown)}
.hero-vis{position:relative}
.hv-frame{position:relative;aspect-ratio:16/11;border-radius:10px;overflow:hidden;background:var(--bg3);box-shadow:var(--shadow)}
.hv-frame video,.hv-frame .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hv-frame::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,0) 60%,rgba(31,27,24,.25))}
.hv-card{position:absolute;left:-28px;bottom:-28px;display:flex;align-items:center;gap:14px;padding:12px 18px 12px 12px;background:#fff;border-radius:10px;box-shadow:var(--shadow);border:1px solid var(--line)}
.hv-card img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 15%}
.hv-card small{display:block;font-size:12px;color:var(--mute)}
.hv-card b{display:block;font-size:18px}
.hv-card span{display:block;font-size:12.5px;color:var(--brown);font-weight:500}
.hero-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin-top:72px;background:#fff;border:1px solid var(--line);border-radius:10px;box-shadow:var(--shadow-s)}
.st{padding:28px 30px;display:grid;gap:4px}
.st+.st{border-left:1px solid var(--line)}
.st b{font-family:var(--f-num);font-size:clamp(32px,3.4vw,44px);font-weight:700;line-height:1.1;letter-spacing:-.03em;color:var(--brown);font-variant-numeric:tabular-nums}
.st span{font-weight:700;font-size:15px}
.st em{font-style:normal;font-size:13.5px;color:var(--ink-2)}
.st-note{font-size:12px;color:var(--mute);padding:12px 4px 56px}
@media (max-width:960px){.hero{padding-top:36px}.hero-grid{grid-template-columns:1fr;gap:40px}.hv-card{left:12px;bottom:-22px}.hero-stats{grid-template-columns:1fr;margin-top:56px}.st+.st{border-left:0;border-top:1px solid var(--line)}}

/* ===== sections ===== */
.sec{padding-block:clamp(80px,9vw,128px);background:#fff;position:relative}
.sec.alt,.sec.night{background:var(--bg2)}
.night{color:var(--ink)}
.sh{display:grid;grid-template-columns:220px minmax(0,1fr);gap:20px 48px;align-items:start;margin-bottom:52px}
.sh-s{display:block;margin-bottom:18px}
.ix{font-family:var(--f-mono);font-size:12px;letter-spacing:.2em;color:var(--mute);padding-top:12px;border-top:1px solid var(--line-2)}
.ix b{font-family:var(--f-num);font-size:16px;color:var(--brown);margin-right:10px;letter-spacing:0}
.sh h2,.sec-head h2,.two h2,.tl-head h2,.closing-grid h2{font-size:clamp(28px,3.2vw,42px);letter-spacing:-.05em}
.sh h2 em{font-style:normal;color:var(--brown)}
.sh p{margin-top:14px;color:var(--ink-2);max-width:40em;font-size:16.5px}
@media (max-width:820px){.sh{grid-template-columns:1fr;gap:14px;margin-bottom:36px}}
.sec-head{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:20px 64px;align-items:end;margin-bottom:48px}
.sec-head h2{margin-top:12px}
.sec-head p{color:var(--ink-2);max-width:34em}
@media (max-width:820px){.sec-head{grid-template-columns:1fr}}

/* ===== diagnosis ===== */
.diag{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden;box-shadow:var(--shadow-s)}
.dg-sel{padding:34px;display:grid;gap:26px;border-right:1px solid var(--line)}
.diag fieldset{border:0;margin:0;padding:0;min-width:0}
.diag legend{font-weight:700;font-size:15px;margin-bottom:12px}
.opts{display:flex;flex-wrap:wrap;gap:8px}
.opt{position:relative}
.opt input{position:absolute;opacity:0;pointer-events:none}
.opt span{display:inline-block;padding:11px 18px;border:1px solid var(--line-2);border-radius:999px;font-size:15px;cursor:pointer;transition:all .2s;background:#fff}
.opt:hover span{border-color:var(--brown);color:var(--brown)}
.opt input:checked+span{background:var(--brown);border-color:var(--brown);color:#fff;font-weight:700}
.opt input:focus-visible+span{outline:2px solid var(--brown);outline-offset:2px}
.dg-res{padding:34px;background:var(--brown-soft);display:grid;gap:14px;align-content:start}
.dg-res .dr-k{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.16em;color:var(--brown)}
.dg-res h3{font-size:22px}
.dg-res .dr-law{font-size:13.5px;color:var(--ink-2)}
.dg-res ol{margin:4px 0 0;padding:0;list-style:none;display:grid;gap:10px;counter-reset:d}
.dg-res li{counter-increment:d;display:grid;grid-template-columns:28px 1fr;gap:10px;font-size:15.5px;background:#fff;padding:12px 14px;border-radius:var(--r)}
.dg-res li::before{content:counter(d);width:24px;height:24px;border-radius:50%;background:var(--brown);color:#fff;font-size:12px;font-weight:700;display:grid;place-items:center;margin-top:2px}
.dg-res .dr-go{display:flex;gap:8px;flex-wrap:wrap;margin-top:6px}
.dg-res .dr-go .btn{height:46px}
@media (max-width:860px){.diag{grid-template-columns:1fr}.dg-sel{border-right:0;border-bottom:1px solid var(--line);padding:24px}.dg-res{padding:24px}}

/* ===== cases ===== */
.cs-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cs-card{display:grid;gap:12px;align-content:start;padding:28px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:box-shadow .3s,transform .3s}
.cs-card:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.cs-top{display:flex;justify-content:space-between;align-items:center}
.cs-card .tag{font-size:12.5px;font-weight:700;color:var(--brown);background:var(--brown-soft);padding:4px 10px;border-radius:999px}
.cs-card .dt{font-size:13px;color:var(--mute)}
.cs-card h3{font-size:19px;line-height:1.45}
.cs-card p{font-size:14.5px;color:var(--ink-2)}
.cs-card a{font-size:14px;font-weight:700;color:var(--brown);text-decoration:none}
@media (max-width:900px){.cs-grid{grid-template-columns:1fr}}

/* ===== areas ===== */
.ar-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ar-card{display:grid;gap:8px;align-content:start;padding:30px 28px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;transition:box-shadow .3s,transform .3s,border-color .3s}
a.ar-card:hover{box-shadow:var(--shadow);transform:translateY(-3px);border-color:var(--line-2)}
.ar-ic{width:52px;height:52px;border-radius:12px;background:var(--brown-soft);color:var(--brown);display:grid;place-items:center;margin-bottom:10px}
.ar-ic svg{width:28px;height:28px}
.ar-card b{font-size:22px;letter-spacing:-.04em}
.ar-card small{font-size:14px;color:var(--mute)}
.ar-card ul{margin:10px 0 0;padding:12px 0 0;list-style:none;display:grid;gap:8px;border-top:1px solid var(--line)}
.ar-card li{font-size:14px;color:var(--ink-2);padding-left:14px;position:relative;line-height:1.65}
.ar-card li::before{content:"";position:absolute;left:0;top:.7em;width:5px;height:5px;border-radius:50%;background:var(--brown)}
.ar-go{margin-top:8px;font-size:14px;font-weight:700;color:var(--brown);text-decoration:none}
.ar-go::after{content:" →"}
.ar-more{background:var(--bg3);border-style:dashed}
.ar-more b{font-size:19px}
@media (max-width:960px){.ar-grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.ar-grid{grid-template-columns:1fr}}

/* ===== process ===== */
.route{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.rt{padding:30px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;gap:10px;align-content:start}
.rt.on{border-color:var(--brown);box-shadow:inset 0 3px 0 var(--brown)}
.rt small{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.18em;color:var(--brown)}
.rt h3{font-size:21px}
.rt p{color:var(--ink-2);font-size:15px}
.rt ul{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}
.rt li{font-size:13px;padding:5px 10px;background:var(--bg2);border-radius:999px;color:var(--ink-2)}
.flow{list-style:none;margin:40px 0 0;padding:0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border-top:2px solid var(--brown)}
.flow li{padding:22px 18px 0 0;display:grid;gap:6px;align-content:start;position:relative}
.flow li::before{content:"";position:absolute;top:-7px;left:0;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--brown)}
.flow .fn{font-family:var(--f-num);font-size:15px;color:var(--brown);font-weight:700}
.flow b{font-size:16px}
.flow p{font-size:13.5px;color:var(--ink-2);line-height:1.65}
@media (max-width:960px){.route{grid-template-columns:1fr}.flow{grid-template-columns:1fr 1fr;row-gap:28px;border-top:0}.flow li{border-top:2px solid var(--brown)}}
@media (max-width:520px){.flow{grid-template-columns:1fr}}

/* ===== lawyer ===== */
.lw{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:56px;align-items:start}
.lw-photo{position:relative;border-radius:10px;overflow:hidden;background:var(--bg3);box-shadow:var(--shadow)}
.lw-photo img{display:block;width:100%;aspect-ratio:4/5;object-fit:cover;object-position:50% 12%}
.lw-tag{position:absolute;left:16px;bottom:16px;background:#fff;color:var(--brown);font-weight:700;font-size:14px;padding:9px 14px;border-radius:999px;box-shadow:var(--shadow-s)}
.lw-name{font-size:clamp(36px,4.4vw,54px);letter-spacing:-.05em}
.lw-name small{font-size:18px;font-weight:500;color:var(--ink-2);margin-left:10px;letter-spacing:-.02em}
.lw-quote{margin-top:22px;font-size:18px;line-height:1.8;color:var(--ink);padding:20px 22px;background:#fff;border-left:3px solid var(--brown);border-radius:0 var(--r) var(--r) 0}
.cv{margin-top:30px;display:grid;gap:22px}
.cv h3{font-size:14px;color:var(--brown);padding-bottom:8px;border-bottom:1px solid var(--line-2);margin-bottom:10px}
.cv ul{margin:0;padding:0;list-style:none;display:grid;gap:6px}
.cv li{font-size:15px;color:var(--ink-2);padding-left:14px;position:relative}
.cv li::before{content:"";position:absolute;left:0;top:.75em;width:6px;height:1px;background:var(--grey)}
.lw-sub{grid-column:1/-1;display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:24px;margin-top:8px}
.train{background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px}
.train h3{font-size:16px;margin-bottom:14px}
.train ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px}
.train li{display:grid;grid-template-columns:auto 1fr;gap:0 10px;padding:12px;border-radius:var(--r);background:var(--bg2)}
.train li span{grid-row:1/3;font-family:var(--f-num);font-size:14px;color:var(--brown);font-weight:700}
.train li b{font-size:14px}
.train li em{font-style:normal;font-size:12.5px;color:var(--ink-2);line-height:1.5}
.cert{margin:0;background:#fff;border:1px solid var(--line);border-radius:10px;overflow:hidden}
.cert button{all:unset;cursor:zoom-in;display:block}
.cert img{display:block;width:100%;height:auto;max-height:560px;object-fit:contain;background:#fff;padding:14px}
.cert figcaption{padding:12px 16px;border-top:1px solid var(--line);display:grid;gap:2px}.cert figcaption b{font-size:14px;color:var(--brown)}.cert figcaption span{font-size:13px;color:var(--ink-2)}
@media (max-width:960px){.lw{grid-template-columns:1fr;gap:36px}.lw-photo img{aspect-ratio:4/3}.lw-sub{grid-template-columns:1fr}}
@media (max-width:560px){.train ul{grid-template-columns:1fr}}

/* ===== PF ===== */
.pf-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--line);border-left:1px solid var(--line)}
.pf-c{padding:26px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;gap:8px;align-content:start}
.pf-c b{font-size:17px;color:var(--brown)}
.pf-c p{font-size:14.5px;color:var(--ink-2);line-height:1.75}
@media (max-width:900px){.pf-grid{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.pf-grid{grid-template-columns:1fr}}

/* ===== calculators ===== */
.calc,.fee-calc{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;box-shadow:var(--shadow-s)}
.calc-form{padding:34px;display:grid;gap:18px;align-content:start;background:#fff}
.calc-form h3{font-size:20px}
.calc-note{font-size:13.5px;color:var(--ink-2);padding:12px 14px;background:var(--bg2);border-radius:var(--r)}
.calc-out{padding:34px;background:var(--brown-soft);display:grid;gap:16px;align-content:start}
.out-lbl{font-size:14px;font-weight:700;color:var(--brown)}
.out-big{font-family:var(--f-num);font-size:clamp(34px,4.4vw,52px);font-weight:700;line-height:1.1;color:var(--brown);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.out-big small{font-size:.42em;margin-left:4px;font-family:var(--f-sans);font-weight:500;color:var(--ink)}
.out-rows{margin:0;display:grid;background:#fff;border-radius:var(--r);padding:4px 16px}
.out-rows div{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.out-rows div:last-child{border-bottom:0}
.out-rows dt{color:var(--ink-2)}
.out-rows dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums;text-align:right}
.out-foot{font-size:12.5px;color:var(--ink-2)}
@media (max-width:860px){.calc,.fee-calc{grid-template-columns:1fr}.calc-form,.calc-out{padding:24px}}

/* ===== form fields ===== */
.field{display:grid;gap:7px;min-width:0}
.field label,.lbl{font-size:14px;font-weight:700;color:var(--ink)}
.field input,.field select,.field textarea{font:inherit;font-size:15px;color:var(--ink);background:#fff;border:1px solid var(--line-2);border-radius:var(--r);height:50px;padding:0 14px;width:100%;transition:border-color .2s,box-shadow .2s}
.field textarea{height:auto;min-height:120px;padding:12px 14px;resize:vertical}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--brown);box-shadow:0 0 0 3px var(--brown-soft)}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media (max-width:520px){.row2{grid-template-columns:1fr}}
.agree{display:flex;gap:8px;align-items:flex-start;font-size:14px;color:var(--ink-2)}
.agree input{margin-top:5px;accent-color:var(--brown);width:16px;height:16px}
.form-msg{font-size:14px;padding:12px 14px;border-radius:var(--r);background:var(--brown-soft);color:var(--brown)}

/* ===== nation map (light) ===== */
.nation{position:relative;background:var(--bg2);overflow:hidden;padding-block:clamp(80px,9vw,128px)}
.nt-wrap{display:grid;grid-template-columns:5fr 7fr;gap:56px;align-items:center}
.nt-l .eyebrow{color:var(--brown)}
.nt-num{display:flex;align-items:center;gap:16px;margin:22px 0 26px;padding-bottom:26px;border-bottom:1px solid var(--line-2)}
.nt-num b{font-family:var(--f-num);font-size:clamp(76px,8vw,104px);font-weight:700;line-height:.85;letter-spacing:-.04em;color:var(--brown)}
.nt-num span{font-size:15px;color:var(--ink-2);line-height:1.6}
.nt-l h2{font-size:clamp(30px,3.4vw,46px);letter-spacing:-.05em;line-height:1.3}
.nt-l h2 em{font-style:normal;color:var(--brown)}
.nt-l p.d{margin-top:20px;color:var(--ink-2);line-height:1.85}
.nt-chk{display:flex;gap:16px;flex-wrap:wrap;margin-top:20px;font-size:14px;color:var(--ink-2)}
.nt-chk span::before{content:"✓";color:var(--brown);margin-right:6px;font-weight:700}
.nt-panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);overflow:hidden}
.nt-head{padding:30px 32px 0;position:relative;z-index:2}
.nt-head small{font-family:var(--f-mono);font-size:11.5px;letter-spacing:.24em;color:var(--brown)}
.nt-head h3{font-size:26px;margin-top:10px}
.nt-head p{font-size:15px;color:var(--ink-2);margin-top:4px}
.nt-map{position:relative;height:480px;margin-top:-50px;perspective:1300px}
.nt-map svg{position:absolute;left:50%;top:50%;width:420px;height:auto;transform:translate(-46%,-50%) rotateX(30deg) rotateZ(-7deg);transform-style:preserve-3d;overflow:visible;filter:drop-shadow(0 30px 26px rgba(90,45,22,.22))}
.nt-map .ex use{fill:#d8cfc6;stroke:#c7bbae;stroke-width:.5}
.nt-map .top use{fill:url(#stone);stroke:#b4a698;stroke-width:.9;stroke-linejoin:round;transition:fill .25s;cursor:pointer}
.nt-map .top a.visit use{fill:url(#gold)}
.nt-map .top a:hover use,.nt-map .top a:focus use{fill:url(#gold)}
.nt-map .top a:focus{outline:none}
.nt-map .pin{fill:#fff}.nt-map .ring{fill:none;stroke:#fff;stroke-width:1.4;animation:ring 2.4s ease-out infinite;transform-box:fill-box;transform-origin:center}
@keyframes ring{0%{opacity:.9;transform:scale(.4)}100%{opacity:0;transform:scale(2.6)}}
.nt-tip{position:absolute;pointer-events:none;background:#fff;border:1px solid var(--brown);color:var(--ink);font-size:13px;padding:8px 12px;border-radius:var(--r);white-space:nowrap;opacity:0;transform:translate(-50%,-130%);transition:opacity .15s;z-index:3;box-shadow:var(--shadow-s)}
.nt-tip b{color:var(--brown);margin-right:6px}
.nt-legend{position:absolute;right:26px;top:80px;display:grid;gap:8px;font-size:12.5px;color:var(--ink-2);z-index:2}
.nt-legend i{display:inline-block;width:10px;height:10px;margin-right:8px;vertical-align:-1px;border-radius:2px}
.nt-legend .v{background:linear-gradient(135deg,#9a6a48,#5a2d16)}.nt-legend .r{background:#ece6df;border:1px solid #b4a698}
.nt-chips{margin:0 22px;padding:18px;border:1px solid var(--line);border-radius:var(--r);position:relative;z-index:2;background:#fff}
.nt-chips h4{font-size:14px;margin-bottom:12px}
.nt-chips div{display:flex;flex-wrap:wrap;gap:6px}
.nt-chips a{font-size:13.5px;padding:6px 12px;border:1px solid var(--line-2);border-radius:999px;text-decoration:none;transition:all .2s}
.nt-chips a:hover,.nt-chips a.hl{background:var(--brown);border-color:var(--brown);color:#fff}
.nt-steps{display:grid;grid-template-columns:repeat(3,1fr);margin:10px 22px 0;border:1px solid var(--line);border-radius:var(--r)}
.nt-steps div{padding:14px 16px;font-size:14px;font-weight:700}.nt-steps div+div{border-left:1px solid var(--line)}
.nt-steps small{font-family:var(--f-num);color:var(--brown);margin-right:6px}
.nt-cta{display:flex;justify-content:center;align-items:center;height:60px;margin-top:22px;background:var(--brown);color:#fff;font-weight:700;font-size:16px;text-decoration:none}
.nt-cta:hover{background:var(--brown-2)}
.nt-credit{font-size:10.5px;color:var(--mute);text-align:right;padding:6px 12px 8px}
@media(max-width:1060px){.nt-wrap{grid-template-columns:1fr;gap:44px}}
@media(max-width:720px){.nt-map{height:360px;margin-top:-36px}.nt-map svg{width:290px;transform:translate(-50%,-50%) rotateX(30deg) rotateZ(-7deg)}.nt-legend{top:auto;bottom:8px;right:14px}.nt-head{padding:24px 20px 0}.nt-chips,.nt-steps{margin-left:14px;margin-right:14px}.nt-steps{grid-template-columns:1fr}.nt-steps div+div{border-left:0;border-top:1px solid var(--line)}}

/* ===== guides ===== */
.gd-grid,.guide-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.gcard{display:grid;gap:14px;align-content:start;padding:28px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;transition:box-shadow .3s,transform .3s}
.gcard:hover{box-shadow:var(--shadow);transform:translateY(-3px)}
.gcard .eyebrow{font-size:11px}
.gcard b{font-size:21px}
.gcard ul{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.gcard li{font-size:14px;color:var(--ink-2);padding-left:20px;position:relative;line-height:1.6}
.gcard li::before{content:"Q";position:absolute;left:0;top:1px;font-weight:700;font-size:13px;color:var(--brown)}
.gcard .go{font-weight:700;font-size:14px;color:var(--brown)}
@media (max-width:900px){.gd-grid,.guide-cards{grid-template-columns:1fr}}

/* ===== faq ===== */
.faq details{border-bottom:1px solid var(--line)}
.faq details:first-of-type{border-top:2px solid var(--ink)}
.faq summary{cursor:pointer;list-style:none;padding:22px 48px 22px 34px;position:relative;font-weight:700;font-size:17px}
.faq summary::before{content:"Q";position:absolute;left:0;top:21px;font-family:var(--f-num);color:var(--brown);font-size:19px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"";position:absolute;right:6px;top:30px;width:10px;height:10px;border-right:2px solid var(--ink-2);border-bottom:2px solid var(--ink-2);transform:translateY(-4px) rotate(45deg);transition:transform .3s}
.faq details[open] summary::after{transform:translateY(2px) rotate(-135deg)}
.faq details>p,.faq .a{padding:0 0 24px 34px;color:var(--ink-2);max-width:46em}
.faq .a{display:grid;gap:8px}
.kwbox{margin-top:36px;padding:22px 24px;background:var(--bg2);border-radius:10px}
.kwbox b{font-size:14px}
.kwbox p{margin-top:10px;display:flex;flex-wrap:wrap;gap:6px}
.kwbox a{font-size:13.5px;padding:6px 12px;background:#fff;border:1px solid var(--line);border-radius:999px;text-decoration:none;color:var(--ink-2)}
.kwbox a:hover{border-color:var(--brown);color:var(--brown)}

/* ===== consult ===== */
.consult-sec{background:var(--brown-soft)}
.consult{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:start}
.cs-l h2{font-size:clamp(28px,3.2vw,40px);letter-spacing:-.05em}
.tel{display:inline-block;margin-top:22px;font-family:var(--f-num);font-size:clamp(34px,4vw,48px);font-weight:700;color:var(--brown);text-decoration:none;letter-spacing:-.02em}
.note{margin-top:10px;color:var(--ink-2);font-size:15px}
.cs-photo{margin:26px 0 0;border-radius:10px;overflow:hidden}
.cs-photo img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover;object-position:40% 30%}
.pledge{margin-top:20px;display:grid;gap:10px}
.pledge div{display:grid;gap:2px;padding:14px 16px;background:#fff;border-radius:var(--r)}
.pledge b{font-size:15px}
.pledge span{font-size:13.5px;color:var(--ink-2)}
.form{background:#fff;border:1px solid var(--line);border-radius:12px;padding:clamp(24px,3.4vw,36px);display:grid;gap:18px;box-shadow:var(--shadow)}
.grp{display:grid;gap:10px}
.tg{display:flex;flex-wrap:wrap;gap:6px}
.tgi{position:relative}
.tgi input{position:absolute;opacity:0;pointer-events:none}
.tgi span{display:inline-block;padding:9px 14px;border:1px solid var(--line-2);border-radius:999px;font-size:14px;cursor:pointer;transition:all .2s}
.tgi input:checked+span{background:var(--brown);border-color:var(--brown);color:#fff;font-weight:700}
.tgi input:focus-visible+span{outline:2px solid var(--brown);outline-offset:2px}
.form .btn{width:100%;height:56px;font-size:16px}
@media (max-width:900px){.consult{grid-template-columns:1fr;gap:36px}}
.closing-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:56px}
.closing-grid h2{margin:12px 0 26px}
.contact-line{display:flex;flex-wrap:wrap;gap:6px 18px;margin-top:16px;font-size:14px;color:var(--ink-2)}
.contact-line b{color:var(--brown)}
.consult-photo{margin:0 0 18px;border-radius:10px;overflow:hidden}
.consult-photo img{display:block;width:100%;aspect-ratio:16/9;object-fit:cover}
.consult-photo figcaption{padding:10px 2px;font-size:14px;color:var(--ink-2)}
@media (max-width:920px){.closing-grid{grid-template-columns:1fr;gap:44px}}

/* ===== office ===== */
.ofc{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:40px;align-items:start}
.ofc-gal{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:130px;gap:8px}
.ofc-gal button{all:unset;cursor:zoom-in;border-radius:8px;overflow:hidden;background:var(--bg3)}
.ofc-gal img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s}
.ofc-gal button:hover img{transform:scale(1.04)}
.ofc-gal .g1{grid-column:1/-1;grid-row:span 2}
.ofc-in h3{font-size:24px}
.ofc-in h3 small{display:block;font-size:14px;font-weight:500;color:var(--mute);margin-top:4px;letter-spacing:-.01em}
.ofc-addr{margin-top:16px;font-size:17px;font-weight:700}
.ofc-info{margin:18px 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}
.ofc-info li{display:grid;grid-template-columns:70px 1fr;gap:12px;padding:13px 0;border-bottom:1px solid var(--line);font-size:14.5px}
.ofc-info b{color:var(--brown)}
.ofc-info span{color:var(--ink-2)}
.ofc-btns{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.ofc-btns .btn{height:48px}
@media (max-width:900px){.ofc{grid-template-columns:1fr}.ofc-gal{grid-auto-rows:90px}}

/* ===== sub pages ===== */
.ph{position:relative;background:var(--bg2);overflow:hidden;border-bottom:1px solid var(--line)}
.ph-bg{position:absolute;top:0;right:0;width:46%;height:100%;object-fit:cover;-webkit-mask-image:linear-gradient(90deg,transparent,#000 40%);mask-image:linear-gradient(90deg,transparent,#000 40%);opacity:.9}
.ph-in{position:relative;z-index:2;padding-block:72px 96px}
.ph .eyebrow{color:var(--brown)}
.crumb{display:flex;flex-wrap:wrap;gap:8px;font-size:13.5px;color:var(--mute);list-style:none;margin:0 0 22px;padding:0}
.crumb li+li::before{content:"›";margin-right:8px}
.crumb a{text-decoration:none}
.crumb a:hover{color:var(--brown)}
.ph h1{font-size:clamp(34px,4.6vw,56px);letter-spacing:-.05em;max-width:12em}
.ph .lead{margin-top:18px;max-width:34em;color:var(--ink-2);font-size:17px}
@media (max-width:860px){.ph-bg{width:100%;opacity:.14;-webkit-mask-image:none;mask-image:none}.ph-in{padding-block:48px 80px}}
.summary{margin-top:-48px;position:relative;z-index:3}
.summary-box{background:#fff;border:1px solid var(--line);border-radius:12px;padding:clamp(22px,3.4vw,34px);box-shadow:var(--shadow);display:grid;gap:18px}
.summary-box h2{font-size:21px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.summary-box ul{margin:0;padding:0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.summary-box li{padding:18px;border-radius:var(--r);background:var(--brown-soft);display:grid;gap:6px;align-content:start}
.summary-box li b{color:var(--brown)}
.summary-box li span{font-size:14.5px;color:var(--ink-2);line-height:1.7}
@media (max-width:860px){.summary-box ul{grid-template-columns:1fr}}
.cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.case{padding:22px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;gap:6px}
.case b{font-size:17px}
.case span{font-size:14px;color:var(--ink-2)}
.case-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:16px}
.ccard{padding:26px;border:1px solid var(--line);border-radius:10px;background:#fff;display:grid;gap:10px}
.ccard-top{display:flex;justify-content:space-between;align-items:center}
.ccard-date{font-size:13px;color:var(--mute)}
.ccard h3{font-size:19px;line-height:1.45}
.ccard p{font-size:14.5px;color:var(--ink-2)}
.ccard-go{font-size:14px;font-weight:700;color:var(--brown);text-decoration:none}
.ccard .chip{background:var(--brown-soft);color:var(--brown);border:0;font-weight:700}
.reg{margin:0;border-top:2px solid var(--ink)}
.reg-row{display:grid;grid-template-columns:170px minmax(0,1fr);border-bottom:1px solid var(--line)}
.reg-row dt{padding:20px 0;font-weight:700;color:var(--brown);font-size:15px}
.reg-row dd{margin:0;padding:20px 0;min-width:0;color:var(--ink-2)}
.reg-row ul{margin:0;padding-left:1.1em;display:grid;gap:6px}
.reg-row .chip{margin:2px}
@media (max-width:700px){.reg-row{grid-template-columns:1fr}.reg-row dt{padding-bottom:0}}
.two{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.6fr);gap:56px}
.two .side p{color:var(--ink-2);margin-top:14px}
@media (max-width:860px){.two{grid-template-columns:1fr;gap:24px}}
.prose{display:grid;gap:14px;max-width:46em;color:var(--ink-2);font-size:16.5px}
.prose strong{color:var(--ink)}
.tl-grid{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.4fr);gap:56px}
.tl-head{position:sticky;top:110px;align-self:start}
.tl-head p{color:var(--ink-2);margin-top:14px}
.tl{list-style:none;margin:0;padding:0 0 0 40px;position:relative;counter-reset:st}
.tl::before,.tl::after{content:"";position:absolute;left:11px;top:8px;bottom:8px;width:2px;background:var(--line)}
.tl::after{background:var(--brown);transform-origin:top;transform:scaleY(var(--prog,0))}
.tl li{position:relative;counter-increment:st;padding-bottom:12px}
.tl li::before{content:"";position:absolute;left:-35px;top:24px;width:12px;height:12px;border-radius:50%;background:#fff;border:2px solid var(--brown);z-index:1}
.tl-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:20px 22px;display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 16px}
.tl-card .n{grid-row:1/3;font-family:var(--f-num);font-weight:700;color:var(--brown)}
.tl-card .n::before{content:counter(st,decimal-leading-zero)}
.tl-card b{font-size:17px}
.tl-card p{color:var(--ink-2);font-size:15px}
.tl-card .tag{grid-column:2;margin-top:6px;display:flex;flex-wrap:wrap;gap:6px}
@media (max-width:860px){.tl-grid{grid-template-columns:1fr;gap:26px}.tl-head{position:static}}
.area-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.area-link{display:grid;gap:4px;padding:20px 22px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;position:relative;transition:border-color .2s,box-shadow .2s}
.area-link::after{content:"→";position:absolute;right:18px;top:20px;color:var(--brown)}
.area-link:hover{border-color:var(--brown);box-shadow:var(--shadow-s)}
.area-link b{font-size:16px;padding-right:22px}
.area-link span{font-size:13.5px;color:var(--mute)}
.atty{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:56px;align-items:center}
.atty-img{margin:0;border-radius:10px;overflow:hidden;box-shadow:var(--shadow);background:var(--bg3)}
.atty-img img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;object-position:50% 20%}
.atty-txt{display:grid;gap:12px}
.atty-txt .eyebrow{color:var(--brown)}
.atty-txt h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.05em}
.atty-cred{font-weight:700;color:var(--brown)}
.atty-txt ul{margin:0;padding:12px 0 0;list-style:none;display:grid;gap:6px;color:var(--ink-2);border-top:1px solid var(--line)}
.atty-txt li{padding-left:14px;position:relative}
.atty-txt li::before{content:"";position:absolute;left:0;top:.75em;width:6px;height:1px;background:var(--grey)}
@media (max-width:860px){.atty{grid-template-columns:1fr;gap:28px}}
.courts{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:12px}
.court{padding:18px 20px;border:1px solid var(--line);border-radius:10px;background:#fff}
.court b{display:block;color:var(--brown)}
.court span{font-size:14px;color:var(--ink-2)}
.cities{display:flex;flex-wrap:wrap;gap:6px}
.cities span{padding:6px 12px;border:1px solid var(--line);border-radius:999px;background:#fff;font-size:14px}
.regions{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:12px}
.region{display:flex;flex-direction:column;gap:4px;padding:20px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;transition:border-color .2s,box-shadow .2s}
.region:hover{border-color:var(--brown);box-shadow:var(--shadow-s)}
.region b{font-size:16px}
.region small{font-size:13px;color:var(--mute);line-height:1.5}
.tbl-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}
.tbl{width:100%;border-collapse:collapse;font-size:14.5px;min-width:560px}
.tbl th,.tbl td{padding:14px 18px;text-align:left;border-bottom:1px solid var(--line);vertical-align:top}
.tbl th{font-size:13px;color:var(--brown);background:var(--brown-soft)}
.tbl tr:last-child td{border-bottom:0}
.tbl td.num{font-variant-numeric:tabular-nums;white-space:nowrap}
.guide-grid{display:grid;grid-template-columns:250px minmax(0,1fr);gap:56px;align-items:start}
.guide-side{position:sticky;top:100px;display:grid;gap:12px}
.toc{display:flex;flex-direction:column;border-top:2px solid var(--ink)}
.toc .chip{border:0;border-bottom:1px solid var(--line);border-radius:0;padding:11px 2px;font-size:14.5px;text-decoration:none;color:var(--ink);background:none}
.toc .chip:hover{color:var(--brown)}
.qa-cat+.qa-cat{margin-top:64px}
.qa-cat h2{font-size:22px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.qa{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.3fr);gap:10px 44px;padding:26px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}
.qa h3{font-size:17px;line-height:1.55;display:flex;gap:10px}
.qa h3 .q{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:12px;background:var(--brown);color:#fff}
.qa p{color:var(--ink-2);line-height:1.85}
.qa p strong{color:var(--ink);background:linear-gradient(transparent 62%,var(--brown-soft) 62%)}
.qa:target{background:var(--brown-soft);padding-inline:14px;border-radius:var(--r)}
@media (max-width:900px){.guide-grid{grid-template-columns:1fr;gap:26px}.guide-side{position:static}.toc{flex-direction:row;flex-wrap:wrap;border-top:0;gap:6px}.toc .chip{border:1px solid var(--line);border-radius:999px;padding:6px 12px;font-size:13px}.qa{grid-template-columns:1fr}}
.more-areas,.stats-band{display:none}

/* ===== lightbox ===== */
.lb{position:fixed;inset:0;z-index:95;background:rgba(255,255,255,.97);display:grid;place-items:center;padding:max(24px,env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) max(24px,env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.lb figure{margin:0;text-align:center}
.lb img{max-width:100%;max-height:84vh;object-fit:contain;border-radius:8px;box-shadow:var(--shadow)}
.lb p{color:var(--ink-2);font-size:14px;margin-top:12px}
.lb-close{all:unset;cursor:pointer;position:absolute;top:calc(14px + env(safe-area-inset-top,0px));right:calc(16px + env(safe-area-inset-right,0px));color:var(--ink);font-size:30px;line-height:1;padding:8px 12px}

/* ===== footer ===== */
.ft{background:var(--bg2);border-top:1px solid var(--line);color:var(--ink-2);font-size:14px;padding-block:64px 36px}
.ft-top{display:grid;grid-template-columns:minmax(0,1.3fr) repeat(3,minmax(0,auto));gap:32px 56px}
.ft h4{font-size:14px;color:var(--ink);margin-bottom:14px}
.ft ul{list-style:none;margin:0;padding:0;display:grid;gap:8px}
.ft a{text-decoration:none}
.ft a:hover{color:var(--brown)}
.ft dl{margin:18px 0 0;display:grid;gap:6px}
.ft dl div{display:flex;gap:12px}
.ft dt{color:var(--mute);min-width:5.5em}
.ft dd{margin:0;color:var(--ink)}
.ft-logo{display:inline-block;line-height:0}
.ft-logo img{display:block;width:200px;height:auto}
.wordmark{display:none}
.ft .legal{margin-top:44px;border-top:1px solid var(--line-2);padding-top:20px;font-size:13px;line-height:1.8;color:var(--mute)}
@media (max-width:860px){.ft-top{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.ft-top{grid-template-columns:1fr}}

/* ===== right quick menu ===== */
.rbar{display:none}
@media(min-width:1280px){
 .rbar{position:fixed;right:16px;top:50%;z-index:58;display:flex;flex-direction:column;width:96px;transform:translate(140%,-50%);transition:transform .8s cubic-bezier(.16,.8,.24,1);background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
 .rbar.on{transform:translate(0,-50%)}
 .rb-hd{padding:12px 6px 10px;text-align:center;border-bottom:1px solid var(--line)}
 .rb-hd small{display:block;font:500 9px/1 var(--f-mono);letter-spacing:.26em;color:var(--brown);margin-bottom:5px}
 .rb-hd b{font-size:12.5px}
 .rbar a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 4px;font-size:12px;font-weight:500;text-align:center;text-decoration:none;border-bottom:1px solid var(--line);transition:background .2s,color .2s}
 .rbar a:hover{background:var(--brown-soft);color:var(--brown)}
 .rbar a i{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;color:var(--brown);background:var(--brown-soft)}
 .rbar a i svg{width:17px;height:17px}
 .rbar .rb-tel{background:var(--brown);color:#fff}
 .rbar .rb-tel:hover{background:var(--brown-2);color:#fff}
 .rbar .rb-tel i{background:rgba(255,255,255,.16);color:#fff}
 .rbar .rb-tel small{display:block;font-size:10px;opacity:.8}
 .rbar .rb-tel span{font-size:11px;font-weight:700;white-space:nowrap;line-height:1.3}
 .rb-top{display:flex;flex-direction:column;align-items:center;gap:2px;padding:9px 0 11px;border:0;background:none;color:var(--brown);font:500 10px/1 var(--f-mono);letter-spacing:.2em;cursor:pointer}
 .rb-top svg{width:16px;height:16px}
}

/* ===== bottom quick bar ===== */
.qb{position:fixed;left:50%;bottom:16px;z-index:55;width:min(1080px,calc(100% - 200px));transform:translate(-50%,160%);transition:transform .55s cubic-bezier(.16,.8,.24,1);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:0 20px 50px -18px rgba(60,40,25,.4)}
.qb.on{transform:translate(-50%,0)}
.qb-in{display:flex;align-items:center;gap:10px;padding:12px 52px 12px 18px;flex-wrap:wrap}
.qb-t{flex:none;padding-right:14px;border-right:1px solid var(--line)}
.qb-t small{display:block;font:500 9.5px/1 var(--f-mono);letter-spacing:.24em;color:var(--brown);margin-bottom:4px}
.qb-t b{font-size:15.5px;white-space:nowrap}
.qb-f{display:flex;align-items:center;gap:8px;flex:1;min-width:130px;height:46px;padding:0 14px;border:1px solid var(--line-2);border-radius:8px}
.qb-f span{flex:none;color:var(--brown);font-size:13px;font-weight:700}
.qb-f input,.qb-f select{flex:1;min-width:0;height:100%;border:0;background:none;outline:0;font:inherit;font-size:15px;color:var(--ink)}
.qb-f input::placeholder{color:var(--mute)}
.qb-f:focus-within{border-color:var(--brown)}
.qb-sel{flex:.9}
.qb-ag{flex:none;display:flex;align-items:center;gap:6px;color:var(--ink-2);font-size:13px;white-space:nowrap;cursor:pointer}
.qb-ag input{width:16px;height:16px;accent-color:var(--brown)}
.qb-go{flex:none;height:46px;padding:0 24px;border:0;border-radius:8px;font:inherit;font-weight:700;font-size:15px;color:#fff;background:var(--brown);cursor:pointer}
.qb-go:hover{background:var(--brown-2)}
.qb-m{flex-basis:100%;margin:0;font-size:13px;color:var(--brown)}.qb-m:empty{display:none}
.qb-x{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:30px;height:30px;border:0;border-radius:50%;background:var(--bg2);color:var(--ink-2);font-size:20px;cursor:pointer}
@media(max-width:1279px){.qb{width:calc(100% - 32px)}}
@media(max-width:1100px){.qb-t,.qb-sel{display:none}}
@media(max-width:760px){.qb{display:none}}

/* ===== mobile bar + sheet ===== */
.mbar{display:none}
@media(max-width:760px){
 .mbar{display:grid;grid-template-columns:1fr 1.4fr;position:fixed;left:0;right:0;bottom:0;z-index:56;background:#fff;border-top:1px solid var(--line);padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);box-shadow:0 -8px 24px -12px rgba(60,40,25,.25)}
 .mbar a,.mbar button{display:flex;align-items:center;justify-content:center;gap:8px;height:58px;border:0;font:inherit;font-weight:700;font-size:15px;text-decoration:none;cursor:pointer}
 .mbar svg{width:19px;height:19px}
 .mbar .t{color:var(--brown);background:#fff}
 .mbar .c{background:var(--brown);color:#fff}
 .ft{padding-bottom:110px}
}
.qs{position:fixed;inset:0;z-index:96;visibility:hidden}.qs.on{visibility:visible}
.qs-bg{position:absolute;inset:0;background:rgba(31,27,24,.4);opacity:0;transition:opacity .3s}.qs.on .qs-bg{opacity:1}
.qs-in{position:absolute;left:0;right:0;bottom:0;max-height:92vh;overflow:auto;padding:12px max(20px,env(safe-area-inset-right,0px)) calc(20px + env(safe-area-inset-bottom,0px)) max(20px,env(safe-area-inset-left,0px));background:#fff;border-radius:18px 18px 0 0;transform:translateY(100%);transition:transform .38s cubic-bezier(.16,.8,.24,1);display:grid;gap:12px;max-width:560px;margin:0 auto}
.qs.on .qs-in{transform:none}
.qs-h{display:block;width:40px;height:4px;border-radius:4px;background:var(--line-2);margin:0 auto 6px}
.qs-x{position:absolute;right:14px;top:14px;width:34px;height:34px;border:0;border-radius:50%;background:var(--bg2);font-size:20px;color:var(--ink-2);cursor:pointer}
.qs-in small{font:500 10px/1 var(--f-mono);letter-spacing:.24em;color:var(--brown)}
.qs-in h3{font-size:21px}
.qs-in>p{font-size:14px;color:var(--ink-2)}
.qs-in label{display:grid;gap:6px;font-size:13.5px;font-weight:700}
.qs-in label input:not([type=checkbox]),.qs-in label select{font:inherit;height:48px;padding:0 12px;border:1px solid var(--line-2);border-radius:8px;background:#fff}
.qs-in .qs-ag{display:flex;gap:8px;align-items:flex-start;font-weight:400;color:var(--ink-2)}
.qs-go{height:54px;border:0;border-radius:8px;background:var(--brown);color:#fff;font:inherit;font-weight:700;font-size:16px;cursor:pointer}
.qs-m{font-size:13px;color:var(--brown)}.qs-m:empty{display:none}
.qs-or{font-size:13px;color:var(--ink-2);text-align:center}.qs-or a{color:var(--brown);font-weight:700}

/* ===== youtube shorts ===== */
.yt-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.yt-card{display:grid;gap:10px;text-decoration:none;align-content:start}
.yt-th{position:relative;display:block;aspect-ratio:9/15;border-radius:10px;overflow:hidden;background:linear-gradient(160deg,#7a4527,#5a2d16);box-shadow:var(--shadow-s)}
.yt-th img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transform:scale(1.35);transition:transform .5s}
.yt-card:hover .yt-th img{transform:scale(1.42)}
.yt-th::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(31,20,12,.55))}
.yt-play{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px 0 0 -26px;border-radius:50%;background:rgba(255,255,255,.92);z-index:2;box-shadow:0 8px 20px -6px rgba(0,0,0,.4)}
.yt-play::before{content:"";position:absolute;left:21px;top:16px;border-left:15px solid var(--brown);border-top:10px solid transparent;border-bottom:10px solid transparent}
.yt-th em{position:absolute;left:12px;bottom:12px;z-index:2;font-style:normal;font-size:12px;font-weight:700;color:#fff;background:rgba(90,45,22,.85);padding:4px 10px;border-radius:999px}
.yt-card b{font-size:15.5px;line-height:1.5}
.yt-card:hover b{color:var(--brown)}
.yt-card small{font-size:12.5px;color:var(--mute)}
.yt-more{margin-top:32px;text-align:center}
@media (max-width:900px){.yt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== refined two-tone icons ===== */
.ar-ic,.rt-ic,.gc-ic{width:72px;height:72px;border-radius:18px;background:linear-gradient(145deg,#fbf6f2,#efe4da);color:var(--brown);display:grid;place-items:center;margin-bottom:14px;box-shadow:inset 0 1px 0 #fff,0 1px 0 rgba(90,45,22,.06),0 10px 20px -14px rgba(90,45,22,.45);border:1px solid #eadfd5;transition:background .35s,color .35s,transform .35s}
.ar-ic svg,.rt-ic svg,.gc-ic svg{width:48px;height:48px;overflow:visible}
.ar-ic svg .f,.rt-ic svg .f,.gc-ic svg .f{fill:currentColor;fill-opacity:.13;stroke:none}
.ar-ic svg .w,.rt-ic svg .w,.gc-ic svg .w{fill:#fff}
a.ar-card:hover .ar-ic,.gcard:hover .gc-ic{background:linear-gradient(145deg,#74401f,#5a2d16);color:#fff;transform:translateY(-2px)}
a.ar-card:hover .ar-ic svg .w,.gcard:hover .gc-ic svg .w{fill:#5a2d16}
a.ar-card:hover .ar-ic svg .f,.gcard:hover .gc-ic svg .f{fill-opacity:.22}
.ar-more .ar-ic{background:#fff}
.rt-ic{width:60px;height:60px;border-radius:16px;margin-bottom:6px}
.rt-ic svg{width:42px;height:42px}
.rt.on .rt-ic{background:linear-gradient(145deg,#74401f,#5a2d16);color:#fff;border-color:#5a2d16}
.rt.on .rt-ic svg .w{fill:#5a2d16}
.rt.on .rt-ic svg .f{fill-opacity:.22}
.gc-ic{width:56px;height:56px;border-radius:15px;margin-bottom:2px}
.gc-ic svg{width:40px;height:40px}
.ar-card .more-links{gap:0;border-top:1px solid var(--line-2)}
.ar-card .more-links li{padding:0}
.ar-card .more-links li::before{display:none}
.ar-card .more-links a{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--line-2);text-decoration:none;font-weight:700;font-size:14.5px;color:var(--ink)}
.ar-card .more-links a small{font-weight:400;font-size:12.5px;color:var(--mute);text-align:right}
.ar-card .more-links a:hover{color:var(--brown)}
.ar-card .more-links a::after{content:"→";color:var(--brown);margin-left:auto;padding-left:6px}
.ft-top ul{max-height:none}
button.yt-card{all:unset;box-sizing:border-box;display:grid;gap:10px;align-content:start;cursor:pointer}
button.yt-card:focus-visible{outline:2px solid var(--brown);outline-offset:4px;border-radius:10px}
.yt-th img{transform:none;object-position:50% 0}
.yt-card:hover .yt-th img{transform:scale(1.04)}
.yt-th video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .3s}
.yt-card.playing .yt-th video{opacity:1}
.yt-card.playing .yt-play{opacity:0}
.yt-play{transition:opacity .3s}
.sv{position:fixed;inset:0;z-index:97;display:grid;place-items:center;padding:max(20px,env(safe-area-inset-top,0px)) 16px max(20px,env(safe-area-inset-bottom,0px))}
.sv-bg{position:absolute;inset:0;background:rgba(31,27,24,.72)}
.sv-in{position:relative;width:min(400px,100%);display:grid;gap:12px}
.sv-in video{width:100%;max-height:78vh;aspect-ratio:9/16;background:#000;border-radius:14px;object-fit:contain}
.sv-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;background:#fff;border-radius:10px;padding:12px 14px}
.sv-meta b{font-size:14.5px}
.sv-meta a{flex:none;font-size:13px;font-weight:700;color:var(--brown);text-decoration:none}
.sv-x{position:absolute;top:-44px;right:0;width:38px;height:38px;border:0;border-radius:50%;background:#fff;color:var(--ink);font-size:22px;cursor:pointer}
.gd-more-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px;margin:52px 0 16px;padding-top:24px;border-top:1px solid var(--line-2)}
.gd-more-h b{font-size:19px}
.gd-more-h span{font-size:14px;color:var(--mute)}
.gd-more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.gm-card{display:grid;gap:12px;align-content:start;padding:22px;border:1px solid var(--line);border-radius:10px;background:#fff;transition:box-shadow .3s}
.gm-card:hover{box-shadow:var(--shadow-s)}
.gm-top{display:flex;align-items:center;gap:12px;text-decoration:none}
.gm-top .gc-ic{width:48px;height:48px;border-radius:13px;margin:0;flex:none}
.gm-top .gc-ic svg{width:32px;height:32px}
.gm-top b{display:block;font-size:16px;line-height:1.35}
.gm-top small{display:block;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.14em;color:var(--brown);margin-top:2px}
.gm-card ul{margin:0;padding:10px 0 0;list-style:none;display:grid;gap:7px;border-top:1px solid var(--line)}
.gm-card li a{display:block;padding-left:18px;position:relative;font-size:13.5px;line-height:1.55;color:var(--ink-2);text-decoration:none}
.gm-card li a::before{content:"Q";position:absolute;left:0;top:1px;font-weight:700;font-size:12px;color:var(--brown)}
.gm-card li a:hover{color:var(--brown)}
.gm-card .go{font-weight:700;font-size:13.5px;color:var(--brown);text-decoration:none}
.gm-card:hover .gc-ic{background:linear-gradient(145deg,#74401f,#5a2d16);color:#fff}
.gm-card:hover .gc-ic svg .w{fill:#5a2d16}
@media (max-width:1060px){.gd-more{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:560px){.gd-more{grid-template-columns:1fr}}
@media (min-width:1280px){.gd-more{grid-template-columns:repeat(5,minmax(0,1fr))}.gm-card{padding:20px 18px}}
/* SNS: YouTube + NAVER Blog */
.sns{display:flex;flex-wrap:wrap;gap:10px}
.sns a{display:inline-flex;align-items:center;gap:12px;padding:12px 20px 12px 14px;border:1px solid var(--line);border-radius:999px;background:#fff;text-decoration:none;color:var(--ink);font-weight:700;font-size:14.5px;line-height:1.25;transition:border-color .25s,box-shadow .25s,transform .25s}
.sns a:hover{transform:translateY(-2px);box-shadow:var(--shadow-s)}
.sns .sns-yt:hover{border-color:#ffb3b3}
.sns .sns-nb:hover{border-color:#9be3bd}
.sns .lg{width:34px;height:auto;flex:none;display:block}
.sns .sns-nb .lg{width:30px}
.sns small{display:block;font-family:var(--f-mono);font-size:10px;letter-spacing:.14em;font-weight:500;color:var(--mute);margin-bottom:2px}
.yt-sns{justify-content:center;margin-top:34px}
.yt-sns a{padding:15px 26px 15px 18px;font-size:15.5px}
.ft-sns{margin-top:22px}
.ft-sns a{padding:9px 16px 9px 11px;font-size:13.5px}
.ft-sns .lg{width:28px}.ft-sns .sns-nb .lg{width:25px}
.rbar .rb-sns{display:flex;flex-direction:column;align-items:center;gap:6px}
.rbar .rb-sns .lg{width:26px;height:auto}
.rbar .rb-sns[href*="naver"] .lg{width:24px}
.ofc-btns{flex-wrap:wrap}
.btn-map{display:inline-flex;align-items:center;gap:9px;padding-left:14px}
.btn-map .mi{width:24px;height:24px;flex:none;display:block}
.ofc-btns{gap:8px}
.ofc-btns .btn{padding-left:16px;padding-right:16px}
.ofc-btns .btn-map{padding-left:12px;gap:7px}
.btn-map .mi{width:22px;height:22px}
/* KakaoTalk channel */
.sns .sns-kt:hover{border-color:#f3dc4a}
.sns .sns-kt .lg{width:30px}.ft-sns .sns-kt .lg{width:25px}
.rbar .rb-kt{display:flex;flex-direction:column;align-items:center;gap:6px;background:#FEE500;color:#3A1D1D !important;font-weight:700}
.rbar .rb-kt .lg{width:30px;height:30px}
.rbar .rb-kt:hover{background:#f5dc00}
.kt-btn{display:flex;align-items:center;gap:14px;margin:14px 0 4px;padding:14px 18px;border-radius:12px;background:#FEE500;color:#3A1D1D;text-decoration:none;transition:transform .25s,box-shadow .25s;max-width:440px}
.kt-btn:hover{transform:translateY(-2px);box-shadow:0 12px 24px -14px rgba(90,70,0,.55)}
.kt-btn .lg{width:40px;height:40px;flex:none}
.kt-btn .lg rect{fill:#3A1D1D}.kt-btn .lg path{fill:#FEE500}.kt-btn .lg text{fill:#3A1D1D}
.kt-btn span{flex:1;display:grid;gap:2px}
.kt-btn b{font-size:17px}.kt-btn small{font-size:13px;opacity:.75}
.kt-btn i{font-style:normal;font-weight:700;font-size:18px}
.btn-kt{display:inline-flex;align-items:center;gap:8px;background:#FEE500;color:#3A1D1D;border:1px solid #FEE500}
.btn-kt:hover{background:#f5dc00}
.btn-kt .lg{width:22px;height:22px}
.btn-kt .lg rect{fill:#3A1D1D}.btn-kt .lg path{fill:#FEE500}.btn-kt .lg text{fill:#3A1D1D}
@media (max-width:860px){
 .mbar{grid-template-columns:1fr 1fr 1.3fr}
 .mbar .k{background:#FEE500;color:#3A1D1D}
 .mbar .k .lg{width:22px;height:22px}
 .mbar .k .lg rect{fill:#3A1D1D}.mbar .k .lg path{fill:#FEE500}.mbar .k .lg text{fill:#3A1D1D}
}
.rbar a.rb-kt svg.lg{width:30px !important;height:30px !important}.rbar a.rb-sns svg.lg{width:26px !important;height:auto !important}
/* ===== Full-screen hero video ===== */
.hero.hero-full{padding:0;background:linear-gradient(180deg,#fff 0,#fff calc(100% - 120px),var(--bg2) calc(100% - 120px))}
.hf{position:relative;min-height:max(640px,calc(100svh - 76px));display:flex;align-items:center;overflow:hidden;background:#2a211b;isolation:isolate}
.hf-media{position:absolute;inset:0;z-index:-1}
.hf-media video,.hf-media .poster{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.hf-media video{animation:hfzoom 22s ease-out both}
@keyframes hfzoom{from{transform:scale(1.08)}to{transform:scale(1)}}
.hf-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(28,20,14,.82) 0%,rgba(28,20,14,.62) 38%,rgba(28,20,14,.18) 72%,rgba(28,20,14,.08) 100%),linear-gradient(0deg,rgba(28,20,14,.55) 0%,rgba(28,20,14,0) 32%)}
.hf-in{position:relative;width:100%;padding-block:96px 140px}
.hero-full .hero-txt{max-width:640px;color:#fff}
.hero-full .meta{color:#e8cdb6}
.hero-full .meta::before{background:#e8cdb6}
.hero-full .hero-title{font-size:clamp(36px,4.6vw,72px);color:#fff;text-shadow:0 2px 30px rgba(0,0,0,.25)}
.hero-full .hero-title em{color:#f0d3b8}
.hero-full .lede{color:rgba(255,255,255,.86);font-size:18px}
.hero-full .find form{border-color:#fff;box-shadow:0 20px 40px -20px rgba(0,0,0,.6)}
.hero-full .ex{color:rgba(255,255,255,.75)}
.hero-full .ex button{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.35);color:#fff;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.hero-full .ex button:hover{background:#fff;color:var(--brown);border-color:#fff}
.hero-full .dki{color:#fff}
.hero-full .hv-card{left:auto;right:max(20px,calc((100vw - 1160px)/2));bottom:150px;background:rgba(255,255,255,.94);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:0}
.hf-cue{position:absolute;left:50%;bottom:118px;transform:translateX(-50%);display:grid;justify-items:center;gap:8px;font-family:var(--f-mono);font-size:10.5px;letter-spacing:.24em;color:rgba(255,255,255,.75);text-decoration:none}
.hf-cue span{width:1px;height:38px;background:linear-gradient(rgba(255,255,255,0),#fff);animation:cue 1.8s ease-in-out infinite}
@keyframes cue{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
.hero-full .hero-stats{position:relative;z-index:2;margin-top:-84px}
@media (max-width:1060px){.hero-full .hv-card{display:none}}
@media (max-width:760px){
 .hf{min-height:calc(100svh - 64px)}
 .hf-shade{background:linear-gradient(0deg,rgba(28,20,14,.88) 0%,rgba(28,20,14,.6) 55%,rgba(28,20,14,.25) 100%)}
 .hf-in{padding-block:60px 120px;align-self:flex-end}
 .hero-full .lede{font-size:16px}
 .hf-cue{display:none}
 .hero-full .hero-stats{margin-top:-70px}
}
@media (prefers-reduced-motion:reduce){.hf-media video{animation:none}.hf-cue span{animation:none}}
.hero.hero-full{background:var(--bg2)}
.hero-full .hero-txt{max-width:820px}
.hero-full .lede{max-width:34em}
@media (max-width:760px){.hero-full .hero-title{font-size:31px}}
.faq.fq-fold:not(.fq-open) > details.fq-more{display:none}
.fq-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:22px auto 0;height:52px;padding:0 28px;border:1px solid var(--line-2);border-radius:999px;background:#fff;font:inherit;font-weight:700;font-size:15px;color:var(--ink);cursor:pointer;transition:border-color .25s,color .25s,box-shadow .25s}
.fq-btn b{color:var(--brown);font-family:var(--f-num,inherit)}
.fq-btn i{font-style:normal;display:inline-grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--brown);color:#fff;font-size:14px;line-height:1}
.fq-btn:hover{border-color:var(--brown);color:var(--brown);box-shadow:var(--shadow-s)}
.hero-full .hv-card{right:20px;bottom:150px}
@media (max-width:1240px){.hero-full .hv-card{display:none}}
.hero-full .find{max-width:600px}
.hero-full .ex{max-width:680px}
.hf{overflow:visible}
.hf-media{overflow:hidden}
.hf-in{z-index:3}
.hero-full .sug a{color:var(--ink)}
.hero-full .sug a small{color:var(--mute)}
.hero-full .sug a:hover,.hero-full .sug a.on{color:var(--brown)}
.hf-sign{display:inline-flex;align-items:center;gap:14px;margin-top:26px;padding:8px 22px 8px 8px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.hf-sign img{width:46px;height:46px;border-radius:50%;object-fit:cover;object-position:50% 15%;border:2px solid rgba(255,255,255,.8)}
.hf-sign small{display:block;font-size:11.5px;color:rgba(255,255,255,.7);line-height:1.3}
.hf-sign b{display:block;font-size:15px;color:#fff;line-height:1.35}
.hf-sign i{width:1px;height:28px;background:rgba(255,255,255,.3)}
.hf-sign + .find{margin-top:22px}
@media (max-width:480px){.hf-sign{gap:10px;padding-right:14px}.hf-sign img{width:38px;height:38px}.hf-sign b{font-size:13.5px}}
.hf{z-index:3}
.hf{isolation:auto;z-index:auto}
.hf-media{z-index:0}
.hf-in{position:relative;z-index:5}
.hf-cue{z-index:1}
.hero-full .hero-stats{z-index:4}
.hero-full .lede + .find{margin-top:34px}
.cl-wrap{margin-top:56px;padding-top:28px;border-top:1px solid var(--line-2);display:grid;gap:22px}
.cl-h{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}
.cl-h b{font-size:19px}.cl-h span{font-size:14px;color:var(--mute)}
.cl-g{display:grid;grid-template-columns:150px 1fr;gap:16px;align-items:start}
.cl-t{margin:0;padding-top:20px;font-size:13.5px;font-weight:700;color:var(--brown)}
.cl-g ul{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px}
.cl-g li{display:grid;place-items:center;height:62px;padding:0 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:700;font-size:15.5px;letter-spacing:-.02em;color:var(--ink-2);text-align:center;transition:border-color .25s,box-shadow .25s,color .25s}
.cl-g li:hover{border-color:var(--brown);color:var(--brown);box-shadow:var(--shadow-s)}
@media (max-width:760px){.cl-g{grid-template-columns:1fr;gap:8px}.cl-t{padding-top:0}.cl-g ul{grid-template-columns:repeat(2,minmax(0,1fr))}.cl-g li{height:54px;font-size:14px}}
/* ===== Success cases ===== */
.ct-bar{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:22px}
.ct{display:inline-flex;align-items:center;gap:6px;height:44px;padding:0 18px;border:1px solid var(--line-2);border-radius:999px;background:#fff;font:inherit;font-weight:700;font-size:14.5px;color:var(--ink-2);cursor:pointer;text-decoration:none}
.ct b{font-size:12.5px;color:var(--brown);font-weight:700}
.ct.on{background:var(--brown);border-color:var(--brown);color:#fff}.ct.on b{color:#f0d3b8}
.cc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.cc[hidden]{display:none}
.cc-btn{all:unset;box-sizing:border-box;display:grid;gap:12px;align-content:start;height:100%;width:100%;padding:26px;border:1px solid var(--line);border-radius:12px;background:#fff;cursor:pointer;transition:box-shadow .3s,transform .3s,border-color .3s}
.cc-btn:hover,.cc-btn:focus-visible{box-shadow:var(--shadow);transform:translateY(-3px);border-color:var(--brown)}
.cc-top{display:flex;justify-content:space-between;align-items:center;gap:8px}
.cc .tag{font-size:12px;font-weight:700;color:var(--brown);background:var(--brown-soft);padding:4px 10px;border-radius:999px}
.cc-doc{flex:none;font-size:11.5px;font-weight:700;color:#fff;background:var(--ink);padding:3px 8px;border-radius:4px}
.cc-t{font-size:17.5px;line-height:1.5;letter-spacing:-.02em;color:var(--ink)}
.cc-r{font-family:var(--f-num,inherit);font-size:15px;font-weight:700;color:var(--brown)}
.cc-go{font-size:13.5px;font-weight:700;color:var(--mute)}
.cc-btn:hover .cc-go{color:var(--brown)}
.cc-more{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:24px}
.cc-more .fq-btn{margin:0}
.cc-more .btn{height:52px}
.cc-note{margin-top:14px;text-align:center;font-size:13px;color:var(--mute)}
@media (max-width:1000px){.cc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cc-grid{grid-template-columns:1fr}.cc-btn{padding:22px}}
/* modal */
.cm{position:fixed;inset:0;z-index:120;display:grid;place-items:center;padding:20px}
.cm[hidden]{display:none}
.cm-bg{position:absolute;inset:0;background:rgba(28,20,14,.6);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}
.cm-box{position:relative;width:min(860px,100%);max-height:calc(100svh - 40px);overflow:auto;background:#fff;border-radius:14px;box-shadow:0 30px 80px -30px rgba(0,0,0,.6);padding:40px clamp(22px,4vw,48px)}
.cm-x{position:sticky;top:0;float:right;margin:-18px -22px 0 0;width:40px;height:40px;border:0;border-radius:50%;background:var(--bg2);font-size:24px;line-height:1;cursor:pointer;z-index:2}
html.cm-open{overflow:hidden}
.cd-f{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--mute);margin:0}
.cd-f span{color:#fff;background:var(--brown);padding:3px 10px;border-radius:999px;font-size:12px}
.cd-in h3{font-size:clamp(20px,2.4vw,26px);line-height:1.45;letter-spacing:-.03em;margin:14px 0 18px}
.cd-r{margin:0;padding:16px 20px;border-radius:10px;background:var(--brown-soft)}
.cd-r div{display:flex;gap:14px;align-items:baseline}
.cd-r dt{font-size:13px;font-weight:700;color:var(--brown)}
.cd-r dd{margin:0;font-size:17px;font-weight:700}
.cd-s{list-style:none;counter-reset:s;margin:18px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px}
.cd-s li{counter-increment:s;display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border:1px solid var(--line);border-radius:999px;font-size:14px}
.cd-s li::before{content:counter(s,decimal-leading-zero);font-family:var(--f-mono);font-size:11px;color:var(--brown)}
.cd-docs{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;margin-top:22px}
.cd-docs figure{margin:0;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.cd-docs img{display:block;width:100%;height:auto;cursor:zoom-in}
.cd-n{margin-top:8px;font-size:12.5px;color:var(--mute)}
.cd-cta{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
/* cases page */
.cp-wrap{display:grid;gap:56px;padding-bottom:90px}
.cp-sec h2{font-size:24px;margin:0 0 18px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.cp-item{padding:30px 0;border-bottom:1px solid var(--line);scroll-margin-top:100px}
.cp-item .cd-docs{grid-template-columns:repeat(auto-fill,minmax(200px,260px))}
.sh h1.h2 em,.sh h2 em{font-style:normal}
.ft li.more a{font-weight:700;color:var(--brown)}
.ft-sns{flex-wrap:nowrap}
@media (max-width:1100px){.ft-sns{flex-wrap:wrap}}
/* ================= DEPTH PASS ================= */
:root{
  --shadow-s:0 1px 2px rgba(60,40,25,.06),0 6px 14px -8px rgba(60,40,25,.18),0 18px 34px -24px rgba(60,40,25,.34);
  --shadow:0 2px 4px rgba(60,40,25,.05),0 14px 28px -14px rgba(60,40,25,.22),0 38px 70px -36px rgba(60,40,25,.45);
  --lift:0 2px 4px rgba(60,40,25,.06),0 20px 36px -16px rgba(60,40,25,.30),0 50px 80px -40px rgba(60,40,25,.45);
}
/* buttons */
.btn{position:relative;transition:transform .22s cubic-bezier(.2,.8,.2,1),box-shadow .22s,background .22s,color .2s,border-color .2s;will-change:transform}
.btn-main,.btn-light,.btn-ink,.hd-call,.qb-go,.qs-go,.fm-submit{background:linear-gradient(180deg,#80492a 0%,#64331b 55%,#552a15 100%);color:#fff;border:1px solid #4a240f;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.22),inset 0 -2px 0 rgba(0,0,0,.18),0 1px 1px rgba(40,18,6,.25),0 10px 20px -10px rgba(90,45,22,.75)}
.btn-main:hover,.btn-light:hover,.btn-ink:hover,.hd-call:hover,.qb-go:hover,.qs-go:hover{background:linear-gradient(180deg,#8d5333 0%,#6d3920 55%,#5a2d16 100%);transform:translateY(-2px);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.26),inset 0 -2px 0 rgba(0,0,0,.18),0 2px 2px rgba(40,18,6,.2),0 18px 30px -12px rgba(90,45,22,.8)}
.btn-main:active,.btn-light:active,.btn-ink:active,.hd-call:active,.qb-go:active,.qs-go:active{transform:translateY(1px);box-shadow:inset 0 2px 6px rgba(0,0,0,.3),0 2px 6px -2px rgba(90,45,22,.5)}
.btn-line,.btn-ghost,.fq-btn,.ct:not(.on),.ex button{background:linear-gradient(180deg,#fff 0%,#faf7f4 100%);border:1px solid #ddd3c9;
  box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(60,40,25,.08),0 8px 16px -12px rgba(60,40,25,.4)}
.btn-line:hover,.btn-ghost:hover,.fq-btn:hover,.ct:not(.on):hover{transform:translateY(-2px);border-color:#b99a82;color:var(--brown);
  box-shadow:inset 0 1px 0 #fff,0 2px 3px rgba(60,40,25,.08),0 16px 26px -14px rgba(60,40,25,.5)}
.btn-line:active,.btn-ghost:active,.fq-btn:active,.ct:active{transform:translateY(1px);box-shadow:inset 0 2px 5px rgba(60,40,25,.15)}
.ct.on{background:linear-gradient(180deg,#80492a,#5a2d16);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 10px 18px -10px rgba(90,45,22,.75)}
.btn-kt{background:linear-gradient(180deg,#fff04d 0%,#fee500 60%,#f2d900 100%);border-color:#e3cb00;box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -2px 0 rgba(120,100,0,.15),0 10px 20px -12px rgba(150,120,0,.7)}
.btn-kt:hover{transform:translateY(-2px);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),0 18px 28px -12px rgba(150,120,0,.7)}
.kt-btn{background:linear-gradient(180deg,#fff04d,#fee500 60%,#f2d900);box-shadow:inset 0 1px 0 rgba(255,255,255,.6),inset 0 -3px 0 rgba(120,100,0,.14),0 18px 30px -18px rgba(150,120,0,.75)}
.btn-map .mi{filter:drop-shadow(0 2px 3px rgba(0,0,0,.18))}
.sns a{background:linear-gradient(180deg,#fff,#faf7f4);box-shadow:inset 0 1px 0 #fff,0 1px 2px rgba(60,40,25,.08),0 10px 18px -14px rgba(60,40,25,.45)}
.sns a:hover{box-shadow:inset 0 1px 0 #fff,0 2px 3px rgba(60,40,25,.08),0 18px 28px -14px rgba(60,40,25,.5)}
.sns .lg{filter:drop-shadow(0 2px 3px rgba(0,0,0,.15))}
/* search */
.find form{box-shadow:0 2px 4px rgba(0,0,0,.08),0 24px 44px -18px rgba(0,0,0,.55)}
.find button[type=submit]{background:linear-gradient(180deg,#80492a,#5a2d16);box-shadow:inset 0 1px 0 rgba(255,255,255,.2)}
.hero-full .ex button{background:rgba(255,255,255,.12);box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 6px 14px -8px rgba(0,0,0,.5)}
.hero-full .ex button:hover{transform:translateY(-2px)}
.ex button{transition:transform .2s,background .2s,color .2s,border-color .2s}
/* cards */
.cc-btn,.ar-card,.cs-card,.yt-card,.gm-card,.diag,.calc,.hero-stats,.nt-panel,.st{will-change:transform}
.cc-btn,a.ar-card,.ar-card{box-shadow:var(--shadow-s);background:linear-gradient(180deg,#fff 0%,#fff 60%,#fdfbf9 100%)}
.cc-btn:hover,a.ar-card:hover{transform:translateY(-6px);box-shadow:var(--lift)}
.hero-full .hero-stats{box-shadow:0 2px 4px rgba(60,40,25,.06),0 30px 60px -30px rgba(40,20,8,.55)}
.diag,.calc{box-shadow:var(--shadow)}
.ar-ic,.gc-ic{box-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 rgba(90,45,22,.08),0 8px 16px -10px rgba(90,45,22,.45)}
/* quick bar & right bar */
.qb-in{box-shadow:0 2px 4px rgba(60,40,25,.06),0 24px 50px -20px rgba(40,20,8,.45)}
.rbar{box-shadow:0 2px 4px rgba(60,40,25,.06),0 24px 50px -24px rgba(40,20,8,.45)}
.rbar .rb-tel{background:linear-gradient(180deg,#80492a,#5a2d16)}
.rbar .rb-kt{background:linear-gradient(180deg,#fff04d,#fee500 65%,#f2d900)}
.rbar a:not(.rb-tel):not(.rb-kt) i{box-shadow:inset 0 1px 0 #fff,0 6px 12px -8px rgba(90,45,22,.5)}
/* office photos */
.gal img,.ofc-main img{box-shadow:var(--shadow-s)}
/* ===== 3D map ===== */
.nt-panel{box-shadow:var(--lift)}
.nt-map{perspective:1100px}
.nt-map svg{transform:translate(-46%,-48%) rotateX(38deg) rotateZ(-8deg);filter:drop-shadow(0 22px 18px rgba(90,45,22,.25)) drop-shadow(0 60px 40px rgba(90,45,22,.18));transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.nt-map:hover svg{transform:translate(-46%,-49%) rotateX(32deg) rotateZ(-6deg)}
.nt-map .ex use{fill:url(#side);stroke:#8f7966;stroke-width:.35}
.nt-map .ex g:first-child use{fill:#7d6553;stroke:none}
.nt-map .top use{stroke:#a8968a;stroke-width:.8;filter:drop-shadow(0 -1px 0 rgba(255,255,255,.8))}
.nt-map .top a{transition:transform .35s cubic-bezier(.2,.8,.2,1);transform-box:fill-box;transform-origin:center}
.nt-map .top a:hover,.nt-map .top a:focus{transform:translateY(-7px)}
.nt-map .top a:hover use,.nt-map .top a:focus use{filter:drop-shadow(0 8px 6px rgba(60,25,8,.45))}
.nt-map .top a.visit{transform:translateY(-5px)}
.nt-map .top a.visit use{filter:drop-shadow(0 6px 5px rgba(60,25,8,.4))}
.nt-map::after{content:"";position:absolute;left:12%;right:8%;bottom:6%;height:60px;border-radius:50%;background:radial-gradient(closest-side,rgba(90,45,22,.22),rgba(90,45,22,0));filter:blur(6px);z-index:0;pointer-events:none}
.nt-map svg{z-index:1}
.nt-chips a{background:linear-gradient(180deg,#fff,#faf7f4);box-shadow:inset 0 1px 0 #fff,0 4px 10px -6px rgba(60,40,25,.35);transition:transform .2s,background .2s,color .2s,border-color .2s}
.nt-chips a:hover,.nt-chips a.hl{background:linear-gradient(180deg,#80492a,#5a2d16);transform:translateY(-2px)}
.nt-cta{background:linear-gradient(180deg,#80492a,#5a2d16);box-shadow:inset 0 1px 0 rgba(255,255,255,.18)}
@media (prefers-reduced-motion:reduce){.btn,.cc-btn,a.ar-card,.nt-map svg,.nt-map .top a{transition:none}}
.ofc-gal button{border-radius:10px;overflow:hidden;box-shadow:var(--shadow-s);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s}
.ofc-gal button:hover{transform:translateY(-4px);box-shadow:var(--lift)}
.nav a{white-space:nowrap}
@media (max-width:1320px){.nav a{padding:10px 10px;font-size:14.5px}.nav a::after{left:10px;right:10px}.hd-in{gap:18px}}
@media (max-width:1180px){.nav{display:none}.menu-btn{display:grid}.hd-call{margin-left:auto}}
/* ===== Intro (line drawing) ===== */
.intro5{position:fixed;inset:0;z-index:999;background:#1f1612;cursor:pointer;transition:opacity .7s ease}
.intro5.out{opacity:0;pointer-events:none}
.intro5 svg{position:absolute;left:50%;top:50%;width:min(300px,60vw);transform:translate(-50%,-50%);overflow:visible;transition:transform .8s cubic-bezier(.7,0,.3,1),opacity .8s}
.intro5.out svg{transform:translate(-50%,-50%) scale(6);opacity:0}
.intro5 rect{fill:none;stroke:#c99a78;stroke-width:1.2;stroke-dasharray:1000;stroke-dashoffset:1000;animation:i5draw 1.4s cubic-bezier(.6,0,.2,1) .1s forwards}
.intro5 .m{opacity:0;animation:i5in .7s ease 1s forwards}
.intro5 .t{position:absolute;left:50%;top:calc(50% + min(190px,38vw));transform:translateX(-50%);color:#e8cdb6;font-size:14px;letter-spacing:.5em;white-space:nowrap;opacity:0;animation:i5in .7s ease 1.3s forwards}
@keyframes i5draw{to{stroke-dashoffset:0}}
@keyframes i5in{to{opacity:1}}
html.intro-on{overflow:hidden}
html.intro-on .hero-title .ln>span{animation-play-state:paused}
/* ===== Right quick bar: connected bar, 3D icons only ===== */
@media(min-width:1280px){
 .rbar a i{width:38px;height:38px;background:linear-gradient(180deg,#fff 0%,#f1e7de 100%);
   box-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 rgba(90,45,22,.14),0 1px 1px rgba(60,40,25,.12),0 6px 10px -4px rgba(90,45,22,.45);transition:transform .25s cubic-bezier(.2,.8,.2,1),box-shadow .25s}
 .rbar a i svg{filter:drop-shadow(0 1px 0 #fff)}
 .rbar a:hover i{transform:translateY(-2px);box-shadow:inset 0 1px 0 #fff,inset 0 -2px 0 rgba(90,45,22,.14),0 2px 2px rgba(60,40,25,.12),0 10px 14px -5px rgba(90,45,22,.5)}
 .rbar .rb-tel i{background:linear-gradient(180deg,rgba(255,255,255,.34) 0%,rgba(255,255,255,.1) 100%);
   box-shadow:inset 0 1px 0 rgba(255,255,255,.45),inset 0 -2px 0 rgba(0,0,0,.2),0 6px 10px -4px rgba(0,0,0,.45)}
 .rbar .rb-tel i svg{filter:drop-shadow(0 1px 1px rgba(0,0,0,.35))}
 .rbar svg.lg{transition:transform .25s cubic-bezier(.2,.8,.2,1),filter .25s}
 .rbar .rb-kt svg.lg{border-radius:8px;filter:drop-shadow(0 1px 0 rgba(255,255,255,.6)) drop-shadow(0 5px 5px rgba(58,29,29,.38))}
 .rbar .rb-sns svg.lg{filter:drop-shadow(0 1px 0 rgba(255,255,255,.8)) drop-shadow(0 5px 5px rgba(0,0,0,.28))}
 .rbar a:hover svg.lg{transform:translateY(-2px)}
 .rbar .rb-top svg{filter:drop-shadow(0 2px 2px rgba(90,45,22,.35))}
}
/* ===== Success cases: documents + ledger ===== */
.cf-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:18px;margin:6px 0 64px}
.cf-btn{all:unset;box-sizing:border-box;display:grid;gap:14px;cursor:pointer;width:100%}
.cf-paper{position:relative;display:block;aspect-ratio:3/3.6;overflow:hidden;background:#fff;border:1px solid #e3ddd6;border-radius:3px;
  box-shadow:0 1px 1px rgba(0,0,0,.04),4px 4px 0 -1px #fbfaf8,4px 4px 0 0 #e3ddd6,8px 8px 0 -1px #f6f3ef,8px 8px 0 0 #e3ddd6,0 26px 40px -24px rgba(60,40,25,.45);
  transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.cf-paper img{position:absolute;left:0;top:0;width:100%;height:auto;filter:grayscale(.15) contrast(1.05)}
.cf-paper::after{content:"";position:absolute;inset:auto 0 0 0;height:36%;background:linear-gradient(rgba(255,255,255,0),#fff 85%)}
.cf-btn:hover .cf-paper{transform:translateY(-6px) rotate(-.6deg)}
.cf-stamp{position:absolute;right:7%;bottom:9%;z-index:3;width:104px;height:104px;transform:rotate(-13deg);mix-blend-mode:multiply;opacity:.95;pointer-events:none}
.cf-stamp svg{display:block;width:100%;height:100%;overflow:visible}
.cf-meta{display:grid;gap:6px}
.cf-meta small{font-family:var(--f-mono);font-size:11px;letter-spacing:.06em;color:var(--brown)}
.cf-meta b{font-size:14.5px;line-height:1.5;font-weight:700;letter-spacing:-.02em;color:var(--ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.cf-btn:hover .cf-meta b{color:var(--brown)}
.cl-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:14px;padding-bottom:16px;border-bottom:2px solid var(--ink)}
.cl-head h3{font-size:20px;margin:0;letter-spacing:-.03em}
.cl-head h3 b{font-family:var(--f-num);color:var(--brown);margin-left:4px}
.cl-head .ct-bar{margin:0}
.cl-cols,.cl-row{display:grid;grid-template-columns:64px 190px minmax(0,1fr) 150px 92px;gap:18px;align-items:center}
.cl-cols{padding:12px 6px;border-bottom:1px solid var(--line-2);font-family:var(--f-mono);font-size:11px;letter-spacing:.14em;color:var(--mute)}
.cl-cols span:last-child{text-align:right}
.cl-list{display:block;list-style:none;margin:0;padding:0}
.cl-list .cc{border-bottom:1px solid var(--line)}
.cl-row{all:unset;box-sizing:border-box;display:grid;grid-template-columns:64px 190px minmax(0,1fr) 150px 92px;gap:18px;align-items:center;width:100%;padding:20px 6px;cursor:pointer;transition:background .25s}
.cl-row:hover{background:linear-gradient(90deg,var(--brown-soft),rgba(244,237,231,0))}
.cl-no{font-family:var(--f-mono);font-size:12.5px;color:var(--mute)}
.cl-f{font-size:13px;color:var(--ink-2);line-height:1.45}
.cl-t{font-size:16px;font-weight:700;line-height:1.5;letter-spacing:-.02em;color:var(--ink)}
.cl-row:hover .cl-t{color:var(--brown)}
.cl-doc{display:inline-block;margin-left:8px;padding:1px 6px;border:1px solid #a3271c;color:#a3271c;border-radius:3px;font-style:normal;font-size:11px;font-weight:700;vertical-align:2px}
.cl-r{font-size:14px;font-weight:700;color:var(--brown)}
.cl-amt{text-align:right;font-family:var(--f-num);font-size:22px;font-weight:700;color:var(--ink);letter-spacing:-.02em}
.cl-amt small{font-family:inherit;font-size:13px;margin-left:1px;color:var(--ink-2)}
.cl-na{color:var(--line-2)}
.cc-more{margin-top:28px}
@media (max-width:1100px){.cf-row{grid-template-columns:repeat(3,minmax(0,1fr))}.cf-row .cf:nth-child(n+4){display:none}}
@media (max-width:860px){
 .cl-cols{display:none}
 .cl-row{grid-template-columns:auto 1fr auto;grid-template-areas:"no f amt" "t t t" "r r r";gap:6px 12px;padding:18px 4px}
 .cl-no{grid-area:no}.cl-f{grid-area:f}.cl-t{grid-area:t;font-size:15.5px}.cl-r{grid-area:r;font-size:13.5px}.cl-amt{grid-area:amt;font-size:18px}
}
@media (max-width:640px){.cf-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-bottom:44px}.cf-row .cf:nth-child(n+3){display:none}.cf-stamp{width:76px;height:76px}}
.cl-row .cl-t{padding-top:0;margin:0;font-size:16px;font-weight:700;color:var(--ink)}
.cl-row:hover .cl-t{color:var(--brown)}
@media (max-width:860px){.cl-row .cl-t{font-size:15.5px}}
.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;opacity:0}
/* ===== 30초 진단: 상담 접수 기록지 + 검토 메모 ===== */
.diag{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;gap:28px;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);align-items:start}
.dg-sel,.dg-res{position:relative;background:#fff;border:1px solid #e3ddd6;border-radius:3px;
  box-shadow:0 1px 1px rgba(0,0,0,.04),5px 5px 0 -1px #fbfaf8,5px 5px 0 0 #e3ddd6,0 30px 50px -30px rgba(60,40,25,.45)}
.dg-sel{padding:30px 34px 34px;gap:0;border-right:1px solid #e3ddd6}
.dg-hd{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding-bottom:14px;margin-bottom:6px;border-bottom:2px solid var(--ink)}
.dg-hd b{font-size:17px;letter-spacing:-.02em}
.dg-hd span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;color:var(--mute)}
.diag fieldset{padding:20px 0 4px}
.diag fieldset+fieldset{border-top:1px solid var(--line);margin-top:18px}
.diag legend{float:left;width:100%;display:flex;align-items:baseline;gap:10px;font-size:15px;margin-bottom:14px}
.diag legend i{font-style:normal;font-family:var(--f-mono);font-size:11.5px;color:var(--brown);letter-spacing:.08em}
.diag legend small{margin-left:auto;font-weight:400;font-size:12px;color:var(--mute)}
.diag .opts{clear:both}
/* 사건 유형: 인쇄된 양식의 체크 칸 */
.dg-ty .opts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border-top:1px solid var(--line);border-left:1px solid var(--line)}
.dg-ty .opt span{display:flex;align-items:center;gap:10px;height:100%;padding:12px 12px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0;background:#fff;font-size:14.5px;color:var(--ink-2);line-height:1.35}
.dg-ty .opt span::before{content:"";flex:none;width:17px;height:17px;border:1.5px solid #9b8b7d;border-radius:2px;background:#fff center/12px no-repeat;transition:all .15s}
.dg-ty .opt:hover span{background:#fbf8f5;color:var(--ink)}
.dg-ty .opt input:checked+span{background:var(--brown-soft);color:var(--brown);font-weight:700}
.dg-ty .opt input:checked+span::before{border-color:var(--brown);background-color:var(--brown);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.2 6.3l2.4 2.4 5.2-5.4' fill='none' stroke='%23fff' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
/* 현재 단계: 진행 순서 트랙 */
.dg-st .opts{position:relative;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}
.dg-st .opts::before{content:"";position:absolute;left:12.5%;right:12.5%;top:10px;height:2px;background:repeating-linear-gradient(90deg,#cdbfb2 0 6px,transparent 6px 11px)}
.dg-st .opt span{display:grid;justify-items:center;gap:10px;padding:0 4px;border:0;border-radius:0;background:none;text-align:center;font-size:13.5px;line-height:1.4;color:var(--ink-2)}
.dg-st .opt span::before{content:"";position:relative;z-index:1;width:22px;height:22px;border-radius:50%;background:#fff;border:2px solid #cdbfb2;box-shadow:0 0 0 4px #fff;transition:all .2s}
.dg-st .opt:hover span{color:var(--brown)}
.dg-st .opt input:checked+span{background:none;color:var(--brown);font-weight:700}
.dg-st .opt input:checked+span::before{border-color:var(--brown);background:radial-gradient(circle,#fff 0 3px,var(--brown) 3.5px)}
/* 검토 메모 */
.dg-res{padding:30px 34px 32px;gap:0;background:#fffdfa;
  background-image:repeating-linear-gradient(180deg,transparent 0 33px,#efe7de 33px 34px);background-position:0 154px}
.dg-res::before{content:"";position:absolute;left:58px;top:0;bottom:0;width:1px;background:rgba(163,39,28,.18)}
.mm-hd{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:14px;border-bottom:2px solid var(--ink);background:#fffdfa;position:relative}
.mm-hd b{font-size:17px;letter-spacing:-.02em}
.mm-hd span{font-family:var(--f-mono);font-size:10.5px;letter-spacing:.16em;color:var(--mute)}
.mm-meta{display:grid;grid-template-columns:1fr 1fr;margin:0 0 6px;background:#fffdfa;position:relative}
.mm-meta div{padding:12px 0;border-bottom:1px solid var(--line)}
.mm-meta .w{grid-column:1/-1}
.mm-meta dt{font-size:11.5px;color:var(--mute);margin-bottom:2px}
.mm-meta dd{margin:0;font-size:15px;font-weight:700;color:var(--ink)}
.mm-meta .w dd{font-size:13.5px;font-weight:500;color:var(--ink-2)}
.mm-k{margin:18px 0 4px;font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--brown);padding-left:40px}
.mm-do{list-style:none;margin:0;padding:0;counter-reset:m}
.mm-do li{counter-increment:m;position:relative;padding:5px 0 0 40px;min-height:34px;font-size:15.5px;line-height:34px;color:var(--ink);background:none;border-radius:0;display:block}
.mm-do li::before{content:counter(m) ".";position:absolute;left:4px;top:5px;width:auto;height:auto;background:none;border-radius:0;font-family:var(--f-num);font-size:16px;font-weight:700;color:var(--brown);display:block;margin:0}
.mm-n{margin:14px 0 0;padding-left:40px;font-size:12.5px;color:var(--mute);line-height:1.6}
.mm-seal{position:absolute;right:30px;top:96px;display:grid;place-items:center;width:58px;height:58px;border:2.5px solid #a3271c;border-radius:6px;color:#a3271c;font-weight:800;font-size:16px;line-height:1.05;text-align:center;transform:rotate(8deg);opacity:.82;mix-blend-mode:multiply;box-shadow:inset 0 0 0 2px #fffdfa,inset 0 0 0 3.5px #a3271c}
.dg-res .dr-go{margin-top:22px;padding-left:40px}
.dg-res.mm-in .mm-do li{animation:mmIn .45s cubic-bezier(.2,.8,.2,1) both}
.dg-res.mm-in .mm-do li:nth-child(2){animation-delay:.07s}.dg-res.mm-in .mm-do li:nth-child(3){animation-delay:.14s}.dg-res.mm-in .mm-do li:nth-child(4){animation-delay:.21s}
.dg-res.mm-in .mm-seal{animation:mmSeal .5s cubic-bezier(.2,.8,.2,1) .25s both}
@keyframes mmIn{from{opacity:0;transform:translateX(-6px)}to{opacity:1;transform:none}}
@keyframes mmSeal{from{opacity:0;transform:rotate(8deg) scale(1.4)}to{opacity:.82;transform:rotate(8deg) scale(1)}}
@media (max-width:1100px){.dg-ty .opts{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:860px){.diag{grid-template-columns:1fr;gap:22px}.dg-sel,.dg-res{padding:22px 20px 24px}.dg-res::before{left:44px}.mm-k,.mm-do li,.mm-n,.dg-res .dr-go{padding-left:30px}.mm-seal{right:18px;top:84px;width:48px;height:48px;font-size:13px}}
@media (max-width:420px){.dg-st .opts{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:16px}.dg-st .opts::before{display:none}}
@media (prefers-reduced-motion:reduce){.dg-res.mm-in *{animation:none!important}}
.dg-res::before{top:64px}
.dg-hd b{white-space:nowrap}
@media (max-width:860px){.dg-hd span,.mm-hd span{display:none}.dg-res::before{top:58px}}
/* ===== 지연이자 계산: 계산 조건지 + 계산 명세서 ===== */
#depCalc{background:none;border:0;border-radius:0;box-shadow:none;overflow:visible;gap:28px;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:start}
#depCalc .calc-form,#depCalc .calc-out{position:relative;background:#fff;border:1px solid #e3ddd6;border-radius:3px;
  box-shadow:0 1px 1px rgba(0,0,0,.04),5px 5px 0 -1px #fbfaf8,5px 5px 0 0 #e3ddd6,0 30px 50px -30px rgba(60,40,25,.45)}
#depCalc .calc-form{padding:30px 34px 34px;gap:22px}
#depCalc .dg-hd{margin-bottom:0}
.cf-f label{display:flex;align-items:baseline;gap:10px;font-size:14px}
.cf-f label i{font-style:normal;font-family:var(--f-mono);font-size:11.5px;color:var(--brown);letter-spacing:.08em}
#depCalc .cf-f input{height:auto;padding:8px 2px 10px;border:0;border-bottom:1.5px solid #bfb1a4;border-radius:0;background:transparent;font-size:17px;font-weight:700;box-shadow:none}
#depCalc .cf-f input:focus{border-bottom-color:var(--brown);box-shadow:0 2px 0 0 var(--brown)}
.cf-in{display:flex;align-items:flex-end;gap:8px}
.cf-in input{flex:1;font-family:var(--f-num)!important;font-size:24px!important;letter-spacing:-.01em}
.cf-in span{padding-bottom:12px;font-size:15px;color:var(--ink-2)}
.cf-tl{position:relative;display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:end;padding:22px 0 4px;text-align:center}
.cf-tl::before{content:"";position:absolute;left:8%;right:8%;top:30px;height:2px;background:linear-gradient(90deg,var(--brown),#c9a27e)}
.cf-tl span{position:relative;display:grid;gap:4px;justify-items:center;padding-top:26px}
.cf-tl .a::before,.cf-tl .b::before{content:"";position:absolute;top:0;width:16px;height:16px;border-radius:50%;background:#fff;border:2px solid var(--brown);box-shadow:0 0 0 4px #fff}
.cf-tl .b::before{border-color:#c9a27e}
.cf-tl .mid{padding-top:0;top:-14px}
.cf-tl .mid b{display:inline-block;padding:3px 12px;border-radius:999px;background:var(--brown);color:#fff;font-family:var(--f-num);font-size:15px;box-shadow:0 6px 12px -6px rgba(90,45,22,.7)}
.cf-tl b{font-size:13px}.cf-tl em{font-style:normal;font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}
#depCalc .calc-note{background:none;border-left:3px solid #d9cbbd;border-radius:0;padding:4px 0 4px 14px}
#depCalc .calc-out{padding:30px 34px 30px;gap:0;background:#fffdfa}
#depCalc .mm-hd{margin-bottom:6px}
.st-rows{margin:0;display:grid}
.st-rows div{display:flex;align-items:baseline;gap:10px;padding:13px 0;font-size:15px}
.st-rows dt{display:flex;align-items:baseline;gap:8px;flex:none;color:var(--ink-2)}
.st-rows dt small{font-size:12px;color:var(--mute);font-variant-numeric:tabular-nums}
.st-rows div::after{content:"";order:2;flex:1;border-bottom:1.5px dotted #cdbfb2;transform:translateY(-4px)}
.st-rows dd{order:3;margin:0;font-weight:700;font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}
.st-rows .sum{margin-top:6px;padding:16px 0 14px;border-top:2px solid var(--ink);border-bottom:4px double var(--ink)}
.st-rows .sum::after{display:none}
.st-rows .sum dt{flex-direction:column;gap:2px;color:var(--ink);font-weight:700}
.st-rows .sum dd{margin-left:auto;font-family:var(--f-num);font-size:clamp(30px,3.6vw,44px);line-height:1.05;color:var(--brown);letter-spacing:-.03em}
.st-rows .sum dd small{font-size:.4em;margin-left:3px;font-family:var(--f-sans);font-weight:500;color:var(--ink)}
.st-k{margin:20px 0 2px;font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--brown)}
.st-sub div{padding:9px 0;font-size:14px}
#depCalc .mm-seal{top:auto;bottom:86px;right:30px}
#depCalc .out-foot{margin-top:16px;padding-right:80px;line-height:1.6;color:var(--mute)}
#depCalc .calc-out.mm-in .sum dd{animation:mmIn .4s cubic-bezier(.2,.8,.2,1) both}
@media (max-width:860px){#depCalc{grid-template-columns:1fr;gap:22px}#depCalc .calc-form,#depCalc .calc-out{padding:22px 20px 24px}.st-rows dt small{display:none}.st-rows .sum dt small{display:block}#depCalc .mm-seal{bottom:96px;right:16px;width:46px;height:46px;font-size:13px}}
.cf-tl::before{left:15.6%;right:15.6%}
#depCalc .mm-seal{bottom:24px;right:28px}
#depCalc .out-foot{padding-right:88px}
.st-rows dt{flex:0 1 auto;min-width:0}
@media (max-width:860px){.st-sub div{font-size:13px;gap:6px}.st-sub dt{line-height:1.4}#depCalc .mm-seal{bottom:24px;right:16px}#depCalc .out-foot{padding-right:64px}}
.mm-seal{display:none!important}
/* ===== 지연이자 계산: 문장형 입력 + 증가 그래프 ===== */
.calc2{background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.c2-sent{margin:0;padding:34px 40px 30px;font-size:clamp(18px,2vw,24px);font-weight:500;line-height:2.1;letter-spacing:-.02em;color:var(--ink-2);border-bottom:1px solid var(--line);background:linear-gradient(180deg,#fff,#fbf8f5)}
.c2-in{display:inline-flex;align-items:baseline;gap:4px;margin:0 4px;vertical-align:baseline}
.c2-in input{font:inherit;font-weight:700;color:var(--brown);border:0;border-bottom:2px solid var(--brown);background:transparent;padding:0 2px 2px;width:9.2em;outline:none;border-radius:0}
.c2-in.w1 input{width:7.2em;font-family:var(--f-num);text-align:right}
.c2-in span{font-weight:700;color:var(--brown)}
.c2-in input:focus{background:var(--brown-soft)}
.c2-main{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.3fr)}
.c2-now{padding:34px 40px;border-right:1px solid var(--line);display:grid;gap:10px;align-content:start}
.c2-now>small{font-size:14px;font-weight:700;color:var(--brown)}
.c2-now>b{font-family:var(--f-num);font-size:clamp(40px,5vw,62px);line-height:1.05;color:var(--ink);letter-spacing:-.03em;font-variant-numeric:tabular-nums}
.c2-now>b small{font-size:.38em;margin-left:4px;font-family:var(--f-sans);font-weight:500;color:var(--ink-2)}
.c2-now dl{margin:14px 0 0;display:grid;grid-template-columns:repeat(3,auto);gap:16px;justify-content:start}
.c2-now dl div{padding-left:12px;border-left:2px solid var(--brown-soft)}
.c2-now dt{font-size:12.5px;color:var(--mute)}
.c2-now dd{margin:2px 0 0;font-weight:700;font-variant-numeric:tabular-nums}
.c2-proj{padding:30px 40px 26px;background:var(--bg2);display:grid;gap:14px}
.c2-k{margin:0;font-size:14px;font-weight:700}
.c2-bars{display:grid;grid-template-columns:repeat(5,1fr);gap:14px;height:210px;align-items:end;border-bottom:1.5px solid var(--line-2)}
.c2-b{display:grid;grid-template-rows:auto 1fr auto;justify-items:center;height:100%;gap:6px;position:relative}
.c2-b i{align-self:end;width:min(56px,70%);border-radius:6px 6px 0 0;background:linear-gradient(180deg,#d8c3b0,#bfa38b);box-shadow:inset 0 1px 0 rgba(255,255,255,.5);transition:height .5s cubic-bezier(.2,.8,.2,1)}
.c2-b.on i{background:linear-gradient(180deg,#8a5130,#5a2d16)}
.c2-b .v{font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap}
.c2-b.on .v{color:var(--brown)}
.c2-b .l{position:absolute;bottom:-26px;font-size:12.5px;color:var(--mute);white-space:nowrap}
.c2-law{margin:22px 0 0;font-size:13.5px;color:var(--ink-2)}
.c2-law b{color:var(--brown);font-variant-numeric:tabular-nums}
.c2-note{margin:0;padding:16px 40px;font-size:13px;color:var(--mute);border-top:1px solid var(--line)}
@media (max-width:900px){.c2-main{grid-template-columns:1fr}.c2-now{border-right:0;border-bottom:1px solid var(--line)}}
@media (max-width:640px){.c2-sent{padding:24px 20px;font-size:17px;line-height:2.2}.c2-in input{width:8.6em}.c2-in.w1 input{width:6.6em}.c2-now,.c2-proj{padding:24px 20px}.c2-note{padding:14px 20px}.c2-now dl{grid-template-columns:1fr 1fr}.c2-bars{gap:6px;height:180px}.c2-b .v{font-size:11px}.c2-b .l{font-size:11px}}
#depCalc.calc2{display:block;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.c2-in input[type=date]{width:8.4em}
/* 계산기 강조 */
.c2-top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:18px 40px;background:linear-gradient(180deg,#80492a,#5a2d16);color:#fff}
.c2-ic{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:linear-gradient(180deg,rgba(255,255,255,.28),rgba(255,255,255,.1));box-shadow:inset 0 1px 0 rgba(255,255,255,.4),0 6px 12px -6px rgba(0,0,0,.5)}
.c2-ic svg{width:24px;height:24px}
.c2-top b{font-size:19px;letter-spacing:-.02em}
.c2-hint{display:flex;align-items:center;gap:8px;font-size:14px;color:rgba(255,255,255,.85)}
.c2-hint i{width:8px;height:8px;border-radius:50%;background:#ffd27a;box-shadow:0 0 0 0 rgba(255,210,122,.7);animation:c2pulse 1.8s infinite}
@keyframes c2pulse{70%{box-shadow:0 0 0 10px rgba(255,210,122,0)}100%{box-shadow:0 0 0 0 rgba(255,210,122,0)}}
.c2-top .c2-go{margin-left:auto;height:44px;background:#fff;color:var(--brown);border-color:#fff;box-shadow:0 8px 16px -8px rgba(0,0,0,.5)}
.c2-top .c2-go:hover{background:#fff6ee;color:var(--brown)}
.c2-in input{background:#fff6ee;border:1.5px solid #d9bfa8;border-bottom-width:3px;border-radius:8px;padding:2px 10px 4px;box-shadow:0 4px 10px -6px rgba(90,45,22,.35);transition:box-shadow .2s,border-color .2s}
.c2-in input:hover{border-color:var(--brown)}
.c2-in input:focus{background:#fff;border-color:var(--brown);box-shadow:0 0 0 4px rgba(90,45,22,.14)}
#depCalc:not(.c2-used) .c2-in.w1 input{animation:c2glow 2.2s ease-in-out 1.2s 3}
@keyframes c2glow{50%{box-shadow:0 0 0 6px rgba(90,45,22,.18)}}
.c2-main.c2-flash .c2-now>b{animation:mmIn .5s cubic-bezier(.2,.8,.2,1)}
.c2-main.c2-flash{animation:c2bg 1s ease}
@keyframes c2bg{from{background:#fff3e6}to{background:transparent}}
#calc .sh h2 em{font-style:normal;color:var(--brown)}
@media (max-width:640px){.c2-top{padding:16px 20px;gap:10px}.c2-hint{order:3;width:100%;font-size:13px}.c2-top .c2-go{height:40px}}
@media (max-width:640px){.c2-in input[type=date]{width:9.4em}}
/* ===== 사건별 대응: 목차형 목록 + 상세 패널 ===== */
.ax{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.25fr);background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}
.ax-list{list-style:none;margin:0;padding:10px 0;border-right:1px solid var(--line)}
.ax-row{all:unset;box-sizing:border-box;display:grid;grid-template-columns:56px 1fr 28px;align-items:center;gap:6px;width:100%;padding:22px 28px;cursor:pointer;border-bottom:1px solid #f0ebe5;position:relative;transition:background .25s}
.ax-list li:last-child .ax-row{border-bottom:0}
.ax-row::before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:0 3px 3px 0;background:var(--brown);transform:scaleY(0);transition:transform .3s cubic-bezier(.2,.8,.2,1)}
.ax-no{font-family:var(--f-num);font-size:26px;font-weight:700;color:#d4c4b5;transition:color .25s}
.ax-nm b{display:block;font-size:19px;letter-spacing:-.03em;color:var(--ink)}
.ax-nm small{display:block;margin-top:2px;font-size:13.5px;color:var(--mute)}
.ax-ar{font-size:18px;color:#cdbfb2;transition:transform .25s,color .25s}
.ax-row:hover{background:#fbf8f5}
.ax-row.on{background:var(--brown-soft)}
.ax-row.on::before{transform:scaleY(1)}
.ax-row.on .ax-no{color:var(--brown)}
.ax-row.on .ax-nm b{color:var(--brown)}
.ax-row.on .ax-ar{color:var(--brown);transform:translateX(4px)}
.ax-pan{padding:36px 42px 38px;background:linear-gradient(180deg,#fffdfb,#fff)}
.ax-k{margin:0;font-family:var(--f-mono);font-size:11.5px;letter-spacing:.14em;color:var(--brown)}
.ax-p h3{margin:10px 0 20px;font-size:clamp(26px,2.6vw,34px);letter-spacing:-.04em}
.ax-dl{margin:0;display:grid;border-top:2px solid var(--ink)}
.ax-dl div{display:grid;grid-template-columns:120px 1fr;gap:16px;padding:15px 0;border-bottom:1px solid var(--line)}
.ax-dl dt{font-weight:700;font-size:14.5px;color:var(--brown)}
.ax-dl dd{margin:0;font-size:15px;line-height:1.7;color:var(--ink-2)}
.ax-flow{display:grid;grid-template-columns:120px 1fr;gap:16px;align-items:center;padding:18px 0 0}
.ax-flow>span{font-weight:700;font-size:14.5px;color:var(--brown)}
.ax-flow ol{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 0;counter-reset:f}
.ax-flow li{counter-increment:f;display:flex;align-items:center;font-size:13.5px;font-weight:600;color:var(--ink)}
.ax-flow li::before{content:counter(f);display:grid;place-items:center;width:20px;height:20px;margin-right:6px;border-radius:50%;background:var(--brown);color:#fff;font-size:11px;font-weight:700}
.ax-flow li+li::after{order:-1;content:"";width:18px;height:1px;margin:0 8px;background:#cdbfb2}
.ax-go{display:flex;flex-wrap:wrap;gap:10px;margin-top:26px}
.ax-p.ax-in h3,.ax-p.ax-in .ax-dl div,.ax-p.ax-in .ax-flow{animation:mmIn .4s cubic-bezier(.2,.8,.2,1) both}
.ax-p.ax-in .ax-dl div:nth-child(2){animation-delay:.05s}.ax-p.ax-in .ax-dl div:nth-child(3){animation-delay:.1s}.ax-p.ax-in .ax-flow{animation-delay:.15s}
.ax-more{margin-top:22px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 28px 24px;box-shadow:var(--shadow-s)}
.ax-mh{display:flex;align-items:baseline;gap:10px;margin-bottom:6px}
.ax-mh b{font-size:17px}.ax-mh span{font-size:13px;color:var(--mute)}
.ax-ml{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px}
.ax-ml li.ax-x{display:none}
.ax-ml.open li.ax-x{display:block}
.ax-ml a{display:grid;grid-template-columns:auto 1fr auto;align-items:baseline;gap:12px;padding:13px 2px;border-bottom:1px solid #f0ebe5;text-decoration:none;color:var(--ink)}
.ax-ml a b{font-size:15px}.ax-ml a small{font-size:13px;color:var(--mute);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}
.ax-ml a i{font-style:normal;color:#cdbfb2;transition:transform .2s,color .2s}
.ax-ml a:hover b,.ax-ml a:hover i{color:var(--brown)}.ax-ml a:hover i{transform:translateX(3px)}
.ax-mb{margin:16px auto 0;height:44px}
@media (max-width:900px){.ax{grid-template-columns:1fr}.ax-list{border-right:0;border-bottom:1px solid var(--line);padding:4px 0}.ax-row{padding:15px 20px;grid-template-columns:44px 1fr 22px}.ax-no{font-size:21px}.ax-nm b{font-size:17px}.ax-pan{padding:26px 20px 28px}.ax-dl div,.ax-flow{grid-template-columns:1fr;gap:4px}.ax-ml{grid-template-columns:1fr}.ax-more{padding:18px 18px 20px}}
.ax-flow li+li::after{display:none}.ax-flow ol{gap:8px 16px}
/* ===== 전국 관할 법원 안내 ===== */
.nation2{background:var(--bg2)}
.nation2 .sh h2 em{font-style:normal;color:var(--brown)}
.jx{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}
.jx-map{position:relative;padding:20px 10px 18px;border-right:1px solid var(--line);background:radial-gradient(120% 80% at 50% 40%,#fff 0,#faf6f2 70%)}
.jx-map .nt-map{height:500px;margin:0}
.jx-lg{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 18px;margin:0;font-size:12.5px;color:var(--ink-2)}
.jx-lg i{display:inline-block;width:10px;height:10px;margin-right:7px;border-radius:2px;vertical-align:-1px}
.jx-lg .v{background:linear-gradient(135deg,#9a6a48,#5a2d16)}.jx-lg .r{background:#ece6df;border:1px solid #b4a698}
.nt-map .top a.sel use{fill:url(#gold)!important}
.nt-map .top a.sel{transform:translateY(-7px)}
.jx-dir{display:grid;grid-template-columns:168px minmax(0,1fr);min-height:100%}
.jx-list{list-style:none;margin:0;padding:10px 0;border-right:1px solid var(--line);background:#fcfaf8}
.jr{all:unset;box-sizing:border-box;display:flex;justify-content:space-between;align-items:center;width:100%;padding:11px 18px 11px 20px;cursor:pointer;font-size:14.5px;color:var(--ink-2);position:relative;transition:background .2s,color .2s}
.jr small{font-family:var(--f-num);font-size:12px;color:#c2b3a5}
.jr:hover{background:#f6f1ec;color:var(--ink)}
.jr.on{background:#fff;color:var(--brown);font-weight:700}
.jr.on::before{content:"";position:absolute;left:0;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:var(--brown)}
.jr.on small{color:var(--brown)}
.jx-pan{padding:28px 32px 30px}
.jp-h{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding-bottom:14px;border-bottom:2px solid var(--ink)}
.jp-h h3{margin:0;font-size:22px;letter-spacing:-.03em}
.jp-h a{flex:none;font-size:13.5px;font-weight:700;color:var(--brown);text-decoration:none}
.jt{width:100%;border-collapse:collapse;font-size:14.5px}
.jt th{padding:10px 0;text-align:left;font-size:12px;font-weight:600;color:var(--mute);border-bottom:1px solid var(--line-2)}
.jt td{padding:12px 0;border-bottom:1px solid #f0ebe5;vertical-align:top;line-height:1.6}
.jt td:first-child{width:44%;padding-right:16px;font-weight:700;color:var(--ink)}
.jt td:last-child{color:var(--ink-2)}
.jp-n{margin:18px 0 0;padding:14px 16px;border-left:3px solid #d9cbbd;background:#fbf8f5;font-size:13.5px;line-height:1.7;color:var(--ink-2)}
.jp.ax-in .jt tbody tr{animation:mmIn .35s cubic-bezier(.2,.8,.2,1) both}
.jx-foot{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:20px;padding:20px 28px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow-s)}
.jx-foot p{margin:0;font-size:14.5px;line-height:1.7;color:var(--ink-2)}
.jx-foot b{color:var(--ink)}
.jx-foot .btn{flex:none}
.nation2 .nt-credit{text-align:right;margin-top:8px}
@media (max-width:1100px){.jx{grid-template-columns:1fr}.jx-map{border-right:0;border-bottom:1px solid var(--line)}.jx-map .nt-map{height:420px}}
@media (max-width:640px){.jx-dir{grid-template-columns:1fr}.jx-list{display:flex;overflow-x:auto;padding:8px;gap:6px;border-right:0;border-bottom:1px solid var(--line);scrollbar-width:none}.jx-list::-webkit-scrollbar{display:none}.jr{flex:none;padding:8px 14px;border:1px solid var(--line-2);border-radius:999px;background:#fff;white-space:nowrap;gap:6px}.jr.on{background:var(--brown);color:#fff;border-color:var(--brown)}.jr.on::before{display:none}.jr.on small{color:#f0d3b8}.jx-pan{padding:20px}.jx-map .nt-map{height:340px}.jx-foot{flex-direction:column;align-items:stretch;padding:18px}}
.jx-map{display:flex;flex-direction:column;justify-content:center;padding:10px 10px 22px}
.jx-map .nt-map{height:600px}
.jx-map .nt-map svg{transform:translate(-46%,-54%) rotateX(38deg) rotateZ(-8deg)}
.jx-lg{position:relative;z-index:3;margin-top:4px}
@media (max-width:1100px){.jx-map .nt-map{height:480px}}
@media (max-width:640px){.jx-map .nt-map{height:400px}}
/* ===== 쇼츠 플레이어 ===== */
#youtube .sh h2 em{font-style:normal;color:var(--brown)}
.tv{display:grid;grid-template-columns:minmax(0,380px) minmax(0,1fr);gap:40px;align-items:stretch}
.tv-stage{position:relative;aspect-ratio:9/16;border-radius:22px;overflow:hidden;background:#1f1612;box-shadow:0 2px 4px rgba(0,0,0,.08),0 40px 70px -30px rgba(40,20,8,.6);border:8px solid #2a211b}
.tv-stage video{width:100%;height:100%;object-fit:cover;display:block;background:#1f1612}
.tv-big{position:absolute;inset:0;border:0;background:linear-gradient(180deg,rgba(0,0,0,0) 55%,rgba(0,0,0,.35));cursor:pointer;display:grid;place-items:center}
.tv-big i{width:76px;height:76px;border-radius:50%;background:rgba(255,255,255,.92);box-shadow:0 12px 30px -8px rgba(0,0,0,.55);position:relative;transition:transform .25s}
.tv-big i::after{content:"";position:absolute;left:31px;top:24px;border-left:22px solid var(--brown);border-top:14px solid transparent;border-bottom:14px solid transparent}
.tv-big:hover i{transform:scale(1.07)}
.tv-side{display:grid;align-content:start;gap:18px;min-width:0}
.tv-ch{display:flex;align-items:center;gap:14px;padding-bottom:18px;border-bottom:2px solid var(--ink)}
.tv-ch img{width:56px;height:56px;border-radius:50%;object-fit:cover;object-position:50% 15%;border:2px solid #fff;box-shadow:0 4px 12px -4px rgba(0,0,0,.3)}
.tv-ch b{display:block;font-size:19px;letter-spacing:-.02em}
.tv-ch small{display:block;font-size:13px;color:var(--mute)}
.tv-sub{margin-left:auto;display:inline-flex;align-items:center;gap:8px;height:42px;padding:0 16px;border-radius:999px;border:1px solid #ddd3c9;background:linear-gradient(180deg,#fff,#faf7f4);font-weight:700;font-size:14px;color:var(--ink);text-decoration:none;box-shadow:0 8px 16px -12px rgba(60,40,25,.45)}
.tv-sub .lg{width:24px;height:auto}
.tv-now{margin:0;display:grid;gap:2px}
.tv-now small{font-family:var(--f-mono);font-size:11px;letter-spacing:.2em;color:var(--brown)}
.tv-now b{font-size:clamp(20px,2vw,26px);letter-spacing:-.03em;line-height:1.35}
.tv-list{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.tv-it{all:unset;box-sizing:border-box;display:grid;grid-template-columns:62px 1fr auto;gap:16px;align-items:center;width:100%;padding:12px 8px;border-bottom:1px solid var(--line);cursor:pointer;transition:background .2s}
.tv-it:hover{background:#fbf8f5}
.tv-it.on{background:var(--brown-soft)}
.tv-th{width:62px;height:84px;border-radius:8px;overflow:hidden;background:#eee;box-shadow:0 6px 12px -8px rgba(0,0,0,.4)}
.tv-th img{width:100%;height:100%;object-fit:cover;object-position:top}
.tv-tx em{display:block;font-style:normal;font-size:12px;font-weight:700;color:var(--brown)}
.tv-tx b{display:block;margin-top:2px;font-size:16px;line-height:1.45;letter-spacing:-.02em;color:var(--ink)}
.tv-no{font-family:var(--f-num);font-size:20px;color:#d4c4b5}
.tv-it.on .tv-no{color:var(--brown)}
.tv-it.on .tv-no::before{content:"▶ ";font-size:11px;vertical-align:3px}
.tv-links{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:6px}
.tv-links a{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:#fff;text-decoration:none;color:var(--ink);box-shadow:var(--shadow-s);transition:transform .2s,box-shadow .2s}
.tv-links a:hover{transform:translateY(-2px);box-shadow:var(--shadow)}
.tv-links .lg{width:34px;height:34px;filter:drop-shadow(0 3px 4px rgba(0,0,0,.2))}
.tv-links b{display:block;font-size:15px}.tv-links small{display:block;font-size:12.5px;color:var(--mute)}
.tv-links i{font-style:normal;color:#cdbfb2}
@media (max-width:900px){.tv{grid-template-columns:1fr;gap:24px}.tv-stage{max-width:340px;margin:0 auto;width:100%}}
@media (max-width:560px){.tv-links{grid-template-columns:1fr}.tv-sub{height:38px;padding:0 12px;font-size:13px}}
/* ===== 상담 신청: 사진 패널 + 2단계 신청서 ===== */
.cx-sec{background:var(--bg2)}
.cx{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);border-radius:18px;overflow:hidden;background:#fff;box-shadow:0 2px 4px rgba(60,40,25,.06),0 40px 80px -40px rgba(40,20,8,.55);border:1px solid var(--line)}
.cx-l{position:relative;min-height:640px;color:#fff;isolation:isolate}
.cx-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:45% 30%;z-index:-2}
.cx-l::after{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(180deg,rgba(32,22,15,.25) 0%,rgba(32,22,15,.55) 40%,rgba(32,22,15,.92) 100%)}
.cx-in{position:absolute;left:0;right:0;bottom:0;padding:40px 42px 38px;display:grid;gap:16px}
.cx-k{margin:0;font-family:var(--f-mono);font-size:12px;letter-spacing:.24em;color:#e8cdb6}
.cx-k b{font-family:var(--f-num);font-size:14px;margin-right:10px}
.cx-in h2{margin:0;font-size:clamp(28px,3vw,40px);line-height:1.28;letter-spacing:-.05em;color:#fff}
.cx-lead{margin:0;font-size:15.5px;color:rgba(255,255,255,.85)}
.cx-ct{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:6px}
.cx-tel,.cx-kt{display:flex;align-items:center;gap:12px;padding:14px 18px;border-radius:12px;text-decoration:none;transition:transform .2s}
.cx-tel:hover,.cx-kt:hover{transform:translateY(-2px)}
.cx-tel{flex-direction:column;align-items:flex-start;gap:0;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.3);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);color:#fff}
.cx-tel small{font-size:12px;color:rgba(255,255,255,.75)}
.cx-tel b{font-family:var(--f-num);font-size:24px;letter-spacing:-.01em}
.cx-kt{background:linear-gradient(180deg,#fff257,#fee500 60%,#efd500);color:#3A1D1D;box-shadow:0 12px 24px -12px rgba(0,0,0,.5)}
.cx-kt .lg{width:34px;height:34px}.cx-kt .lg rect{fill:#3A1D1D}.cx-kt .lg path{fill:#FEE500}.cx-kt .lg text{fill:#3A1D1D}
.cx-kt span{flex:1}.cx-kt b{display:block;font-size:15.5px}.cx-kt small{display:block;font-size:12px;opacity:.75}.cx-kt i{font-style:normal;font-weight:700}
.cx-pl{list-style:none;margin:8px 0 0;padding:16px 0 0;border-top:1px solid rgba(255,255,255,.22);display:grid;gap:8px}
.cx-pl li{position:relative;padding-left:22px;font-size:13.5px;color:rgba(255,255,255,.78)}
.cx-pl li::before{content:"";position:absolute;left:2px;top:7px;width:9px;height:5px;border-left:2px solid #f0d3b8;border-bottom:2px solid #f0d3b8;transform:rotate(-45deg)}
.cx-pl b{color:#fff;margin-right:6px}
.cx-f{padding:36px 42px 38px;display:grid;align-content:start;gap:20px;background:#fff}
.cx-steps{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding-bottom:18px}
.cx-steps span{display:flex;align-items:center;gap:10px;font-size:15px;font-weight:700;color:var(--mute)}
.cx-steps span i{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;border:2px solid #d8cbbe;font-style:normal;font-family:var(--f-num);font-size:14px;transition:all .3s}
.cx-steps span.on{color:var(--ink)}
.cx-steps span.on i{background:var(--brown);border-color:var(--brown);color:#fff;box-shadow:0 6px 12px -6px rgba(90,45,22,.7)}
.cx-bar{position:absolute;left:0;right:0;bottom:0;height:3px;border-radius:2px;background:#eee6de;overflow:hidden}
.cx-bar i{position:absolute;left:0;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#8a5130,#5a2d16);transition:width .45s cubic-bezier(.2,.8,.2,1)}
.cx-f.st2 .cx-bar i{width:100%}
.cx-s{display:grid;gap:20px;animation:mmIn .4s cubic-bezier(.2,.8,.2,1)}
.cx-s .tg{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.cx-s .tgi span{display:flex;align-items:center;justify-content:center;height:52px;text-align:center;border-radius:10px;font-size:14.5px}
.cx-tip{margin:0;padding:14px 16px;border-left:3px solid #d9cbbd;background:#fbf8f5;font-size:13.5px;line-height:1.7;color:var(--ink-2)}
.cx-next{height:56px;font-size:16px}
.cx-act{display:grid;grid-template-columns:auto 1fr;gap:10px}
.cx-act .btn{height:56px;font-size:16px}
@media (max-width:960px){.cx{grid-template-columns:1fr}.cx-l{min-height:560px}}
@media (max-width:560px){.cx-in{padding:28px 22px}.cx-ct{grid-template-columns:1fr}.cx-f{padding:26px 20px 28px}.cx-s .tg{grid-template-columns:1fr 1fr}.cx-steps span{font-size:13.5px}.cx-l{min-height:600px}}
@media (max-width:560px){
 .cx-l{min-height:0;background:#2a1d15}
 .cx-bg{position:relative;display:block;height:260px;object-position:45% 22%;z-index:0}
 .cx-l::after{top:0;bottom:auto;height:262px;background:linear-gradient(180deg,rgba(42,29,21,0) 55%,#2a1d15 100%);z-index:1}
 .cx-in{position:relative;z-index:2;margin-top:-40px}
}
.cx-bg{object-position:50% 50%}
.cx-l::after{background:linear-gradient(180deg,rgba(32,22,15,0) 0%,rgba(32,22,15,.35) 35%,rgba(32,22,15,.9) 78%)}
.cx-ct{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:stretch}
.cx-tel{justify-content:center}
.cx-tel b{white-space:nowrap;font-size:clamp(19px,1.75vw,24px);line-height:1.2}
.cx-kt{min-height:76px}
.cx-kt b{white-space:nowrap}
@media (max-width:560px){.cx-bg{object-position:50% 50%}.cx-tel b{font-size:24px}}
@media (max-width:560px){.cx-ct{grid-template-columns:1fr}.cx-l::after{top:0;bottom:auto;height:262px;background:linear-gradient(180deg,rgba(42,29,21,0) 60%,#2a1d15 100%)}}
/* 상담 신청: 한 장으로 */
.cx-f{gap:18px}
.cx-fh{display:flex;align-items:baseline;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-bottom:16px;border-bottom:2px solid var(--ink)}
.cx-fh b{font-size:22px;letter-spacing:-.03em}
.cx-fh span{display:flex;align-items:center;gap:8px;font-size:13.5px;font-weight:700;color:var(--brown)}
.cx-fh i{width:8px;height:8px;border-radius:50%;background:#2e9e5b;box-shadow:0 0 0 3px rgba(46,158,91,.18)}
.cx-f .field input,.cx-f .field select{height:54px;font-size:16px}
.cx-f #f-phone{font-weight:700;letter-spacing:.02em}
.cx-f .grp .tg{display:flex;flex-wrap:wrap;gap:6px}
.cx-f .grp .tgi span{height:38px;padding:0 14px;border-radius:999px;font-size:13.5px;display:inline-flex;align-items:center}
.cx-more{border:1px solid var(--line);border-radius:10px;background:#fcfaf8}
.cx-more summary{list-style:none;cursor:pointer;padding:13px 16px;font-size:14px;font-weight:700;color:var(--ink-2);display:flex;align-items:center;gap:8px}
.cx-more summary::-webkit-details-marker{display:none}
.cx-more summary::before{content:"+";display:grid;place-items:center;width:20px;height:20px;border-radius:50%;background:var(--brown-soft);color:var(--brown);font-size:14px}
.cx-more[open] summary::before{content:"−"}
.cx-more summary small{margin-left:auto;font-weight:500;color:var(--mute)}
.cx-mb{display:grid;gap:14px;padding:4px 16px 16px}
.cx-sub{height:62px;font-size:17px;letter-spacing:-.01em}
.cx-trust{margin:-6px 0 0;text-align:center;font-size:12.5px;color:var(--mute)}
/* ===== Language switcher ===== */
.lsw{position:relative;flex:none}
.lsw-b{display:inline-flex;align-items:center;gap:6px;height:40px;padding:0 12px;border:1px solid var(--line-2);border-radius:999px;background:linear-gradient(180deg,#fff,#faf7f4);font:inherit;font-size:13px;font-weight:700;color:var(--ink-2);cursor:pointer;box-shadow:inset 0 1px 0 #fff,0 4px 10px -6px rgba(60,40,25,.35)}
.lsw-b svg{width:17px;height:17px;color:var(--brown)}
.lsw-b:hover{border-color:var(--brown);color:var(--brown)}
.lsw-m{position:absolute;right:0;top:calc(100% + 8px);min-width:140px;display:none;padding:6px;background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);z-index:80}
.lsw.on .lsw-m{display:grid}
.lsw-m a{padding:9px 12px;border-radius:8px;font-size:14px;color:var(--ink);text-decoration:none}
.lsw-m a:hover{background:var(--brown-soft);color:var(--brown)}
.lsw-m a[aria-current]{font-weight:700;color:var(--brown)}
.lsw-m a[aria-current]::after{content:" ✓"}
@media (max-width:480px){.lsw-b span{display:none}.lsw-b{padding:0 10px}}
/* ===== Foreign-language pages ===== */
.i18n .nav{margin-left:auto}
.i18n .hd-in{gap:16px}
.i-note{margin-top:16px;font-size:13.5px;color:rgba(255,255,255,.72)}
.i18n .hero-full .hero-title{font-size:clamp(32px,4vw,60px)}
.i18n-en .hero-title .ln{white-space:normal}
.i-areas{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:14px}
.ia{display:grid;grid-template-columns:52px 1fr;grid-template-rows:auto auto;column-gap:14px;align-items:center;padding:18px 20px;border:1px solid var(--line);border-radius:12px;background:#fff;box-shadow:var(--shadow-s)}
.ia .ar-ic{grid-row:span 2;width:52px;height:52px;border-radius:14px;margin:0}
.ia .ar-ic svg{width:34px;height:34px}
.ia b{font-size:15.5px;line-height:1.35}
.ia small{font-size:13px;color:var(--mute);line-height:1.45}
.i-con{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:start}
.i-con h2{font-size:clamp(26px,3vw,38px);letter-spacing:-.03em;margin:14px 0 10px}
.i-con-l>p{color:var(--ink-2);line-height:1.8}
.i-tel{display:block;margin:22px 0 14px;font-family:var(--f-num);font-size:clamp(30px,3.4vw,44px);font-weight:700;color:var(--brown);text-decoration:none;white-space:nowrap}
.i-con-l .i-note{color:var(--mute)}
.i-form{padding:30px;background:#fff;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow)}
.i-form .hp{position:absolute;left:-9999px}
.i-foot{margin-top:18px;font-size:13.5px;color:var(--ink-2);line-height:1.7}
@media (max-width:900px){.i-con{grid-template-columns:1fr;gap:28px}.i18n .nav{display:none}}
.i18n .hero-title .ln{white-space:normal}
.i18n .lw-name{font-size:clamp(30px,3.4vw,46px);line-height:1.2}

@media (max-width:1180px){.lsw{margin-left:auto}.hd-call{margin-left:0!important}.menu-btn{margin-left:0!important}}
@media (max-width:900px){.i18n .lsw{margin-left:auto}}
/* ===== WHY (선임 전환) ===== */
.why{background:linear-gradient(180deg,#fbf8f5,#f4ede7)}
.why-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 56px;align-items:end;padding-bottom:34px;border-bottom:2px solid var(--ink)}
.why-head .eyebrow{grid-column:1/-1;font-family:var(--f-mono);font-size:12px;letter-spacing:.26em;color:var(--brown);margin:0}
.why-head h2,.why-head h1{margin:0;font-size:clamp(30px,3.6vw,50px);line-height:1.25;letter-spacing:-.05em}
.why-head h2 em,.why-head h1 em{font-style:normal;color:var(--brown)}
.why-head>p{margin:0;color:var(--ink-2);line-height:1.8;font-size:16px}
.why-more{grid-column:2;justify-self:start;font-weight:700;font-size:14.5px;color:var(--brown);text-decoration:none;border-bottom:1px solid currentColor;padding-bottom:2px}
.why-list{list-style:none;margin:0;padding:0}
.why-r{display:grid;grid-template-columns:64px minmax(0,.9fr) minmax(0,1.25fr) minmax(0,1.1fr);gap:28px;align-items:start;padding:34px 0;border-bottom:1px solid var(--line-2)}
.why-n{font-family:var(--f-num);font-size:34px;font-weight:700;line-height:1;color:var(--brown);opacity:.9}
.why-q{margin:4px 0 0;font-size:15.5px;font-weight:700;color:var(--mute);line-height:1.55}
.why-h{margin:0;font-size:clamp(20px,1.9vw,25px);line-height:1.45;letter-spacing:-.03em;color:var(--ink)}
.why-d p{margin:0;font-size:14.5px;color:var(--ink-2);line-height:1.8}
.why-d b{display:inline-block;margin-top:12px;padding:6px 12px;border-radius:999px;background:#fff;border:1px solid #e2d4c7;color:var(--brown);font-size:14px;box-shadow:0 6px 14px -10px rgba(90,45,22,.5)}
.why-r[data-why="edu"] .why-h{color:var(--brown)}
.why-cta{display:grid;grid-template-columns:minmax(0,1.2fr) auto;gap:28px;align-items:center;margin-top:44px;padding:34px 38px;border-radius:16px;color:#fff;
  background:linear-gradient(135deg,#7a4425 0%,#5a2d16 55%,#45210f 100%);box-shadow:inset 0 1px 0 rgba(255,255,255,.18),0 30px 60px -30px rgba(70,33,15,.7)}
.wc-t b{display:block;font-size:clamp(20px,2vw,26px);letter-spacing:-.03em;line-height:1.4}
.wc-t p{margin:8px 0 0;color:rgba(255,255,255,.82);line-height:1.7}
.wc-t small{display:block;margin-top:10px;font-size:12.5px;color:#e8cdb6;letter-spacing:.02em}
.wc-b{display:grid;gap:10px;min-width:280px}
.why-cta .btn-light{background:#fff;color:var(--brown);border-color:#fff;box-shadow:0 10px 20px -10px rgba(0,0,0,.5)}
.why-cta .btn-light:hover{background:#f7efe8;color:var(--brown)}
.why-cta .btn-ghost{background:rgba(255,255,255,.08);color:#fff;border:1px solid rgba(255,255,255,.4);box-shadow:none;font-family:var(--f-num);font-size:17px}
.why-cta .btn-ghost:hover{background:rgba(255,255,255,.16);color:#fff;border-color:#fff}
.lw-cred{margin:6px 0 18px;display:inline-block;padding:7px 14px;border-radius:999px;background:var(--brown-soft);color:var(--brown);font-weight:700;font-size:14px;letter-spacing:-.01em}
.why-mini{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-top:56px;padding-bottom:8px}
.why-mini>div{display:grid;gap:6px;padding:20px 24px;border-radius:12px;background:#fff;border:1px solid var(--line);border-left:4px solid var(--brown);box-shadow:var(--shadow-s)}
.why-mini span{font-size:13.5px;color:var(--mute);font-weight:700}
.why-mini b{font-size:17px;line-height:1.5;letter-spacing:-.02em}
@media (max-width:1000px){.why-r{grid-template-columns:48px 1fr;gap:10px 18px}.why-r .why-h,.why-r .why-d{grid-column:2}.why-n{grid-row:span 3;font-size:28px}
 .why-head{grid-template-columns:1fr}.why-more{grid-column:1}.why-cta{grid-template-columns:1fr;padding:28px 24px}.wc-b{min-width:0}}
@media (max-width:640px){.why-mini{grid-template-columns:1fr}}

/* ===== Mobile hero refinement (2026-10-31) ===== */
.hf-media video{opacity:0;transition:opacity .9s ease}
.hf-media video.on{opacity:1}
@media (max-width:760px){
 .hf{min-height:calc(100svh - 64px)}
 .hf-shade{background:linear-gradient(0deg,rgba(24,17,12,.92) 0%,rgba(24,17,12,.72) 42%,rgba(24,17,12,.28) 78%,rgba(24,17,12,.12) 100%)}
 .hf-in{padding-block:40px 104px}
 .hero-full .meta{font-size:12.5px;letter-spacing:-.01em}
 .hero-full .hero-title{font-size:clamp(27px,7.6vw,31px);line-height:1.28;margin-top:14px}
 .hero-full .lede{font-size:15px;line-height:1.7;margin-top:14px;color:rgba(255,255,255,.8)}
 .hero-full .find{margin-top:22px}
 .hero-full .find form{height:52px;border-width:1px}
 .hero-full .find input{padding:0 14px;font-size:16px}
 .hero-full .find button[type=submit]{padding:0 20px;font-size:15px}
 .hero-full .ex{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;margin:12px -20px 0 0;padding:2px 20px 4px 0;gap:6px;font-size:12.5px;white-space:nowrap;
  -webkit-mask-image:linear-gradient(90deg,#000 85%,transparent);mask-image:linear-gradient(90deg,#000 85%,transparent)}
 .hero-full .ex::-webkit-scrollbar{display:none}
 .hero-full .ex button{flex:none;padding:6px 12px;font-size:13px}
}

/* case card: no generic card lift/shadow — only the paper moves */
.cf-btn.cc-btn,.cf-btn.cc-btn:hover,.cf-btn.cc-btn:focus-visible{box-shadow:none;transform:none;background:none;border:0}
.cf-btn:focus-visible .cf-paper{outline:2px solid var(--brown);outline-offset:4px}
