@charset "utf-8";
/* sych.kr /pension/ — 미니멀 모노크롬: 밝은 회색·검정·단일 강조(숫자)·산세리프 */
:root{
  --paper:#ececee; --paper-2:#ffffff; --paper-3:#f5f5f6;
  --ink:#16161a; --ink-2:#3c3c42; --muted:#86868d;
  --rule:#d7d7db; --rule-soft:#e8e8ea;
  --dormant:#a6a6ad;
  --pine:#2140df; --pine-soft:#182fac;
  --seal:#16161a;
  --serif:'Noto Sans KR',-apple-system,BlinkMacSystemFont,'Segoe UI',system-ui,sans-serif;
  --mono:'IBM Plex Mono','Noto Sans Mono',ui-monospace,monospace;
  --measure:34rem; --page:66rem;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-weight:400;font-size:16.5px;line-height:1.8;letter-spacing:-0.006em}
.fig,.ledger td,.ledger th,input,select,output{font-family:var(--mono);font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1}
.wrap{max-width:var(--page);margin:0 auto;padding:0 24px}
.narrow{max-width:var(--measure)}
.masthead{border-bottom:1px solid var(--rule);background:var(--paper-2)}
.masthead-inner{max-width:var(--page);margin:0 auto;padding:16px 24px;display:flex;align-items:baseline;justify-content:space-between;gap:20px;flex-wrap:wrap}
.masthead a.brand{font-family:var(--mono);font-size:12px;letter-spacing:0.2em;text-transform:uppercase;color:var(--ink);text-decoration:none}
.masthead nav{display:flex;gap:22px;font-size:14px}
.masthead nav a{color:var(--ink-2);text-decoration:none;border-bottom:1px solid transparent;padding-bottom:2px}
.masthead nav a:hover,.masthead nav a:focus-visible{border-bottom-color:var(--pine);color:var(--pine)}
.masthead nav a[aria-current="page"]{color:var(--pine);border-bottom-color:var(--pine)}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:0.2em;text-transform:uppercase;color:var(--muted);margin:0 0 14px}
h1{font-size:clamp(28px,4.4vw,44px);font-weight:700;line-height:1.24;letter-spacing:-0.025em;margin:0 0 20px}
h2{font-size:clamp(20px,2.4vw,25px);font-weight:600;line-height:1.4;letter-spacing:-0.02em;margin:60px 0 16px}
h3{font-size:17.5px;font-weight:600;margin:32px 0 10px}
.lede{font-size:18.5px;color:var(--ink-2);max-width:var(--measure)}
.rule-double{border:0;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);height:3px;margin:52px 0}
.rule-thin{border:0;border-top:1px solid var(--rule);margin:38px 0}
.gates{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--rule);border:1px solid var(--rule);margin:46px 0}
.gate{padding:36px 30px 30px;background:var(--paper-2);text-decoration:none;color:inherit;display:flex;flex-direction:column;transition:background .2s ease}
.gate:hover,.gate:focus-visible{background:var(--paper-3)}
.gate-no{font-family:var(--mono);font-size:11px;letter-spacing:0.18em;color:var(--muted)}
.gate h2{margin:14px 0 12px;font-size:23px}
.gate p{margin:0 0 24px;color:var(--ink-2);font-size:15.5px;line-height:1.72}
.gate .who{font-family:var(--mono);font-size:12px;letter-spacing:0.04em;color:var(--pine);margin-top:auto;padding-top:16px;border-top:1px solid var(--rule-soft)}
.ledger{width:100%;border-collapse:collapse;font-size:15px;margin:24px 0;background:var(--paper-2)}
.ledger caption{caption-side:top;text-align:left;font-family:var(--mono);font-size:11px;letter-spacing:0.18em;text-transform:uppercase;color:var(--muted);padding:14px 16px 10px;border-bottom:1px solid var(--ink)}
.ledger th{font-family:var(--serif);font-weight:400;text-align:left;color:var(--ink-2);padding:12px 16px;border-bottom:1px solid var(--rule-soft);white-space:nowrap}
.ledger td{text-align:right;padding:12px 16px;border-bottom:1px solid var(--rule-soft);white-space:nowrap;font-size:15px}
.ledger tr.sum th,.ledger tr.sum td{border-bottom:3px double var(--ink);border-top:1px solid var(--ink);font-weight:700;color:var(--ink);padding-top:14px}
.ledger td.pine{color:var(--pine)}
.ledger td.seal{color:var(--seal);font-weight:600}
.ledger td.dorm{color:var(--dormant)}
.unit{font-size:12px;color:var(--muted);margin-left:3px}
.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:18px 24px;margin:24px 0 8px}
.field label{display:block;font-size:14px;color:var(--ink-2);margin-bottom:7px}
.field .hint{font-size:12px;color:var(--muted);font-family:var(--serif)}
input[type="number"],input[type="text"],select,textarea{width:100%;padding:11px 12px;font-size:15.5px;color:var(--ink);background:var(--paper-2);border:1px solid var(--rule);border-radius:0;text-align:right}
input[type="text"],select,textarea{text-align:left;font-family:var(--serif)}
input:focus,select:focus,textarea:focus{outline:2px solid var(--pine);outline-offset:-2px;background:#fff}
.gate-check{border:1px solid var(--rule);background:var(--paper-3);padding:16px 18px;margin:20px 0 6px}
.gate-check legend{font-size:13.5px;color:var(--ink-2);padding:0 6px}
.gate-check label{display:inline-flex;align-items:center;gap:8px;margin:6px 22px 6px 0;font-size:15px;cursor:pointer}
.gate-check input[type="radio"]{width:auto;accent-color:var(--pine)}
.block-msg{color:var(--seal);font-size:14px;background:var(--paper-3);border-left:2px solid var(--pine);padding:8px 14px;margin:12px 0}
.compare{width:100%;border-collapse:collapse;font-size:15px;margin:24px 0;background:var(--paper-2)}
.compare th,.compare td{text-align:left;vertical-align:top;padding:13px 16px;border-bottom:1px solid var(--rule-soft);line-height:1.65}
.compare thead th{border-bottom:1px solid var(--ink);font-weight:600;white-space:nowrap}
.compare tbody th{font-weight:400;color:var(--muted);white-space:nowrap}
.qa{margin:30px 0}
.qa h3{margin:28px 0 8px}
.qa .answer-lead{color:var(--ink);font-weight:600}
.qa p{max-width:var(--measure)}
ol.steps{counter-reset:s;list-style:none;padding:0;margin:24px 0}
ol.steps li{counter-increment:s;padding:15px 0 15px 50px;border-bottom:1px solid var(--rule-soft);position:relative;max-width:var(--measure)}
ol.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:17px;font-family:var(--mono);font-size:12px;color:var(--pine);letter-spacing:0.06em}
.cta{border:1px solid var(--ink);background:var(--paper-2);padding:32px;margin:52px 0}
.cta h2{margin-top:0}
.btn{display:inline-block;background:var(--pine);color:#fff;text-decoration:none;padding:13px 28px;font-size:15.5px;border:1px solid var(--pine);cursor:pointer;font-family:var(--serif);font-weight:500}
.btn:hover,.btn:focus-visible{background:var(--pine-soft);border-color:var(--pine-soft)}
.btn:disabled{background:var(--rule);border-color:var(--rule);color:var(--muted);cursor:not-allowed}
.notice{border-left:2px solid var(--pine);padding:4px 0 4px 18px;margin:32px 0;font-size:14.5px;color:var(--ink-2);line-height:1.75;max-width:var(--measure)}
.notice strong{font-weight:600}
.foot{border-top:1px solid var(--ink);background:var(--paper-3);margin-top:76px;padding:40px 0 56px;font-size:13.5px;line-height:1.8;color:var(--ink-2)}
.foot .disclosure{max-width:46rem;margin:0 0 22px}
.foot .disclosure p{margin:0 0 10px}
.foot .reg{font-family:var(--mono);font-size:12px;letter-spacing:0.01em;color:var(--muted)}
.foot a{color:var(--pine)}
.src{font-size:12.5px;color:var(--muted);margin-top:-12px;margin-bottom:28px;max-width:var(--measure)}
.src a{color:var(--muted)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media (max-width:720px){body{font-size:15.5px}.gates{grid-template-columns:1fr}.masthead nav{gap:16px;font-size:13px}.compare thead{display:none}.compare tbody th,.compare td{display:block;padding:5px 0;border:0}.compare tbody tr{display:block;padding:12px 0;border-bottom:1px solid var(--rule-soft)}}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
