/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial}}}@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.invisible{visibility:hidden}.visible{visibility:visible}.relative{position:relative}.start{inset-inline-start:var(--spacing)}.hidden{display:none}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}}:root{--ink:#181815;--paper:#f1eee7;--paper-deep:#e6e1d7;--line:#1818152e;--warm-white:#f6f2e9;--serif:"Iowan Old Style", "Baskerville", "Times New Roman", serif;--sans:"Helvetica Neue", "Inter", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--paper)}body{background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;overflow-x:hidden}button,a{color:inherit}button{font:inherit}a{text-decoration:none}img{width:100%;display:block}::selection{color:#fff;background:#6f6659}:focus-visible{outline-offset:5px;outline:1px solid}.scroll-progress{z-index:200;transform-origin:0;background:#d8d0c1;width:100%;height:2px;position:fixed;top:0;left:0}.site-header{z-index:100;color:#fff;grid-template-columns:1fr auto 1fr;align-items:center;width:100%;height:104px;padding:0 clamp(24px,4vw,72px);transition:height .5s cubic-bezier(.22,1,.36,1),background .5s,color .5s,-webkit-backdrop-filter .5s,backdrop-filter .5s;display:grid;position:fixed;top:0;left:0}.site-header.is-compact{height:74px;color:var(--ink);-webkit-backdrop-filter:blur(16px);background:#efebe2e0;border-bottom:1px solid #18181514}.site-header.menu-active{color:var(--warm-white);-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-color:#0000}.brand{width:fit-content;display:block}.brand-logo{width:88px;height:auto;transition:width .5s cubic-bezier(.22,1,.36,1),filter .35s;display:block}.site-header.is-compact .brand-logo{filter:brightness(.14);width:58px}.site-header.menu-active .brand-logo{filter:none}.desktop-nav{align-items:center;gap:clamp(22px,3vw,52px);display:flex}.desktop-nav a{text-transform:uppercase;letter-spacing:.24em;opacity:.78;padding:14px 0;font-size:9px;font-weight:500;transition:opacity .25s;position:relative}.desktop-nav a:after{content:"";transform-origin:100%;background:currentColor;width:100%;height:1px;transition:transform .35s cubic-bezier(.22,1,.36,1);position:absolute;bottom:7px;left:0;transform:scaleX(0)}.desktop-nav a:hover{opacity:1}.desktop-nav a:hover:after{transform-origin:0;transform:scaleX(1)}.header-actions{justify-self:end;align-items:center;gap:32px;display:flex}.language-switch{letter-spacing:.18em;align-items:center;gap:7px;font-size:8px;display:flex}.language-switch button{appearance:none;cursor:pointer;opacity:.45;background:0 0;border:0;padding:8px 0;transition:opacity .2s}.language-switch button.active,.language-switch button:hover{opacity:1}.language-switch span{opacity:.4}.menu-toggle{cursor:pointer;background:0 0;border:0;width:34px;height:34px;display:none;position:relative}.menu-toggle span{background:currentColor;width:26px;height:1px;transition:transform .35s,top .35s;position:absolute;left:4px}.menu-toggle span:first-child{top:12px}.menu-toggle span:last-child{top:21px}.menu-toggle.open span:first-child{top:17px;transform:rotate(45deg)}.menu-toggle.open span:last-child{top:17px;transform:rotate(-45deg)}.mobile-menu{z-index:90;color:var(--warm-white);pointer-events:none;opacity:0;clip-path:inset(0 0 100%);background:#1b1b18;transition:clip-path .7s cubic-bezier(.77,0,.18,1),opacity .25s;position:fixed;inset:0}.mobile-menu.open{opacity:1;pointer-events:auto;clip-path:inset(0)}.mobile-menu-inner{flex-direction:column;min-height:100%;padding:130px 28px 38px;display:flex}.mobile-menu .micro-label{opacity:.45}.mobile-menu nav{margin:auto 0}.mobile-menu nav a{border-bottom:1px solid #ffffff1f;align-items:baseline;gap:16px;padding:12px 0;display:flex}.mobile-menu nav small{opacity:.5;width:24px;font-size:8px}.mobile-menu nav span{font-family:var(--serif);font-size:clamp(35px,10vw,58px)}.mobile-menu-meta{letter-spacing:.09em;opacity:.65;justify-content:space-between;font-size:10px;display:flex}.hero{color:#fff;background:#28251f;min-height:100svh;position:relative;overflow:hidden}.hero-image{object-fit:cover;object-position:center;height:100%;animation:1.6s cubic-bezier(.22,1,.36,1) both hero-arrive;position:absolute;inset:0}.hero-shade{background:linear-gradient(90deg,#100e0b9e 0%,#100e0b30 52%,#100e0b1f 100%),linear-gradient(#0000 55%,#100e0b8c 100%);position:absolute;inset:0}.grain{z-index:1;pointer-events:none;opacity:.12;mix-blend-mode:soft-light;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E");position:absolute;inset:0}.hero-content{z-index:2;align-items:center;width:100%;min-height:100svh;padding:158px clamp(24px,5.7vw,110px) 140px;display:flex;position:relative}.hero-copy{max-width:840px}.micro-label{text-transform:uppercase;letter-spacing:.28em;margin:0;font-size:8px;font-weight:600;line-height:1.5}.hero-kicker{opacity:0;margin-bottom:25px;animation:.9s .28s forwards fade-rise}.hero h1{max-width:900px;font-family:var(--serif);letter-spacing:-.043em;margin:0;font-size:clamp(53px,6.4vw,106px);font-weight:400;line-height:.96}.hero h1 span{opacity:0;animation:1.1s cubic-bezier(.22,1,.36,1) .36s forwards fade-rise;display:block;transform:translateY(40px)}.hero h1 span:last-child{animation-delay:.47s}.hero-body{max-width:430px;font-family:var(--serif);opacity:0;margin:30px 0 0 5px;font-size:16px;line-height:1.55;animation:.9s .65s forwards fade-rise}.hero-bottom{z-index:3;text-transform:uppercase;letter-spacing:.25em;border-top:1px solid #ffffff47;grid-template-columns:1fr auto 1fr;align-items:end;padding-top:22px;font-size:7px;display:grid;position:absolute;bottom:35px;left:clamp(24px,5.7vw,110px);right:clamp(24px,5.7vw,110px)}.hero-bottom>p{opacity:.66;margin:0}.hero-location{justify-self:end}.scroll-cue{align-items:center;gap:16px;width:fit-content;display:flex}.scroll-cue i{border:1px solid #ffffff6b;border-radius:50%;width:30px;height:30px;position:relative}.scroll-cue i:after{content:"";background:#fff;width:1px;height:9px;animation:1.8s ease-in-out infinite scroll-dot;position:absolute;top:8px;left:14px}.section-shell{padding-left:clamp(24px,6vw,115px);padding-right:clamp(24px,6vw,115px)}.intro{grid-template-columns:minmax(0,1.45fr) minmax(300px,.55fr);gap:clamp(70px,10vw,190px);padding-top:clamp(100px,14vw,220px);padding-bottom:clamp(110px,14vw,215px);display:grid}.intro-heading h2,.expertise h2,.process h2{font-family:var(--serif);letter-spacing:-.04em;margin:28px 0 0;font-size:clamp(45px,5vw,82px);font-weight:400;line-height:1.04}.intro-detail{padding-top:41px}.intro-detail>p{font-family:var(--serif);margin:0;font-size:18px;line-height:1.72}.metrics{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:75px;display:grid}.metrics>div{border-top:1px solid var(--line);padding-top:15px}.metrics strong{font-family:var(--serif);font-size:30px;font-weight:400;display:block}.metrics span{text-transform:uppercase;letter-spacing:.15em;margin-top:8px;font-size:7px;line-height:1.5;display:block}.projects-cta-large{background:var(--ink);min-height:112px;color:var(--warm-white);border:1px solid var(--ink);font-family:var(--serif);letter-spacing:-.025em;justify-content:space-between;align-items:center;gap:30px;margin-top:48px;padding:28px 30px;font-size:clamp(28px,2.4vw,40px);line-height:1;transition:background .26s,color .26s;display:flex}.projects-cta-large .arrow{flex:none;width:18px}.projects-cta-large:hover,.projects-cta-large:focus-visible{color:var(--ink);background:0 0}.projects-page{background:var(--paper);min-height:100vh}.projects-header{color:var(--ink)}.projects-intro{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:end;gap:clamp(60px,10vw,180px);min-height:600px;padding-top:190px;padding-bottom:110px;display:grid}.projects-intro h1{max-width:950px;font-family:var(--serif);letter-spacing:-.045em;margin:30px 0 0;font-size:clamp(58px,7.2vw,118px);font-weight:400;line-height:.96}.projects-intro-detail>p{font-family:var(--serif);margin:0 0 44px;font-size:18px;line-height:1.7}.featured{min-height:900px;color:var(--warm-white);background:#282722;grid-template-columns:64% 36%;display:grid}.project-row+.project-row{border-top:1px solid #ffffff1a}.project-alternate{color:var(--ink);background:#d8d2c6;border-top-color:#18181524;grid-template-columns:36% 64%}.project-alternate .featured-image-wrap{grid-area:1/2;padding-left:0;padding-right:clamp(24px,4vw,75px)}.project-alternate .featured-copy{grid-area:1/1}.project-alternate .project-image-button{background:#bdb5a7}.featured-image-wrap{padding:clamp(24px,4vw,75px) 0 clamp(24px,4vw,75px) clamp(24px,4vw,75px)}.project-image-button{cursor:pointer;background:#35332d;border:0;width:100%;height:100%;min-height:740px;padding:0;position:relative;overflow:hidden}.project-image-button:after{content:"";background:#14131014;transition:background .5s;position:absolute;inset:0}.project-image-button img{object-fit:cover;filter:saturate(.75);width:100%;height:100%;transition:transform 1.2s cubic-bezier(.22,1,.36,1),filter .7s}.project-image-button:hover img{filter:saturate(.95);transform:scale(1.025)}.project-image-button:hover:after{background:#14131000}.image-corner{z-index:2;opacity:.7;width:32px;height:32px;position:absolute}.image-corner.top-left{border-top:1px solid #fff;border-left:1px solid #fff;top:24px;left:24px}.image-corner.bottom-right{border-bottom:1px solid #fff;border-right:1px solid #fff;bottom:24px;right:24px}.project-hover{z-index:3;width:108px;height:108px;color:var(--ink);text-transform:uppercase;letter-spacing:.22em;opacity:0;background:#ebe7dee6;border-radius:50%;flex-direction:column;justify-content:center;align-items:center;font-size:8px;transition:opacity .45s,transform .5s cubic-bezier(.22,1,.36,1);display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-42%)}.project-hover .arrow{width:20px;margin-top:12px}.project-image-button:hover .project-hover{opacity:1;transform:translate(-50%,-50%)}.featured-copy{flex-direction:column;justify-content:space-between;padding:clamp(70px,8vw,140px) clamp(35px,5vw,90px);display:flex}.featured-copy .micro-label{opacity:.5}.project-count{font-family:var(--serif);margin:26px 0 0;font-size:20px}.project-count span{opacity:.3}.project-title-group>p{text-transform:uppercase;letter-spacing:.2em;opacity:.55;margin:0 0 18px;font-size:8px}.project-title-group h2{font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(46px,4vw,72px);font-weight:400;line-height:.98}.featured-copy ul{text-transform:uppercase;letter-spacing:.17em;opacity:.65;margin:0;padding:0;font-size:8px;line-height:2;list-style:none}.text-link,.contact-cta{width:fit-content;color:inherit;text-transform:uppercase;letter-spacing:.2em;cursor:pointer;background:0 0;border:0;align-items:center;gap:24px;padding:12px 0;font-size:8px;display:flex}.arrow{width:24px;height:10px;transition:transform .35s;display:inline-block;position:relative}.arrow span{background:currentColor;width:100%;height:1px;position:absolute;top:5px;left:0}.arrow i{border-top:1px solid;border-right:1px solid;width:6px;height:6px;position:absolute;top:2px;right:0;transform:rotate(45deg)}.text-link:hover .arrow,.contact-cta:hover .arrow{transform:translate(7px)}.arrow-diagonal{transform:rotate(-45deg)}.text-link:hover .arrow-diagonal,.contact-cta:hover .arrow-diagonal{transform:rotate(-45deg)translate(7px)}.philosophy{background:var(--paper);grid-template-columns:1fr 1.05fr;min-height:850px;display:grid}.philosophy-copy{flex-direction:column;justify-content:center;padding:clamp(100px,10vw,180px) clamp(45px,8vw,150px) clamp(90px,9vw,160px) clamp(24px,6vw,115px);display:flex}.philosophy-copy h2{max-width:610px;font-family:var(--serif);letter-spacing:-.04em;margin:38px 0 32px;font-size:clamp(46px,4.8vw,76px);font-weight:400;line-height:1.02}.philosophy-copy>p:not(.micro-label){max-width:510px;font-family:var(--serif);margin:0;font-size:18px;line-height:1.7}.philosophy-signature{align-items:center;gap:20px;margin-top:75px;display:flex}.philosophy-signature span{background:var(--ink);width:55px;height:1px}.philosophy-signature em{font-family:var(--serif);font-size:13px}.philosophy-image{min-height:700px;margin:0;position:relative;overflow:hidden}.philosophy-image img{object-fit:cover;width:100%;height:100%}.philosophy-image figcaption{text-transform:uppercase;letter-spacing:.2em;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f0ede5b8;padding:7px 10px;font-size:7px;position:absolute;bottom:24px;right:28px}.expertise{background:#dcd7cc;grid-template-columns:.72fr 1.28fr;gap:clamp(60px,10vw,180px);padding-top:clamp(110px,13vw,205px);padding-bottom:clamp(120px,14vw,220px);display:grid}.expertise-intro{align-self:start;position:sticky;top:130px}.expertise h2{max-width:540px}.expertise-intro>p:last-child{max-width:410px;font-family:var(--serif);margin:35px 0 0;font-size:17px;line-height:1.7}.service-list{border-top:1px solid var(--line)}.service-list details{border-bottom:1px solid var(--line)}.service-list summary{cursor:pointer;grid-template-columns:55px 1fr 32px;align-items:center;min-height:112px;list-style:none;display:grid}.service-list summary::-webkit-details-marker{display:none}.service-number{opacity:.55;align-self:start;padding-top:36px;font-size:8px}.service-title{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(30px,3vw,48px);line-height:1}.service-plus{width:25px;height:25px;position:relative}.service-plus:before,.service-plus:after{content:"";background:currentColor;width:25px;height:1px;transition:transform .35s;position:absolute;top:12px;left:0}.service-plus:after{transform:rotate(90deg)}details[open] .service-plus:after{transform:rotate(0)}.service-detail{max-width:530px;padding:0 40px 37px 55px}.service-detail p{font-family:var(--serif);margin:0;font-size:16px;line-height:1.65}.process{background:var(--paper);padding-top:clamp(110px,13vw,210px);padding-bottom:clamp(120px,12vw,190px)}.process-heading{grid-template-columns:.55fr 1.45fr;display:grid}.process-heading h2{max-width:920px;margin-top:-12px}.process-steps{grid-template-columns:repeat(4,1fr);margin-top:135px;display:grid}.process-steps article{transition-delay:var(--delay);padding-right:35px}.step-marker{align-items:center;display:flex}.step-marker span{border:1px solid var(--ink);border-radius:50%;flex:none;place-items:center;width:26px;height:26px;font-size:7px;display:grid}.step-marker i{background:var(--line);width:100%;height:1px}.process-steps h3{font-family:var(--serif);margin:35px 0 17px;font-size:28px;font-weight:400}.process-steps p{max-width:260px;font-family:var(--serif);margin:0;font-size:14px;line-height:1.65}.contact{min-height:820px;color:var(--warm-white);background:#1a1a17;grid-template-columns:50% 50%;display:grid}.contact-image{min-height:650px;position:relative;overflow:hidden}.contact-image:after{content:"";background:linear-gradient(90deg,#0000 60%,#1a1a1759);position:absolute;inset:0}.contact-image>img{object-fit:cover;width:100%;height:100%}.contact-content{flex-direction:column;justify-content:center;padding:clamp(90px,9vw,155px) clamp(40px,7vw,120px);display:flex}.contact-content .micro-label{opacity:.5}.contact-content h2{max-width:650px;font-family:var(--serif);letter-spacing:-.04em;margin:38px 0 30px;font-size:clamp(48px,5vw,78px);font-weight:400;line-height:1}.contact-body{max-width:530px;font-family:var(--serif);opacity:.7;margin:0;font-size:16px;line-height:1.65}.contact-cta{border-bottom:1px solid #ffffff59;margin-top:55px;padding-bottom:18px}.contact-meta{border-top:1px solid #ffffff24;grid-template-columns:repeat(3,minmax(0,1fr));gap:25px;margin-top:75px;padding-top:25px;display:grid}.contact-meta>div{flex-direction:column;gap:10px;display:flex}.contact-meta span{text-transform:uppercase;letter-spacing:.2em;opacity:.4;font-size:7px}.contact-meta a{font-family:var(--serif);opacity:.82;font-size:12px;line-height:1.55;transition:opacity .2s}.contact-meta a:hover{opacity:1}footer{min-height:116px;color:var(--warm-white);background:#11110f;border-top:1px solid #ffffff17;grid-template-columns:auto 1fr;align-items:center;padding:0 clamp(24px,4vw,72px);display:grid}.footer-brand{align-self:center}.footer-brand .brand-logo{width:72px}footer>p{text-transform:uppercase;letter-spacing:.17em;opacity:.45;justify-self:end;margin:0;font-size:7px}[data-reveal]{opacity:0;transition:opacity .9s,transform 1s cubic-bezier(.22,1,.36,1);transform:translateY(35px)}[data-reveal].is-visible{opacity:1;transform:translateY(0)}.project-modal{z-index:300;visibility:hidden;pointer-events:none;position:fixed;inset:0}.project-modal.open{visibility:visible;pointer-events:auto}.modal-backdrop{opacity:0;cursor:pointer;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0a0a09a3;border:0;width:100%;height:100%;transition:opacity .5s;position:absolute;inset:0}.project-modal.open .modal-backdrop{opacity:1}.project-panel{background:var(--paper);grid-template-columns:54% 46%;width:min(88vw,1160px);height:100%;transition:transform .75s cubic-bezier(.77,0,.18,1);display:grid;position:absolute;top:0;right:0;overflow-y:auto;transform:translate(100%)}.project-modal.open .project-panel{transform:translate(0)}.modal-close{z-index:2;text-transform:uppercase;letter-spacing:.2em;cursor:pointer;background:0 0;border:0;align-items:center;gap:16px;padding:10px 0;font-size:8px;display:flex;position:absolute;top:30px;right:35px}.modal-close i{width:25px;height:25px;position:relative}.modal-close i:before,.modal-close i:after{content:"";background:currentColor;width:25px;height:1px;position:absolute;top:12px;left:0;transform:rotate(45deg)}.modal-close i:after{transform:rotate(-45deg)}.modal-image{background:#1a1916;min-height:100%;position:relative;overflow:hidden}.project-gallery{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.project-gallery:active{cursor:grabbing}.project-gallery-track{will-change:transform;width:100%;height:100%;transition:transform .65s cubic-bezier(.77,0,.18,1);display:flex}.project-gallery-slide{width:100%;min-width:100%;height:100%;margin:0;overflow:hidden}.project-gallery-slide img{object-fit:cover;pointer-events:none;filter:saturate(.9);width:100%;height:100%}.gallery-counter{z-index:2;color:var(--warm-white);font-family:var(--serif);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#11110fb8;margin:0;padding:11px 14px;font-size:16px;line-height:1;position:absolute;bottom:28px;left:28px}.gallery-counter span{opacity:.5}.gallery-controls{z-index:2;gap:8px;display:flex;position:absolute;bottom:28px;right:28px}.gallery-controls button{width:42px;height:42px;color:var(--warm-white);cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#11110f9e;border:1px solid #ffffff59;border-radius:50%;place-items:center;transition:background .22s,border-color .22s,transform .22s;display:grid}.gallery-controls button:hover{background:#11110fd1;border-color:#ffffffbf;transform:scale(1.04)}.gallery-controls button span{font-size:19px;line-height:1}.modal-copy{flex-direction:column;justify-content:center;padding:150px clamp(40px,6vw,90px) 70px;display:flex}.modal-copy h2{font-family:var(--serif);letter-spacing:-.04em;margin:35px 0 30px;font-size:clamp(45px,4.5vw,72px);font-weight:400;line-height:1}.modal-copy>p:not(.micro-label),.modal-scope p{font-family:var(--serif);margin:0;font-size:16px;line-height:1.7}.modal-scope{border-top:1px solid var(--line);margin-top:70px;padding-top:20px}.modal-scope span{text-transform:uppercase;letter-spacing:.2em;opacity:.55;margin-bottom:12px;font-size:7px;display:block}@keyframes hero-arrive{0%{filter:brightness(.72);transform:scale(1.07)}to{filter:brightness();transform:scale(1)}}@keyframes fade-rise{to{opacity:1;transform:translateY(0)}}@keyframes scroll-dot{0%,to{opacity:.35;transform:translateY(0)}50%{opacity:1;transform:translateY(5px)}}@media (width<=1080px){.desktop-nav{display:none}.site-header{grid-template-columns:1fr 1fr}.menu-toggle{display:block}.intro{grid-template-columns:1.2fr .8fr;gap:70px}.featured{grid-template-columns:62% 38%}.project-image-button{min-height:650px}.contact-meta{grid-template-columns:1fr}.project-panel{grid-template-columns:1fr 1fr;width:94vw}}@media (width<=800px){.site-header{height:82px;padding:0 22px}.site-header.is-compact{height:66px}.brand-logo{width:70px}.site-header.is-compact .brand-logo{width:52px}.header-actions{gap:18px}.hero{min-height:790px}.hero-image{object-position:58% center}.hero-content{align-items:flex-end;min-height:790px;padding:125px 24px 135px}.hero-shade{background:linear-gradient(90deg,#100e0b66,#100e0b14),linear-gradient(#0000 34%,#100e0bbf 100%)}.hero h1{max-width:610px;font-size:clamp(48px,13vw,72px);line-height:.98}.hero-body{max-width:330px;font-size:14px}.hero-bottom{grid-template-columns:1fr auto;bottom:22px;left:24px;right:24px}.hero-bottom>p:not(.hero-location){display:none}.hero-location{font-size:6px}.intro{grid-template-columns:1fr;gap:55px;padding-top:100px;padding-bottom:110px}.projects-intro{grid-template-columns:1fr;align-items:end;gap:48px;min-height:570px;padding-top:145px;padding-bottom:80px}.projects-intro h1{font-size:clamp(50px,13vw,78px)}.projects-intro-detail>p{max-width:560px;margin-bottom:28px}.intro-heading h2,.expertise h2,.process h2{font-size:clamp(42px,11vw,64px)}.intro-detail{padding-top:0}.intro-detail>p{max-width:570px}.metrics{margin-top:55px}.projects-cta-large{max-width:570px;min-height:96px;margin-top:34px;padding:24px}.featured{grid-template-columns:1fr;min-height:auto}.project-alternate{grid-template-columns:1fr}.featured-image-wrap{padding:22px 22px 0}.project-alternate .featured-image-wrap{grid-area:1/1;padding:22px 22px 0}.project-alternate .featured-copy{grid-area:2/1}.project-image-button{min-height:58svh}.featured-copy{min-height:630px;padding:60px 24px 70px}.project-hover{display:none}.philosophy{grid-template-columns:1fr}.philosophy-copy{min-height:720px;padding:110px 24px}.philosophy-image{grid-row:1;min-height:67svh}.expertise{grid-template-columns:1fr;gap:80px;padding-top:110px;padding-bottom:120px}.expertise-intro{position:static}.service-list summary{grid-template-columns:42px 1fr 28px}.service-detail{padding-left:42px}.process-heading{grid-template-columns:1fr;gap:34px}.process-heading h2{margin-top:0}.process-steps{grid-template-columns:1fr 1fr;gap:65px 0;margin-top:80px}.contact{grid-template-columns:1fr}.contact-image{min-height:62svh}.contact-content{padding:100px 24px}.contact-meta{grid-template-columns:repeat(2,minmax(0,1fr))}footer{grid-template-columns:1fr;gap:18px;min-height:116px;padding:35px 24px}.footer-brand{grid-area:1/1}footer>p{grid-area:2/1;justify-self:start}.project-panel{grid-template-columns:1fr;width:100%}.modal-image,.project-gallery-track{min-height:48svh}.gallery-counter{bottom:18px;left:18px}.gallery-controls{bottom:18px;right:18px}.modal-copy{min-height:52svh;padding:100px 24px 70px}.modal-close{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f0ede5d9;padding:9px 13px;position:fixed;top:21px;right:20px}}@media (width<=540px){.language-switch{font-size:7px}.hero-kicker{margin-bottom:18px}.metrics{gap:12px}.metrics strong{font-size:26px}.metrics span{font-size:6px}.featured-copy{min-height:570px}.philosophy-copy h2{font-size:clamp(42px,12vw,58px)}.service-list summary{min-height:98px}.service-title{font-size:29px}.process-steps{grid-template-columns:1fr;gap:52px}.process-steps article{padding-right:0}.contact-meta{grid-template-columns:1fr;gap:28px}.contact-content h2{font-size:clamp(45px,13vw,62px)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}[data-reveal]{opacity:1;transform:none}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}
