@font-face{font-family:IBM Plex Sans;src:url(/fonts/IBMPlexSans-Variable-latin.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-400-latin.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:IBM Plex Mono;src:url(/fonts/IBMPlexMono-500-latin.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{--bg:#f5f6f4;--surface:#fff;--surface-sunken:#eceeeb;--line:#d9ddda;--line-strong:#7e8682;--ink:#121715;--ink-muted:#56605c;--signal:#19c46f;--on-signal:#07140d;--signal-text:#0a7341;--signal-soft:#dcf5e7;--graphite:#121715;--on-graphite:#eef1ef;--danger:#b3261e;--focus:#0a7341;--font-sans:"IBM Plex Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, Consolas, monospace;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-12:48px;--space-16:64px;--space-24:96px;--radius-sm:2px;--radius-md:4px}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0e1211;--surface:#161b19;--surface-sunken:#0a0d0c;--line:#2a312e;--line-strong:#65706b;--ink:#eef1ef;--ink-muted:#9aa39f;--signal:#3be38e;--signal-text:#3be38e;--signal-soft:#12301f;--graphite:#222927;--danger:#ff7a6e;--focus:#3be38e;color-scheme:dark}}:root[data-theme=dark]{--bg:#0e1211;--surface:#161b19;--surface-sunken:#0a0d0c;--line:#2a312e;--line-strong:#65706b;--ink:#eef1ef;--ink-muted:#9aa39f;--signal:#3be38e;--signal-text:#3be38e;--signal-soft:#12301f;--graphite:#222927;--danger:#ff7a6e;--focus:#3be38e;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;margin:0;font-size:15px;line-height:24px}a{color:inherit}.wrap{max-width:1120px;padding-inline:var(--space-6);margin:0 auto}@media (width<=560px){.wrap{padding-inline:var(--space-4)}}.label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin:0;font-size:11px;font-weight:500;line-height:16px}.dot{background:var(--signal);flex:none;width:8px;height:8px;display:inline-block}.stage{background:var(--graphite);color:var(--on-graphite)}.top{justify-content:space-between;align-items:center;gap:var(--space-4);padding-block:var(--space-6);display:flex}.wm{color:var(--on-graphite);display:block}.wm .wm-dot{fill:var(--signal)}.top a.link{gap:var(--space-2);align-items:center;font-size:14px;font-weight:500;text-decoration:none;display:inline-flex}.top a.link:hover{color:var(--signal)}.hero{padding-block:var(--space-16) var(--space-24);gap:var(--space-12);grid-template-columns:minmax(0,7fr) minmax(0,5fr);align-items:end;display:grid}@media (width<=860px){.hero{padding-block:var(--space-12) var(--space-16);grid-template-columns:1fr}}.hero .label{color:var(--signal);margin-bottom:var(--space-4)}.hero h1{letter-spacing:-.025em;text-wrap:balance;margin:0;font-size:clamp(40px,6.4vw,72px);font-weight:600;line-height:1.02}.hero p.lead{margin:var(--space-6) 0 0;max-width:46ch;color:var(--on-graphite);opacity:.8;font-size:18px;line-height:28px}.actions{gap:var(--space-6);margin-top:var(--space-8);flex-wrap:wrap;align-items:center;display:flex}.btn{align-items:center;gap:var(--space-2);font-family:var(--font-sans);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);cursor:pointer;border:1px solid #0000;font-size:15px;font-weight:600;line-height:20px;text-decoration:none;transition:background-color .12s,color .12s;display:inline-flex}.btn-primary{background:var(--signal);color:var(--on-signal)}.btn-primary:hover{background:var(--on-graphite);color:var(--graphite)}.btn-ghost{color:var(--on-graphite);background:0 0;padding-inline:0}.btn-ghost:hover{color:var(--signal)}.btn .arr{font-family:var(--font-mono);transition:transform .12s}.btn:hover .arr{transform:translate(2px)}.btn:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--focus);outline-offset:2px}.panel{padding:var(--space-6);font-family:var(--font-mono);border:1px solid #eef1ef29;font-size:13px;line-height:20px}.panel .label{color:var(--on-graphite);opacity:.6;margin-bottom:var(--space-4)}.panel ul{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.panel li{gap:var(--space-3);grid-template-columns:8px 1fr auto;align-items:center;display:grid}.panel li .when{letter-spacing:.08em;text-transform:uppercase;color:var(--signal);font-size:10px}.block{padding-block:var(--space-24)}@media (width<=860px){.block{padding-block:var(--space-16)}}.sec-head{gap:var(--space-3);margin-bottom:var(--space-12);max-width:60ch;display:grid}.sec-head h2{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(28px,3.4vw,40px);font-weight:600;line-height:1.1}.sec-head p:not(.label){color:var(--ink-muted);margin:0;font-size:16px;line-height:26px}.services{border-top:2px solid var(--ink);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=900px){.services{grid-template-columns:1fr}}.service{padding:var(--space-8) var(--space-6) var(--space-8) 0;gap:var(--space-3);align-content:start;display:grid}.service+.service{border-left:1px solid var(--line);padding-left:var(--space-6)}.service .tagk{font-family:var(--font-mono);color:var(--signal-text);font-size:12px;font-weight:500}@media (width<=900px){.service{padding-right:0}.service+.service{border-left:0;border-top:1px solid var(--line);padding-left:0}}.service h3{letter-spacing:-.01em;margin:0;font-size:22px;font-weight:600;line-height:28px}.service p{color:var(--ink-muted);max-width:48ch;margin:0}.service ul{margin:var(--space-2) 0 0;gap:var(--space-2);padding:0;list-style:none;display:grid}.service li{gap:var(--space-3);align-items:baseline;display:flex}.service li .dot{width:6px;height:6px;transform:translateY(-2px)}.areas{margin-top:var(--space-16);gap:0 var(--space-8);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=860px){.areas{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.areas{grid-template-columns:1fr}}.areas-head{margin-bottom:var(--space-4);grid-column:1/-1}.area{padding:var(--space-4) 0;border-top:1px solid var(--line);gap:var(--space-1);display:grid}.area b{font-size:15px;font-weight:600}.area span{color:var(--ink-muted);font-size:14px;line-height:22px}.steps{gap:var(--space-8);margin-top:var(--space-16);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}@media (width<=760px){.steps{gap:var(--space-6);grid-template-columns:1fr}}.step{gap:var(--space-2);display:grid}.step .n{font-family:var(--font-mono);color:var(--signal-text);font-size:13px;font-weight:500}.step h3{margin:0;font-size:17px;font-weight:600;line-height:24px}.step p{color:var(--ink-muted);margin:0;font-size:14px;line-height:22px}.faq{gap:0 var(--space-8);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}@media (width<=760px){.faq{grid-template-columns:1fr}}.faq article{padding:var(--space-6) 0;border-top:1px solid var(--line);gap:var(--space-2);align-content:start;display:grid}.faq h3{margin:0;font-size:17px;font-weight:600;line-height:24px}.faq p{color:var(--ink-muted);margin:0}.contact{background:var(--surface);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.contact-grid{gap:var(--space-16);grid-template-columns:minmax(0,5fr) minmax(0,7fr);display:grid}@media (width<=860px){.contact-grid{gap:var(--space-8);grid-template-columns:1fr}}.contact-aside{gap:var(--space-4);align-content:start;display:grid}.contact-aside h2{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(28px,3.4vw,40px);font-weight:600;line-height:1.1}.contact-aside p{color:var(--ink-muted);max-width:40ch;margin:0}.facts{margin-top:var(--space-4);gap:var(--space-3);font-size:14px;display:grid}.facts div{gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);grid-template-columns:120px 1fr;display:grid}.facts dt{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);padding-top:2px;font-size:11px}.facts dd{margin:0}form{gap:var(--space-6);display:grid}.row{gap:var(--space-6);grid-template-columns:1fr 1fr;display:grid}@media (width<=560px){.row{grid-template-columns:1fr}}.field{gap:var(--space-2);min-width:0;display:grid}[hidden]{display:none!important}.field>label{font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);font-size:11px;font-weight:500;line-height:16px}.field>label .opt{text-transform:none;letter-spacing:0;opacity:.8}input,select,textarea{font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line-strong);border-radius:var(--radius-sm);padding:var(--space-3);width:100%;font-size:15px}textarea{resize:vertical;min-height:112px;line-height:22px}input::placeholder,textarea::placeholder{color:var(--ink-muted);opacity:.8}.field.invalid input,.field.invalid select{border-color:var(--danger)}.err{color:var(--danger);min-height:0;font-size:13px;line-height:18px}.err:empty{display:none}.chips{gap:var(--space-2);flex-wrap:wrap;display:flex}.chip{position:relative}.chip input{opacity:0;width:1px;height:1px;position:absolute}.chip span{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--line-strong);border-radius:var(--radius-sm);cursor:pointer;font-size:14px;line-height:20px;transition:border-color .12s,background-color .12s;display:inline-flex}.chip span:before{content:"";background:var(--line-strong);width:6px;height:6px}.chip input:checked+span{border-color:var(--ink);background:var(--signal-soft)}.chip input:checked+span:before{background:var(--signal-text)}.chip input:focus-visible+span{outline:2px solid var(--focus);outline-offset:2px}.submit{gap:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.submit .btn-primary:hover{background:var(--ink);color:var(--bg)}.submit small{color:var(--ink-muted);max-width:36ch;font-size:13px;line-height:20px}.done{border:1px solid var(--line);background:var(--bg);padding:var(--space-6);gap:var(--space-3);display:grid}.done h3{gap:var(--space-3);align-items:center;margin:0;font-size:20px;font-weight:600;line-height:28px;display:flex}.done p{color:var(--ink-muted);margin:0}.done pre{white-space:pre-wrap;font-family:var(--font-mono);background:var(--surface-sunken);padding:var(--space-4);color:var(--ink);margin:0;font-size:13px;line-height:20px}.done .btn-primary:hover{background:var(--ink);color:var(--bg)}.linkbtn{font:inherit;color:var(--ink-muted);cursor:pointer;background:0 0;border:0;justify-self:start;padding:0;font-size:14px;text-decoration:underline}footer.foot{border-top:1px solid var(--line);padding-block:var(--space-12) var(--space-8);color:var(--ink-muted);font-size:14px;line-height:22px}.foot .wm{color:var(--ink)}.foot .mono{font-family:var(--font-mono);font-size:12px}.foot-grid{gap:var(--space-8);grid-template-columns:minmax(0,5fr) repeat(3,minmax(0,3fr));display:grid}@media (width<=860px){.foot-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.foot-brand{grid-column:1/-1}}@media (width<=480px){.foot-grid{grid-template-columns:1fr}}.foot-brand{gap:var(--space-3);align-content:start;display:grid}.foot-brand p{max-width:34ch;margin:0}.foot-col{gap:var(--space-2);align-content:start;display:grid}.foot-col .label{margin-bottom:var(--space-1)}.foot-col a{color:var(--ink);text-decoration:none}.foot-col a:hover{color:var(--signal-text);text-decoration:underline}.foot-legal{margin-top:var(--space-12);padding-top:var(--space-4);border-top:1px solid var(--line);justify-content:space-between;gap:var(--space-2) var(--space-6);flex-wrap:wrap;font-size:13px;display:flex}@media (prefers-reduced-motion:reduce){*{transition:none!important}}.h-page{letter-spacing:-.02em;text-wrap:balance;margin:0;font-size:clamp(32px,4.4vw,48px);font-weight:600;line-height:1.08}.posts{gap:var(--space-8);max-width:72ch;display:grid}.post-item{gap:var(--space-2);padding-top:var(--space-6);border-top:1px solid var(--line);display:grid}.post-item h2{letter-spacing:-.01em;margin:0;font-size:24px;font-weight:600;line-height:30px}.post-item h2 a{text-decoration:none}.post-item h2 a:hover{color:var(--signal-text);text-decoration:underline}.post-item p:not(.label){color:var(--ink-muted);margin:0}.prose{gap:var(--space-4);display:grid}.prose .label a{text-decoration:none}.prose h2{margin:var(--space-8) 0 0;letter-spacing:-.01em;font-size:26px;font-weight:600;line-height:32px}.prose h3{margin:var(--space-4) 0 0;font-size:19px;font-weight:600;line-height:26px}.prose p,.prose li{font-size:17px;line-height:28px}.prose p{margin:0}.prose ul,.prose ol{padding-left:var(--space-6);gap:var(--space-2);margin:0;display:grid}.prose a:not(.btn){color:var(--signal-text)}.cta{margin-top:var(--space-8);padding:var(--space-6);border:1px solid var(--line);background:var(--surface);gap:var(--space-4);justify-items:start;display:grid}.cta p{margin:0}.cta .btn-primary:hover{background:var(--ink);color:var(--bg)}.hero.solo{grid-template-columns:1fr}.hero.solo h1{max-width:20ch;font-size:clamp(34px,5vw,56px)}.others a{color:var(--signal-text)}.service .more{color:var(--signal-text);margin-top:var(--space-2);font-size:14px;font-weight:600;text-decoration:none}.service .more:hover{text-decoration:underline}.service li a{text-underline-offset:3px;text-decoration:underline}.prose>*{max-width:72ch}.icons{margin:0 0 var(--space-2);gap:var(--space-2);padding:0;list-style:none;display:flex}.icons a{border:1px solid var(--line-strong);border-radius:var(--radius-sm);width:40px;height:40px;color:var(--ink);place-items:center;transition:border-color .12s,color .12s;display:inline-grid}.icons a:hover{border-color:var(--signal-text);color:var(--signal-text);text-decoration:none}.icons svg{fill:none;stroke:currentColor;stroke-width:1.75px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px}.icons svg.solid{fill:currentColor;stroke:none}
