:root{
  --bg:#1a140d; --surface:#241a10; --card:#2a1e12; --ink:#f7efe3;
  --muted:#c3b299; --line:#3d2e1c; --accent:#F28320; --accent2:#D95F00;
  --ok:#2e9e4f; --warn:#e0a800; --bad:#d64545;
  --radius:16px; --maxw:980px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;background:
    radial-gradient(1200px 600px at 80% -10%,rgba(242,131,32,.18),transparent),
    radial-gradient(900px 500px at -10% 20%,rgba(217,95,0,.12),transparent),
    var(--bg);
  color:var(--ink);line-height:1.7;
  font-family:"Noto Sans KR","Apple SD Gothic Neo","Malgun Gothic",system-ui,-apple-system,sans-serif;
  -webkit-font-smoothing:antialiased;
}
a{color:var(--accent2);text-decoration:none}
a:hover{text-decoration:underline}

/* nav */
.nav{
  display:flex;align-items:center;justify-content:space-between;
  padding:16px 24px;position:sticky;top:0;z-index:10;
  background:rgba(26,20,13,.80);backdrop-filter:blur(10px);
  border-bottom:1px solid var(--line);
}
.nav .brand{font-weight:800;font-size:1.1rem;color:var(--ink)}
.nav nav{display:flex;gap:20px;flex-wrap:wrap}
.nav nav a{color:var(--muted);font-size:.95rem}
.nav nav a:hover,.nav nav a.active{color:var(--ink)}

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

/* hero */
.hero{padding:72px 0 48px}
.eyebrow{letter-spacing:.18em;font-size:.78rem;color:var(--accent2);
  font-weight:700;margin:0 0 14px}
.hero h1{font-size:clamp(2rem,5vw,3.3rem);line-height:1.2;margin:0 0 20px;
  font-weight:800;letter-spacing:-.02em}
.hero h1 em{color:var(--accent2);font-style:normal}
.lead{font-size:1.15rem;color:var(--muted);max-width:62ch}
.lead strong{color:var(--ink)}
.cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.btn{display:inline-block;padding:12px 20px;border-radius:12px;font-weight:700;
  border:1px solid var(--line)}
.btn.primary{background:linear-gradient(135deg,var(--accent),var(--accent2));
  color:#fff;border:none}
.btn.primary:hover{filter:brightness(1.08);text-decoration:none}
.btn.ghost{color:var(--ink);background:transparent}
.btn.ghost:hover{border-color:var(--accent2);text-decoration:none}

/* bands */
.band{padding:52px 0;border-top:1px solid var(--line)}
.band.alt{background:rgba(42,30,18,.5);border-radius:var(--radius);
  padding:52px 28px;margin:12px 0}
.band h2{font-size:1.7rem;margin:0 0 26px;letter-spacing:-.01em}

.grid3{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);
  padding:22px}
.card h3{margin:0 0 10px;font-size:1.15rem}
.card p{margin:0;color:var(--muted)}
.card em{color:var(--accent2);font-style:normal}

/* project */
.project{background:var(--card);border:1px solid var(--line);
  border-radius:var(--radius);padding:24px;margin-bottom:18px}
.project-head{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:8px}
.project-head h3{margin:0;font-size:1.3rem}
.tag{font-size:.78rem;color:var(--accent2);border:1px solid var(--line);
  padding:3px 10px;border-radius:999px}
.project p{color:var(--muted)}
.project p strong{color:var(--ink)}
.read{display:inline-block;margin-top:8px;font-weight:700}

.services{list-style:none;padding:0;margin:14px 0;display:grid;gap:10px}
.services li{color:var(--muted);padding-left:4px}
.services b{color:var(--accent2)}
.small{font-size:.85rem;color:var(--muted)}

.facts{list-style:none;display:flex;gap:28px;flex-wrap:wrap;padding:0;margin:18px 0}
.facts.wide{gap:40px}
.facts li{display:flex;flex-direction:column}
.facts b{font-size:1.8rem;color:var(--ink);line-height:1.1}
.facts span{font-size:.85rem;color:var(--muted)}

/* contact */
.contact{list-style:none;padding:0;font-size:1.05rem;display:grid;gap:8px}

/* document (report) */
.doc{padding:40px 24px 80px;max-width:820px}
.doc h1{font-size:clamp(1.8rem,4vw,2.6rem);line-height:1.25;margin:6px 0 10px;
  letter-spacing:-.02em}
.doc .byline{color:var(--muted);font-size:.92rem;margin:0 0 28px}
.doc h2{font-size:1.45rem;margin:40px 0 12px;padding-top:8px;
  border-top:1px solid var(--line)}
.doc p,.doc li{color:#cdd6ea}
.doc em{color:var(--accent2);font-style:normal}
.doc b{color:var(--ink)}
.doc code{background:#0e1627;border:1px solid var(--line);padding:1px 6px;
  border-radius:6px;color:#a5f3fc;font-size:.9em}
.callout{background:rgba(242,131,32,.12);border:1px solid var(--accent);
  border-radius:12px;padding:16px 18px;margin:8px 0 8px}
.callout strong{color:#c7d2fe}

.decision,.blocker,.try,.why{font-weight:800;letter-spacing:.04em;
  text-transform:uppercase;font-size:.78rem;margin:18px 0 2px}
.decision,.decision-inline{color:var(--ok)}
.blocker{color:var(--bad)}
.try{color:var(--warn)}
.why{color:var(--accent2)}
.decision-inline{text-transform:none;font-size:inherit}

blockquote{margin:14px 0;padding:14px 18px;border-left:3px solid var(--accent2);
  background:rgba(217,95,0,.08);border-radius:0 10px 10px 0;color:#e6d9c6}

figure{margin:22px 0;text-align:center}
figure svg{background:#fff;border-radius:12px;padding:10px}
figcaption{color:var(--muted);font-size:.85rem;margin-top:8px}

.tbl{width:100%;border-collapse:collapse;margin:18px 0;font-size:.92rem}
.tbl th,.tbl td{border:1px solid var(--line);padding:9px 12px;text-align:left}
.tbl th{background:#0e1627;color:#c7d2fe}
.tbl td code{font-size:.85em}

.back{margin-top:40px}

footer{border-top:1px solid var(--line);margin-top:40px;padding:28px 24px;
  text-align:center;color:var(--muted);font-size:.88rem}
