:root{--bg:#0e0f11;--panel:#16181c;--ink:#ece7dd;--dim:#8b877f;--label:#a5a099;--line:#ece7dd24;--line-strong:#ece7dd4d;--shade:#ece7dd0a;--accent:#35b083;--on-accent:#07160f;--sans:"Helvetica Neue", Helvetica, Arial, system-ui, sans-serif;--mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace}*{box-sizing:border-box}[hidden]{display:none!important}html{-webkit-text-size-adjust:100%;background:var(--bg);scroll-behavior:smooth}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--sans);overflow-wrap:break-word;-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.55}a{color:inherit}::selection{background:var(--accent);color:var(--on-accent)}.wrap{max-width:1140px;margin:0 auto;padding:0 20px}@media (width>=900px){.wrap{padding:0 44px}}.skip-link{background:var(--accent);color:var(--on-accent);z-index:50;padding:10px 16px;font-weight:700;position:absolute;top:0;left:-9999px}.skip-link:focus{left:0}.topbar{z-index:30;background:var(--bg);border-bottom:1px solid var(--line);position:sticky;top:0}.topbar .wrap{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px 18px;padding-top:14px;padding-bottom:14px;display:flex;position:relative}.brand{letter-spacing:-.025em;color:var(--ink);font-size:19px;font-weight:700;text-decoration:none}.brand em{color:var(--accent);font-style:normal}.topbar nav{flex-wrap:wrap;align-items:center;gap:6px 20px;display:flex}.topbar nav a{font-family:var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--dim);white-space:nowrap;border-bottom:1px solid #0000;padding:2px 0;font-size:11px;text-decoration:none}.topbar nav a:hover{color:var(--ink);border-bottom-color:var(--accent)}.topbar nav a:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.menu-btn{border:1px solid var(--line);color:var(--ink);cursor:pointer;background:0 0;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:0;line-height:0;display:none}.menu-btn:hover{border-color:var(--line-strong)}.menu-btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.menu-btn .bars{flex-direction:column;gap:4px;display:flex}.menu-btn .bars i{background:currentColor;width:18px;height:2px;transition:transform .16s,opacity .12s;display:block}.menu-btn[aria-expanded=true] .bars i:first-child{transform:translateY(6px)rotate(45deg)}.menu-btn[aria-expanded=true] .bars i:nth-child(2){opacity:0}.menu-btn[aria-expanded=true] .bars i:nth-child(3){transform:translateY(-6px)rotate(-45deg)}@media (width<=760px){.topbar .wrap{flex-wrap:nowrap;gap:14px}.brand{flex:none}.menu-btn{display:inline-flex}.topbar nav{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:0;padding:0 20px 10px;display:none;position:absolute;top:100%;left:0;right:0;box-shadow:0 18px 30px #00000073}.topbar nav.open{display:flex}.topbar nav a{border-bottom:1px solid var(--line);padding:15px 0;font-size:12px}.topbar nav a:last-child{border-bottom:0}.topbar nav a:hover{border-bottom-color:var(--line);color:var(--accent)}}[id]{scroll-margin-top:76px}.hero{text-align:center;padding:56px 0 64px}.status{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);align-items:center;gap:9px;margin:0;font-size:11px;display:inline-flex}.status:before{content:"";background:var(--accent);border-radius:50%;width:7px;height:7px}.portrait{aspect-ratio:1;border:1px solid var(--line-strong);width:clamp(190px,46vw,300px);box-shadow:0 0 0 8px var(--shade);border-radius:50%;margin:26px auto 30px;overflow:hidden}.portrait img{object-fit:cover;object-position:50% 22%;width:100%;height:100%;display:block}.hero h1{letter-spacing:-.035em;max-width:22ch;margin:0 auto;font-size:clamp(2rem,6.6vw,3.6rem);font-weight:700;line-height:1.08}.hero h1 .greeting{color:var(--ink);display:block}.hero h1 em{color:var(--accent);font-style:normal;display:block}.cta{flex-wrap:wrap;justify-content:center;gap:12px;margin:30px 0 0;display:flex}.btn{font:inherit;letter-spacing:.02em;border:1px solid var(--accent);background:var(--accent);color:var(--on-accent);cursor:pointer;padding:12px 20px;font-size:14px;font-weight:700;text-decoration:none;transition:transform .16s,background-color .16s,color .16s}.btn:hover{transform:translateY(-2px)}.btn--ghost{color:var(--ink);border-color:var(--line-strong);background:0 0}.btn--ghost:hover{border-color:var(--ink)}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}section.band{border-top:1px solid var(--line);padding:64px 0 10px}.eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--dim);align-items:center;gap:12px;margin:0 0 20px;font-size:11px;font-weight:400;line-height:1.5;display:flex}.eyebrow:before{content:"";background:var(--line-strong);width:28px;height:1px}.band-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:34px;display:flex}.band-head h2{letter-spacing:-.035em;margin:0;font-size:clamp(1.7rem,5.4vw,2.5rem);font-weight:700;line-height:1.08}.band-head h2 em,.currently h3 em,.after blockquote em{color:var(--accent);font-style:normal}.more{font-family:var(--mono);letter-spacing:.08em;color:var(--dim);border-bottom:1px solid var(--line);font-size:12px;text-decoration:none}.more:hover{color:var(--accent);border-bottom-color:var(--accent)}.more:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.about{gap:28px;display:grid}@media (width>=900px){.about{grid-template-columns:minmax(0,1.4fr) minmax(0,.6fr);align-items:start;gap:56px}}.about>div>p{max-width:58ch;color:var(--ink);opacity:.88;margin:0 0 14px}.about>div>p:last-child{margin-bottom:0}.after{border-left:2px solid var(--accent);padding:2px 0 2px 18px}.after .after-label{font-family:var(--mono);letter-spacing:.18em;text-transform:uppercase;color:var(--label);margin:0 0 10px;font-size:10.5px}.after blockquote{letter-spacing:-.02em;margin:0;font-size:clamp(1.15rem,4vw,1.45rem);font-weight:700;line-height:1.3}.after .stack{font-family:var(--mono);color:var(--label);flex-wrap:wrap;gap:6px 14px;margin:22px 0 0;padding:0;font-size:11.5px;list-style:none;display:flex}.do-row{border-top:1px solid var(--line);gap:6px;padding:22px 0;display:grid}.do-row:last-of-type{border-bottom:1px solid var(--line)}.do-num{font-family:var(--mono);color:var(--accent);font-size:12px}.do-row h3{letter-spacing:-.02em;margin:0;font-size:1.15rem;font-weight:700}.do-row p{color:var(--dim);max-width:60ch;margin:0}@media (width>=820px){.do-row{grid-template-columns:3rem 16rem minmax(0,1fr);align-items:start;gap:0 28px}.do-num{padding-top:4px}}.work{gap:18px;display:grid}@media (width>=700px){.work{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1040px){.work{grid-template-columns:repeat(3,minmax(0,1fr))}}.card{background:var(--panel);border:1px solid var(--line);width:100%;color:inherit;font:inherit;text-align:left;flex-direction:column;padding:14px 14px 18px;text-decoration:none;transition:background-color .22s,color .22s,transform .22s,border-color .22s;display:flex;position:relative}.card-hit{z-index:2;cursor:zoom-in;background:0 0;border:0;padding:0;position:absolute;inset:0}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.card:hover,.card:focus-visible,.card:focus-within{background:var(--accent);color:var(--on-accent);border-color:var(--accent);transform:translateY(-4px)}a.card:focus-visible,.card-hit:focus-visible{outline:2px solid var(--ink);outline-offset:3px}.card:hover .card-dim,.card:focus-visible .card-dim,.card:focus-within .card-dim{color:inherit;opacity:.78}.card:hover .shot,.card:focus-visible .shot,.card:focus-within .shot{border-color:#00000040}.card:hover .spec,.card:focus-visible .spec,.card:focus-within .spec{background:#0000001a;border-color:#00000040}.media{aspect-ratio:4/3;background:var(--shade);overflow:hidden}.shot{object-fit:cover;object-position:top center;border:1px solid var(--line);width:100%;height:100%;display:block}.shot--topleft{object-position:left top}.shot--contain{object-fit:contain;object-position:center}.spec{border:1px solid var(--line);background:var(--shade);height:100%;font-family:var(--mono);flex-direction:column;justify-content:center;gap:7px;padding:14px;font-size:11.5px;line-height:1.5;display:flex}.spec b{opacity:.6;min-width:4.6em;font-weight:400;display:inline-block}.card h3{letter-spacing:-.025em;margin:16px 0 0;font-size:1.25rem;font-weight:700}.card .one{margin:6px 0 0;font-size:14.5px}.card-dim{color:var(--dim);transition:color .22s}.card .foot{font-family:var(--mono);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:14px;font-size:11px;display:flex}.dot{align-items:center;gap:7px;display:inline-flex}.dot:before{content:"";background:var(--accent);border-radius:50%;flex:none;width:6px;height:6px}.card:hover .dot:before,.card:focus-visible .dot:before,.card:focus-within .dot:before{background:var(--on-accent)}.currently h3{letter-spacing:-.035em;margin:0 0 8px;font-size:clamp(1.5rem,5vw,2.2rem);font-weight:700;line-height:1.1}.currently p{color:var(--dim);max-width:60ch;margin:0}.currently .row2{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 24px;display:flex}.inquiry{border-top:1px solid var(--line);padding:64px 0 0}.inquiry h2{letter-spacing:-.035em;max-width:20ch;margin:0 0 14px;font-size:clamp(1.8rem,6vw,2.8rem);font-weight:700;line-height:1.06}.inquiry h2 em{color:var(--accent);font-style:normal}.inquiry .punch{color:var(--ink);letter-spacing:-.02em;margin:0;font-size:clamp(1.15rem,3.6vw,1.5rem);font-weight:500;line-height:1.3}.inquiry .punch span{display:block}.inquiry .sub{color:var(--dim);max-width:54ch;margin:12px 0 0}form{margin:32px 0 0}.grid2{gap:0;display:grid}@media (width>=700px){.grid2{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 28px}}.field{border-bottom:1px solid var(--line);gap:6px;padding:14px 0 16px;display:grid}.field label{font-family:var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--dim);font-size:10.5px}.field input,.field textarea,.field select{font:inherit;color:var(--ink);background:0 0;border:0;width:100%;padding:2px 0;font-size:16px}.field textarea{resize:vertical;min-height:5.5em;line-height:1.55}.field input::placeholder,.field textarea::placeholder{color:var(--dim);opacity:.8}.field input:focus-visible,.field textarea:focus-visible,.field select:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.field select option{color:#111}.actions{flex-wrap:wrap;align-items:center;gap:16px;padding:24px 0 0;display:flex}.alt{color:var(--dim);font-size:14px}.alt a{border-bottom:1px solid var(--line);text-decoration:none}.alt a:hover{border-bottom-color:var(--accent);color:var(--accent)}.page-head{padding:52px 0 12px}.page-head h1{letter-spacing:-.035em;margin:0 0 16px;font-size:clamp(2rem,6.6vw,3.4rem);font-weight:700;line-height:1.05}.page-head h1 em{color:var(--accent);font-style:normal}.page-lede{color:var(--dim);max-width:56ch;margin:0;font-size:clamp(1rem,3vw,1.08rem)}.page-back{margin:22px 0 0}.plist{border-top:1px solid var(--line);margin:0;padding:0;list-style:none}.prow{border-bottom:1px solid var(--line);gap:6px;padding:22px 0 24px;display:grid}.prow-title{letter-spacing:-.03em;margin:0;font-size:clamp(1.2rem,4.4vw,1.5rem);font-weight:700}.prow-title a{border-bottom:1px solid var(--line-strong);text-decoration:none}.prow-title a:hover{color:var(--accent);border-bottom-color:var(--accent)}.prow-title a:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.prow-one{color:var(--dim);max-width:62ch;margin:0}.prow-meta{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--label);flex-wrap:wrap;align-items:center;gap:6px 16px;margin:4px 0 0;font-size:11px;display:flex}@media (width>=880px){.prow{grid-template-columns:16rem minmax(0,1fr) 13rem;align-items:baseline;gap:0 28px}.prow-meta{justify-content:flex-end;margin:0}}.prow--todo .prow-title,.prow--todo .prow-one,.prow--todo .prow-meta{opacity:.62}.prow--todo .prow-one{border-left:2px solid var(--accent);padding-left:12px}.plist-note{color:var(--dim);margin:26px 0 0;font-size:15px}.plist-note a{color:var(--ink);border-bottom:1px solid var(--line);text-decoration:none}.plist-note a:hover{color:var(--accent);border-bottom-color:var(--accent)}.page-cta h3{letter-spacing:-.035em;margin:0 0 10px;font-size:clamp(1.5rem,5vw,2.1rem);font-weight:700;line-height:1.1}.page-cta h3 em{color:var(--accent);font-style:normal}.page-cta p{color:var(--dim);max-width:54ch;margin:0}.page-cta .actions{padding-top:22px}.modal{border:1px solid var(--line-strong);background:var(--panel);width:min(620px,100% - 32px);max-height:min(86dvh,800px);color:var(--ink);padding:0;display:none;overflow:hidden}.modal[open]{flex-direction:column;display:flex}.modal::backdrop{background:#040506b8}.modal-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:flex-start;gap:16px;padding:22px 22px 16px;display:flex}.modal-eyebrow{font-family:var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--label);margin:0 0 8px;font-size:10.5px}.modal-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.35rem,5vw,1.7rem);font-weight:700;line-height:1.1}.modal-close{border:1px solid var(--line);min-width:44px;min-height:44px;color:var(--ink);cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;padding:0;display:inline-flex}.modal-close:hover{border-color:var(--line-strong)}.modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.modal-body{-webkit-overflow-scrolling:touch;padding:4px 22px 20px;overflow-y:auto}.modal .field{padding:16px 0 14px}.modal .field:last-of-type{border-bottom:0}.modal .field input,.modal .field select,.modal .field textarea{border-bottom:1px solid var(--line);padding:8px 0;font-size:16px}.modal .field textarea{min-height:6em}.modal .field input:focus-visible,.modal .field select:focus-visible,.modal .field textarea:focus-visible{outline-offset:2px}.hp{width:1px;height:1px;position:absolute;left:-9999px;overflow:hidden}.form-error{color:var(--accent);border-left:2px solid var(--accent);margin:14px 0 0;padding-left:12px;font-size:14px}.modal-foot{border-top:1px solid var(--line);background:var(--panel);flex-wrap:wrap;align-items:center;gap:12px 16px;padding:16px 22px 20px;display:flex}.modal-foot .btn{align-items:center;min-height:46px;display:inline-flex}.modal-alt{color:var(--dim);font-size:13.5px}.modal-alt a{color:var(--ink);border-bottom:1px solid var(--line);text-decoration:none}.modal-alt a:hover{color:var(--accent);border-bottom-color:var(--accent)}.modal-done{text-align:center;padding:34px 22px 30px}.modal-done .done-mark{color:var(--accent);margin:0 0 14px;line-height:0}.modal-done h3{letter-spacing:-.03em;margin:0 0 8px;font-size:1.5rem}.modal-done p{color:var(--dim);margin:0 0 22px}@media (width<=640px){.modal{border:0;width:100%;max-width:100%;height:100dvh;max-height:100dvh;margin:0}.modal-head{background:var(--panel);padding:18px 18px 14px;position:sticky;top:0}.modal-body{flex:1;padding:4px 18px 18px}.modal-foot{padding:14px 18px calc(14px + env(safe-area-inset-bottom))}.modal-foot .btn{justify-content:center;width:100%}.modal-alt{width:100%}}.image-preview{border:1px solid var(--line-strong);background:var(--panel);width:min(96vw,1600px);max-width:none;height:min(94dvh,1000px);max-height:none;color:var(--ink);padding:0;display:none;overflow:hidden}.image-preview[open]{flex-direction:column;display:flex}.image-preview::backdrop{background:#040506e0}.image-preview-head{border-bottom:1px solid var(--line);flex:none;justify-content:space-between;align-items:flex-start;gap:16px;padding:16px 18px;display:flex}.image-preview-head h2{letter-spacing:-.03em;margin:0;font-size:clamp(1.2rem,4vw,1.55rem);font-weight:700;line-height:1.1}.image-preview-actions{align-items:center;gap:8px;display:flex}.image-preview-count{min-width:3.5em;font-family:var(--mono);letter-spacing:.08em;text-align:center;color:var(--label);font-size:11px}.image-preview-nav{border:1px solid var(--line);width:44px;height:44px;color:var(--ink);font:inherit;cursor:pointer;background:0 0;flex:none;justify-content:center;align-items:center;padding:0;font-size:20px;display:inline-flex}.image-preview-nav:hover{border-color:var(--line-strong)}.image-preview-nav:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.image-preview-stage{overscroll-behavior:contain;-webkit-overflow-scrolling:touch;touch-action:pan-x pan-y pinch-zoom;background:#090a0b;flex:1;min-height:0;overflow:auto}.image-preview-stage img{width:auto;min-width:900px;max-width:none;height:auto;margin:0 auto;display:block}.image-preview--gallery .image-preview-stage{justify-content:center;align-items:center;padding:12px;display:flex;overflow:hidden}.image-preview--gallery .image-preview-stage img{width:auto;min-width:0;max-width:100%;height:auto;max-height:100%;margin:auto}.image-preview-thumbs{border-top:1px solid var(--line);background:var(--panel);flex:none;justify-content:center;align-items:center;gap:8px;padding:10px 12px;display:flex;overflow-x:auto}.image-preview-thumb{background:var(--bg);border:1px solid var(--line);width:48px;height:92px;color:inherit;cursor:pointer;opacity:.56;flex:0 0 48px;padding:2px}.image-preview-thumb img{object-fit:cover;width:100%;height:100%;display:block}.image-preview-thumb:hover{opacity:.82;border-color:var(--line-strong)}.image-preview-thumb[aria-current=true]{opacity:1;border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}.image-preview-thumb:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width>=900px){.image-preview-stage img{min-width:0;max-width:100%}.image-preview-thumb{flex-basis:56px;width:56px;height:108px}}@media (width<=640px){.image-preview{border:0;width:100%;height:100dvh;margin:0}.image-preview-head{padding:14px 16px}.image-preview-head .modal-eyebrow{display:none}.image-preview-actions{gap:6px}}.hem{background:var(--accent);color:var(--on-accent);margin-top:64px}.hem .wrap{padding-top:24px;padding-bottom:26px}.hem-top{letter-spacing:-.01em;flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:10px 20px;font-size:15px;font-weight:700;display:flex}.hem .where{opacity:.88;flex-wrap:wrap;gap:6px 16px;font-weight:500;display:flex}.hem a{border-bottom:1px solid;text-decoration:none}.hem a:hover{border-bottom-width:2px}.hem a:focus-visible{outline:2px solid var(--on-accent);outline-offset:3px}.hem-bottom{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;opacity:.8;border-top:1px solid #07160f47;flex-wrap:wrap;justify-content:space-between;gap:8px 20px;margin-top:20px;padding-top:16px;font-size:11px;display:flex}@media (width<=640px){.hem .wrap{padding-bottom:calc(26px + env(safe-area-inset-bottom))}.hem-top{gap:14px;display:grid}.hem .where{flex-direction:column;align-items:flex-start;gap:8px}.hem-bottom{gap:6px;display:grid}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}.card:hover,.btn:hover{transform:none!important}}
