@import url('https://use.typekit.net/qmq2xkl.css');
:root{--paper:#f2eee7;--paper2:#e9e2d8;--ink:#343331;--muted:#77736e;--orange:#b95f31;--line:#cfc6ba;--font:'articulat-cf','Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font);font-weight:300;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}img{display:block;width:100%;height:100%;object-fit:cover}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:1rem;top:1rem;z-index:99;background:var(--paper);padding:1rem}.site-header{height:96px;padding:0 5.2vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:relative;z-index:5;background:var(--paper)}.brand{display:block;width:min(178px,25vw)}.brand img{width:100%;height:auto}.primary-nav{display:flex;gap:clamp(22px,3.6vw,56px);align-items:center;font-size:11px;letter-spacing:.1em}.primary-nav a{transition:color .2s}.primary-nav a:hover,.primary-nav a[aria-current=page],.text-link:hover{color:var(--orange)}.primary-nav b{color:var(--orange);font-weight:400;margin-left:5px}.menu-toggle{display:none}.eyebrow{font-size:9px;letter-spacing:.19em;text-transform:uppercase;color:var(--muted);margin:0 0 25px}.eyebrow-line{display:inline-block;width:30px;height:1px;background:var(--orange);vertical-align:middle;margin-right:12px}.eyebrow-place{margin-left:24px}.orange{color:var(--orange)}h1,h2{font-weight:200;letter-spacing:-.055em;line-height:.98;margin:0}h1 em,h2 em{font-style:normal;color:var(--orange)}.section-pad{padding:115px 10.5vw}.section-marker{display:flex;gap:18px;align-items:center;font-size:9px;letter-spacing:.17em;color:var(--muted)}.section-marker span:first-child{color:var(--orange)}.section-marker:after{content:"";height:1px;width:38px;background:var(--orange);order:-1}.text-link{display:inline-block;font-size:10px;letter-spacing:.1em;text-transform:uppercase;border-bottom:1px solid var(--orange);padding-bottom:9px}.text-link span{color:var(--orange);margin-left:14px}.site-footer{padding:30px 5.2vw;display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--line);background:var(--paper2)}.footer-brand{width:175px}.footer-brand img{height:auto}.site-footer p,.site-footer>span,.back-top{font-size:9px;letter-spacing:.1em;color:var(--muted)}
/* Home */.home-hero{padding:0 5.2vw 95px;position:relative}.hero-image-wrap{height:min(57vw,650px);min-height:390px;position:relative;margin-left:10.5%;overflow:hidden;background:var(--paper2)}.hero-image{object-position:center 54%;animation:reveal 1.1s ease both}.image-index{position:absolute;bottom:0;left:0;background:var(--paper);padding:13px 18px;display:flex;gap:22px;font-size:9px;letter-spacing:.16em}.image-index span:first-child{color:var(--orange)}.hero-copy{position:relative;margin-top:-95px;width:57%;background:var(--paper);padding:37px 45px 0 0}.hero h1{font-size:clamp(68px,9vw,132px)}.hero-bottom{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-top:32px}.intro{font-size:15px;line-height:1.65;max-width:340px;color:#5f5b56;margin:0}.hero-side-note{position:absolute;right:1.8%;bottom:130px;writing-mode:vertical-rl;font-size:8px;letter-spacing:.18em;color:var(--muted)}.hero-side-note span{color:var(--orange);padding:10px 0}.home-note,.home-project,.projects-next{display:grid;grid-template-columns:1fr 2.2fr;gap:30px}.home-note{background:var(--paper2)}.home-note h2,.home-project h2,.projects-next h2{font-size:clamp(48px,6vw,82px);max-width:800px}.body-copy{font-size:14px;line-height:1.8;color:#625e58;max-width:520px;margin:28px 0}.home-note .text-link{margin-top:8px}.home-project{display:block}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:start;margin-bottom:48px}.section-heading .section-marker{grid-column:1/-1;margin-bottom:64px}.section-heading .eyebrow{margin:0}.section-heading h2{grid-column:2;grid-row:2}.home-project-image{height:clamp(340px,50vw,620px);display:block;position:relative;overflow:hidden}.home-project-image img{transition:transform .7s}.home-project-image:hover img{transform:scale(1.02)}.home-project-image span{position:absolute;bottom:0;right:0;background:var(--paper);padding:17px 22px;font-size:9px;letter-spacing:.14em}.home-project-image b{color:var(--orange);font-size:15px;margin-left:22px}.home-project-caption{display:flex;justify-content:space-between;padding:18px 0;border-bottom:1px solid var(--line)}.home-project-caption strong{font-size:18px;font-weight:300}.home-project-caption span{font-size:10px;color:var(--muted)}.home-contact{background:var(--ink);color:var(--paper);display:flex;align-items:end;justify-content:space-between;gap:25px}.home-contact .eyebrow{color:#c0b9af}.home-contact h2{font-size:clamp(45px,6vw,80px)}.home-contact h2 em{color:#d17a49}.home-contact .text-link{flex:none}
/* Internal page introductions */.page-intro{display:grid;grid-template-columns:1fr 2.2fr;gap:30px;padding-top:110px;padding-bottom:105px}.page-intro h1{font-size:clamp(58px,7vw,100px)}.page-intro .lead{font-size:16px;line-height:1.75;color:#625e58;max-width:620px;margin:35px 0 0}.studio-story{background:var(--paper2);display:grid;grid-template-columns:1.1fr .9fr;gap:9%;align-items:center}.story-image{height:470px}.story-copy h2{font-size:clamp(48px,5vw,72px);margin-bottom:30px}.story-copy p:not(.eyebrow){font-size:14px;line-height:1.85;color:#625e58;margin:0 0 20px}.services{display:grid;grid-template-columns:1fr 2.2fr;gap:30px}.services-main{max-width:820px}.services h2{font-size:clamp(48px,6vw,82px);margin-bottom:58px}.service-list{border-top:1px solid var(--line)}.service-list a{display:grid;grid-template-columns:60px 1fr 30px;align-items:center;min-height:72px;border-bottom:1px solid var(--line);transition:padding .25s,color .25s}.service-list a:hover{padding-left:10px;color:var(--orange)}.service-list span{font-size:9px;color:var(--orange);letter-spacing:.12em}.service-list strong{font-size:16px;font-weight:300}.service-list i{font-style:normal;color:var(--orange);font-size:16px}.service-footnote{font-size:12px;line-height:1.8;color:var(--muted);max-width:470px;margin:30px 0 0 auto}.studio-cta{background:var(--paper2)}.studio-cta h2{font-size:clamp(48px,6vw,80px);margin-bottom:35px}
/* Projects */.projects-intro{padding-bottom:80px}.project-detail{padding-top:40px}.project-title-row{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:end;margin-bottom:38px}.project-number{font-size:9px;letter-spacing:.16em;color:var(--orange)}.project-title-row h2{font-size:clamp(44px,5vw,68px);margin:12px 0 7px}.project-title-row>div>p{font-size:12px;color:var(--muted);margin:0}.project-summary{font-size:14px;line-height:1.8;color:#625e58;max-width:460px;margin:0}.project-main-image{height:clamp(360px,54vw,680px);margin:0}.project-gallery{display:grid;grid-template-columns:1fr 1fr;gap:5%;margin:75px 0 0 20%}.project-gallery figure{margin:0}.project-gallery figure:last-child{grid-column:1/-1;width:70%;margin-top:25px}.project-gallery figure:nth-child(1),.project-gallery figure:nth-child(2){height:280px}.project-gallery figure:last-child{height:300px}.project-gallery figcaption{font-size:8px;letter-spacing:.16em;color:var(--muted);padding-top:13px}.project-gallery figcaption span{color:var(--orange);margin-right:14px}.project-note{font-size:10px;color:var(--muted);margin:32px 0 0 20%;max-width:520px;line-height:1.6}.projects-next{background:var(--paper2)}
/* Contact */.contact-page{min-height:680px;display:grid;grid-template-columns:1fr 2.2fr;gap:30px;background:var(--ink);color:var(--paper)}.contact-page .section-marker{color:#c0b9af;align-self:start}.contact-content .eyebrow{color:#c0b9af}.contact-content h1{font-size:clamp(65px,9vw,125px);margin-bottom:35px}.contact-content h1 em{color:#d17a49}.contact-content .lead{font-size:15px;line-height:1.75;color:#d0c9bf;max-width:530px;margin:0 0 48px}.contact-email{font-size:clamp(17px,2.2vw,25px);border-bottom:1px solid #9c8d80;padding-bottom:14px;display:inline-flex;gap:30px}.contact-email span{color:#d17a49}.contact-meta{display:flex;gap:80px;margin-top:100px}.meta-label{font-size:8px;letter-spacing:.17em;color:#d17a49}.contact-meta p{font-size:12px;color:#d0c9bf;line-height:1.6}.contact-bottom{display:flex;align-items:center;gap:35px}.contact-rule{height:1px;background:var(--orange);width:100px}.contact-bottom>p:last-child{font-size:10px;line-height:1.8;letter-spacing:.08em;color:var(--muted)}
@keyframes reveal{from{opacity:.7;transform:scale(1.02)}to{opacity:1;transform:scale(1)}}
@media(max-width:800px){.site-header{height:78px;padding:0 6vw}.brand{width:150px}.menu-toggle{display:flex;align-items:center;gap:10px;background:none;border:0;color:var(--ink);font:inherit;font-size:11px;letter-spacing:.1em}.menu-toggle i{display:block;width:20px;height:1px;background:var(--orange);position:relative}.menu-toggle i:after{content:"";position:absolute;top:6px;left:0;width:14px;height:1px;background:var(--orange)}.primary-nav{display:none;position:absolute;top:77px;left:0;right:0;padding:25px 6vw 30px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start;gap:22px}.primary-nav.open{display:flex}.section-pad{padding:82px 7vw}.home-hero{padding:0 6vw 75px}.hero-image-wrap{margin-left:0;height:65vw;min-height:300px}.hero-copy{margin-top:-45px;width:90%;padding:25px 20px 0 0}.hero h1{font-size:clamp(62px,14vw,100px)}.hero-bottom{display:block;margin-top:22px}.hero-bottom .text-link{display:inline-block;margin-top:24px}.hero-side-note{display:none}.home-note,.home-project,.projects-next,.page-intro,.services,.contact-page{grid-template-columns:1fr;gap:45px}.home-note h2,.home-project h2,.projects-next h2{font-size:clamp(45px,11vw,70px)}.section-heading{grid-template-columns:1fr;gap:25px}.section-heading .section-marker{margin-bottom:25px}.section-heading h2{grid-column:1;grid-row:auto}.home-contact{display:block}.home-contact h2{margin-bottom:30px}.page-intro{padding-top:80px;padding-bottom:70px}.page-intro h1{font-size:clamp(52px,11vw,78px)}.studio-story{grid-template-columns:1fr;gap:45px}.story-image{height:60vw;min-height:260px}.services h2{font-size:clamp(45px,11vw,70px)}.project-title-row{grid-template-columns:1fr;gap:25px}.project-main-image{height:65vw;min-height:300px}.project-gallery{margin:50px 0 0;gap:5%}.project-gallery figure:nth-child(1),.project-gallery figure:nth-child(2){height:30vw;min-height:150px}.project-gallery figure:last-child{height:50vw;width:100%}.project-note{margin:25px 0 0}.contact-page{min-height:700px}.contact-content h1{font-size:clamp(60px,13vw,95px)}.contact-meta{gap:35px;margin-top:75px}.contact-bottom{flex-wrap:wrap}.site-footer{padding:28px 6vw;flex-wrap:wrap}.footer-brand{width:150px}.site-footer p{order:3;width:100%;margin:0}.site-footer>span{margin-left:auto}}
@media(max-width:480px){.brand{width:165px}.eyebrow{font-size:8px}.eyebrow-place{display:block;margin:12px 0 0 42px}.hero-copy{width:96%}.hero h1{font-size:65px}.home-project-caption{display:block}.home-project-caption span{display:block;margin-top:7px}.service-list a{grid-template-columns:40px 1fr 20px}.service-list strong{font-size:14px}.project-gallery{grid-template-columns:1fr;gap:35px}.project-gallery figure:last-child{grid-column:auto;margin-top:0}.project-gallery figure:nth-child(1),.project-gallery figure:nth-child(2){height:58vw}.project-gallery figure:last-child{height:58vw}.contact-meta{display:block}.contact-meta>div+div{margin-top:20px}.contact-email{font-size:15px}.back-top{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Studio practice and team */
.practice-story{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%;background:var(--paper2)}
.practice-heading h2,.contact-form-intro h2,.thank-you h1{font-size:clamp(48px,6vw,82px)}
.practice-copy{max-width:690px}
.practice-copy p{font-size:14px;line-height:1.85;color:#625e58;margin:0 0 19px}
.practice-copy strong{font-weight:500;color:var(--ink)}
.team-section{background:var(--paper)}
.team-heading{grid-template-columns:1fr 2.2fr;gap:24px;margin-bottom:58px}
.team-heading .section-marker{grid-column:1/-1;margin-bottom:28px}
.team-heading .eyebrow{grid-column:1;grid-row:2;margin:0}
.team-heading h2{grid-column:2;grid-row:2;font-size:clamp(48px,6vw,82px)}
.team-grid{display:grid;grid-template-columns:1fr 1fr;gap:9%}
.team-member{min-width:0}
.team-portrait{height:clamp(260px,31vw,430px);overflow:hidden;background:var(--paper2);margin-bottom:28px}
.team-portrait img{object-fit:cover;object-position:center 36%;filter:grayscale(100%)}
.team-name-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;border-bottom:1px solid var(--line);padding-bottom:12px}
.team-name-row h3{font-size:25px;font-weight:300;letter-spacing:-.035em;margin:0}
.team-name-row span{font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--orange)}
.team-credentials{font-size:10px;letter-spacing:.06em;color:var(--orange);margin:14px 0 20px}
.team-member p:not(.team-credentials){font-size:13px;line-height:1.8;color:#625e58;margin:0 0 17px}
.contact-form-section{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;background:var(--paper2)}
.contact-form-intro h2{margin:0 0 24px}
.contact-form-intro>p:last-child{font-size:14px;line-height:1.7;color:#625e58;max-width:320px}
.contact-form{display:flex;flex-direction:column;align-items:stretch}
.contact-form label{font-size:11px;letter-spacing:.08em;margin:0 0 9px;color:var(--ink)}
.contact-form label span{color:var(--orange)}
.contact-form input,.contact-form textarea{width:100%;border:0;border-bottom:1px solid #bdb3a7;background:transparent;border-radius:0;padding:13px 0 15px;margin:0 0 28px;color:var(--ink);font:300 14px var(--font);outline-offset:3px}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#918980}
.contact-form textarea{resize:vertical;min-height:140px}
.form-submit{align-self:flex-start;display:inline-flex;align-items:center;gap:40px;border:0;border-bottom:1px solid var(--orange);background:transparent;padding:0 0 12px;color:var(--ink);font:300 11px var(--font);letter-spacing:.12em;text-transform:uppercase;cursor:pointer}
.form-submit span{color:var(--orange);font-size:17px}
.form-submit:hover{color:var(--orange)}
.form-note{font-size:10px;line-height:1.6;color:var(--muted);margin-top:18px}
.form-honeypot{position:absolute!important;left:-5000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.thank-you{min-height:65vh;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.thank-you h1{margin:0 0 28px}
.thank-you .lead{font-size:15px;line-height:1.7;color:#625e58;margin:0 0 32px}
@media(max-width:800px){.practice-story,.contact-form-section{grid-template-columns:1fr;gap:42px}.team-heading{grid-template-columns:1fr;gap:22px}.team-heading .eyebrow,.team-heading h2{grid-column:1;grid-row:auto}.team-heading .section-marker{margin-bottom:8px}.team-grid{grid-template-columns:1fr;gap:65px}.team-portrait{height:75vw;max-height:440px}.practice-heading h2,.contact-form-intro h2{font-size:clamp(45px,11vw,70px)}}

/* Additional editorial project case studies */
.project-story{display:grid;grid-template-columns:1fr 1fr;gap:10%;margin:0 0 55px 20%;max-width:900px}.project-story h3{font-size:clamp(34px,4vw,54px);line-height:1.06;font-weight:300;margin:12px 0}.project-story h3 em{color:var(--orange);font-style:normal}.project-story p{font-size:13px;line-height:1.85;color:#625e58;margin:0 0 17px}.project-board{margin:55px 0 0 10%;width:90%}.project-board img{width:100%;height:auto;object-fit:contain;background:#fff}.project-board figcaption,.zine-grid figcaption{font-size:8px;letter-spacing:.16em;color:var(--muted);padding-top:13px}.project-board figcaption span,.zine-grid figcaption span{color:var(--orange);margin-right:14px}.window-farm-project,.zine-project{border-top:1px solid var(--line)}.zine-grid{display:grid;grid-template-columns:1fr 1fr;gap:42px 5%;margin:45px 0 0 10%;width:90%}.zine-grid figure{margin:0}.zine-grid img{width:100%;height:auto;display:block;background:#f2eee7}.zine-project .project-note{margin-left:10%}
@media(max-width:800px){.project-story{grid-template-columns:1fr;gap:20px;margin:0 0 40px}.project-board{margin:38px 0 0;width:100%}.zine-grid{margin:35px 0 0;width:100%;gap:28px 4%}}
@media(max-width:480px){.zine-grid{grid-template-columns:1fr}.project-story h3{font-size:42px}}

/* Homepage logo and refined editorial scale */
.brand-home{width:min(178px,25vw)}
.footer-brand-home{width:175px}
.team-portrait img{filter:none}
.hero h1 .hero-first-line{font-size:1em}
.practice-heading h2{font-size:clamp(45px,5.1vw,70px)}
.practice-heading h2 .positive-impact{white-space:nowrap}
.window-farm-project{display:grid;grid-template-columns:1fr 1fr;column-gap:4%;align-items:start}
.window-farm-project .window-farm-title{grid-column:1/-1;grid-template-columns:1fr;gap:0;margin-bottom:8px}
.window-farm-project .project-board{width:100%;margin:28px 0 0;min-width:0}
.window-farm-project .project-board img{width:100%;height:250px;object-fit:contain;background:#fff}
@media(max-width:800px){.brand-home{width:150px}.footer-brand-home{width:150px}.window-farm-project{grid-template-columns:1fr}.window-farm-project .window-farm-title{grid-column:1}.window-farm-project .project-board{margin-top:28px}.window-farm-project .project-board img{height:auto;max-height:300px}.practice-heading h2{font-size:clamp(42px,8vw,62px)}.practice-heading h2 .positive-impact{white-space:normal}}
@media(max-width:480px){.brand-home{width:150px}}

/* Homepage headline scale refinement */
.hero-copy h1{font-size:clamp(68px,8.2vw,116px);line-height:.94}
.hero-copy h1 .hero-accent-line{white-space:nowrap;color:var(--orange);font-style:normal}
@media(max-width:800px){.hero-copy h1{font-size:clamp(54px,10.5vw,78px)}}
@media(max-width:480px){.hero-copy h1{font-size:clamp(44px,10.5vw,58px)}}
