@charset "UTF-8";
:root{--bg:#0d0f10;--panel:#141718;--paper:#f6f5ee;--muted:#a3a8aa;--lime:#b4d77b;--blue:#3882f6;--line:#303435;--font:Arial,Helvetica,sans-serif;--mono:Consolas,"Liberation Mono",monospace}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--bg);color:var(--paper);font-family:var(--font);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid var(--blue);outline-offset:6px}a,button{touch-action:manipulation}::selection{background:var(--lime);color:var(--bg)}h1,h2,h3,p{margin:0}p{line-height:1.65}svg{display:block;width:100%}.mono,.eyebrow{font:11px/1.6 var(--mono);letter-spacing:.07em}.lime{color:var(--lime)}.muted{color:var(--muted)}[hidden]{display:none!important}.skip-link{position:fixed;top:10px;left:10px;padding:12px;background:var(--paper);color:var(--bg);z-index:20;transform:translateY(-180%)}.skip-link:focus{transform:none}.site-header{min-height:106px;max-width:1600px;margin:auto;padding:0 5%;display:flex;align-items:center;gap:30px;border-bottom:1px solid var(--line)}.wordmark{font-size:36px;font-weight:900;letter-spacing:-2.5px;line-height:1}.wordmark span{color:var(--lime)}.header-caption{color:var(--muted);font-size:9px;letter-spacing:.08em}.site-header nav{display:flex;gap:28px;align-items:center;margin-left:auto}.site-header nav a{font-size:13px;position:relative;padding:14px 0;white-space:nowrap}.site-header nav a:hover,.site-header nav a[aria-current]{color:var(--lime)}.nav-dot{display:inline-block;background:var(--lime);width:5px;height:5px;border-radius:50%;margin-left:5px;vertical-align:top}.menu-toggle{display:none;border:1px solid var(--line);background:transparent;color:var(--paper);padding:10px 12px}.home,.inner-page,.site-footer{max-width:1600px;margin:auto;padding-left:5%;padding-right:5%}.hero{position:relative;display:grid;grid-template-columns:1.16fr 1fr;align-items:center;padding:73px 0 0;min-height:730px;column-gap:25px}.eyebrow{display:flex;gap:18px;align-items:center;color:var(--muted);font-size:10px}.eyebrow>span{color:var(--lime);font-size:11px}.hero h1{font-size:clamp(52px,5.9vw,90px);line-height:1.06;letter-spacing:-.065em;margin:30px 0}.hero h1>span{color:var(--lime)}.hero-copy>p{font-size:16px;max-width:420px;color:#b8bcba}.actions{display:flex;gap:30px;align-items:center;margin-top:32px}.button{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;padding:17px 21px;font-size:13px;border:1px solid transparent;font-weight:600;transition:background .15s,transform .15s}.button:hover{transform:translateY(-2px)}.primary{background:var(--lime);color:var(--bg)}.primary:hover{background:#c7e99c}.outline{border-color:#5c6361;background:transparent;color:var(--paper)}.outline:hover{background:#222725}.text-link{display:inline-flex;gap:20px;align-items:center;font-size:13px;line-height:1.5;padding:8px 0;border-bottom:1px solid #586044}.text-link:hover{color:var(--lime);border-color:var(--lime)}.world-art{position:relative;align-self:stretch;display:flex;flex-direction:column;justify-content:center;min-width:0}.world-art svg{margin:-20px 0}.art-top,.art-bottom{display:flex;justify-content:space-between;align-items:center;font:9px/1.6 var(--mono);letter-spacing:.09em;color:#8f9890}.art-top{padding:25px 10px 0}.art-bottom{padding:0 10px 25px}.art-cross{font:35px var(--mono);color:var(--lime)}.globe{stroke:var(--lime);stroke-width:.7;opacity:.38;transform:rotate(-17deg);transform-origin:center}.orbit-path{stroke:var(--lime);stroke-width:1.1}.hero-foot{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:24px 0;margin-top:48px;font:9px/1.5 var(--mono);letter-spacing:.08em;color:var(--muted)}.status-dot{display:inline-block;width:6px;height:6px;background:var(--lime);border-radius:50%;margin-right:9px;vertical-align:middle}.intro-section{display:grid;grid-template-columns:1fr 1fr;gap:8%;border-top:1px solid var(--line);padding:92px 0}.intro-section h2,.section-title h2{font-size:clamp(28px,3vw,44px);font-weight:500;letter-spacing:-.045em;line-height:1.15;margin-top:23px}.intro-text{padding-top:35px;max-width:470px}.intro-text>p{font-size:18px;margin-bottom:20px}.intro-text .muted{font-size:15px}.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:25px;margin-bottom:35px}.projects-home{border-top:1px solid var(--line);padding:74px 0 85px}.empty-state{display:flex;align-items:center;gap:35px;border:1px solid var(--line);padding:42px 35px;background:linear-gradient(125deg,#161a18,#101313)}.empty-mark{font:42px var(--mono);color:var(--lime);white-space:nowrap}.empty-state h2{font-size:22px;font-weight:500;letter-spacing:-.03em}.empty-state p{max-width:530px;color:var(--muted);font-size:14px;margin:12px 0}.empty-state .text-link{margin-top:7px}.empty-status{margin-left:auto;white-space:nowrap;color:var(--muted);font-size:9px}.explore-section{padding:70px 0 85px;border-top:1px solid var(--line)}.explore-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.explore-card{position:relative;min-height:430px;padding:32px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s}.explore-card:hover{transform:translateY(-4px)}.lab-card{background:var(--lime);color:var(--bg)}.journal-card{background:var(--paper);color:var(--bg)}.explore-card .mono{font-size:9px}.explore-card h3{font-weight:500;font-size:clamp(32px,3.2vw,50px);letter-spacing:-.055em;line-height:1.08;z-index:1;margin:48px 0 22px}.explore-card p{font-size:13px;z-index:1}.card-link{margin-top:30px;padding-top:22px;border-top:1px solid #0d0f103b;display:flex;justify-content:space-between;font-size:13px}.lab-symbol{position:absolute;right:25px;top:60px;font-size:230px;line-height:1;transform:rotate(10deg);opacity:.16}.journal-symbol{position:absolute;right:10px;top:60px;font:italic 150px Georgia,serif;letter-spacing:-.1em;opacity:.14}.journal-symbol span{color:var(--blue)}.now-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:45px 0;display:grid;grid-template-columns:1fr 1fr auto;gap:40px;align-items:center}.now-strip h2{font-size:25px;font-weight:500;letter-spacing:-.04em;margin-top:14px}.now-strip p{font-size:14px;color:var(--muted);max-width:340px}.home-contact{padding:100px 0}.home-contact>.mono{color:var(--muted);font-size:9px}.home-contact>a{display:flex;align-items:center;justify-content:space-between;font-size:clamp(60px,10vw,150px);font-weight:500;letter-spacing:-.07em;line-height:1.2;margin-top:15px}.home-contact>a:hover{color:var(--lime)}.site-footer{border-top:1px solid var(--line);padding-top:38px;padding-bottom:38px;display:flex;justify-content:space-between;gap:25px}.site-footer .wordmark{font-size:29px}.site-footer p{font-size:11px;color:var(--muted);margin-top:12px}.footer-right{display:flex;flex-wrap:wrap;gap:18px;align-items:center;color:var(--muted);font-size:10px}.footer-right .mono{font-size:9px}.footer-right>a{color:var(--paper)}
.inner-page{min-height:70vh;padding-bottom:100px}.page-head{padding:82px 0 60px;max-width:950px}.page-head h1{font-size:clamp(44px,6.2vw,84px);line-height:1.07;font-weight:500;letter-spacing:-.065em;margin:30px 0 24px}.page-head>p{color:var(--muted);font-size:18px;max-width:660px}.about-layout{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;border-top:1px solid var(--line);padding-top:55px}.monogram{position:relative;aspect-ratio:1;background:var(--paper);color:var(--bg);font-size:clamp(150px,25vw,340px);font-weight:900;letter-spacing:-.1em;display:flex;align-items:center;justify-content:center;align-self:start}.monogram>span{color:#668d32}.monogram>small{position:absolute;bottom:20px;left:20px;font:9px var(--mono);letter-spacing:.02em}.prose{font-size:17px;line-height:1.7}.prose p{color:#b8bcba;margin:18px 0 30px;white-space:pre-line}.prose h2{font-size:28px;letter-spacing:-.04em;line-height:1.2;font-weight:500;margin-top:30px}.prose h2:first-child{margin-top:0}.quote{border-left:2px solid var(--lime);padding:10px 0 10px 26px;margin:40px 0;font-size:40px;line-height:1.2;letter-spacing:-.04em}.catalog-bar{display:flex;gap:25px;justify-content:space-between;align-items:center;padding:22px 0;border-top:1px solid var(--line);margin-bottom:30px;color:var(--muted)}.catalog-bar>.mono{font-size:10px}.editorial-note{display:grid;grid-template-columns:1fr 2fr;gap:40px;border-top:1px solid var(--line);padding-top:30px;margin-top:70px}.editorial-note>.mono{color:var(--lime);font-size:10px}.editorial-note>p{font-size:20px;max-width:600px;letter-spacing:-.02em}.playground{display:grid;grid-template-columns:1fr 1fr;gap:60px;border-top:1px solid var(--line);padding-top:40px}.playground-copy>.mono{font-size:10px;color:var(--lime)}.playground-copy h2{font-size:42px;font-weight:500;letter-spacing:-.045em;line-height:1.1;margin:26px 0}.playground-copy>p{font-size:15px;color:var(--muted);max-width:400px}.playground-copy label{display:flex;justify-content:space-between;font-size:13px;margin:35px 0 12px}.playground-copy output{font-family:var(--mono);color:var(--lime)}#hue{display:block;width:100%;accent-color:var(--lime);margin:15px 0 28px;min-height:25px}.playground-copy .button{font-size:12px}.playground-copy .lab-code{font-size:11px;margin:25px 0}.palette-preview{--accent:hsl(82 53% 66%);background:var(--paper);color:var(--bg);padding:28px;display:flex;flex-direction:column;position:relative;overflow:hidden;min-height:490px}.preview-top{display:flex;justify-content:space-between;font-size:9px;z-index:1}.preview-top>span:first-child{font-family:var(--font);font-size:22px;font-weight:900;letter-spacing:-1.5px}.preview-title{font-size:clamp(60px,7vw,100px);line-height:.9;letter-spacing:-.08em;font-weight:700;margin-top:auto;z-index:1}.preview-title>span{color:var(--accent)}.palette-preview>.mono{font-size:9px;margin-top:35px;z-index:1}.preview-shape{position:absolute;font-size:340px;line-height:1;right:-35px;top:35px;color:var(--accent);transform:rotate(-15deg)}.updated{color:var(--muted);margin:0 0 40px}.updated time{color:var(--paper);margin-left:10px}.now-list>section{display:grid;grid-template-columns:70px 1fr 1.8fr;gap:25px;align-items:baseline;border-top:1px solid var(--line);padding:35px 0}.now-list .mono{color:var(--lime)}.now-list h2{font-size:28px;font-weight:500;letter-spacing:-.04em}.now-list p{font-size:17px;color:var(--muted);max-width:550px}.contact-panel{background:var(--panel);border:1px solid var(--line);padding:50px;max-width:850px}.contact-panel>.mono{color:var(--lime)}.contact-panel h2{font-size:42px;font-weight:500;letter-spacing:-.045em;margin:35px 0 20px}.contact-panel p{color:var(--muted);font-size:17px}.contact-pending{display:block;font:10px/1.5 var(--mono);color:var(--muted);margin-top:45px;letter-spacing:.04em}.contact-row{display:flex;justify-content:space-between;padding:25px 0;border-bottom:1px solid var(--line);font-size:22px;overflow-wrap:anywhere;gap:15px}.contact-row:hover{color:var(--lime)}.project-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.project-card{border:1px solid var(--line);background:var(--panel);padding:30px;display:block}.project-card:hover{border-color:var(--lime)}.project-meta{display:flex;justify-content:space-between;color:var(--muted);font:11px var(--mono);gap:20px}.project-card h2{font-size:30px;margin:45px 0 20px}.project-card p{color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:10px;margin-top:25px}.tags>span{font:11px var(--mono);padding:7px;border:1px solid var(--line)}[data-projects]{display:grid;grid-template-columns:1fr 1fr;gap:20px}.filters{display:flex;flex-wrap:wrap;gap:10px}.filter{background:transparent;border:1px solid var(--line);color:var(--paper);font-size:12px;padding:8px 15px}.filter.active{background:var(--lime);color:var(--bg)}.back-link{margin-top:40px}.back-link+.page-head{padding-top:40px}.project-detail-meta{display:flex;gap:30px;flex-wrap:wrap;padding:20px 0;border-block:1px solid var(--line);color:var(--lime)}.project-prose{max-width:720px;margin:50px auto 0}.project-prose section{margin:35px 0}.note-list>a{display:block;padding:30px 0;border-bottom:1px solid var(--line)}.note-list h2{font-size:32px;margin:15px 0}.note-list .mono,.note-list p{color:var(--muted)}
@media(min-width:1600px){.hero h1{font-size:94px}.hero{min-height:790px}}
@media(max-width:1100px){.header-caption{display:none}.site-header nav{gap:22px}.hero{min-height:640px}.hero h1{font-size:6.2vw}.world-art svg{margin:0}.hero-foot{margin-top:35px}.empty-status{display:none}.footer-right{justify-content:flex-end}.now-strip{grid-template-columns:1fr 1fr}.now-strip>.text-link{grid-column:2;justify-self:start}.playground{gap:35px}.palette-preview{min-height:450px}}
@media(max-width:760px){.site-header{min-height:80px;flex-wrap:wrap;gap:0;padding:20px 6%;position:relative}.wordmark{font-size:32px}.menu-toggle{display:block;margin-left:auto}.site-header nav{width:100%;flex-wrap:wrap;gap:0;margin:20px 0 0;border-top:1px solid var(--line)}.site-header nav a{width:50%;padding:14px 5px}.js .site-header nav:not(.is-open){display:none}.home,.inner-page,.site-footer{padding-left:6%;padding-right:6%}.hero{grid-template-columns:1fr;padding-top:45px;gap:0}.hero h1{font-size:clamp(47px,10.5vw,76px);margin:25px 0}.hero-copy>p{font-size:15px;max-width:410px}.actions{gap:24px;flex-wrap:wrap}.button{padding:16px 18px;gap:28px}.world-art{max-width:470px;width:100%;margin:20px auto 0}.world-art svg{margin:-10px 0}.art-top{padding-top:20px}.art-bottom{padding-bottom:15px}.hero-foot{margin-top:15px;gap:20px;padding:19px 0;font-size:8px}.hero-foot>span:last-child{text-align:right;max-width:130px}.intro-section{grid-template-columns:1fr;padding:55px 0;gap:20px}.intro-section h2,.section-title h2{font-size:34px}.intro-text{padding:0;max-width:none}.intro-text>p{font-size:17px}.projects-home,.explore-section{padding:50px 0}.section-title{align-items:start;flex-direction:column;gap:20px}.empty-state{padding:28px 24px;gap:25px;align-items:start;flex-direction:column}.empty-mark{font-size:30px}.empty-state h2{font-size:21px;line-height:1.25}.explore-grid{grid-template-columns:1fr;gap:18px}.explore-card{padding:28px;min-height:405px}.explore-card h3{font-size:45px}.lab-symbol{font-size:260px}.journal-symbol{font-size:175px}.now-strip{grid-template-columns:1fr;gap:22px;padding:35px 0}.now-strip>.text-link{grid-column:auto}.home-contact{padding:65px 0}.home-contact>a{font-size:14vw}.home-contact>.mono{font-size:8px}.site-footer{flex-direction:column;gap:28px;padding-top:30px;padding-bottom:30px}.footer-right{justify-content:flex-start;gap:15px;font-size:9px}.inner-page{padding-bottom:65px}.page-head{padding:50px 0 40px}.page-head h1{font-size:49px;margin:25px 0 20px;overflow-wrap:break-word}.page-head>p{font-size:16px}.about-layout{grid-template-columns:1fr;gap:40px;padding-top:30px}.monogram{max-width:420px;font-size:65vw}.prose{font-size:16px}.catalog-bar{align-items:start;flex-direction:column;gap:12px}.editorial-note{grid-template-columns:1fr;gap:20px;margin-top:45px;padding-top:25px}.editorial-note>p{font-size:19px}.playground{grid-template-columns:1fr;gap:35px;padding-top:30px}.playground-copy h2{font-size:38px}.palette-preview{min-height:420px}.preview-title{font-size:85px}.preview-shape{font-size:330px}.now-list>section{grid-template-columns:35px 1fr;gap:20px 10px;padding:25px 0}.now-list p{grid-column:2;font-size:16px}.now-list h2{font-size:26px}.updated{font-size:9px;letter-spacing:0}.contact-panel{padding:28px}.contact-panel h2{font-size:32px}.contact-panel p{font-size:15px}.contact-row{font-size:19px}[data-projects]{grid-template-columns:1fr}.project-card{padding:25px}.project-detail-meta{gap:20px;font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* CMS article content */
.content-cover, .project-prose img { display: block; max-width: 100%; height: auto; border-radius: 12px; margin: 1.5rem 0; }
.project-prose pre { overflow-x: auto; padding: 1rem; background: #171b1d; border-radius: 8px; }
.project-prose blockquote { border-left: 3px solid var(--lime); margin-left: 0; padding-left: 1.2rem; }
.project-prose table { display: block; max-width: 100%; overflow-x: auto; border-collapse: collapse; }
.project-prose td, .project-prose th { padding: .65rem; border: 1px solid #48504b; }
.lab-notes { margin-top: 4rem; }
