/* IAI — iaiu.net (2026-11-01 redesign: quiet, large type, law-firm rules, Apple-style sections) */
:root{
  --ink:#0a0a0b;--ink-2:#151517;--paper:#f6f4ef;--paper-2:#ffffff;
  --fg:#111112;--fg-2:#5d5a55;--rule:#d9d4ca;
  --fg-d:#f5f3ee;--fg-d2:#a19d96;--rule-d:#2a2a2d;
  --gold:#b08d57;
  --serif:"Noto Serif KR","Iowan Old Style","Times New Roman",serif;
  --sans:"Pretendard","Inter",-apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo",sans-serif;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;background:var(--paper);color:var(--fg);font:17px/1.7 var(--sans);-webkit-font-smoothing:antialiased;letter-spacing:-.005em}
a{color:inherit}
img{max-width:100%;display:block}
.wrap{max-width:1180px;margin:0 auto;padding:0 28px}

/* nav */
.nav{position:fixed;inset:0 0 auto;z-index:20;color:var(--fg-d);transition:background .35s,border-color .35s,color .35s;border-bottom:1px solid transparent}
.nav.solid{background:rgba(10,10,11,.72);backdrop-filter:saturate(180%) blur(18px);-webkit-backdrop-filter:saturate(180%) blur(18px);border-color:rgba(255,255,255,.08)}
.nav-in{display:flex;align-items:center;justify-content:space-between;height:56px}
.mark{font:600 19px/1 var(--serif);letter-spacing:.18em;text-decoration:none}
.nav nav{display:flex;gap:28px;font-size:13px;letter-spacing:.02em}
.nav nav a{text-decoration:none;opacity:.78;transition:opacity .2s}.nav nav a:hover{opacity:1}
.nav .lang{border:1px solid rgba(255,255,255,.28);border-radius:999px;padding:1px 11px;opacity:1}

/* hero */
.hero{min-height:100svh;display:flex;align-items:flex-end;background:
  radial-gradient(1200px 600px at 78% 12%,rgba(176,141,87,.16),transparent 60%),
  radial-gradient(900px 500px at 10% 90%,rgba(80,96,140,.14),transparent 60%),var(--ink);color:var(--fg-d);padding:140px 0 88px}
.eyebrow{margin:0 0 28px;font-size:13px;letter-spacing:.24em;text-transform:uppercase;color:var(--gold)}
.hero h1{margin:0;font:500 clamp(44px,8.2vw,112px)/1.04 var(--serif);letter-spacing:-.025em}
.hero h1 em{font-style:normal;color:var(--fg-d2)}
.hero-sub{max-width:620px;margin:40px 0 0;font-size:clamp(17px,1.6vw,21px);color:var(--fg-d2);line-height:1.6}
.scroll{display:inline-flex;gap:10px;align-items:center;margin-top:56px;font-size:14px;letter-spacing:.04em;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.3);padding-bottom:6px}

/* section heads */
.sec-head{display:grid;grid-template-columns:1fr 1.2fr;gap:48px;align-items:end;margin-bottom:56px}
.sec-head h2,.principles h2,.company h2{margin:0;font:500 clamp(34px,4.4vw,56px)/1.1 var(--serif);letter-spacing:-.02em}
.sec-head p{margin:0;color:var(--fg-2);font-size:18px}

/* index (law-firm style table of contents) */
.index{padding:140px 0 120px}
.ix{border-top:1px solid var(--fg)}
.ix-head,.ix-row{display:grid;grid-template-columns:1.4fr 1fr 150px;gap:16px;align-items:baseline}
.ix-head{padding:14px 0;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--fg-2);border-bottom:1px solid var(--rule)}
.ix-row{padding:26px 0;border-bottom:1px solid var(--rule);text-decoration:none;transition:padding .3s,background .3s}
.ix-row:hover{padding-left:12px;background:linear-gradient(90deg,rgba(176,141,87,.08),transparent 60%)}
.ix-no{font:500 15px var(--serif);color:var(--gold)}
.ix-name{font:500 clamp(24px,2.6vw,34px)/1.2 var(--serif);letter-spacing:-.01em}
.ix-field{color:var(--fg-2);font-size:15px}
.ix-status{font-size:13px;justify-self:end}
.ix-status::before,.ft-status::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;margin-right:8px;vertical-align:1px;background:currentColor}
.s-live{color:#2f7d55}.s-beta{color:#3d63a3}.s-building{color:#a6782f}

/* feature sections */
.ft{padding:140px 0}
.ft-dark{background:var(--ink);color:var(--fg-d)}
.ft-light{background:var(--paper-2);color:var(--fg)}
.ft-grid{display:grid;grid-template-columns:5fr 7fr;gap:72px;align-items:center}
.ft-light .ft-grid{grid-template-columns:7fr 5fr}
.ft-light .ft-copy{order:2}
.ft-meta{display:flex;flex-wrap:wrap;gap:18px;margin:0 0 26px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;opacity:.85}

.ft-dark .s-live{color:#79c79e}.ft-dark .s-beta{color:#8fb0e6}.ft-dark .s-building{color:#e0b46c}
.ft-name{margin:0;font:500 clamp(44px,6vw,80px)/1.02 var(--serif);letter-spacing:-.03em}
.ft-tag{margin:22px 0 0;font-size:clamp(20px,2vw,26px);line-height:1.45;font-weight:500;letter-spacing:-.01em}
.ft-body{margin:22px 0 0;font-size:16px;line-height:1.8;opacity:.72}
.ft-note{margin:18px 0 0;font-size:13px;padding-left:12px;border-left:2px solid var(--gold);opacity:.8}
.ft-link{display:inline-flex;align-items:center;gap:12px;margin-top:36px;padding:13px 24px;border-radius:999px;font-size:15px;font-weight:600;text-decoration:none;background:var(--fg);color:var(--paper-2);transition:transform .25s,gap .25s}
.ft-dark .ft-link{background:var(--fg-d);color:var(--ink)}
.ft-link:hover{gap:18px}
.ft-host{margin:12px 0 0;font-size:13px;opacity:.5}
.ft-media{border-radius:22px;overflow:hidden;box-shadow:0 40px 80px -30px rgba(0,0,0,.45),0 0 0 1px rgba(255,255,255,.06);transform:translateZ(0);transition:transform .6s cubic-bezier(.2,.7,.2,1)}
.ft-light .ft-media{box-shadow:0 40px 80px -36px rgba(20,20,30,.35),0 0 0 1px rgba(0,0,0,.05)}
.ft-media:hover{transform:scale(1.015)}
.ft-media img{width:100%;height:auto;aspect-ratio:1200/630;object-fit:cover}

/* principles */
.principles{padding:140px 0;background:var(--paper)}
.pr-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:56px;border-top:1px solid var(--fg)}
.pr{padding:32px 32px 8px 0;border-right:1px solid var(--rule)}
.pr+.pr{padding-left:32px}.pr:last-child{border-right:0}
.pr h3{margin:0 0 14px;font:500 24px/1.3 var(--serif)}
.pr p{margin:0;color:var(--fg-2);font-size:16px}

/* company */
.company{padding:140px 0 120px;background:var(--paper-2)}
.co-grid{display:grid;grid-template-columns:5fr 7fr;gap:72px}
.co-lead{margin:22px 0 0;color:var(--fg-2);font-size:18px;max-width:360px}
.co-list{margin:0;border-top:1px solid var(--fg)}
.co-row{display:grid;grid-template-columns:180px 1fr;gap:20px;padding:17px 0;border-bottom:1px solid var(--rule);font-size:15px}
.co-row dt{color:var(--fg-2)}.co-row dd{margin:0}

/* footer */
.foot{background:var(--ink);color:var(--fg-d2);font-size:13px}
.foot-in{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;padding:44px 28px 56px}
.foot .mark{color:var(--fg-d)}
.foot-links{display:flex;gap:22px}.foot-links a{text-decoration:none}.foot-links a:hover{color:var(--fg-d)}

/* reveal */
.reveal{opacity:0;transform:translateY(28px);transition:opacity 1s cubic-bezier(.2,.7,.2,1),transform 1s cubic-bezier(.2,.7,.2,1)}
.reveal.in{opacity:1;transform:none}
.ft-grid .reveal:nth-child(2){transition-delay:.12s}
@media (prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}html{scroll-behavior:auto}}

/* privacy / terms */
.doc-body{background:var(--paper)}
main.doc{max-width:760px;margin:0 auto;padding:120px 28px 96px}
main.doc h1{font:500 40px/1.15 var(--serif);margin:0 0 6px;letter-spacing:-.02em}
main.doc h2{font:500 22px var(--serif);margin:40px 0 10px}
main.doc p,main.doc li{color:#2a2926;font-size:16px}
main.doc table{border-collapse:collapse;width:100%}main.doc td{border-top:1px solid var(--rule);padding:9px 6px}
.muted{color:var(--fg-2)}
.doc-body .nav{color:var(--fg-d)}

/* responsive */
@media (max-width:900px){
  .sec-head,.ft-grid,.ft-light .ft-grid,.co-grid{grid-template-columns:1fr;gap:36px}
  .ft-light .ft-copy{order:0}
  .ft{padding:96px 0}.index,.principles,.company{padding:96px 0}
  .pr-grid{grid-template-columns:1fr}.pr,.pr+.pr{padding:26px 0;border-right:0;border-bottom:1px solid var(--rule)}
}
@media (max-width:600px){
  .wrap{padding:0 20px}
  .nav nav a:not(.lang){display:none}
  .hero{padding:120px 0 64px}
  .ix-head{display:none}
  .ix-row{grid-template-columns:1fr auto;row-gap:2px}
  .ix-field{grid-column:1;grid-row:2;font-size:13px}
  .ix-status{grid-column:2;grid-row:1}
  .co-row{grid-template-columns:1fr;gap:2px}
  .foot-in{flex-direction:column;align-items:flex-start}
}

/* 2026-11-01 — capabilities, process, request form, CTAs */
.nav-cta{background:var(--fg-d);color:var(--ink)!important;opacity:1!important;border-radius:999px;padding:4px 14px;font-weight:600}
.hero-cta{display:flex;flex-wrap:wrap;align-items:center;gap:28px;margin-top:52px}
.hero-cta .scroll{margin-top:0}
.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:15px 30px;border-radius:999px;border:0;background:var(--gold);color:#111;font:600 15px var(--sans);text-decoration:none;cursor:pointer;transition:transform .2s,box-shadow .2s}
.btn-primary:hover{transform:translateY(-1px);box-shadow:0 12px 30px -12px rgba(176,141,87,.7)}
.btn-primary:disabled{opacity:.6;cursor:wait}

.caps{padding:140px 0 120px;background:var(--paper-2)}
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--fg);border-bottom:1px solid var(--rule);margin-bottom:72px}
.st{padding:30px 24px 30px 0}.st+.st{padding-left:24px;border-left:1px solid var(--rule)}
.st strong{display:block;font:500 clamp(30px,3.6vw,48px)/1.1 var(--serif);letter-spacing:-.02em}
.st span{display:block;margin-top:8px;color:var(--fg-2);font-size:14px}
.cap-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--rule);border:1px solid var(--rule);border-radius:20px;overflow:hidden}
.cap{background:var(--paper-2);padding:36px 32px 34px;display:flex;flex-direction:column;transition:background .3s}
.cap:hover{background:#fbfaf7}
.cap-no{font:500 14px var(--serif);color:var(--gold)}
.cap h3{margin:0 0 12px;font:500 26px/1.25 var(--serif);letter-spacing:-.01em}
.cap p{margin:0;color:var(--fg-2);font-size:15.5px}
.cap .cap-proof{margin-top:auto;padding-top:22px;font-size:13px;color:var(--fg);border-top:1px solid var(--rule);margin-top:22px}

.proc{padding:140px 0;background:var(--ink);color:var(--fg-d)}
.proc h2{margin:0 0 56px;font:500 clamp(34px,4.4vw,56px)/1.1 var(--serif);letter-spacing:-.02em}
.pc{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid rgba(255,255,255,.25)}
.pc li{padding:28px 22px 0 0}.pc li+li{padding-left:22px;border-left:1px solid var(--rule-d)}
.pc-no{font:500 14px var(--serif);color:var(--gold)}
.pc h3{margin:14px 0 10px;font:500 22px var(--serif)}
.pc p{margin:0;color:var(--fg-d2);font-size:14.5px}

.req{padding:140px 0;background:var(--paper)}
.req-grid{display:grid;grid-template-columns:5fr 7fr;gap:72px;align-items:start}
.req h2{margin:0;font:500 clamp(40px,5vw,64px)/1.05 var(--serif);letter-spacing:-.025em}
.req-lead{margin:22px 0 0;color:var(--fg-2);font-size:18px;max-width:380px}
.req-mail{margin:28px 0 0;font-size:15px}.req-mail a{text-decoration:none;border-bottom:1px solid var(--gold);padding-bottom:3px}
.req-form{background:var(--paper-2);border:1px solid var(--rule);border-radius:22px;padding:36px;box-shadow:0 30px 60px -40px rgba(20,20,30,.3);display:flex;flex-direction:column;gap:18px}
.req-form label{display:flex;flex-direction:column;gap:7px;font-size:13px;color:var(--fg-2)}
.req-form input,.req-form select,.req-form textarea{font:16px var(--sans);color:var(--fg);background:var(--paper);border:1px solid var(--rule);border-radius:12px;padding:12px 14px;outline:none;transition:border-color .2s,box-shadow .2s;width:100%}
.req-form input:focus,.req-form select:focus,.req-form textarea:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(176,141,87,.18)}
.req-form textarea{resize:vertical;min-height:140px;line-height:1.6}
.row2{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.req-form fieldset{border:0;margin:0;padding:0}
.req-form legend{font-size:13px;color:var(--fg-2);margin-bottom:9px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip input{position:absolute;opacity:0;pointer-events:none}
.chip span{display:inline-block;padding:8px 15px;border:1px solid var(--rule);border-radius:999px;font-size:14px;color:var(--fg);cursor:pointer;transition:all .2s;background:var(--paper)}
.chip input:checked+span{background:var(--fg);color:var(--paper-2);border-color:var(--fg)}
.chip input:focus-visible+span{box-shadow:0 0 0 3px rgba(176,141,87,.35)}
.hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0}
.agree{margin:0;font-size:12.5px;color:var(--fg-2)}
.req-form .btn-primary{align-self:flex-start;background:var(--fg);color:var(--paper-2)}
.req-status{margin:0;font-size:14px;min-height:1.2em}.req-status.ok{color:#2f7d55}.req-status.err{color:#b2412f}

@media (max-width:900px){
  .cap-grid{grid-template-columns:1fr 1fr}
  .pc{grid-template-columns:1fr}.pc li,.pc li+li{padding:24px 0;border-left:0;border-bottom:1px solid var(--rule-d)}
  .req-grid{grid-template-columns:1fr;gap:36px}
  .caps,.proc,.req{padding:96px 0}
}
@media (max-width:600px){
  .stats{grid-template-columns:1fr}.st,.st+.st{padding:20px 0;border-left:0;border-top:1px solid var(--rule)}.st:first-child{border-top:0}
  .cap-grid{grid-template-columns:1fr}
  .row2{grid-template-columns:1fr}
  .req-form{padding:24px}
  .nav-cta{display:none}
}
section[id]{scroll-margin-top:56px}
/* logo (2026-11-01) */
.mark{display:inline-flex;align-items:center;gap:10px}
.mark-svg{width:30px;height:25px;display:block}
.mark-word{font:600 17px/1 var(--serif);letter-spacing:.22em}
.hero-mark{margin-bottom:36px}
.hero-mark-svg{width:72px;height:60px;color:var(--fg-d);display:block}

/* project rows: technology / AI & automation / impact (2026-11-01) */
.ft-rows{margin:28px 0 0;border-top:1px solid currentColor;border-color:rgba(127,127,127,.35)}
.ft-rows>div{display:grid;grid-template-columns:110px 1fr;gap:18px;padding:16px 0;border-bottom:1px solid rgba(127,127,127,.22)}
.ft-rows dt{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--gold);padding-top:3px}
.ft-rows dd{margin:0;font-size:15px;line-height:1.75;opacity:.82}
.ft-grid{align-items:start}
.ft-media{position:sticky;top:96px}
@media (max-width:900px){.ft-media{position:static}}
@media (max-width:600px){.ft-rows>div{grid-template-columns:1fr;gap:4px}}

.hero h1 em{display:block;margin-top:.28em;font-size:.46em;line-height:1.22;letter-spacing:-.02em;word-break:keep-all}
