@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b2ea385cb5ae8625-s.0kjod.kaq1k69.woff2?dpl=dpl_J5W46oHgU42MXXWCt5GFUnzpEcnN)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Outfit;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1b99372b3eaef0c8-s.p.0gx2haw2tmll8.woff2?dpl=dpl_J5W46oHgU42MXXWCt5GFUnzpEcnN)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Outfit Fallback;src:local(Arial);ascent-override:100.18%;descent-override:26.05%;line-gap-override:0.0%;size-adjust:99.82%}.outfit_9f4f9187-module__4LtYgq__className{font-family:Outfit,Outfit Fallback;font-style:normal}.outfit_9f4f9187-module__4LtYgq__variable{--font-outfit:"Outfit", "Outfit Fallback"}
@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/0b1dc8ddaa74ba49-s.04o39dzmj.ey..woff2?dpl=dpl_J5W46oHgU42MXXWCt5GFUnzpEcnN)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/e629b5bc06499d58-s.0b_~8bw~gzh90.woff2?dpl=dpl_J5W46oHgU42MXXWCt5GFUnzpEcnN)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/1a099d89ee94ee96-s.0_qb~~5cn13jl.woff2?dpl=dpl_J5W46oHgU42MXXWCt5GFUnzpEcnN)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/fba5a26ea33df6a3-s.p.0eehd8tgys7nv.woff2?dpl=dpl_J5W46oHgU42MXXWCt5GFUnzpEcnN)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Plus Jakarta Sans Fallback;src:local(Arial);ascent-override:98.88%;descent-override:21.15%;line-gap-override:0.0%;size-adjust:104.98%}.plus_jakarta_sans_75580a06-module__h4idsq__className{font-family:Plus Jakarta Sans,Plus Jakarta Sans Fallback;font-style:normal}.plus_jakarta_sans_75580a06-module__h4idsq__variable{--font-plus-jakarta:"Plus Jakarta Sans", "Plus Jakarta Sans Fallback"}
*{box-sizing:border-box;margin:0;padding:0}:root{--heading:var(--font-outfit), sans-serif;--body:var(--font-plus-jakarta), sans-serif;--ink:#111;--ink2:#666;--ink3:#999;--accent:#8b6d5c;--bg:#fafafa;--border:#0000000f;--col-width:640px}body{background:var(--bg);color:var(--ink2);font-family:var(--body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.75}a{color:inherit;text-decoration:none}.nav{justify-content:space-between;align-items:center;max-width:960px;margin:0 auto;padding:24px 32px;display:flex}.nav-logo{font-family:var(--heading);color:var(--ink);letter-spacing:-.3px;font-size:16px;font-weight:600}.nav-links{gap:32px;display:flex}.nav-links a{font-family:var(--body);color:var(--ink3);letter-spacing:.3px;font-size:13px;text-decoration:none;transition:color .2s}.nav-links a:hover{color:var(--ink)}.section{max-width:var(--col-width);margin:0 auto;padding:0 32px}.section-space{padding-top:72px;padding-bottom:72px}.section-border{border-top:1px solid var(--border)}.divider{background:var(--accent);width:32px;height:1px;margin-bottom:28px}.section-title{font-family:var(--heading);color:var(--ink);letter-spacing:-.3px;margin-bottom:20px;font-size:24px;font-weight:500}.body-text{color:var(--ink2);margin-bottom:16px;font-size:15px;line-height:1.8}.body-text:last-of-type{margin-bottom:0}.hero{padding-top:120px;padding-bottom:48px}.hero-eyebrow{font-family:var(--body);letter-spacing:2.5px;text-transform:uppercase;color:var(--accent);margin-bottom:24px;font-size:11px;font-weight:500}.hero h1{font-family:var(--heading);color:var(--ink);letter-spacing:-.5px;margin-bottom:32px;font-size:38px;font-weight:500;line-height:1.25}.hero-body{color:var(--ink2);max-width:560px;margin-bottom:14px;font-size:16px;line-height:1.8}.hero-body:last-of-type{margin-bottom:32px}.text-link{font-family:var(--body);color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:2px;font-size:13px;text-decoration:none;transition:opacity .2s}.text-link:hover{opacity:.7}.photo-block{background:#f0ede8;justify-content:center;align-items:center;width:100%;height:400px;margin-top:48px;display:flex}.photo-block span{font-family:var(--body);color:var(--ink3);font-size:13px}.photo-caption{font-family:var(--body);color:var(--ink3);margin-top:10px;font-size:12px;font-style:italic}.writing-list{flex-direction:column;gap:32px;display:flex}.writing-subtitle{font-family:var(--body);color:var(--ink3);margin-top:-12px;margin-bottom:28px;font-size:14px;font-style:italic}.writing-date{font-family:var(--body);color:var(--ink3);letter-spacing:.5px;margin-bottom:4px;font-size:12px}.writing-title{font-family:var(--heading);color:var(--ink);letter-spacing:-.2px;margin-bottom:6px;font-size:18px;font-weight:500;line-height:1.3}.writing-title a{color:inherit;text-decoration:none;transition:opacity .2s}.writing-title a:hover{opacity:.7}.writing-excerpt{font-family:var(--body);color:var(--ink3);font-size:14px;line-height:1.65}.newsletter-form{gap:8px;max-width:420px;margin-top:24px;display:flex}.newsletter-input{height:44px;font-family:var(--body);color:var(--ink);background:#fff;border:1px solid #0000001a;outline:none;flex:1;padding:0 16px;font-size:14px;transition:border-color .2s}.newsletter-input::placeholder{color:var(--ink3)}.newsletter-input:focus{border-color:var(--accent)}.newsletter-btn{background:var(--ink);color:#fff;height:44px;font-family:var(--body);cursor:pointer;letter-spacing:.3px;border:none;padding:0 24px;font-size:13px;font-weight:500;transition:opacity .2s}.newsletter-btn:hover{opacity:.85}.about-text{color:var(--ink2);margin-bottom:16px;font-size:15px;line-height:1.85}.contact-links{gap:24px;margin-top:24px;display:flex}.contact-links a{font-family:var(--body);color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:2px;font-size:13px;text-decoration:none;transition:opacity .2s}.contact-links a:hover{opacity:.7}.footer{text-align:center;padding:48px 32px 32px}.footer-copy{font-family:var(--body);color:var(--ink3);font-size:12px}.ghost-content h2{font-family:var(--heading);color:var(--ink);letter-spacing:-.3px;margin-top:48px;margin-bottom:16px;font-size:24px;font-weight:500}.ghost-content h3{font-family:var(--heading);color:var(--ink);margin-top:36px;margin-bottom:12px;font-size:20px;font-weight:500}.ghost-content p{color:var(--ink2);margin-bottom:20px;font-size:16px;line-height:1.8}.ghost-content a{color:var(--accent);border-bottom:1px solid var(--accent);padding-bottom:1px;transition:opacity .2s}.ghost-content a:hover{opacity:.7}.ghost-content img{max-width:100%;height:auto;margin:32px 0}.ghost-content blockquote{border-left:3px solid var(--accent);color:var(--ink3);margin:32px 0;padding-left:20px;font-style:italic}.ghost-content ul,.ghost-content ol{margin:16px 0;padding-left:24px}.ghost-content li{margin-bottom:8px;line-height:1.7}.ghost-content pre{background:#f5f5f5;margin:24px 0;padding:20px;font-size:14px;line-height:1.5;overflow-x:auto}.ghost-content code{background:#f5f5f5;padding:2px 6px;font-size:14px}.ghost-content pre code{background:0 0;padding:0}.ghost-content figure{margin:32px 0}.ghost-content figcaption{color:var(--ink3);text-align:center;margin-top:8px;font-size:13px;font-style:italic}.post-header{padding-top:96px;padding-bottom:32px}.post-meta{color:var(--ink3);letter-spacing:.5px;margin-bottom:16px;font-size:12px}.post-title{font-family:var(--heading);color:var(--ink);letter-spacing:-.5px;margin-bottom:24px;font-size:36px;font-weight:500;line-height:1.2}.post-feature-image{width:100%;height:auto;margin-bottom:40px}.post-content{padding-bottom:72px}.page-header{padding-top:96px;padding-bottom:16px}.page-title{font-family:var(--heading);color:var(--ink);letter-spacing:-.5px;font-size:36px;font-weight:500;line-height:1.2}.page-content{padding-top:32px;padding-bottom:72px}.project-grid{flex-direction:column;gap:24px;margin-top:40px;display:flex}.project-card{border-top:1px solid var(--border);padding-top:24px}.project-card-header{justify-content:space-between;align-items:baseline;margin-bottom:8px;display:flex}.project-card-name{font-family:var(--heading);color:var(--ink);letter-spacing:-.2px;font-size:18px;font-weight:500}.project-card-name a{color:inherit;border-bottom:1px solid var(--accent);padding-bottom:1px;text-decoration:none;transition:opacity .2s}.project-card-name a:hover{opacity:.7}.project-status{font-family:var(--body);letter-spacing:1px;text-transform:uppercase;flex-shrink:0;font-size:11px;font-weight:500}.project-status--building{color:var(--accent)}.project-status--live{color:#5a8a5a}.project-status--archived{color:var(--ink3)}.project-card-description{font-family:var(--body);color:var(--ink3);font-size:14px;line-height:1.65}.services-list{flex-direction:column;gap:40px;display:flex}.service-card{border-top:1px solid var(--border);padding-top:28px}.service-card-title{font-family:var(--heading);color:var(--ink);letter-spacing:-.2px;margin-bottom:10px;font-size:20px;font-weight:500}.service-card-description{color:var(--ink2);margin-bottom:16px;font-size:15px;line-height:1.8}.service-card-details{margin:0;padding:0;list-style:none}.service-card-details li{font-family:var(--body);color:var(--ink3);padding-left:16px;font-size:14px;line-height:1.7;position:relative}.service-card-details li:before{content:"—";color:var(--accent);position:absolute;left:0}@media (max-width:680px){.hero{padding-top:72px}.hero h1{font-size:28px}.section-space{padding-top:48px;padding-bottom:48px}.nav{padding:16px 20px}.nav-links{gap:16px;font-size:12px}.section{padding:0 20px}.newsletter-form{flex-direction:column}.newsletter-btn{width:100%}.post-title,.page-title{font-size:28px}.post-header,.page-header{padding-top:64px}.photo-block{height:280px}}
