:root{color:#19211f;font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;--ink:#19211f;--paper:#efeee8;--orange:#ef5d3f;--forest:#264437;--line:#d3d5cd;--sage:#cad3be;--mono:"SFMono-Regular", Consolas, monospace;--serif:Georgia, "Times New Roman", serif;background:#efeee8;font-family:Avenir Next,Helvetica Neue,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;min-height:100vh;margin:0}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--orange);outline-offset:3px}::selection{color:#fff;background:var(--forest)}#root{min-height:100vh}.portfolio{overflow:clip}.site-header{z-index:5;background:var(--paper);justify-content:space-between;align-items:center;gap:24px;height:74px;padding:0 5.3%;display:flex;position:relative}.wordmark{color:var(--ink);align-items:center;gap:9px;font-size:12px;font-weight:800;text-decoration:none;display:inline-flex}.wordmark>span:last-child{align-items:baseline;gap:5px;display:flex}.wordmark i{color:#667068;font-size:9px;font-style:normal;font-weight:600}.wordmark-icon{background:var(--orange);color:#fff;border-radius:50%;place-items:center;width:27px;height:27px;display:grid}.site-nav{gap:34px;margin-left:auto;margin-right:42px;display:flex}.site-nav a,.header-booking{color:var(--ink);font-size:11px;font-weight:600;text-decoration:none}.site-nav a{transition:color .18s}.site-nav a:hover,.footer-top:hover{color:var(--orange)}.header-booking{border:1px solid #bfc4ba;border-radius:2px;align-items:center;gap:8px;padding:11px 14px;display:flex}.header-booking:hover{border-color:var(--ink)}.menu-toggle{border:1px solid var(--line);width:36px;height:36px;color:var(--ink);background:0 0;place-items:center;display:none}.hero{color:#f7f5ed;background:#202c29;height:min(740px,100svh - 170px);min-height:590px;max-height:740px;position:relative;overflow:hidden}.hero-photo,.approach-image img{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero-photo{object-position:center 55%;filter:brightness(.48)saturate(.72)}.hero-shade{background:#0e161447;position:absolute;inset:0}.hero-content{z-index:1;flex-direction:column;justify-content:center;align-items:flex-start;max-width:1200px;height:100%;margin:0 auto;padding:54px 9.2% 68px;display:flex;position:relative}.eyebrow,.section-topline,.hero-specialties,.hero-caption,.hero-index,.project-index,.project-type,.cover-number,.cover-stamp,.about-label,.about-signoff,.service-list article>span,.site-footer>span,.footer-top,.image-credit,.dialog-kicker{font-family:var(--mono);letter-spacing:0}.hero-eyebrow{color:#d7dbd0;align-items:center;gap:9px;margin:0 0 27px;font-size:9px;display:flex}.hero-eyebrow>span:last-child{color:var(--orange)}.eyebrow-mark{background:var(--orange);border-radius:50%;width:7px;height:7px;box-shadow:0 0 12px #ef5d3f80}.hero h1{color:#f5f2e9;font-family:var(--serif);margin:0;font-size:100px;font-weight:400;line-height:.84}.hero h1 em,.work-heading h2 em,.approach-copy h2 em,.services-layout h2 em,.booking-intro h2 em{color:#e79470;font-weight:400}.hero-copy{color:#e1e3d9;max-width:360px;margin:23px 0 27px;font-size:16px;line-height:1.65}.hero-actions{align-items:center;gap:25px;display:flex}.button{cursor:pointer;border:0;border-radius:2px;justify-content:center;align-items:center;gap:20px;min-height:44px;padding:0 15px;font-size:11px;font-weight:700;text-decoration:none;transition:transform .16s,background .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-bright{background:var(--orange);color:#fff}.button-bright:hover{background:#ff7356}.text-link{color:#f4f2ea;align-items:center;gap:6px;font-size:11px;font-weight:600;text-decoration:none;display:flex}.text-link:hover{color:#f3a78b}.hero-specialties{color:#d4d9ce;align-items:center;gap:12px;font-size:8px;display:flex;position:absolute;bottom:37px;left:9.2%}.hero-specialties i,.about-signoff i{background:#8c988d;width:18px;height:1px}.hero-caption{color:#c2c8bd;text-align:right;max-width:315px;font-size:7px;line-height:1.5;position:absolute;bottom:34px;right:5.3%}.hero-caption a{color:#e6e8df;text-underline-offset:2px}.hero-index{color:#e0e4d8;writing-mode:vertical-rl;align-items:center;gap:9px;font-size:8px;text-decoration:none;display:flex;position:absolute;top:50%;right:4%;transform:translateY(-50%)}.hero-index svg{transform:rotate(-45deg)}.intro-band{border-bottom:1px solid var(--line);background:var(--paper);grid-template-columns:1fr 1.5fr 40px;align-items:center;gap:38px;min-height:138px;padding:30px 9.2%;display:grid}.intro-band>p{color:var(--forest);font-family:var(--mono);margin:0;font-size:11px;line-height:1.6}.intro-band>span{color:#5c645e;max-width:470px;font-family:var(--serif);font-size:20px;line-height:1.45}.intro-band>a{width:38px;height:38px;color:var(--ink);border:1px solid #c7cbc1;border-radius:50%;place-items:center;display:grid}.page-section{padding:108px 9.2%}.work-section{background:var(--paper)}.section-topline{color:#737c74;justify-content:space-between;align-items:center;gap:20px;font-size:8px;display:flex}.section-topline>span:first-child{color:var(--ink)}.sample-note{color:#b45138}.work-heading{justify-content:space-between;align-items:end;gap:30px;margin:26px 0 42px;display:flex}.work-heading h2,.approach-copy h2,.services-layout h2,.booking-intro h2{font-family:var(--serif);margin:0;font-size:58px;font-weight:400;line-height:.96}.work-heading h2 em,.services-layout h2 em{color:#66806b}.work-heading>p{color:#6d756e;max-width:260px;margin:0 0 5px;font-size:12px;line-height:1.7}.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;display:grid}.project-card{min-width:0}.project-cover{aspect-ratio:1/1.08;color:#fbf7ec;text-align:center;cursor:pointer;isolation:isolate;border:0;flex-direction:column;justify-content:center;align-items:center;width:100%;padding:22px;display:flex;position:relative;overflow:hidden}.cover-blue{background:#315353}.cover-signal{background:#dd795a}.cover-after{background:#696e51}.project-cover:before{z-index:-1;content:"";border:1px solid #ffffff6a;position:absolute;inset:8%}.cover-blue:after,.cover-signal:after,.cover-after:after{z-index:-1;aspect-ratio:1;content:"";border:1px solid #ffffff75;border-radius:50%;width:58%;position:absolute;transform:translate(22%,-10%)}.cover-blue:after{background:radial-gradient(circle at 35% 35%,#92b1a081,#233b3b 70%);box-shadow:0 0 0 18px #ffffff0a,0 0 0 48px #ffffff08}.cover-signal:after{background:repeating-linear-gradient(135deg,#e99c7370 0 2px,#0000 2px 8px);border-radius:4px 52% 5px 50%;width:68%;transform:rotate(-18deg)translate(12%,-8%)}.cover-after:after{background:repeating-linear-gradient(0deg,#dbe0c930 0 1px,#0000 1px 7px);border-radius:0;width:74%;transform:rotate(29deg)translate(10%,-4%)}.cover-number{color:#f7f2e8bc;font-size:8px;position:absolute;top:17px;left:18px}.cover-title{max-width:90%;font-family:var(--serif);font-size:36px;line-height:1}.cover-stamp{color:#fff8eb;border:1px solid #ffffff9c;padding:5px 7px;font-size:7px;line-height:1.4;position:absolute;bottom:16px;right:17px;transform:rotate(-7deg)}.cover-open{width:28px;height:28px;color:var(--ink);opacity:0;background:#f4f0e5;border-radius:50%;place-items:center;transition:all .18s;display:grid;position:absolute;top:15px;right:16px;transform:translate(-4px,4px)}.project-cover:hover .cover-open,.project-cover:focus-visible .cover-open{opacity:1;transform:none}.project-meta{justify-content:space-between;align-items:center;margin-top:16px;display:flex}.project-meta>div{align-items:center;gap:10px;display:flex}.project-meta strong{color:var(--ink);font-family:var(--serif);font-size:18px;font-weight:400}.project-meta>span,.project-index{color:#777f77;font:8px var(--mono)}.project-type{color:#777f77;margin:8px 0 0 27px;font-size:7px}.approach-section{background:#dce0d4;grid-template-columns:1fr 1fr;min-height:570px;display:grid}.approach-image{background:#263733;min-height:460px;position:relative;overflow:hidden}.approach-image img{filter:brightness(.67)saturate(.62);object-position:center}.approach-image span{color:#fff;font:8px var(--mono);position:absolute;bottom:24px;left:28px}.approach-copy{flex-direction:column;justify-content:center;align-items:flex-start;padding:64px 11%;display:flex}.approach-copy h2{margin:50px 0 23px}.approach-copy h2 em{color:#58725d}.approach-copy>p{color:#59615b;max-width:400px;margin:0 0 15px;font-size:12px;line-height:1.75}.dark-link{color:var(--ink);border-bottom:1px solid #778278;align-items:center;gap:12px;margin-top:16px;padding-bottom:6px;font-size:10px;font-weight:700;text-decoration:none;display:inline-flex}.dark-link:hover{color:#a74631;border-color:#a74631}.services-section{background:#f7f6f0}.services-layout{grid-template-columns:.9fr 1.3fr;gap:9%;margin-top:40px;display:grid}.services-layout h2{align-self:start;position:sticky;top:30px}.service-list article{border-top:1px solid #d9dcd3;grid-template-columns:34px 1fr 18px;align-items:start;gap:15px;padding:22px 0;display:grid}.service-list article:last-child{border-bottom:1px solid #d9dcd3}.service-list article>span{color:#8a9288;padding-top:4px;font-size:8px}.service-list h3{color:var(--ink);font-family:var(--serif);margin:0 0 8px;font-size:20px;font-weight:400}.service-list p{color:#737a72;max-width:420px;margin:0;font-size:11px;line-height:1.7}.service-list article>svg{color:#80897f;margin-top:3px}.about-band{background:var(--forest);color:#f1f1e8;padding:78px 9.2% 48px}.about-label{color:#c8d0c0;font-size:8px}.about-band blockquote{max-width:900px;font-family:var(--serif);margin:35px 0 58px;font-size:44px;font-weight:400;line-height:1.18}.about-signoff{color:#d3dbcf;justify-content:space-between;align-items:center;gap:20px;font-size:8px;display:flex}.about-signoff>span,.about-signoff a{align-items:center;gap:11px;display:flex}.about-signoff a{color:#f2f0e7;text-decoration:none}.booking-section{background:#edeee6;grid-template-columns:.8fr 1.2fr;gap:8%;display:grid}.booking-intro h2{margin:57px 0 23px}.booking-intro h2 em{color:#dc654b}.booking-intro>p{color:#656d65;max-width:335px;font-size:12px;line-height:1.75}.booking-note{color:#687166;font:9px var(--mono);align-items:center;gap:9px;margin-top:34px;display:flex}.booking-note svg{color:#c2553b}.booking-form-wrap{align-self:center}.booking-form{flex-direction:column;gap:16px;display:flex}.booking-form label{color:#667066;font:8px var(--mono);flex-direction:column;gap:7px;display:flex}.form-row{grid-template-columns:1fr 1fr;gap:14px;display:grid}.booking-form input,.booking-form select,.booking-form textarea{width:100%;min-width:0;color:var(--ink);outline-offset:3px;background:0 0;border:0;border-bottom:1px solid #c5cbc0;border-radius:0;padding:10px 0;font:11px Avenir Next,Helvetica Neue,sans-serif}.booking-form textarea{resize:vertical;min-height:76px}.booking-form input::placeholder,.booking-form textarea::placeholder{color:#999f96}.booking-form select{appearance:none;background-image:linear-gradient(45deg,#0000 50%,#626b62 50%),linear-gradient(135deg,#626b62 50%,#0000 50%);background-position:calc(100% - 5px) 17px,100% 17px;background-repeat:no-repeat;background-size:5px 5px,5px 5px}.button-dark{background:var(--ink);color:#fff;justify-content:space-between;align-self:flex-start;min-width:190px;margin-top:3px}.button-dark:hover{background:#365042}.form-privacy{color:#828980;margin:-6px 0 0;font-size:9px}.draft-ready{background:#e5eadf;border:1px solid #a8b89f;gap:12px;margin-top:22px;padding:16px;display:flex}.draft-check{color:#fff;background:#365042;border-radius:50%;flex:none;place-items:center;width:26px;height:26px;display:grid}.draft-ready strong{color:var(--ink);font-size:12px}.draft-ready p{color:#687368;margin:5px 0 7px;font-size:10px}.draft-ready a{color:#365042;align-items:center;gap:5px;font-size:10px;font-weight:700;display:inline-flex}.draft-ready small{color:#80887c;margin-top:9px;font-size:8px;display:block}.draft-ready code{font-family:var(--mono)}.site-footer{background:var(--ink);color:#d7ddd3;grid-template-columns:1fr 1fr auto;align-items:center;gap:16px;padding:25px 5.3% 18px;display:grid}.footer-wordmark{color:#f3f3eb}.footer-wordmark i{color:#a8b5a6}.site-footer>span,.footer-top{font-size:7px}.footer-top{color:#d7ddd3;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.image-credit{color:#9ea99e;border-top:1px solid #ffffff24;grid-column:1/-1;padding-top:13px;font-size:7px;line-height:1.6}.image-credit a{color:#d7ddd3}.modal-backdrop{z-index:20;background:#101816b8;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.project-dialog{background:var(--paper);width:min(100%,520px);padding:48px;position:relative;box-shadow:0 20px 60px #0004}.dialog-close{border:1px solid var(--line);cursor:pointer;background:0 0;place-items:center;width:34px;height:34px;display:grid;position:absolute;top:14px;right:14px}.dialog-kicker{color:#9b583f;font-size:8px}.project-dialog h2{font:42px var(--serif);margin:20px 0 12px}.project-dialog p{color:#636d65;font-size:12px;line-height:1.8}.dialog-credit{color:#617064;align-items:center;gap:9px;margin:24px 0;font-size:10px;display:flex}.dialog-credit svg{color:var(--orange);flex:none}@media (width<=850px){.site-header{padding:0 24px}.hero{height:min(700px,100svh - 160px)}.hero-content{padding-left:8%;padding-right:8%}.hero-specialties{left:8%}.page-section{padding:82px 7%}.approach-copy{padding:48px 9%}.about-band{padding-left:7%;padding-right:7%}}@media (width<=640px){.site-header{height:64px;padding:0 17px}.site-nav{border-top:1px solid var(--line);background:var(--paper);flex-direction:column;gap:0;margin:0;padding:9px 18px 14px;display:none;position:absolute;top:64px;left:0;right:0}.site-nav.is-open{display:flex}.site-nav a{border-bottom:1px solid var(--line);padding:13px 0}.site-nav a:last-child{border-bottom:0}.header-booking{margin-left:auto;padding:9px 10px;font-size:9px}.menu-toggle{display:grid}.hero{height:min(690px,100svh - 150px);min-height:560px}.hero-photo{object-position:57% center}.hero-content{justify-content:center;padding:40px 25px 100px}.hero h1{font-size:69px}.hero-eyebrow{flex-wrap:wrap;gap:7px;max-width:290px;font-size:7px}.hero-copy{max-width:280px;font-size:14px}.hero-actions{flex-direction:column;align-items:flex-start;gap:17px}.hero-specialties{gap:8px;font-size:6px;bottom:23px;left:25px;right:20px}.hero-caption{max-width:230px;font-size:6px;bottom:50px;right:18px}.hero-index{display:none}.intro-band{grid-template-columns:1fr 34px;gap:8px 18px;min-height:150px;padding:25px}.intro-band>p{grid-column:1/2;font-size:8px}.intro-band>span{grid-column:1/2;font-size:17px}.intro-band>a{grid-area:1/2/3;width:32px;height:32px}.page-section{padding:66px 23px}.section-topline{align-items:flex-start;font-size:7px}.sample-note{text-align:right;max-width:155px}.work-heading{flex-direction:column;align-items:flex-start;gap:13px;margin:22px 0 28px}.work-heading h2,.approach-copy h2,.services-layout h2,.booking-intro h2{font-size:44px}.work-heading>p{max-width:290px;font-size:11px}.project-grid{grid-template-columns:1fr;gap:32px}.project-cover{aspect-ratio:1/.78}.cover-title{font-size:32px}.cover-open{opacity:1;transform:none}.approach-section{grid-template-columns:1fr}.approach-image{min-height:300px}.approach-copy{padding:48px 23px 58px}.approach-copy h2{margin:36px 0 20px}.services-layout{grid-template-columns:1fr;gap:35px;margin-top:30px}.services-layout h2{position:static}.service-list article{grid-template-columns:25px 1fr 16px;gap:10px;padding:18px 0}.about-band{padding:54px 23px 31px}.about-band blockquote{margin:27px 0 40px;font-size:32px}.about-signoff{flex-direction:column;align-items:flex-start;gap:18px;font-size:7px}.booking-section{grid-template-columns:1fr;gap:38px}.booking-intro h2{margin:38px 0 16px}.booking-note{margin-top:22px}.booking-form-wrap{padding-top:5px}.booking-form{gap:15px}.form-row{grid-template-columns:1fr;gap:15px}.booking-form label{font-size:7px}.site-footer{grid-template-columns:1fr auto;gap:14px;padding:21px 22px 16px}.site-footer>span{grid-area:2/1/auto/-1}.footer-top{grid-area:1/2}.image-credit{grid-column:1/-1;font-size:6px}.project-dialog{padding:42px 24px 26px}.project-dialog h2{font-size:34px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
