:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#141714;--panel:#1c201b;--panel-2:#20271f;--line:#343a33;--text:#eeeee8;--muted:#a7afa5;--soft:#788277;--accent:#b9c9ad;--accent-dark:#172016;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);margin:0}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible{outline:2px solid var(--accent);outline-offset:5px}::selection{color:#10140f;background:#b9c9ad}.site-shell{max-width:1440px;margin:auto;padding:0 48px}.page-section{max-width:1168px;margin:0 auto}.site-header{border-bottom:1px solid var(--line);grid-template-columns:1fr auto 1fr;align-items:center;height:91px;display:grid}.brand{justify-self:start;align-items:center;gap:16px;display:inline-flex}.brand-mark,.footer-mark{letter-spacing:-.095em;font-size:27px;font-weight:750;line-height:1}.brand-dot{color:var(--accent)}.brand-name{letter-spacing:.01em;font-size:13px;font-weight:600}.main-nav{align-items:center;gap:36px;display:flex}.main-nav a{color:var(--muted);font-size:13px;font-weight:550;transition:color .2s}.main-nav a:hover,.main-nav a[aria-current=page]{color:var(--text)}.header-contact{border-bottom:1px solid var(--accent);justify-self:end;padding:0 0 5px;font-size:13px;font-weight:600}.header-contact span{color:var(--accent);margin-left:7px}.eyebrow{color:var(--accent);letter-spacing:.145em;text-transform:uppercase;align-items:center;gap:12px;margin:0;font-size:11px;font-weight:700;display:flex}.eyebrow-line{background:var(--accent);width:19px;height:1px;display:inline-block}.home-hero{grid-template-columns:minmax(0,1fr) 360px;align-items:center;gap:11%;min-height:596px;padding:70px 0 90px;display:grid}.hero-copy h1,.page-intro h1,.about-intro h1,.detail-heading h1,.article-header h1{letter-spacing:-.058em;margin:29px 0 25px;font-size:clamp(42px,5vw,68px);font-weight:630;line-height:1.06}.hero-lede{letter-spacing:-.026em;max-width:620px;margin:0 0 18px;font-size:clamp(20px,2.1vw,26px);line-height:1.43}.hero-secondary{color:var(--muted);max-width:555px;margin:0;font-size:15px;line-height:1.75}.hero-actions{align-items:center;gap:12px;margin-top:38px;display:flex}.button{justify-content:space-between;align-items:center;gap:27px;min-height:48px;padding:15px 19px;font-size:13px;font-weight:650;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.button span{font-size:17px;font-weight:400;line-height:0}.button-primary{background:var(--accent);color:var(--accent-dark)}.button-primary:hover{color:#11180f;background:#d1dec7}.button-quiet{border:1px solid var(--line);color:var(--text)}.button-quiet:hover{border-color:var(--accent);color:var(--accent)}.hero-social{align-items:center;gap:19px;margin-top:47px;font-size:12px;display:flex}.hero-social span{color:var(--soft);margin-right:4px}.hero-social a{border-bottom:1px solid var(--line);padding-bottom:3px}.hero-portrait-wrap{position:relative}.hero-portrait-wrap:before{content:"";z-index:-1;border:1px solid #4a5145;position:absolute;inset:14px -14px -14px 14px}.hero-portrait{object-fit:cover;object-position:center 22%;filter:saturate(.78)contrast(.98);width:100%;height:414px}.portrait-caption{letter-spacing:.12em;text-transform:uppercase;color:var(--soft);margin-top:24px;font-size:10px;display:block}.projects-section,.writing-section{border-top:1px solid var(--line);padding:78px 0 91px}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:36px;display:flex}.section-heading h2{letter-spacing:-.045em;margin:18px 0 0;font-size:35px;font-weight:610}.section-heading>p{color:var(--muted);margin:0 0 4px;font-size:13px}.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.project-card{min-width:0}.project-card-media{background:#242b23;border:1px solid #374034;justify-content:center;align-items:center;height:305px;display:flex;position:relative;overflow:hidden}.project-card-media:before{content:"";opacity:.9;background:radial-gradient(circle at 55% 43%,#44513f 0%,#273026 42%,#222920 75%);position:absolute;inset:0}.project-card-media img{object-fit:contain;width:auto;max-width:80%;height:240px;transition:transform .3s;position:relative;transform:rotate(-5deg);box-shadow:0 14px 35px #0c100b70}.project-card-media:hover img{transform:rotate(-2deg)scale(1.035)}.project-number,.media-arrow{z-index:1;color:#d6decf;position:absolute}.project-number{letter-spacing:.13em;font-size:10px;font-weight:700;top:19px;left:21px}.media-arrow{font-size:25px;font-weight:300;bottom:15px;right:21px}.project-card-copy{padding:22px 1px 0}.card-meta{color:var(--accent);letter-spacing:.11em;text-transform:uppercase;gap:10px;font-size:11px;font-weight:650;display:flex}.meta-separator{color:var(--soft)}.project-card h3{letter-spacing:-.034em;margin:11px 0 9px;font-size:23px;font-weight:620;line-height:1.3}.project-subtitle{color:var(--muted);font-weight:450}.project-card-copy p{color:var(--muted);max-width:500px;margin:0;font-size:14px;line-height:1.65}.text-link,.section-end-link{border-bottom:1px solid var(--accent);align-items:center;gap:10px;padding-bottom:7px;font-size:13px;font-weight:650;display:inline-flex}.text-link{margin-top:20px}.text-link span,.section-end-link span{color:var(--accent);font-size:17px;font-weight:400}.section-end-link{margin-top:37px}.writing-list,.writing-page-list{border-top:1px solid var(--line)}.writing-item{border-bottom:1px solid var(--line);grid-template-columns:170px 1fr auto;align-items:center;gap:30px;padding:25px 1px;display:grid}.writing-item>span:first-child{color:var(--soft);font-size:12px}.writing-item strong{font-size:17px;font-weight:550}.writing-item>span:last-child{color:var(--accent);font-size:20px}.contact-strip{border-top:1px solid var(--line);justify-content:space-between;align-items:end;gap:30px;padding:70px 0 100px;display:flex}.contact-strip h2{letter-spacing:-.04em;margin:17px 0 10px;font-size:33px;font-weight:600}.contact-strip p:not(.eyebrow){color:var(--muted);margin:0;font-size:14px;line-height:1.6}.contact-strip>a{border-bottom:1px solid var(--accent);white-space:nowrap;padding-bottom:7px;font-size:17px;font-weight:600}.contact-strip>a span{color:var(--accent);margin-left:10px}.site-footer{border-top:1px solid var(--line);grid-template-columns:1fr auto;gap:50px;padding:54px max(50% - 584px,0px) 25px;display:grid}.footer-intro p{color:var(--soft);max-width:330px;margin:17px 0 0;font-size:12px;line-height:1.6}.footer-links{align-items:start;gap:25px;padding-top:8px;display:flex}.footer-links a{color:var(--muted);font-size:12px}.footer-links a:hover{color:var(--accent)}.footer-bottom{color:var(--soft);border-top:1px solid var(--line);grid-column:1/-1;justify-content:space-between;padding-top:20px;font-size:11px;display:flex}.page-intro{border-bottom:1px solid var(--line);padding:82px 0 64px}.page-intro h1{margin:23px 0 14px}.page-intro>p:last-child{color:var(--muted);margin:0;font-size:18px}.project-list{padding:47px 0 100px}.detail-top{padding:45px 0 65px}.back-link{color:var(--muted);font-size:12px;font-weight:650}.detail-heading{grid-template-columns:1fr 205px;align-items:end;gap:70px;margin-top:66px;display:grid}.detail-heading h1{margin:20px 0 17px;font-size:clamp(40px,5vw,64px)}.detail-heading h1 span{color:var(--muted);font-weight:400}.detail-heading>div:first-child>p:not(.eyebrow){color:var(--muted);max-width:665px;margin:0;font-size:18px;line-height:1.6}.detail-actions{flex-wrap:wrap;gap:12px;margin-top:31px;display:flex}.detail-facts{border-top:1px solid var(--line)}.detail-facts div{border-bottom:1px solid var(--line);justify-content:space-between;gap:10px;padding:14px 0;font-size:11px;display:flex}.detail-facts span{color:var(--soft)}.detail-facts strong{font-weight:550}.detail-image{background:radial-gradient(circle at 50% 45%,#485643,#293228 53%,#242c23 82%);border:1px solid #3a4438;justify-content:center;align-items:center;min-height:500px;padding:40px;display:flex;overflow:hidden}.detail-image img{object-fit:contain;width:auto;max-height:450px;transform:rotate(-4deg);box-shadow:0 18px 42px #0b100b90}.detail-body,.about-body{grid-template-columns:230px minmax(0,680px);gap:9%;padding:86px 0 100px;display:grid}.detail-aside p{color:var(--soft);margin:14px 0;font-size:12px}.prose{color:#c9cec4;font-size:16px;line-height:1.85}.prose h2{letter-spacing:-.035em;color:var(--text);margin:0 0 20px;font-size:27px;font-weight:600;line-height:1.3}.prose h2:not(:first-child){margin-top:43px}.prose p{margin:0 0 23px}.prose a{color:var(--accent);text-underline-offset:4px;text-decoration:underline}.prose ul,.prose ol{padding-left:22px}.prose li{margin-bottom:9px}.prose img{margin:35px 0}.detail-cta{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:25px;padding:43px 0 78px;display:flex}.detail-cta p{letter-spacing:-.02em;margin:0;font-size:19px}.detail-cta a{border-bottom:1px solid var(--accent);padding-bottom:6px;font-size:14px;font-weight:650}.about-intro{border-bottom:1px solid var(--line);grid-template-columns:1fr 270px;align-items:center;gap:10%;padding:76px 0;display:grid}.about-intro h1{margin:25px 0 21px}.about-lede{letter-spacing:-.02em;max-width:650px;margin:0;font-size:23px;line-height:1.5}.about-intro img{object-fit:cover;object-position:center 22%;filter:saturate(.78);width:270px;height:320px}.about-body{padding-top:76px}.writing-page-list{padding-bottom:130px}.empty-note{color:var(--soft);padding:25px 0;font-size:14px}.article-page{padding:47px 0 120px}.article-header{max-width:850px;margin:70px auto 75px}.article-header h1{margin:24px 0 20px;font-size:clamp(38px,5vw,62px)}.article-header>p:last-child{color:var(--muted);font-size:18px;line-height:1.5}.article-page>.prose{max-width:690px;margin:auto}.article-page>.section-end-link{margin:60px calc(50% - 345px) 0}@media (width<=900px){.site-shell{padding:0 28px}.home-hero{grid-template-columns:minmax(0,1fr) 290px;gap:5%;min-height:500px}.hero-portrait{height:365px}.hero-copy h1{font-size:50px}.hero-social{flex-wrap:wrap;gap:13px}.project-grid{grid-template-columns:1fr 1fr}.project-card-media{height:250px}.project-card-media img{height:200px}.detail-heading{gap:35px}.detail-body,.about-body{gap:5%}.site-footer{padding-left:0;padding-right:0}}@media (width<=680px){.site-shell{padding:0 20px}.site-header{grid-template-columns:1fr auto;height:76px}.brand{gap:10px}.brand-mark{font-size:25px}.brand-name{font-size:12px}.main-nav{grid-area:2/1/auto/-1;justify-content:space-between;gap:20px;padding:0 0 17px}.site-header{height:auto;padding-top:17px}.header-contact{grid-area:1/2;margin-bottom:17px;font-size:12px}.home-hero{flex-direction:column-reverse;align-items:stretch;gap:40px;padding:48px 0 70px;display:flex}.hero-portrait-wrap{align-self:center;width:min(100%,360px)}.hero-portrait{height:350px}.portrait-caption{margin-top:14px}.hero-copy h1{margin:19px 0;font-size:46px}.hero-lede{font-size:21px}.hero-secondary{font-size:14px}.hero-actions{flex-wrap:wrap;margin-top:30px}.hero-social{margin-top:30px}.projects-section,.writing-section{padding:56px 0 69px}.section-heading{margin-bottom:27px;display:block}.section-heading h2{font-size:31px}.section-heading>p{margin-top:12px}.project-grid{grid-template-columns:1fr;gap:44px}.project-card-media{height:275px}.project-card-media img{height:215px}.contact-strip{padding:57px 0 74px;display:block}.contact-strip h2{font-size:28px}.contact-strip>a{margin-top:31px;font-size:15px;display:inline-block}.site-footer{grid-template-columns:1fr;gap:27px;padding-top:44px}.footer-links{flex-wrap:wrap;gap:16px 22px}.footer-bottom{flex-wrap:wrap;gap:10px}.page-intro{padding:61px 0 47px}.page-intro h1{font-size:48px}.page-intro>p:last-child{font-size:16px}.project-list{padding:40px 0 80px}.detail-top{padding:35px 0 43px}.detail-heading{margin-top:48px;display:block}.detail-heading h1{font-size:44px}.detail-heading h1 span{display:block}.detail-heading>div:first-child>p:not(.eyebrow){font-size:16px}.detail-facts{margin-top:42px}.detail-image{min-height:330px;padding:20px}.detail-image img{max-height:280px}.detail-body,.about-body{padding:58px 0 75px;display:block}.detail-aside{margin-bottom:34px}.detail-cta{padding:37px 0 60px;display:block}.detail-cta a{margin-top:19px;display:inline-block}.about-intro{flex-direction:column-reverse;align-items:start;gap:38px;padding:54px 0;display:flex}.about-intro img{width:220px;height:260px}.about-intro h1{font-size:43px}.about-lede{font-size:21px}.writing-item{grid-template-columns:1fr auto;gap:8px}.writing-item>span:first-child{grid-column:1/-1}.article-header{margin:55px 0}.article-header h1{font-size:42px}.article-page>.section-end-link{margin-left:0}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.project-grid:has(.project-card:only-child){grid-template-columns:1fr}.project-card:only-child{grid-template-columns:minmax(0,1fr) minmax(0,.85fr);align-items:center;gap:7%;display:grid}.project-card:only-child .project-card-media{height:350px}.project-card:only-child .project-card-media img{height:280px}.project-card:only-child .project-card-copy{padding:0}@media (width<=680px){.project-card:only-child{display:block}.project-card:only-child .project-card-media{height:275px}.project-card:only-child .project-card-media img{height:215px}.project-card:only-child .project-card-copy{padding:22px 1px 0}}.header-contact[aria-current=page]{color:var(--accent)}.hero-social a,.footer-links a{align-items:center;gap:7px;display:inline-flex}.hero-social a svg,.footer-links a svg{color:var(--accent);flex:none}.contact-page-list{padding:39px 0 115px}.contact-item{border-bottom:1px solid var(--line);grid-template-columns:44px 155px 1fr auto;align-items:center;gap:20px;min-height:84px;padding:20px 0;display:grid}.contact-item:first-child{border-top:1px solid var(--line)}.contact-item-icon{color:var(--accent);align-items:center;display:flex}.contact-item-name{font-size:17px;font-weight:600}.contact-item-detail{color:var(--muted);font-size:14px}.contact-item-arrow{color:var(--accent);font-size:22px}.contact-item:hover .contact-item-detail{color:var(--text)}@media (width<=680px){.contact-page-list{padding:32px 0 80px}.contact-item{grid-template-columns:32px 1fr auto;gap:10px;min-height:76px}.contact-item-name{font-size:15px}.contact-item-detail{grid-area:2/2;font-size:12px}.contact-item-arrow{grid-area:1/3/3}}.related-project{border:1px solid var(--line);background:var(--panel);justify-content:space-between;gap:28px;max-width:690px;margin:65px auto 0;padding:29px 31px;display:flex}.related-project-main{align-items:flex-start;gap:18px;min-width:0;display:flex}.related-project-icon{object-fit:cover;border-radius:12px;flex:none;width:64px;height:64px}.related-project h2{letter-spacing:-.03em;margin:14px 0 8px;font-size:21px;font-weight:600}.related-project h2 span{color:var(--muted);font-weight:400}.related-project p{color:var(--muted);margin:0;font-size:13px;line-height:1.5}.related-project-links{flex-direction:column;justify-content:center;align-items:start;gap:14px;min-width:155px;display:flex}.related-project-links a{border-bottom:1px solid var(--accent);white-space:nowrap;padding-bottom:5px;font-size:12px;font-weight:650}@media (width<=680px){.related-project{padding:25px 22px;display:block}.related-project-icon{width:52px;height:52px}.related-project-main{gap:14px}.related-project-links{margin-top:24px}}.prose :not(pre)>code{color:#d9e3d1;overflow-wrap:anywhere;background:#283028;border-radius:4px;padding:.16em .38em;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.86em}.prose pre{max-width:100%;color:var(--text);tab-size:2;-webkit-overflow-scrolling:touch;background:#1a1e1a;border:1px solid #353d35;border-radius:8px;margin:31px 0;padding:24px 27px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:1.7;overflow-x:auto}.prose pre.astro-code{background:#1a1e1a!important}.prose pre code{font:inherit;white-space:pre;font-variant-ligatures:none;background:0 0;padding:0}@media (width<=680px){.prose pre{padding:19px 18px;font-size:12px}}
