:root{color-scheme:dark;--bg:#101215;--panel:#15191d;--ink:#f4f1e8;--muted:#adb7bd;--edge:#30383e;--accent:#ffb978;--max:1240px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:1rem/1.6 system-ui,-apple-system,sans-serif}a{color:inherit}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}p,h1,h2,h3,figure{margin:0}p{color:var(--muted)}h1,h2,h3{line-height:1.06;letter-spacing:-.045em}h1{font-size:clamp(2.55rem,5.25vw,5.1rem);font-weight:670}h1 em{font-style:normal;color:var(--accent)}h2{font-size:clamp(2.15rem,4.5vw,4rem);font-weight:640}h3{font-size:1.55rem;line-height:1.2}.shell{width:min(var(--max),calc(100% - 64px));margin-inline:auto}.skip{position:absolute;top:8px;left:10px;padding:8px 12px;background:#101215;transform:translateY(-150%);z-index:2}.skip:focus{transform:none}.top{border-bottom:1px solid var(--edge)}.bar,.footer{display:flex;justify-content:space-between;align-items:center;gap:20px}.bar{min-height:77px}.wordmark{display:inline-flex;align-items:center;gap:9px;font-size:1rem;font-weight:800;letter-spacing:.17em;text-decoration:none}.wordmark img{display:block}.bar nav{display:flex;align-items:center;gap:clamp(14px,3vw,38px)}.bar nav a{text-decoration:none;font-size:.9rem;color:var(--muted)}.bar nav a:hover,.bar .nav-contact{color:var(--ink)}.nav-contact{border:1px solid var(--edge);padding:7px 13px}.label,.card-key,figcaption{font:600 .72rem/1.5 ui-monospace,SFMono-Regular,monospace;letter-spacing:.13em;color:var(--accent)}.label{margin-bottom:19px}.dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-right:6px}.hero{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:clamp(30px,4vw,65px);padding-block:clamp(65px,10vw,145px)}.intro{max-width:48ch;font-size:clamp(1rem,1.4vw,1.2rem);margin-top:24px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.button{display:inline-flex;gap:12px;align-items:center;text-decoration:none;font-weight:700;font-size:.9rem;padding:11px 15px;border:1px solid transparent}.primary{background:var(--accent);color:#1b1714}.primary:hover{background:#ffd1a7}.quiet{border-color:var(--edge)}.quiet:hover,.nav-contact:hover{border-color:var(--accent)}.figure{border:1px solid var(--edge);background:#13171a}.figure img{display:block;width:100%;height:auto}figcaption{border-top:1px solid var(--edge);display:flex;justify-content:space-between;gap:10px;padding:12px 16px;color:var(--muted);font-size:.62rem}.band{background:var(--panel);border-block:1px solid var(--edge);padding-block:clamp(52px,8vw,100px)}.cards{display:grid;grid-template-columns:repeat(3,1fr);margin-top:32px;border:1px solid var(--edge)}.cards article{padding:clamp(18px,3vw,34px)}.cards article+article{border-left:1px solid var(--edge)}.card-key{margin-bottom:24px}.cards h3+p,.contact h2+p,.approach h2+p{margin-top:13px}.approach,.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,6vw,90px);align-items:start}.approach{padding-block:clamp(56px,9vw,112px)}.approach ol{margin:0;padding-left:2ch;list-style:decimal-leading-zero}.approach li{padding:16px 0 16px 12px;border-bottom:1px solid var(--edge)}.approach li::marker{color:var(--accent);font-family:monospace}.approach li p{margin-top:5px}.contact-card{border:1px solid var(--edge);padding:22px;align-self:center}.contact-card a{font-size:clamp(1rem,2vw,1.3rem);text-decoration-color:var(--accent);text-underline-offset:5px;overflow-wrap:anywhere}.contact-card p:last-child{margin-top:10px}.footer{min-height:100px;padding-block:20px}.footer p{font-size:.8rem}.footer .wordmark{font-size:.83rem}
@media(max-width:850px){.hero{grid-template-columns:1fr}.figure{max-width:620px;width:100%}.cards{grid-template-columns:1fr}.cards article+article{border-left:0;border-top:1px solid var(--edge)}.approach,.contact-grid{grid-template-columns:1fr}.footer{flex-wrap:wrap}}
@media(max-width:460px){.shell{width:calc(100% - 32px)}.bar{gap:8px;min-height:64px}.bar nav{gap:9px}.bar nav a{font-size:.76rem}.nav-contact{padding:4px 6px}.wordmark{font-size:.83rem;letter-spacing:.1em;gap:4px}.wordmark img{width:29px;height:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
