@font-face{font-family:Jost;src:url('/assets/fonts/jost-light.ttf') format('truetype');font-style:normal;font-weight:300;font-display:swap}
@font-face{font-family:Jost;src:url('/assets/fonts/jost-regular.ttf') format('truetype');font-style:normal;font-weight:400;font-display:swap}
:root{--paper:#fff;--ink:#242422;--muted:#686863;--line:#d8d8d3;--gutter:clamp(24px,4.2vw,88px);--space:clamp(90px,10vw,180px);--ease:cubic-bezier(.22,.61,.36,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:32px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Jost,Arial,sans-serif;font-size:1.125rem;font-weight:400;line-height:1.55;-webkit-font-smoothing:antialiased}
::selection{background:#e0e0d9;color:var(--ink)}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-family:inherit;font-weight:300;line-height:1.1;letter-spacing:-.035em;font-style:normal;text-wrap:balance;overflow-wrap:break-word}h1{font-size:clamp(3.375rem,6.7vw,6.5rem)}h2{font-size:clamp(2.5rem,4.5vw,4.5rem)}h3{font-size:clamp(1.625rem,2.3vw,2.25rem);font-weight:400;letter-spacing:-.02em}
a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;border-radius:0}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button:disabled{cursor:default}a:focus-visible,button:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--ink);outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--ink);outline-offset:5px}img{display:block;width:100%;height:auto}[hidden]{display:none!important}
.skip{position:fixed;top:12px;left:12px;transform:translateY(-180%);background:#fff;padding:12px 20px;z-index:100}.skip:focus{transform:none}
.site-header{height:136px;padding:0 var(--gutter);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:30px}.brand{display:flex;flex-direction:column;align-items:center;width:max-content;line-height:1;flex-shrink:0}.brand-name{font-size:2.625rem;letter-spacing:.17em;font-weight:300;padding-left:.17em}.brand-studio{font-size:0.8125rem;letter-spacing:.36em;padding-left:.36em;margin-top:10px}.desktop-nav{display:flex;gap:clamp(24px,3.2vw,52px)}
.desktop-nav a,.header-inquire,.menu-toggle,.menu-close{font-size:0.9375rem;text-transform:uppercase;letter-spacing:.13em;line-height:1.4}.desktop-nav a,.header-inquire{position:relative;padding:12px 0;width:max-content}.header-inquire{justify-self:end}.desktop-nav a:after,.header-inquire:after{content:'';position:absolute;left:0;right:0;bottom:6px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .4s var(--ease)}.desktop-nav a:hover:after,.desktop-nav [aria-current=page]:after,.header-inquire:hover:after{transform:scaleX(1)}.menu-toggle{display:none}
.mobile-menu{border:0;padding:0;color:var(--ink);background:#fff;max-width:none;max-height:none;width:100%;height:100%;height:100dvh;margin:0;overscroll-behavior:contain}.mobile-menu::backdrop{background:#fff}.mobile-menu[open]{display:flex;flex-direction:column;animation:menu-in .4s var(--ease)}.menu-top{height:106px;min-height:106px;display:flex;align-items:center;justify-content:space-between;padding:0 var(--gutter)}.menu-close{display:flex;gap:18px;align-items:center;border:0;background:none;padding:12px 0 12px 12px;min-height:48px}.mobile-menu nav{display:flex;flex-direction:column;gap:24px;margin:auto 0;padding:50px var(--gutter)}.mobile-menu nav>a{font-size:clamp(2.875rem,11vw,4.625rem);font-weight:300;line-height:1.2;letter-spacing:-.03em;width:max-content;max-width:100%}.mobile-menu nav>[aria-current=page]{text-decoration:underline;text-underline-offset:12px;text-decoration-thickness:1px}.menu-bottom{padding:24px var(--gutter) 42px;font-size:1.0625rem;line-height:1.8;overflow-wrap:anywhere}.menu-bottom p{color:var(--muted)}
.menu-icon,.close-icon{display:block;width:26px;height:18px;position:relative;flex-shrink:0}.menu-icon:before,.menu-icon:after,.close-icon:before,.close-icon:after{content:'';position:absolute;left:0;width:100%;height:1px;background:currentColor}.menu-icon:before{top:5px}.menu-icon:after{top:13px}.close-icon:before{top:9px;transform:rotate(45deg)}.close-icon:after{top:9px;transform:rotate(-45deg)}
.hero{margin:0 var(--gutter)}.hero-stage{height:calc(100vh - 210px);height:calc(100svh - 210px);min-height:460px;max-height:1000px;position:relative;overflow:hidden;isolation:isolate;touch-action:pan-y}.hero-slide{position:absolute;inset:0;opacity:0;overflow:hidden;background:var(--paper);z-index:0;transition:none;will-change:opacity;pointer-events:none}.hero-slide.is-outgoing{opacity:1;z-index:1;transition:none}.hero-slide.is-active{opacity:1;pointer-events:auto;z-index:2;transition:opacity 2.2s cubic-bezier(.42,0,.58,1)}.hero-slide picture{display:block;width:100%;height:100%}.hero-slide img{width:100%;height:100%;object-fit:cover;transform:none;transition:none;animation:none}.hero-diptych{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hero-diptych img{object-position:center 52%}
.hero-caption{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px}.hero-project{display:flex;align-items:baseline;gap:32px;font-size:1.0625rem;line-height:1.5;padding:14px 0}.hero-project .line-link{font-size:0.9375rem}.slideshow-controls{display:flex;align-items:center;gap:18px}.slide-picker{display:flex;gap:6px}.slide-picker button{position:relative;min-width:42px;min-height:48px;padding:10px 5px;background:none;border:0;color:var(--muted);font-size:0.875rem;letter-spacing:.05em}.slide-picker button:after{content:'';position:absolute;left:8px;right:8px;bottom:9px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .5s var(--ease)}.slide-picker button[aria-pressed=true]{color:var(--ink)}.slide-picker button[aria-pressed=true]:after{transform:scaleX(1)}.slideshow-toggle{display:grid;place-items:center;width:44px;height:48px;border:0;background:none}.pause-icon{width:10px;height:12px;display:block;border-left:1px solid currentColor;border-right:1px solid currentColor}.slideshow-toggle.is-paused .pause-icon{width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:9px solid currentColor;border-right:0}
.section-space{margin:var(--space) var(--gutter)}.eyebrow{font-size:0.875rem;line-height:1.6;letter-spacing:.16em;text-transform:uppercase;font-weight:400}.line-link{display:inline-block;position:relative;width:max-content;max-width:100%;padding:5px 0 7px;font-size:1.0625rem;line-height:1.5;border-bottom:1px solid var(--ink)}.line-link:after{content:'';position:absolute;bottom:-1px;left:0;width:100%;height:1px;background:white;transform:scaleX(0);transform-origin:right;transition:transform .45s var(--ease)}.line-link:hover:after{transform:scaleX(.85)}
.studio-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);column-gap:5vw;align-items:start}.studio-intro>.eyebrow{padding-top:17px}.studio-copy h1{font-size:clamp(3.375rem,6vw,6rem)}.studio-note{margin:42px 0 0 31%;max-width:540px}.studio-note p{font-size:clamp(1.3125rem,1.8vw,1.6875rem);line-height:1.6;color:var(--muted)}.studio-note .line-link{margin-top:28px}.section-heading{display:flex;align-items:baseline;justify-content:space-between;gap:28px;margin-bottom:58px}.section-heading h2{font-size:clamp(2.5rem,4vw,4rem)}.section-heading>p{font-size:1.125rem;color:var(--muted)}
.work-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.85fr);column-gap:8%;row-gap:100px;align-items:start}.work-card:nth-child(even){margin-top:150px}.card-image{overflow:hidden;position:relative}.card-image img{aspect-ratio:1.13;object-fit:cover;transition:transform 1.2s var(--ease)}.photo-card .card-image img{aspect-ratio:.85;object-position:center}.work-card:hover img{transform:scale(1.035)}.image-hover-label{position:absolute;left:24px;bottom:24px;background:white;padding:12px 20px;font-size:0.9375rem;transform:translateY(12px);opacity:0;transition:opacity .5s ease,transform .5s var(--ease)}.work-card:hover .image-hover-label,.work-card:focus-visible .image-hover-label{opacity:1;transform:none}.card-caption{padding-top:22px}.card-caption p{color:var(--muted);font-size:0.9375rem;margin-top:10px;line-height:1.6}.caption-divider{display:inline-block;height:10px;width:1px;background:var(--line);margin:0 10px}.work-card h3{line-height:1.2}
.featured-project{display:block}.featured-images{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.85fr);gap:8%;align-items:start}.featured-images>.card-image:last-child{margin-top:150px}.featured-images img{aspect-ratio:.85;object-fit:cover}.featured-images>.card-image:last-child img{aspect-ratio:.95}.featured-project:hover .image-hover-label,.featured-project:focus-visible .image-hover-label{opacity:1;transform:none}.featured-project .card-caption{padding-top:28px}.design-studies{border-top:1px solid var(--line);padding-top:70px}
.home-services{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12%;align-items:center}.service-photo{width:100%;max-width:530px}.service-photo img{aspect-ratio:.8;object-fit:cover}.service-copy>.eyebrow{margin-bottom:30px}.service-list{margin:35px 0 28px}.service-list>a{display:block;padding:20px 0;border-bottom:1px solid var(--line);font-size:1.375rem;line-height:1.45;transition:padding-left .4s var(--ease)}.service-list>a:hover{padding-left:7px}.trade-link{display:block;font-size:1rem;color:var(--muted);margin-top:26px;line-height:1.5;width:max-content;max-width:100%}.trade-link:hover{text-decoration:underline;text-underline-offset:5px}
.site-footer{margin:0 var(--gutter);border-top:1px solid var(--line)}.footer-invitation{padding:90px 0 100px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,3fr);align-items:baseline;column-gap:5vw}.footer-title{font-size:clamp(4.625rem,10vw,10.5rem);font-weight:300;line-height:1.1;letter-spacing:-.045em;width:max-content;max-width:100%;transition:color .4s ease}.footer-title:hover{color:#77776d}.footer-invitation>.line-link{grid-column:2;margin-top:20px}.footer-bottom{border-top:1px solid var(--line);padding:38px 0 45px;display:flex;justify-content:space-between;align-items:center;gap:30px;font-size:0.9375rem;line-height:1.7}.footer-bottom .brand-name{font-size:1.9375rem}.footer-bottom .brand-studio{font-size:0.75rem;margin-top:7px}.footer-bottom>p{color:var(--muted)}.footer-bottom>a:not(.brand){overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.page-heading{margin:68px var(--gutter) 85px}.page-heading .eyebrow{margin-bottom:24px}.portfolio-section{margin:0 var(--gutter) var(--space)}.portfolio-grid{row-gap:70px}.portfolio-grid>.work-card:nth-child(even){margin-top:160px}.portfolio-grid>.work-card:nth-child(3n) .card-image img{aspect-ratio:.95}
.services-intro{margin:36px var(--gutter) 0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9%;align-items:center}.services-intro .eyebrow{margin-bottom:30px}.services-intro h1{font-size:clamp(4.5rem,8vw,7.75rem)}.intro-description{font-size:1.3125rem;line-height:1.6;color:var(--muted);margin-top:32px;max-width:430px}.services-intro-image{overflow:hidden}.services-intro-image img{aspect-ratio:1;object-fit:cover;animation:opening-image 1.8s var(--ease) both}.package{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9%;border-top:1px solid var(--line);padding:66px 0 74px;scroll-margin-top:24px}.package-title{align-self:start}.package-title h2{font-size:clamp(2.625rem,4.5vw,4.5rem)}.package-body>p{font-size:1.5rem;line-height:1.4}.package-body ul{list-style:none;margin:25px 0 26px;padding:0;color:var(--muted);font-size:1.125rem;line-height:1.6}.package-body li{padding:6px 0}.scope-note{border-top:1px solid var(--line);padding-top:24px;color:var(--muted);font-size:1rem}
.package-process{margin-top:30px}.package-process summary{font-size:1.0625rem}.package-process ol{list-style:decimal;padding-left:24px;margin:25px 0 0;font-size:1rem;color:var(--muted);line-height:1.65}.package-process li{padding:0 0 20px 6px}.package-process li:last-child{padding-bottom:0}.package-process li>span{display:block;color:var(--ink);font-size:1.125rem;margin-bottom:5px}
.examples-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.examples-grid img{aspect-ratio:1.12;object-fit:cover}.examples-grid .contain{object-fit:contain}.examples-grid figcaption{font-size:1.1875rem;margin-top:20px}.trade{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9%;border-top:1px solid var(--line);padding-top:76px}.trade .eyebrow{margin-bottom:24px}.trade-description{padding-top:40px;align-self:center}.trade-description>p{font-size:1.5rem;line-height:1.6;max-width:560px}.trade-description>.line-link{margin-top:30px}.terms{margin:0 var(--gutter) var(--space)}details{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0}summary{list-style:none;cursor:pointer;font-size:1.25rem;display:flex;justify-content:space-between;align-items:center;gap:30px;min-height:30px}summary::-webkit-details-marker{display:none}.details-icon{position:relative;width:20px;height:20px;flex-shrink:0}.details-icon:before,.details-icon:after{content:'';position:absolute;top:10px;left:0;width:20px;height:1px;background:currentColor;transition:transform .35s ease}.details-icon:after{transform:rotate(90deg)}details[open] .details-icon:after{transform:rotate(0)}details>p{max-width:840px;font-size:1rem;line-height:1.7;margin-top:25px;color:var(--muted)}
.contact-page{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10%;margin:70px var(--gutter) var(--space);align-items:start}.contact-intro .eyebrow{margin-bottom:26px}.contact-intro h1{font-size:clamp(5.25rem,9vw,8.75rem)}.contact-intro>p:not(.eyebrow){font-size:1.3125rem;margin-top:30px}.contact-email{font-size:clamp(1.1875rem,2vw,1.75rem);display:inline-block;margin-top:20px;overflow-wrap:anywhere;border-bottom:1px solid var(--ink);padding-bottom:5px}.contact-intro>.contact-location{font-size:1.0625rem!important;color:var(--muted);margin-top:23px!important}form{padding-top:36px;min-width:0}.form-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}label{display:block;font-size:1.125rem;margin-bottom:32px}input,select,textarea{display:block;width:100%;font-size:1.125rem;line-height:1.5;background:#fff;border:0;border-bottom:1px solid #aaa9a2;padding:15px 0;border-radius:0;margin-top:6px;min-height:54px}select{cursor:pointer;padding-right:20px}textarea{resize:vertical}::placeholder{color:#77776f;opacity:1}.button{display:inline-block;width:max-content;max-width:100%;min-height:54px;padding:15px 32px;border:1px solid var(--ink);background:var(--ink);color:white;font-size:1rem;letter-spacing:.025em;text-align:center;transition:background .35s ease,color .35s ease}.button:hover{background:white;color:var(--ink)}.form-note{font-size:0.875rem;color:var(--muted);margin-top:16px;line-height:1.6}.save-inquiry{background:none;border:0;border-bottom:1px solid var(--line);padding:8px 0;font-size:0.9375rem;margin-top:24px}#form-status{font-size:1rem;margin-top:22px;line-height:1.6}
.project-heading{margin:54px var(--gutter) 55px}.project-heading>.line-link{margin-bottom:36px}.project-heading h1{max-width:1100px}.project-heading>.eyebrow{margin-top:28px}.project-hero{margin:0 var(--gutter)}.project-hero img{max-height:950px;object-fit:contain}.project-cover{margin:0 var(--gutter);height:calc(100vh - 190px);height:calc(100svh - 190px);min-height:460px;max-height:1050px;overflow:hidden}.project-cover picture{display:block;width:100%;height:100%}.project-cover img{width:100%;height:100%;object-fit:cover;animation:opening-image 2s var(--ease) both}.photo-project .project-heading{margin-top:85px}.project-description{margin:0 var(--gutter) 80px;padding-left:35%;font-size:1.5rem;line-height:1.6;color:var(--muted)}.render-project .project-description{margin-top:55px}.project-gallery{margin:0 var(--gutter) var(--space);display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px 7%;align-items:start}.photo-gallery>figure:nth-child(even){margin-top:130px}.photo-gallery img{width:100%;height:auto}.render-gallery{gap:45px}.render-gallery>figure:first-child:nth-last-child(odd){grid-column:1/-1}.render-gallery img{width:100%;height:auto}.drawing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;padding-top:35px}.drawing-grid img{height:420px;object-fit:contain}.drawing-grid figcaption{font-size:1.125rem;margin-top:20px}.credit{font-size:0.875rem;line-height:1.7;color:var(--muted);margin-top:30px}.board-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6%}.board-grid img{height:auto;object-fit:contain}
.reveal-ready{opacity:0;transform:translateY(28px);transition:opacity 1s var(--ease),transform 1.2s var(--ease)}.reveal-ready.is-visible{opacity:1;transform:none}
@keyframes opening-image{from{transform:scale(1.045);opacity:.45}to{transform:scale(1);opacity:1}}@keyframes menu-in{from{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:none}}
@media(min-width:1850px){:root{--gutter:5vw}.hero-stage{max-height:1200px}.section-space{max-width:1700px;margin-left:auto;margin-right:auto}.portfolio-section{max-width:1700px;margin-left:auto;margin-right:auto}}
@media(max-width:1100px){
 .site-header{height:118px}.desktop-nav{gap:24px}.desktop-nav a,.header-inquire{font-size:0.875rem}.brand-name{font-size:2.3125rem}.hero-stage{height:calc(100svh - 190px);min-height:430px}.studio-intro{grid-template-columns:minmax(0,1fr) minmax(0,4fr);gap:4%}.studio-note{margin-left:12%}.work-grid{column-gap:6%}.work-card:nth-child(even){margin-top:110px}.featured-images{gap:6%}.featured-images>.card-image:last-child{margin-top:110px}.home-services{gap:8%}.service-list>a{font-size:1.25rem}.service-copy h2{font-size:3.125rem}.footer-invitation{grid-template-columns:minmax(0,1fr) minmax(0,4fr);column-gap:4%}.footer-bottom{gap:24px;font-size:0.875rem}.services-intro{gap:6%}.services-intro .eyebrow{font-size:0.8125rem}.services-intro h1{font-size:5.375rem}.intro-description{font-size:1.1875rem}.package{gap:6%}.package-title h2{font-size:3.375rem}.package-body>p{font-size:1.4375rem}.examples-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:44px 32px}.examples-grid img{aspect-ratio:1.4}.contact-page{gap:7%}.form-pair{grid-template-columns:1fr;gap:0}.project-description{padding-left:25%}
}
@media(max-width:700px){
 :root{--gutter:24px;--space:90px}body{font-size:1.125rem;line-height:1.55}h1{font-size:3.375rem}h2{font-size:2.875rem}h3{font-size:1.8125rem}
 .site-header{height:98px;grid-template-columns:1fr auto;gap:16px}.site-header>.brand{grid-column:1;grid-row:1;align-items:flex-start}.brand-name{font-size:2rem;letter-spacing:.16em;padding-left:0}.brand-studio{font-size:0.75rem;letter-spacing:.32em;margin-top:7px;padding-left:1px}.desktop-nav,.header-inquire{display:none}.menu-toggle{display:flex;align-items:center;gap:15px;min-height:48px;background:none;border:0;padding:12px 0 12px 12px;font-size:0.875rem;letter-spacing:.1em}.site-header:has(.menu-toggle[hidden]){height:auto;min-height:98px;grid-template-columns:1fr auto;padding-top:24px;padding-bottom:24px}.site-header:has(.menu-toggle[hidden]) .desktop-nav{display:flex;grid-column:2;grid-row:1;gap:18px}.site-header:has(.menu-toggle[hidden]) .desktop-nav a{font-size:0.8125rem;letter-spacing:.03em}
 .hero{margin:0}.hero-stage{height:calc(100vh - 180px);height:calc(100svh - 180px);min-height:460px;max-height:840px}.hero-slide img{object-position:center}.hero-diptych{grid-template-columns:1fr;gap:0}.desktop-photo{display:none}.hero-caption{padding:10px var(--gutter) 0;gap:10px;min-height:82px;align-items:center}.hero-project{display:block;padding:0;font-size:0.9375rem;line-height:1.5}.hero-project>span:first-child{display:block}.hero-project .line-link{font-size:0.875rem;padding:2px 0 4px;margin-top:3px}.slideshow-controls{gap:2px}.slide-picker{gap:0}.slide-picker button{min-width:35px;padding:10px 3px;font-size:0.8125rem}.slide-picker button:after{left:6px;right:6px}.slideshow-toggle{width:32px;min-width:32px}
 .studio-intro{display:block;margin-top:84px}.studio-intro>.eyebrow{padding:0;margin-bottom:26px}.eyebrow{font-size:0.875rem;letter-spacing:.12em}.studio-copy h1{font-size:clamp(2.625rem,10.8vw,4.5rem);line-height:1.12;letter-spacing:-.035em}.studio-note{margin:28px 0 0;max-width:450px}.studio-note p{font-size:1.3125rem;line-height:1.6}.studio-note .line-link{margin-top:23px}.line-link{font-size:1.0625rem}.section-heading{display:block;margin-bottom:35px}.section-heading h2{font-size:2.6875rem}.section-heading>.line-link{margin-top:18px}.section-heading>p{margin-top:17px;font-size:1.125rem}
 .featured-images{display:block}.featured-images>.card-image:last-child{margin-top:35px;margin-left:12%}.featured-images img{aspect-ratio:.8}.featured-project .card-caption{padding-top:24px}.featured-project .card-caption p{max-width:270px}.design-studies{padding-top:45px}
 .work-grid{display:block}.work-card{display:block}.work-card+.work-card{margin-top:54px!important}.card-image img{aspect-ratio:1.05}.photo-card .card-image img{aspect-ratio:.8}.card-caption{padding-top:20px}.card-caption p{font-size:0.9375rem;margin-top:8px}.home-work .work-card:nth-child(even){margin-left:7%}.home-work .work-card:nth-child(even) .card-image img{aspect-ratio:.95}.image-hover-label{display:none}
 .home-services{grid-template-columns:1fr;gap:40px}.service-photo{max-width:none;width:77%}.service-photo img{aspect-ratio:.86}.service-copy>.eyebrow{margin-bottom:22px}.service-copy h2{font-size:3.3125rem}.service-list{margin-top:25px}.service-list>a{font-size:1.375rem;padding:20px 0}.trade-link{font-size:1rem}
 .footer-invitation{display:block;padding:62px 0 65px}.footer-invitation>.eyebrow{margin-bottom:22px}.footer-title{display:block;font-size:clamp(4.125rem,16.5vw,6.875rem);line-height:1.13;letter-spacing:-.04em}.footer-invitation>.line-link{margin-top:18px}.footer-bottom{padding:30px 0 38px;display:grid;grid-template-columns:1fr;gap:25px;justify-items:start;font-size:1rem}.footer-bottom .brand{align-items:flex-start}.footer-bottom .brand-name{font-size:1.875rem}.footer-bottom .brand-studio{font-size:0.75rem;padding:0}
 .page-heading{margin-top:44px;margin-bottom:49px}.page-heading>.eyebrow{margin-bottom:19px}.page-heading h1{font-size:3.5rem}.portfolio-grid>.work-card{margin-top:0}.portfolio-grid>.work-card:nth-child(3n) .card-image img{aspect-ratio:1.05}
 .services-intro{margin-top:34px;grid-template-columns:1fr;gap:38px}.services-intro h1{font-size:4.625rem}.services-intro .eyebrow{font-size:0.875rem;margin-bottom:24px}.intro-description{font-size:1.25rem;margin-top:23px}.services-intro-image{margin-right:calc(-1 * var(--gutter))}.services-intro-image img{aspect-ratio:1.08}.packages{margin-top:66px}.package{grid-template-columns:1fr;gap:28px;padding:35px 0 42px}.package-title h2{font-size:2.9375rem}.package-title h2 br{display:none}.package-body>p{font-size:1.375rem}.package-body ul{font-size:1.125rem;margin:19px 0 21px}.package-body .line-link{font-size:1rem}
 .examples-grid{gap:35px 20px}.examples-grid img{aspect-ratio:1}.examples-grid figcaption{font-size:1.125rem;margin-top:15px}.trade{grid-template-columns:1fr;gap:30px;padding-top:45px}.trade h2{font-size:3.375rem}.trade-description{padding:0}.trade-description>p{font-size:1.375rem}.trade-description>.line-link{margin-top:24px}summary{font-size:1.25rem}details>p{font-size:1.0625rem}.terms{margin-top:0}
 .contact-page{grid-template-columns:1fr;gap:35px;margin-top:38px}.contact-intro h1{font-size:5.625rem;line-height:1.05}.contact-intro h1 br{display:none}.contact-intro>p:not(.eyebrow){font-size:1.375rem}.contact-email{font-size:1.375rem}.contact-intro>.contact-location{font-size:1.0625rem!important}form{padding-top:12px}.form-pair{grid-template-columns:1fr}.button{font-size:1.0625rem;padding:16px 26px}.form-note{font-size:0.9375rem}.save-inquiry{font-size:1rem}
 .project-heading{margin-top:32px;margin-bottom:35px}.project-heading>.line-link{margin-bottom:26px}.project-heading h1{font-size:3rem}.project-heading>.eyebrow{font-size:0.8125rem;margin-top:23px}.project-hero{margin:0}.project-cover{margin:0;height:calc(100svh - 150px);min-height:460px;max-height:800px}.photo-project .project-heading{margin-top:56px}.photo-project .project-heading h1{font-size:3.125rem}.project-description{padding-left:0;font-size:1.3125rem;margin-bottom:44px}.render-project .project-description{margin-top:35px}.project-gallery{grid-template-columns:1fr;gap:35px}.photo-gallery>figure:nth-child(even){margin-top:0;margin-left:12%}.photo-gallery>figure:nth-child(odd){margin-right:0}.render-gallery{margin-left:0;margin-right:0;gap:24px}.drawing-grid{grid-template-columns:1fr;gap:30px}.drawing-grid img{height:auto;max-height:540px}.drawing-grid figcaption{font-size:1.0625rem}.credit{font-size:0.875rem}.board-grid{grid-template-columns:1fr;gap:35px}.material-boards .section-heading h2{font-size:2.6875rem}
}
@media(max-width:370px){:root{--gutter:20px}.hero-caption{gap:5px}.hero-project{font-size:0.875rem}.slide-picker button{min-width:29px}.slideshow-toggle{width:28px;min-width:28px}.slideshow-controls{gap:0}.studio-copy h1{font-size:2.5rem}.studio-note p{font-size:1.25rem}.brand-name{font-size:1.875rem}.section-heading h2{font-size:2.5rem}.package-title h2{font-size:2.625rem}.package-body{padding-left:0}.contact-intro h1{font-size:4.875rem}.contact-email{font-size:1.3125rem}.project-heading h1{font-size:2.6875rem}.photo-project .project-heading h1{font-size:2.875rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.reveal-ready{opacity:1;transform:none}.hero-slide img{transform:none!important}}

/* Final portfolio additions: original visual language, upright Jost type. */
:root{--accent:#542332}.brand-studio{letter-spacing:.19em;padding-left:.19em;font-size:.75rem}.portfolio-index{display:flex;flex-wrap:wrap;gap:14px 30px;margin-top:35px;font-size:1rem}.portfolio-index a{border-bottom:1px solid var(--line);padding:8px 0}.portfolio-index a:hover{border-color:var(--accent);color:var(--accent)}.portfolio-case .card-caption p{max-width:32em}.concept-card .card-image img{object-fit:contain;aspect-ratio:1.1;background:#f6f5f3}.home-concepts .work-card:nth-child(even){margin-top:100px}.project-status{margin-top:14px;color:var(--muted);font-size:1rem}.portfolio-detail .project-description p+p{margin-top:20px;font-size:1.1875rem;line-height:1.7}.portfolio-detail .project-description .collaboration-credit{font-size:1rem;color:var(--accent)}.portfolio-detail figcaption{margin-top:16px;font-size:1rem;color:var(--muted)}.chapter-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7%;align-items:start}.chapter-grid figure:nth-child(even){margin-top:90px}.project-room{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center}.room-copy .eyebrow{margin-bottom:24px}.room-copy>p:last-child{margin-top:28px;font-size:1.25rem;color:var(--muted);max-width:30em}.board-study{display:grid;grid-template-columns:1.4fr 1fr;gap:7%;align-items:center}.case-note{margin:0 var(--gutter);font-size:1rem;color:var(--muted)}.project-next{display:flex;align-items:baseline;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:40px}.project-next>a:last-child{display:flex;flex-direction:column;gap:12px;max-width:70%;font-size:clamp(1.625rem,3vw,2.5rem);font-weight:300;text-align:right}.project-next .eyebrow{font-size:.8125rem;color:var(--accent)}.contact-phone{display:block;width:max-content;margin-top:16px;border-bottom:1px solid var(--line);font-size:1.25rem}.portfolio-detail .render-gallery>figure:only-child{max-width:1250px;width:100%;justify-self:center}.portfolio-detail .project-heading .eyebrow{color:var(--accent)}
@media(max-width:700px){.brand-studio{font-size:.6875rem;letter-spacing:.15em;padding-left:0}.portfolio-index{gap:10px 22px;margin-top:26px}.portfolio-grid>.portfolio-case:nth-child(3n) .card-image img,.concept-card .card-image img{aspect-ratio:auto;max-height:none}.home-concepts .work-card:nth-child(even){margin-top:54px}.portfolio-detail .project-description p+p{font-size:1.125rem}.chapter-grid{grid-template-columns:1fr;gap:30px}.chapter-grid figure:nth-child(even){margin-top:0;margin-left:10%}.project-room{grid-template-columns:1fr;gap:34px}.room-copy>p:last-child{font-size:1.1875rem}.board-study{grid-template-columns:1fr;gap:30px}.board-study figure{margin-left:12%}.project-next{margin-top:65px;margin-bottom:65px;gap:20px}.project-next>a:last-child{font-size:1.5rem;max-width:65%}.project-next>.line-link{font-size:.9375rem}.project-status{font-size:.9375rem}.portfolio-detail .project-cover img{object-position:center}.contact-phone{font-size:1.25rem}}

/* Three service options share the existing package layout. */
.service-index{display:flex;flex-direction:column;align-items:flex-start;gap:10px;margin-top:30px;font-size:1rem}.service-index a{border-bottom:1px solid var(--line);padding:4px 0}.service-index a:hover{color:var(--accent);border-color:var(--accent)}.package-body>.package-detail{font-size:1.1875rem;line-height:1.6;margin:25px 0 14px}.package-body>.package-small{font-size:1rem;line-height:1.65;color:var(--muted);margin:0 0 25px}.legacy-anchor{display:block;scroll-margin-top:32px}.package-title h2{font-size:clamp(2.625rem,4vw,4.15rem)}
@media(max-width:700px){.service-index{font-size:1rem;gap:9px;margin-top:25px}.package-title h2{font-size:2.75rem}.package-body>.package-detail{font-size:1.125rem}.package-body>.package-small{font-size:1rem}.package-title h2 br{display:none}}

.example-secondary{display:block;width:fit-content;margin-top:10px;font-size:.9375rem;line-height:1.5;text-decoration:underline;text-underline-offset:4px}

/* About: a restrained portrait and a personal introduction. */
.header-actions{display:flex;justify-self:end;gap:clamp(20px,2.5vw,40px);align-items:center}.header-actions a{font-size:.9375rem;text-transform:uppercase;letter-spacing:.13em;line-height:1.4;padding:12px 0;white-space:nowrap}.header-actions a:hover,.header-actions [aria-current=page]{text-decoration:underline;text-underline-offset:8px;text-decoration-thickness:1px}
.about-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);grid-template-areas:"heading portrait" "copy portrait";column-gap:9%;row-gap:42px;margin:54px var(--gutter) 0;align-items:start}.about-heading{grid-area:heading;align-self:end}.about-heading .eyebrow{margin-bottom:30px}.about-portrait{grid-area:portrait;width:100%;max-width:470px;justify-self:end}.about-portrait-frame{aspect-ratio:1/1.12;overflow:hidden;background:#f1efeb}.about-portrait img{width:100%;height:100%;object-fit:cover;object-position:center 70%;transform:scale(1.16);transform-origin:center 82%}.about-portrait figcaption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 16px;margin-top:16px;font-size:.9375rem}.about-portrait figcaption span{color:var(--muted)}.about-copy{grid-area:copy;max-width:550px;font-size:clamp(1.125rem,1.6vw,1.3125rem);line-height:1.75}.about-copy p+p{margin-top:24px;color:var(--muted)}.about-links{display:flex;flex-wrap:wrap;gap:18px 32px;margin-top:34px;font-size:1rem}.about-approach{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:9%;border-top:1px solid var(--line);padding-top:64px}.about-approach p{font-size:clamp(1.25rem,1.8vw,1.5rem);line-height:1.7;max-width:560px;align-self:center}
@media(max-width:1000px) and (min-width:701px){.header-actions{gap:18px}.header-actions a{font-size:.8125rem}.desktop-nav{gap:22px}.desktop-nav a{font-size:.8125rem}.site-header{gap:24px}.about-hero{column-gap:7%;row-gap:30px}.about-copy{font-size:1.125rem}.about-heading h1{font-size:clamp(3.5rem,6.7vw,5rem)}}
@media(max-width:700px){.header-actions{display:none}.about-hero{grid-template-columns:1fr;grid-template-areas:"heading" "portrait" "copy";row-gap:32px;margin-top:30px}.about-heading .eyebrow{margin-bottom:24px}.about-portrait{justify-self:start;max-width:410px}.about-portrait-frame{aspect-ratio:1/1.05;max-height:420px}.about-portrait figcaption{font-size:.875rem}.about-copy{font-size:1.125rem;line-height:1.7}.about-approach{grid-template-columns:1fr;gap:30px;padding-top:44px}.about-approach h2 br{display:none}.about-approach p{font-size:1.25rem}.about-links{gap:18px 28px}}
