:root{font-family:var(--site-font,"Instrument Sans", Arial, sans-serif);color:var(--text-primary,#111);font-synthesis:none;--line:#d8d8d2;--pad:15px;background:#f8f8f5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0}button,a{color:inherit;font:inherit}a{text-decoration:none}button{border:0}img{max-width:100%;display:block}p,h1,h2,h3{margin:0}.header{border-bottom:1px solid var(--line);height:46px;padding:0 var(--pad);z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#f8f8f5f0;justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.brand{align-items:center;display:inline-flex}.brand-mark{width:40px;max-width:none;height:30px;display:block}.nav{gap:34px;font-size:14px;display:flex}.nav a,.text-link{border-bottom:1px solid #0000;transition:border-color .15s cubic-bezier(.215,.61,.355,1)}.nav a:hover,.text-link:hover{border-color:currentColor}.menu-button{cursor:pointer;background:0 0;display:none}.nav-spacer{height:225px}.nav-spacer.compact{height:46px}.hero{border-bottom:1px solid var(--line);align-items:flex-end;min-height:385px;padding:15px;display:flex}.hero p{letter-spacing:-.065em;max-width:1180px;font-size:clamp(48px,7.1vw,92px);font-weight:500;line-height:.96}.work,.stats,.service-section,.awards-section{padding:20px var(--pad) 50px}.section-heading{justify-content:space-between;align-items:baseline;padding-bottom:90px;display:flex}.section-heading h1,.service-section>h2,.awards-section>h2,.other-projects h2{font-size:16px;font-weight:500}.section-heading span{color:var(--text-muted,#676762);text-transform:uppercase;font-size:13px}.project-card{border-bottom:1px solid var(--line);margin-bottom:10px;padding:0 0 10px}.image-strip{cursor:pointer;background:0 0;width:100%;padding:0;display:block;overflow:hidden}.image-track{will-change:transform;gap:20px;width:max-content;animation:55s linear infinite image-marquee;display:flex}.image-group{gap:20px;display:flex}.image-strip img{aspect-ratio:1.035;object-fit:cover;width:calc(33.3333vw - 23.3333px);transition:opacity .3s cubic-bezier(.215,.61,.355,1)}.image-strip img:hover{opacity:.8}@keyframes image-marquee{to{transform:translate(calc(-50% - 10px))}}.project-copy{grid-template-columns:2fr 1fr;min-height:156px;padding:20px 0;display:grid}.project-title{grid-template-columns:70px 1fr;font-size:16px;display:grid}.project-title strong{font-weight:600}.project-body{flex-direction:column;justify-content:space-between;max-width:330px;font-size:14px;line-height:1.4;display:flex}.text-link{cursor:pointer;background:0 0;align-self:flex-start;padding:0}.link-arrow{transition:transform .744s cubic-bezier(.18,1.45,.35,1);display:inline-block}.text-link:hover .link-arrow{transform:translate(6px)}.stats{border-top:1px solid var(--line);padding-top:80px}.stats h2{letter-spacing:-.055em;max-width:1100px;font-size:clamp(42px,6vw,78px);font-weight:500;line-height:.98}.stats-grid{grid-template-columns:repeat(3,1fr);gap:1px;margin-top:130px;display:grid}.stats-grid>div{border-left:1px solid var(--line);min-height:190px;padding:0 20px}.stats-grid>div:first-child{border-left:0;padding-left:0}.stats-grid strong{letter-spacing:-.07em;font-size:clamp(70px,9vw,116px);font-weight:500}.stats-grid p{max-width:210px;font-size:13px}.contact-strip{border-top:1px solid var(--line);letter-spacing:-.035em;margin:0 var(--pad);justify-content:space-between;align-items:center;padding:26px 0;font-size:clamp(27px,3.4vw,44px);display:flex}.contact-strip:hover .arrow{transform:rotate(45deg)}.arrow{transition:transform .25s cubic-bezier(.215,.61,.355,1)}.footer{color:var(--text-inverse,#f8f8f5);padding:30px var(--pad) 15px;background:#111}.footer-lead{grid-template-columns:1fr 2fr;gap:40px;min-height:300px;display:grid}.footer-lead .brand-mark{filter:invert();width:auto;height:34px}.footer-lead p{letter-spacing:-.045em;max-width:770px;font-size:clamp(32px,4.4vw,56px);line-height:1}.footer-grid{border-top:1px solid #41413e;grid-template-columns:repeat(3,1fr);padding:20px 0 60px;font-size:14px;display:grid}.footer-grid span{color:var(--text-footer-muted,#898985);text-transform:uppercase;margin-bottom:18px;font-size:11px;display:block}.footer-grid p{line-height:1.5}.footer-grid a:hover,.footer-grid p span:hover{opacity:.5}.footer-bottom{text-transform:uppercase;border-top:1px solid #41413e;justify-content:space-between;padding-top:12px;font-size:11px;display:flex}.about-intro{border-bottom:1px solid var(--line);min-height:520px;padding:15px}.about-intro h1{letter-spacing:-.06em;max-width:1190px;font-size:clamp(47px,7vw,90px);font-weight:500;line-height:.96}.service-section,.awards-section{border-bottom:1px solid var(--line);padding-top:70px}.service-grid{grid-template-columns:repeat(4,1fr);margin-top:100px;display:grid}.service-grid>div{border-left:1px solid var(--line);min-height:270px;padding:0 20px}.service-grid>div:first-child{border-left:0;padding-left:0}.service-grid h3{text-transform:uppercase;font-size:13px;font-weight:600}.service-grid ul{margin:38px 0 0;padding:0;font-size:14px;line-height:1.55;list-style:none}.service-grid li{padding:2px 0}.awards-section>div{margin-top:80px}.award{border-top:1px solid var(--line);grid-template-columns:1fr 80px 30px;padding:18px 0;font-size:18px;display:grid}.case-intro{grid-template-columns:1fr 2fr 1fr;gap:15px;padding:15px 15px 80px;display:grid}.case-intro>span{text-transform:uppercase;font-size:13px}.case-intro h1{letter-spacing:-.065em;grid-column:2/4;font-size:clamp(54px,8vw,104px);font-weight:500;line-height:.9}.case-summary{grid-column:2;margin-top:40px;font-size:20px;line-height:1.25}.case-tags span{display:inline}.case-tags{grid-column:3;margin-top:40px;font-size:13px;line-height:1.5}.case-gallery{grid-template-columns:1fr 1fr;gap:15px;padding:0 15px 100px;display:grid}.case-gallery img{object-fit:cover;width:100%;height:70vw;max-height:850px}.case-gallery img:nth-child(3n){grid-column:1/3;height:65vw}.other-projects{border-top:1px solid var(--line);margin:0 15px;padding:25px 0 80px}.other-projects h2{margin-bottom:60px}.other-projects button{border-top:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;grid-template-columns:1fr 1fr 30px;width:100%;padding:18px 0;display:grid}.other-projects button span:last-child{transition:opacity .3s cubic-bezier(.215,.61,.355,1)}.other-projects button:hover span:last-child{opacity:.5}.header .brand{animation:.45s cubic-bezier(.645,.045,.355,1) 15ms both logo-enter}@keyframes logo-enter{0%{opacity:0;transform:translate(-50px)}}.motion-ready [data-appear]{opacity:0;transition:opacity .45s cubic-bezier(.215,.61,.355,1) .15s,transform .45s cubic-bezier(.215,.61,.355,1) .15s;transform:translateY(28px)}.motion-ready [data-appear][data-appear-delay="200"]{transition-delay:.2s}.motion-ready [data-appear][data-appear-fast]{transition-duration:.15s}.motion-ready [data-appear].is-visible{opacity:1;transform:translateY(0)}.contact-intro{border-bottom:1px solid var(--line);min-height:430px;padding:15px var(--pad) 70px;grid-template-columns:1fr 2fr 1fr;gap:20px;display:grid}.contact-intro>span,.contact-details>span,.auth-card>span{text-transform:uppercase;font-size:12px}.contact-intro h1{letter-spacing:-.06em;grid-column:2/4;font-size:clamp(52px,7vw,92px);font-weight:500;line-height:.94}.contact-intro p{grid-column:2;max-width:440px;font-size:18px;line-height:1.35}.contact-layout{padding:70px var(--pad) 120px;grid-template-columns:1fr 3fr;display:grid}.contact-details{flex-direction:column;gap:8px;font-size:14px;display:flex}.contact-details>span{color:var(--text-muted,#676762);margin-bottom:20px}.contact-details a:hover{opacity:.55}.contact-form,.admin-field-grid{grid-template-columns:1fr 1fr;gap:34px 18px;display:grid}.contact-form label,.auth-card label,.admin-field-grid label{flex-direction:column;gap:9px;display:flex}.contact-form label>span,.auth-card label>span,.admin-field-grid label>span{color:var(--text-muted,#676762);text-transform:uppercase;font-size:11px}.contact-form input,.contact-form select,.contact-form textarea,.auth-card input,.admin-field-grid input,.admin-field-grid textarea,.inquiry select{color:var(--text-primary,#111);font:inherit;background:0 0;border:0;border-bottom:1px solid #9f9f99;border-radius:0;outline:none;width:100%;padding:9px 0}.contact-form textarea,.admin-field-grid textarea{resize:vertical}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus,.auth-card input:focus,.admin-field-grid input:focus,.admin-field-grid textarea:focus{border-color:#111}.full{grid-column:1/-1}.form-trap{position:absolute;left:-10000px}.form-actions,.admin-actions{justify-content:flex-end;align-items:center;gap:18px;display:flex}.form-error,.form-message{color:#a12d26;font-size:13px}.submit-button,.danger-button{color:var(--text-inverse,#f8f8f5);cursor:pointer;background:#111;border:1px solid #111;min-width:145px;padding:13px 18px}.submit-button:disabled,.danger-button:disabled{cursor:wait;opacity:.5}.danger-button{color:#a12d26;background:0 0;min-width:0}.save-status{color:var(--text-muted,#676762);margin-right:auto;font-size:13px}.save-status.is-saved{color:#1f6b3a}.save-status.is-error{color:#a12d26}.form-success{min-height:360px;display:block}.form-success h2{letter-spacing:-.055em;margin:45px 0 90px;font-size:clamp(42px,6vw,76px);font-weight:500;line-height:.95}.auth-page{min-height:100vh;padding:80px var(--pad);justify-content:center;align-items:center;display:flex}.auth-card{flex-direction:column;gap:24px;width:100%;max-width:430px;display:flex}.auth-card h1{letter-spacing:-.055em;margin-bottom:30px;font-size:64px;font-weight:500}.auth-card .text-link{align-self:flex-start}.page-loader{justify-content:center;align-items:center;min-height:100vh;display:flex}.admin-page{background:#efefeb;min-height:100vh}.admin-header{color:var(--text-inverse,#f8f8f5);height:54px;padding:0 var(--pad);background:#111;justify-content:space-between;align-items:center;display:flex}.admin-header button{color:inherit;cursor:pointer;background:0 0}.admin-tabs{border-bottom:1px solid var(--line);padding:22px var(--pad) 0;gap:30px;display:flex}.admin-tabs button{cursor:pointer;text-transform:capitalize;background:0 0;padding:0 0 15px}.admin-tabs button.active{border-bottom:2px solid #111}.cms-setup{padding:20px var(--pad);background:#fff1b9;justify-content:space-between;align-items:center;gap:24px;display:flex}.cms-setup p{margin-top:3px;font-size:13px}.admin-content{max-width:1200px;padding:60px var(--pad) 120px;margin:0 auto}.admin-content h2{letter-spacing:-.04em;margin-bottom:45px;font-size:42px;font-weight:500}.content-admin-sections{flex-direction:column;gap:80px;display:flex}.font-picker{border-bottom:1px solid var(--line);padding-bottom:70px}.font-picker-heading{justify-content:space-between;align-items:flex-end;margin-bottom:35px;display:flex}.font-picker-heading h2{margin-bottom:8px}.font-picker-heading p{color:var(--text-muted,#676762);font-size:13px}.font-picker-layout{grid-template-columns:minmax(280px,1fr) 2fr;gap:35px;display:grid}.font-search-panel label{flex-direction:column;gap:8px;display:flex}.font-search-panel label>span,.font-preview-panel>span{color:var(--text-muted,#676762);text-transform:uppercase;font-size:11px}.font-search-panel input{border:1px solid var(--line);font:inherit;background:#f8f8f5;border-radius:0;outline:none;width:100%;padding:12px}.font-search-panel input:focus{border-color:#111}.font-results{border:1px solid var(--line);background:#f8f8f5;border-top:0;max-height:330px;overflow-y:auto}.font-results button{border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;width:100%;padding:10px 12px;display:flex}.font-results button:last-child{border-bottom:0}.font-results button:hover,.font-results button.is-selected{background:#dff1d8}.font-results small{color:var(--text-muted,#676762);text-transform:uppercase;font-size:10px}.font-results>p{color:var(--text-muted,#676762);padding:14px 12px;font-size:13px}.font-result-count{color:var(--text-muted,#676762);margin-top:8px;font-size:11px;line-height:1.4;display:block}.font-preview-panel{border:1px solid var(--line);background:#f8f8f5;flex-direction:column;min-height:390px;padding:18px;display:flex}.font-preview-panel>p{letter-spacing:-.05em;margin:auto 0;font-size:clamp(38px,5vw,68px);font-weight:500;line-height:.96}.font-license-note{background:#fff1b9;margin-top:18px;padding:12px;font-size:12px;line-height:1.45}.font-license-note code{overflow-wrap:anywhere}.font-picker-message{color:#1f6b3a;margin-top:18px;font-size:13px;display:block}.font-picker-message.is-error{color:#a12d26}.text-color-editor{border-bottom:1px solid var(--line);padding-bottom:70px}.color-editor-heading{justify-content:space-between;align-items:flex-end;margin-bottom:35px;display:flex}.color-editor-heading h2{margin-bottom:8px}.color-editor-heading p,.color-group-row>div:first-child p{color:var(--text-muted,#676762);font-size:13px;line-height:1.4}.color-editor-actions{align-items:center;gap:20px;display:flex}.color-editor-actions .text-link:disabled{cursor:wait;opacity:.5}.color-group-list{border-top:1px solid var(--line)}.color-group-row{border-bottom:1px solid var(--line);grid-template-columns:minmax(220px,1fr) minmax(300px,1fr) 42px;align-items:center;gap:24px;padding:18px 0;display:grid}.color-group-row>div:first-child{flex-direction:column;gap:4px;display:flex}.color-control{grid-template-columns:48px 1fr;align-items:stretch;display:grid}.color-control input[type=color]{border:1px solid var(--line);cursor:pointer;background:0 0;width:48px;height:44px;padding:3px}.color-control input[type=text]{border:1px solid var(--line);color:var(--text-primary,#111);background:#f8f8f5;border-left:0;border-radius:0;outline:none;width:100%;padding:0 12px;font:13px Consolas,monospace}.color-control input[type=text]:focus{border-color:#111}.color-control input[type=text].is-invalid{border-color:#a12d26}.color-swatch{border:1px solid var(--line);width:42px;height:42px}.color-editor-message{color:#1f6b3a;margin-top:18px;font-size:13px;display:block}.color-editor-message.is-error{color:#a12d26}.image-library-heading{justify-content:space-between;align-items:flex-end;margin-bottom:24px;display:flex}.image-library-heading h2{margin-bottom:8px}.image-library-heading p,.drop-help{color:var(--text-muted,#676762);font-size:13px;line-height:1.4}.library-upload-button{color:var(--text-inverse,#f8f8f5);cursor:pointer;background:#111;padding:13px 18px;display:inline-flex}.library-upload-button.is-busy{cursor:wait;opacity:.5}.library-upload-button input{opacity:0;width:1px;height:1px;position:absolute;overflow:hidden}.library-message{min-height:18px;margin:0 0 22px;font-size:13px;display:block}.image-library-layout{grid-template-columns:minmax(0,2fr) minmax(260px,1fr);align-items:start;gap:35px;display:grid}.repository-panel,.library-projects-panel{min-width:0}.library-section-label{border-bottom:1px solid var(--line);color:var(--text-muted,#676762);text-transform:uppercase;justify-content:space-between;margin-bottom:12px;padding-bottom:10px;font-size:11px;display:flex}.repository-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.library-image{cursor:grab;background:#e2e2dd;width:100%;padding:0;display:block;position:relative}.library-image:active{cursor:grabbing}.library-image img{aspect-ratio:1;object-fit:cover;width:100%}.library-image:after{content:"";pointer-events:none;border:3px solid #0000;position:absolute;inset:0}.library-image:hover:after{border-color:#11111159}.library-image.is-selected:after{border-color:#111}.drop-help{margin:0 0 18px}.library-project-list{flex-direction:column;display:flex}.project-image-drop{border-bottom:1px solid var(--line);cursor:pointer;text-align:left;background:0 0;justify-content:space-between;align-items:center;width:100%;min-height:70px;padding:12px 0;transition:background .15s,padding .15s;display:flex}.project-image-drop:first-child{border-top:1px solid var(--line)}.project-image-drop>span:first-child{flex-direction:column;gap:4px;display:flex}.project-image-drop small{color:var(--text-muted,#676762);font-size:11px}.project-image-drop>span:last-child{color:var(--text-muted,#676762);font-size:12px}.project-image-drop:hover,.project-image-drop.is-over{background:#dff1d8;padding-left:10px;padding-right:10px}.project-image-drop:disabled{cursor:wait;opacity:.55}.settings-editor>div:first-child{grid-template-columns:1fr 1fr;display:grid}.settings-editor>div:first-child p{max-width:430px;line-height:1.4}.settings-editor>textarea{color:#d8f7d1;resize:vertical;background:#161616;border:0;width:100%;min-height:560px;margin:35px 0 20px;padding:18px;font:13px/1.55 Consolas,monospace}.project-list{flex-direction:column;gap:18px;display:flex}.project-editor{border:1px solid var(--line);background:#f8f8f5;padding:22px}.project-editor-heading{justify-content:space-between;align-items:center;margin-bottom:35px;display:flex}.check-label{align-items:center;gap:7px;font-size:13px;display:flex}.image-order-editor>span{color:var(--text-muted,#676762);text-transform:uppercase;margin-bottom:10px;font-size:11px;display:block}.image-thumbnail-list{gap:10px;margin:0;padding:0 0 8px;list-style:none;display:flex;overflow-x:auto}.image-thumbnail-list li{cursor:grab;flex:0 0 150px;transition:opacity .15s,outline-color .15s;position:relative}.image-thumbnail-list li.is-dragging{cursor:grabbing;opacity:.45}.image-thumbnail-list li.is-drop-target{outline-offset:2px;outline:2px solid #111}.image-thumbnail-list img{aspect-ratio:1.035;object-fit:cover;pointer-events:none;width:100%;display:block}.image-position{color:var(--text-inverse,#f8f8f5);pointer-events:none;background:#111;border-radius:50%;justify-content:center;align-items:center;width:22px;height:22px;font-size:11px;display:flex;position:absolute;top:7px;left:7px}.image-thumbnail-list .remove-image-button{color:var(--text-inverse,#f8f8f5);cursor:pointer;opacity:0;background:#111111d1;border:0;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;font-size:16px;line-height:1;transition:opacity .15s;display:flex;position:absolute;top:7px;right:7px}.image-thumbnail-list li:hover .remove-image-button,.image-thumbnail-list li:focus-within .remove-image-button{opacity:1}.image-thumbnail-list .remove-image-button:disabled{cursor:default;opacity:.2}@media (hover:none){.image-thumbnail-list .remove-image-button{opacity:1}}.empty-image-list{color:var(--text-muted,#676762);padding:20px 0;font-size:13px}.project-editor .admin-actions{border-top:1px solid var(--line);margin-top:25px;padding-top:18px}.project-editor .admin-actions .save-status{margin-right:auto}.inbox{flex-direction:column;display:flex}.inquiry{border-top:1px solid var(--line);grid-template-columns:1fr 2fr 1fr;gap:30px;padding:22px 0;display:grid}.inquiry>div{flex-direction:column;gap:6px;font-size:13px;display:flex}.inquiry>div span,.inquiry time{color:var(--text-muted,#676762)}.inquiry>p{white-space:pre-wrap;line-height:1.45}.inquiry select{margin-top:12px}@media (width<=760px){:root{--pad:10px}.header{height:53px}.menu-button{display:block}.nav{border-bottom:1px solid var(--line);background:#f8f8f5;flex-direction:column;gap:10px;padding:30px 10px 60px;font-size:36px;display:none;position:absolute;top:53px;left:0;right:0}.nav.open{display:flex}.nav-spacer{height:225px}.nav-spacer.compact{height:53px}.hero{min-height:320px;padding:10px}.hero p,.about-intro h1{font-size:48px}.section-heading{padding-bottom:55px}.section-heading span{display:none}.image-track,.image-group{gap:8px}.image-track{animation-duration:38s}.image-strip img{width:83vw}.project-copy{grid-template-columns:1fr;gap:35px;min-height:250px}.project-title{grid-template-columns:65px 1fr}.project-body{margin-left:65px}.stats{padding-top:55px}.stats h2{font-size:44px}.stats-grid{grid-template-columns:1fr;margin-top:80px}.stats-grid>div,.stats-grid>div:first-child{border-left:0;border-top:1px solid var(--line);min-height:155px;padding:15px 0}.stats-grid strong{font-size:84px}.contact-strip{align-items:flex-end;gap:20px;font-size:28px}.footer-lead{grid-template-columns:1fr;min-height:380px}.footer-lead p{font-size:36px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-grid>div:last-child{grid-column:1/3}.about-intro{min-height:490px}.service-grid{grid-template-columns:1fr 1fr}.service-grid>div{border-left:0;border-top:1px solid var(--line);min-height:240px;padding:16px 10px 20px 0}.award{grid-template-columns:1fr 50px 20px;font-size:15px}.case-intro{grid-template-columns:1fr;padding-bottom:70px}.case-intro h1,.case-summary,.case-tags{grid-column:1}.case-intro h1{margin-top:35px;font-size:60px}.case-summary,.case-tags{margin-top:15px}.case-gallery{grid-template-columns:1fr;gap:10px}.case-gallery img,.case-gallery img:nth-child(3n){grid-column:1;height:115vw}.contact-intro{grid-template-columns:1fr;min-height:430px}.contact-intro h1,.contact-intro p{grid-column:1}.contact-intro h1{margin-top:45px;font-size:52px}.contact-layout{grid-template-columns:1fr;gap:70px}.contact-form,.admin-field-grid{grid-template-columns:1fr}.full{grid-column:1}.admin-header strong{display:none}.cms-setup{flex-direction:column;align-items:flex-start}.admin-tabs{gap:20px}.font-picker-heading{flex-direction:column;align-items:flex-start;gap:20px}.font-picker-layout{grid-template-columns:1fr}.font-preview-panel{min-height:320px}.color-editor-heading{flex-direction:column;align-items:flex-start;gap:20px}.color-editor-actions{justify-content:space-between;width:100%}.color-group-row{grid-template-columns:1fr 42px;gap:12px}.color-control{grid-area:2/1}.color-swatch{grid-area:2/2}.image-library-heading{flex-direction:column;align-items:flex-start;gap:20px}.image-library-layout{grid-template-columns:1fr}.repository-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.settings-editor>div:first-child,.inquiry{grid-template-columns:1fr}.inquiry{gap:18px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}.image-track,.header .brand{animation:none!important}[data-appear]{opacity:1!important;transform:none!important}}
