:root{--font-display: "Inter Tight", "Inter", sans-serif;--font-body: "Inter", sans-serif;--step-01: calc(11 * var(--scale-unit));--step-02: calc(13 * var(--scale-unit));--step-03: calc(16 * var(--scale-unit));--step-04: calc(19 * var(--scale-unit));--step-05: calc(23 * var(--scale-unit));--step-06: calc(28 * var(--scale-unit));--step-07: calc(33 * var(--scale-unit));--step-08: calc(40 * var(--scale-unit));--step-09: calc(48 * var(--scale-unit));--step-10: calc(57 * var(--scale-unit));--step-11: calc(69 * var(--scale-unit));--fw-light: 300;--fw-regular: 400;--fw-medium: 500;--fw-semibold: 600;--fw-bold: 700;--lh-solid: 1;--lh-tight: 1.05;--lh-snug: 1.1;--lh-close: 1.15;--lh-cosy: 1.2;--lh-normal: 1.3;--lh-relaxed: 1.4;--lh-body: 1.45;--lh-loose: 1.5;--lh-airy: 1.6;--ls-tight: -.03em;--ls-snug: -.02em;--ls-slight: -.01em;--ls-normal: 0em;--ls-wide: .02em;--ls-wider: .06em;--type-display-family: var(--font-display);--type-display-size: var(--step-11);--type-display-weight: var(--fw-bold);--type-display-leading: var(--lh-solid);--type-display-tracking: var(--ls-tight);--type-hero-family: var(--font-display);--type-hero-size: var(--step-10);--type-hero-weight: var(--fw-bold);--type-hero-leading: var(--lh-tight);--type-hero-tracking: var(--ls-tight);--type-h1-family: var(--font-display);--type-h1-size: var(--step-07);--type-h1-weight: var(--fw-bold);--type-h1-leading: var(--lh-tight);--type-h1-tracking: var(--ls-snug);--type-h1-lg-family: var(--type-h1-family);--type-h1-lg-size: var(--step-08);--type-h1-lg-weight: var(--type-h1-weight);--type-h1-lg-leading: var(--lh-snug);--type-h1-lg-tracking: var(--type-h1-tracking);--type-h2-family: var(--font-display);--type-h2-size: var(--step-07);--type-h2-weight: var(--fw-bold);--type-h2-leading: var(--lh-snug);--type-h2-tracking: var(--ls-snug);--type-h2-project-family: var(--type-h2-family);--type-h2-project-size: var(--type-h2-size);--type-h2-project-weight: var(--type-h2-weight);--type-h2-project-leading: var(--type-h2-leading);--type-h2-project-tracking: var(--type-h2-tracking);--type-h2-statement-family: var(--type-h2-family);--type-h2-statement-size: var(--type-h2-size);--type-h2-statement-weight: var(--type-h2-weight);--type-h2-statement-leading: var(--type-h2-leading);--type-h2-statement-tracking: var(--type-h2-tracking);--type-h3-family: var(--font-display);--type-h3-size: var(--step-03);--type-h3-weight: var(--fw-semibold);--type-h3-leading: var(--lh-relaxed);--type-h3-tracking: var(--ls-slight);--type-h3-card-family: var(--type-h3-family);--type-h3-card-size: var(--type-h3-size);--type-h3-card-weight: var(--type-h3-weight);--type-h3-card-leading: var(--lh-normal);--type-h3-card-tracking: var(--type-h3-tracking);--type-h3-plan-family: var(--type-h3-family);--type-h3-plan-size: var(--step-02);--type-h3-plan-weight: var(--type-h3-weight);--type-h3-plan-leading: var(--lh-normal);--type-h3-plan-tracking: var(--type-h3-tracking);--type-card-title-family: var(--font-display);--type-card-title-size: var(--step-07);--type-card-title-weight: var(--fw-semibold);--type-card-title-leading: var(--lh-snug);--type-card-title-tracking: var(--ls-snug);--type-card-overlay-family: var(--font-display);--type-card-overlay-size: var(--step-07);--type-card-overlay-weight: var(--fw-regular);--type-card-overlay-leading: var(--lh-close);--type-card-overlay-tracking: var(--ls-snug);--type-lead-family: var(--font-body);--type-lead-size: var(--step-07);--type-lead-weight: var(--fw-light);--type-lead-leading: var(--lh-normal);--type-lead-tracking: var(--ls-slight);--type-body-family: var(--font-body);--type-body-size: var(--step-03);--type-body-weight: var(--fw-regular);--type-body-leading: var(--lh-airy);--type-body-tracking: var(--ls-normal);--type-body-tight-family: var(--type-body-family);--type-body-tight-size: var(--type-body-size);--type-body-tight-weight: var(--type-body-weight);--type-body-tight-leading: var(--lh-body);--type-body-tight-tracking: var(--type-body-tracking);--type-body-tight-label-weight: var(--fw-semibold);--type-body-tight-sublabel-weight: var(--fw-medium);--type-body-compact-family: var(--type-body-family);--type-body-compact-size: var(--type-body-size);--type-body-compact-weight: var(--type-body-weight);--type-body-compact-leading: var(--lh-loose);--type-body-compact-tracking: var(--type-body-tracking);--type-body-compact-emphasis-weight: var(--fw-semibold);--type-body-xl-family: var(--font-body);--type-body-xl-size: var(--step-03);--type-body-xl-weight: var(--fw-regular);--type-body-xl-leading: var(--lh-body);--type-body-xl-tracking: var(--ls-normal);--type-body-xl-strong-weight: var(--fw-semibold);--type-body-lg-family: var(--font-body);--type-body-lg-size: var(--step-05);--type-body-lg-weight: var(--fw-regular);--type-body-lg-leading: var(--lh-loose);--type-body-lg-tracking: var(--ls-normal);--type-body-sm-family: var(--font-body);--type-body-sm-size: var(--step-03);--type-body-sm-weight: var(--fw-regular);--type-body-sm-leading: var(--lh-loose);--type-body-sm-tracking: var(--ls-normal);--type-body-about-family: var(--font-body);--type-body-about-size: var(--step-05);--type-body-about-weight: var(--fw-regular);--type-body-about-leading: var(--lh-loose);--type-body-about-tracking: var(--ls-normal);--type-body-about-strong-weight: var(--fw-semibold);--type-awards-family: var(--type-body-about-family);--type-awards-size: var(--step-03);--type-awards-weight: var(--type-body-about-weight);--type-awards-leading: var(--lh-body);--type-awards-tracking: var(--type-body-about-tracking);--type-body-map-family: var(--font-body);--type-body-map-size: var(--step-05);--type-body-map-weight: var(--fw-regular);--type-body-map-leading: var(--lh-body);--type-body-map-tracking: var(--ls-normal);--type-caption-family: var(--font-body);--type-caption-size: var(--step-02);--type-caption-weight: var(--fw-regular);--type-caption-leading: var(--lh-relaxed);--type-caption-tracking: var(--ls-normal);--type-caption-strong-weight: var(--fw-semibold);--type-facts-family: var(--font-body);--type-facts-size: var(--step-03);--type-facts-leading: var(--lh-loose);--type-facts-tracking: var(--ls-normal);--type-facts-term-weight: var(--fw-semibold);--type-facts-value-weight: var(--fw-regular);--type-tag-family: var(--font-body);--type-tag-size: var(--step-02);--type-tag-weight: var(--fw-medium);--type-tag-leading: var(--lh-solid);--type-tag-tracking: var(--ls-wide);--type-tag-transform: lowercase;--type-nav-family: var(--font-display);--type-nav-size: var(--step-10);--type-nav-weight: var(--fw-bold);--type-nav-leading: var(--lh-tight);--type-nav-tracking: var(--ls-snug);--type-nav-footer-family: var(--font-body);--type-nav-footer-size: var(--step-04);--type-nav-footer-weight: var(--fw-regular);--type-nav-footer-leading: var(--lh-relaxed);--type-nav-footer-tracking: var(--ls-normal);--type-brand-family: var(--font-display);--type-brand-size: var(--step-05);--type-brand-weight: var(--fw-bold);--type-brand-leading: var(--lh-snug);--type-brand-tracking: var(--ls-snug);--type-brand-accent-weight: var(--fw-light);--type-email-family: var(--font-body);--type-email-size: var(--step-04);--type-email-weight: var(--fw-medium);--type-email-leading: var(--lh-cosy);--type-email-tracking: var(--ls-normal);--type-cta-family: var(--font-body);--type-cta-size: var(--step-03);--type-cta-weight: var(--fw-medium);--type-cta-leading: var(--lh-cosy);--type-cta-tracking: var(--ls-normal);--type-cta-icon-size: var(--step-06);--type-cta-icon-leading: var(--lh-solid);--type-button-family: var(--font-body);--type-button-size: var(--step-02);--type-button-weight: var(--fw-medium);--type-button-leading: var(--lh-cosy);--type-button-tracking: var(--ls-wider);--type-button-transform: uppercase;--type-field-family: var(--font-body);--type-field-size: var(--step-04);--type-field-leading: var(--lh-loose);--type-label-family: var(--font-body);--type-label-size: var(--step-04);--type-label-weight: var(--fw-medium);--type-label-leading: var(--lh-loose);--type-label-tracking: var(--ls-normal);--type-label-sm-family: var(--type-label-family);--type-label-sm-size: var(--step-03);--type-label-sm-weight: var(--type-label-weight);--type-label-sm-leading: var(--type-label-leading);--type-label-sm-tracking: var(--type-label-tracking);--type-map-label-family: var(--font-body);--type-map-label-size: 12px;--type-map-label-weight: var(--fw-medium);--type-map-label-leading: var(--lh-normal);--type-map-label-tracking: var(--ls-normal)}@media(max-width:900px){:root{--type-display-size: var(--step-09);--type-hero-size: var(--step-07);--type-h1-lg-size: var(--step-08);--type-h2-project-size: var(--step-08);--type-card-overlay-size: var(--step-06);--type-lead-size: var(--step-03);--type-body-lg-size: var(--step-03);--type-body-about-size: var(--step-04);--type-nav-size: var(--step-08);--type-tag-size: var(--step-01)}}@media(max-width:560px){:root{--type-display-size: var(--step-08);--type-hero-size: var(--step-06);--type-h1-lg-size: var(--step-07);--type-h2-project-size: var(--step-07);--type-h2-statement-size: var(--step-06);--type-lead-size: var(--step-03);--type-lead-leading: var(--lh-loose);--type-body-xl-leading: var(--lh-loose);--type-body-lg-leading: var(--lh-loose);--type-body-about-size: var(--step-03);--type-body-about-leading: var(--lh-loose);--type-nav-size: var(--step-07);--type-tag-size: var(--step-01)}}.type-display{font-family:var(--type-display-family);font-size:var(--type-display-size);font-weight:var(--type-display-weight);line-height:var(--type-display-leading);letter-spacing:var(--type-display-tracking)}.type-hero{font-family:var(--type-hero-family);font-size:var(--type-hero-size);font-weight:var(--type-hero-weight);line-height:var(--type-hero-leading);letter-spacing:var(--type-hero-tracking)}.type-h1{font-family:var(--type-h1-family);font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);letter-spacing:var(--type-h1-tracking)}.type-h2{font-family:var(--type-h2-family);font-size:var(--type-h2-size);font-weight:var(--type-h2-weight);line-height:var(--type-h2-leading);letter-spacing:var(--type-h2-tracking)}.type-h3{font-family:var(--type-h3-family);font-size:var(--type-h3-size);font-weight:var(--type-h3-weight);line-height:var(--type-h3-leading);letter-spacing:var(--type-h3-tracking)}.type-lead{font-family:var(--type-lead-family);font-size:var(--type-lead-size);font-weight:var(--type-lead-weight);line-height:var(--type-lead-leading);letter-spacing:var(--type-lead-tracking)}.type-body{font-family:var(--type-body-family);font-size:var(--type-body-size);font-weight:var(--type-body-weight);line-height:var(--type-body-leading);letter-spacing:var(--type-body-tracking)}.type-card-title{font-family:var(--type-card-title-family);font-size:var(--type-card-title-size);font-weight:var(--type-card-title-weight);line-height:var(--type-card-title-leading);letter-spacing:var(--type-card-title-tracking)}.type-caption{font-family:var(--type-caption-family);font-size:var(--type-caption-size);font-weight:var(--type-caption-weight);line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking)}.type-button{font-family:var(--type-button-family);font-size:var(--type-button-size);font-weight:var(--type-button-weight);line-height:var(--type-button-leading);letter-spacing:var(--type-button-tracking);text-transform:var(--type-button-transform)}.type-nav{font-family:var(--type-nav-family);font-size:var(--type-nav-size);font-weight:var(--type-nav-weight);line-height:var(--type-nav-leading);letter-spacing:var(--type-nav-tracking)}.type-nav-footer{font-family:var(--type-nav-footer-family);font-size:var(--type-nav-footer-size);font-weight:var(--type-nav-footer-weight);line-height:var(--type-nav-footer-leading);letter-spacing:var(--type-nav-footer-tracking)}:root{--page-bg: #e0e0dd;--text: #333;--muted: #575757;--field-border: #979797;--placeholder: #c4c4c4;--reference-width: 1440;--reference-height: 960;--scale-max: 1.75;--scale-unit: clamp( 1px, min(calc(100vw / var(--reference-width)), calc(100vh / var(--reference-height))), calc(var(--scale-max) * 1px) );--page-gutter: calc(64 * var(--scale-unit));--section-gap: calc(100 * var(--scale-unit));--column-gap: calc(64 * var(--scale-unit));--footer-reveal-height: calc(315 * var(--scale-unit));--floating-cta-bottom: 60px;--cta-pill-width: calc(240 * var(--scale-unit));--glass-bg: rgb(224 224 221 / 72%);--glass-filter: blur(20px) saturate(120%);--header-height: calc(72 * var(--scale-unit));font-family:var(--font-body);color:var(--text);background:var(--page-bg)}*{box-sizing:border-box}html{margin:0;width:100%;max-width:100%;min-width:320px;overflow-x:clip;background:var(--page-bg);scroll-behavior:smooth}body{margin:0;width:100%;max-width:100%;min-height:100%;overflow-x:clip;padding-bottom:var(--footer-reveal-height);background:var(--page-bg);color:var(--text);font-family:var(--font-body)}button,input,textarea{font:inherit}a{color:inherit;text-decoration:none}.site-main{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:var(--section-gap);padding-bottom:calc(200 * var(--scale-unit));background:var(--page-bg)}.text-fade-up{--text-fade-delay: 0ms;animation:text-fade-up .9s cubic-bezier(.22,1,.36,1) both;animation-delay:var(--text-fade-delay);opacity:0;transform:translateY(20px)}.text-fade-up--1{--text-fade-delay: .12s}.text-fade-up--2{--text-fade-delay: .26s}.text-fade-up--3{--text-fade-delay: .4s}.text-fade-up--4{--text-fade-delay: .54s}.text-fade-up--5{--text-fade-delay: .68s}.text-fade-up--6{--text-fade-delay: .82s}.text-fade-up--7{--text-fade-delay: .96s}.text-fade-up--8{--text-fade-delay: 1.1s}@keyframes text-fade-up{to{opacity:1;transform:translateY(0)}}.brand-mark{font-family:var(--type-brand-family);font-size:var(--type-brand-size);font-weight:var(--type-brand-weight);line-height:var(--type-brand-leading);letter-spacing:var(--type-brand-tracking);white-space:nowrap}.brand-mark__link{font:inherit;letter-spacing:inherit}.brand-mark__section span{margin-left:4px;font-weight:var(--type-brand-accent-weight)}.brand-mark__section--reveal{display:inline-block;opacity:0;transform:translateY(-4px);transition:opacity .42s cubic-bezier(.65,0,.35,1),transform .42s cubic-bezier(.65,0,.35,1)}.site-header--scrolled .brand-mark__section--reveal{opacity:1;transform:translateY(0)}@media(prefers-reduced-motion:reduce){.brand-mark__section--reveal{transition:none}}.site-header{position:fixed;z-index:20;top:0;left:0;display:flex;flex-direction:column;width:100%;height:100vh;background:#e0e0ddc7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:var(--text);clip-path:inset(0 0 calc(100% - var(--header-height)) 0);transition:background .62s cubic-bezier(.65,0,.35,1),color .62s cubic-bezier(.65,0,.35,1),-webkit-backdrop-filter .62s cubic-bezier(.65,0,.35,1),backdrop-filter .62s cubic-bezier(.65,0,.35,1),clip-path .62s cubic-bezier(.65,0,.35,1)}.site-header__bar{display:flex;width:100%;flex:0 0 var(--header-height);align-items:center;justify-content:space-between;padding:calc(12 * var(--scale-unit)) var(--page-gutter)}.site-header--transparent-top{background:transparent;-webkit-backdrop-filter:none;backdrop-filter:none}.site-header--over-hero{color:#fff}.site-header--transparent-top.site-header--scrolled{background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);color:var(--text)}.site-header[data-open=true]{clip-path:inset(0 0 0 0);background:var(--glass-bg);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);color:var(--text)}.menu-button{display:inline-flex;align-items:center;justify-content:center;width:calc(60 * var(--scale-unit));height:calc(36 * var(--scale-unit));margin-right:calc(-12 * var(--scale-unit));padding:0;border:0;background:transparent;color:inherit;cursor:pointer}.menu-icon{width:calc(36 * var(--scale-unit));height:calc(36 * var(--scale-unit))}.menu-icon__line{stroke:currentColor;stroke-width:2;stroke-linecap:round;transform-box:fill-box;transform-origin:center;transition:transform .32s cubic-bezier(.4,0,.2,1),opacity .2s ease,stroke .52s ease}.menu-button[aria-pressed=true] .menu-icon__line--top{transform:translateY(6px) rotate(45deg)}.menu-button[aria-pressed=true] .menu-icon__line--middle{opacity:0}.menu-button[aria-pressed=true] .menu-icon__line--bottom{transform:translateY(-6px) rotate(-45deg)}.nav-panel{position:relative;width:100%;flex:1 1 auto}@media(prefers-reduced-motion:reduce){.site-header,.nav-panel__inner{transition:none}}.nav-panel__inner{position:relative;width:100%;height:100%;opacity:0;transition:opacity .62s cubic-bezier(.65,0,.35,1)}.site-header[data-open=true] .nav-panel__inner{opacity:1}.nav-panel__nav{position:absolute;top:50%;left:var(--page-gutter);transform:translateY(-50%)}.nav-panel__list{display:flex;flex-direction:column;margin:0;padding:0;list-style:none}.nav-panel__list a{display:block;color:var(--text);font-family:var(--type-nav-family);font-size:var(--type-nav-size);font-weight:var(--type-nav-weight);line-height:var(--type-nav-leading);letter-spacing:var(--type-nav-tracking);transition:color .16s ease}.nav-panel__list a:hover{color:#f8f8f8}.nav-panel__footer{position:absolute;right:var(--page-gutter);bottom:39px;--footer-contact-width: calc(316 * var(--scale-unit))}.hero-section{position:relative;width:100%;height:100vh;min-height:100vh;overflow:hidden}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center center}.hero-image,.home-carousel__item img,.project-card__media img,.project-card__media video,.project-cover img,.project-cover video,.project-section img,.project-section video,.project-images img,.project-images video{display:block;max-width:100%;image-rendering:auto}.hero-content{position:relative;z-index:2;display:flex;height:min(100%,100vh);flex-direction:column;align-items:flex-start;justify-content:flex-end;gap:calc(47 * var(--scale-unit));padding:0 var(--page-gutter) var(--floating-cta-bottom);color:#fff}.hero-content h1,.hero-headline{max-width:calc(880 * var(--scale-unit));margin:0;font-family:var(--type-hero-family);font-size:var(--type-hero-size);font-weight:var(--type-hero-weight);line-height:var(--type-hero-leading);letter-spacing:var(--type-hero-tracking)}.hero-content h1 span,.hero-headline span{display:block}.floating-cta-track{position:absolute;inset:0;z-index:30;display:flex;flex-direction:column;align-items:flex-end;padding-right:var(--page-gutter);padding-bottom:var(--floating-cta-bottom);pointer-events:none}.hero-cta{position:sticky;z-index:30;bottom:var(--floating-cta-bottom);margin-top:auto;display:flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:calc(var(--type-hero-size) * .754);padding:0 calc(32 * var(--scale-unit));border:0;border-radius:0;background:#e25f09c7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;font-family:var(--type-cta-family);font-size:var(--type-cta-size);font-weight:var(--type-cta-weight);line-height:var(--type-cta-leading);letter-spacing:var(--type-cta-tracking);pointer-events:auto}.hero-cta:hover{background:#e25f09e0}.all-projects-cta{position:static;align-self:flex-start;margin-left:var(--page-gutter);border:0;background:#fff6;-webkit-backdrop-filter:none;backdrop-filter:none;color:var(--text)}.all-projects-cta:hover{background:#33333314}.dual-cta{display:contents}.hero-polygon{position:absolute;z-index:1;top:41%;left:50%;width:calc(383 * var(--scale-unit));height:calc(383 * var(--scale-unit));transform:translate(-50%,-50%) rotate(90deg);pointer-events:none}.intro-section{width:calc((100% - (var(--page-gutter) * 2) - calc(64 * var(--scale-unit))) / 2);align-self:flex-end;margin-right:var(--page-gutter);margin-top:calc((88.32 * var(--scale-unit)) - var(--section-gap))}.intro-section p{margin:0;color:var(--text);font-family:var(--type-lead-family);font-size:calc(26 * var(--scale-unit));font-weight:var(--fw-bold);line-height:var(--type-lead-leading);letter-spacing:var(--type-lead-tracking)}.services-section{display:grid;width:calc(100% - (var(--page-gutter) * 2));grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(64 * var(--scale-unit))}.contact-section{display:grid;width:calc(100% - (var(--page-gutter) * 2));grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--column-gap)}.home-heading{width:calc(100% - (var(--page-gutter) * 2));margin-bottom:calc(var(--section-gap) * -.5);text-align:left}.home-heading h2{margin:0;font-family:var(--type-h2-family);font-size:var(--type-h2-size);font-weight:var(--type-h2-weight);line-height:var(--type-h2-leading);letter-spacing:var(--type-h2-tracking)}.home-carousel-block{width:100%;overflow:hidden;background:#d8d8d6;padding-top:calc(64 * var(--scale-unit));padding-bottom:calc((72 * var(--scale-unit)) + (var(--type-hero-size) * .754) + var(--floating-cta-bottom))}.home-main{padding-bottom:0}.home-carousel-block__heading{width:calc(100% - (var(--page-gutter) * 2));margin:0 auto calc(48 * var(--scale-unit));text-align:left;color:#333;font-family:var(--type-h2-family);font-size:var(--type-h2-size);font-weight:var(--type-h2-weight);line-height:var(--type-h2-leading);letter-spacing:var(--type-h2-tracking)}.home-carousel{width:100%;overflow:hidden;touch-action:pan-y;cursor:grab;padding:0 calc(63 * var(--scale-unit));user-select:none}.home-carousel:active,.home-carousel--dragging{cursor:grabbing}.home-carousel__track{display:flex;gap:calc(32 * var(--scale-unit));will-change:transform}.home-carousel__item{--carousel-item-height: calc(560 * var(--scale-unit));--carousel-item-ratio: 1 / 1;position:relative;display:block;width:auto;height:var(--carousel-item-height);aspect-ratio:var(--carousel-item-ratio);flex:0 0 auto;overflow:hidden;cursor:inherit;touch-action:pan-y;user-select:none;-webkit-user-drag:none}.home-carousel__item img{display:block;width:100%;height:100%;object-fit:cover;object-position:center;pointer-events:auto;touch-action:pan-y;user-select:none;-webkit-user-drag:none;transition:opacity .16s ease}.home-carousel__item:hover img{opacity:.82}.home-carousel__item:hover{cursor:pointer}.home-carousel__label{position:absolute;top:0;right:calc(-28 * var(--scale-unit));color:var(--text);font-family:var(--type-tag-family);font-size:var(--type-tag-size);font-weight:var(--type-tag-weight);line-height:var(--type-tag-leading);letter-spacing:var(--type-tag-tracking);text-transform:var(--type-tag-transform);writing-mode:vertical-rl;text-orientation:mixed}.project-card{display:flex;flex-direction:column;gap:calc(16 * var(--scale-unit));min-width:0}.project-card--link{transition:opacity .16s ease}.project-card--link:hover{opacity:.82}.project-card--link:focus-visible{outline:2px solid var(--text);outline-offset:8px}.project-card__media{position:relative;display:flex;aspect-ratio:1;align-items:flex-end;overflow:hidden;background:var(--placeholder)}.project-card__media img,.project-card__media video{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:cover;object-position:center}.project-card__hover-video{opacity:0;pointer-events:none}.project-card__media:hover .project-card__hover-video,.project-card__media:focus-visible .project-card__hover-video{opacity:1}.project-card__media--link img,.project-card__media--link video{transition:opacity .16s ease-out}.project-card__media--link:not(:has(.project-card__hover-video)):hover img,.project-card__media--link:not(:has(.project-card__hover-video)):hover video,.project-card__media--link:not(:has(.project-card__hover-video)):focus-visible img,.project-card__media--link:not(:has(.project-card__hover-video)):focus-visible video{transition:opacity .16s ease;opacity:.82}.project-card__media h2{position:relative;z-index:1;width:100%;margin:0;padding:calc(12 * var(--scale-unit)) calc(24 * var(--scale-unit));color:#fff;font-family:var(--type-card-overlay-family);font-size:var(--type-card-overlay-size);font-weight:var(--type-card-overlay-weight);line-height:var(--type-card-overlay-leading);letter-spacing:var(--type-card-overlay-tracking)}.project-card__title{margin:0;font-family:var(--type-card-title-family);font-size:var(--type-card-title-size);font-weight:var(--type-card-title-weight);line-height:var(--type-card-title-leading);letter-spacing:var(--type-card-title-tracking)}.project-card__body{width:100%;margin:0;color:var(--text);font-family:var(--type-body-xl-family);font-size:var(--type-body-xl-size);font-weight:var(--type-body-xl-weight);line-height:var(--type-body-xl-leading);letter-spacing:var(--type-body-xl-tracking);text-align:left}.project-card--home .project-card__body{max-width:66%}.project-card__body strong,.project-card__body span{display:block}.project-card__body strong{font-weight:var(--type-body-xl-strong-weight)}.project-card--gallery{gap:calc(12 * var(--scale-unit))}.project-gallery .project-card--reveal{opacity:0;transform:translateY(24px);transition:opacity .48s cubic-bezier(.22,1,.36,1),transform .48s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.project-gallery .project-card--reveal.project-card--visible{opacity:1;transform:translateY(0);will-change:auto}.visuals-gallery .project-card--reveal{opacity:0;transform:translateY(24px);transition:opacity .44s cubic-bezier(.22,1,.36,1),transform .44s cubic-bezier(.22,1,.36,1);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.visuals-gallery .project-card--reveal.project-card--visible{opacity:1;transform:translateY(0);will-change:auto}.project-card--gallery .project-card__media{background:transparent}.project-card--gallery .project-card__body{font-family:var(--type-caption-family);font-size:var(--type-caption-size);font-weight:var(--type-caption-weight);line-height:var(--type-caption-leading);letter-spacing:var(--type-caption-tracking);text-align:center}.project-card--gallery .project-card__body strong{font-size:var(--type-caption-size);font-weight:var(--type-caption-strong-weight)}.project-card--gallery .project-card__body span{color:var(--muted)}.home-main .project-card--home .project-card__media h2,.home-main .project-card--home .project-card__title,.home-main .project-card--home .project-card__body{animation:text-fade-up .9s cubic-bezier(.22,1,.36,1) both;opacity:0;transform:translateY(20px)}.home-main .project-card--home:nth-child(1) .project-card__media h2,.home-main .project-card--home:nth-child(1) .project-card__title{animation-delay:.54s}.home-main .project-card--home:nth-child(1) .project-card__body{animation-delay:.68s}.home-main .project-card--home:nth-child(2) .project-card__media h2,.home-main .project-card--home:nth-child(2) .project-card__title{animation-delay:.82s}.home-main .project-card--home:nth-child(2) .project-card__body{animation-delay:.96s}@media(prefers-reduced-motion:reduce){.text-fade-up,.home-main .project-card--home .project-card__media h2,.home-main .project-card--home .project-card__title,.home-main .project-card--home .project-card__body,.project-gallery .project-card--reveal,.visuals-gallery .project-card--reveal{animation:none;opacity:1;transform:none;transition:none}.home-carousel__item img{transition:none}.project-card__media--link img,.project-card__media--link video{transition:none}}.gallery-page,.placeholder-page{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:calc(100 * var(--scale-unit));padding:calc(136 * var(--scale-unit)) var(--page-gutter) calc(200 * var(--scale-unit));background:var(--page-bg)}.contact-page{min-height:100vh;justify-content:center;padding-top:var(--page-gutter);padding-bottom:var(--page-gutter)}.gallery-intro{width:100%}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.section-label{margin:0 0 calc(24 * var(--scale-unit));color:var(--text);font-family:var(--type-label-family);font-size:var(--type-label-size);font-weight:var(--type-label-weight);line-height:var(--type-label-leading);letter-spacing:var(--type-label-tracking)}.gallery-intro h1{max-width:calc(880 * var(--scale-unit));margin:0;font-family:var(--type-h1-family);font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);letter-spacing:var(--type-h1-tracking)}.gallery-intro>p:last-child{max-width:calc(760 * var(--scale-unit));margin:calc(36 * var(--scale-unit)) 0 0;color:var(--text);font-family:var(--type-body-lg-family);font-size:var(--type-body-lg-size);font-weight:var(--type-body-lg-weight);line-height:var(--type-body-lg-leading);letter-spacing:var(--type-body-lg-tracking)}.gallery-intro>p:first-of-type{max-width:calc(600 * var(--scale-unit));margin:0;color:var(--text);font-family:var(--type-body-sm-family);font-size:var(--type-body-sm-size);font-weight:var(--type-body-sm-weight);line-height:var(--type-body-sm-leading);letter-spacing:var(--type-body-sm-tracking)}.architecture-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--column-gap);align-items:start}.architecture-intro h1{max-width:none;font-family:var(--type-h1-family);font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);letter-spacing:var(--type-h1-tracking)}.architecture-intro__copy{display:grid;gap:calc(22 * var(--scale-unit))}.architecture-intro__copy p{max-width:100%;margin:0;color:var(--text);font-family:var(--type-body-tight-family);font-size:var(--type-body-tight-size);font-weight:var(--type-body-tight-weight);line-height:var(--type-body-tight-leading);letter-spacing:var(--type-body-tight-tracking)}.architecture-intro__copy li{margin:0;color:var(--text);font-family:var(--type-body-tight-family);font-size:var(--type-body-tight-size);font-weight:var(--type-body-tight-weight);line-height:var(--type-body-tight-leading);letter-spacing:var(--type-body-tight-tracking)}.architecture-intro__copy ul{display:grid;gap:0;margin:calc(8 * var(--scale-unit)) 0 0;padding:0;list-style:none}.architecture-intro__services{margin-top:calc(10 * var(--scale-unit))}.architecture-intro__copy p.architecture-intro__services-label{font-weight:var(--type-body-tight-label-weight)}.architecture-intro__service-group+.architecture-intro__service-group{margin-top:calc(24 * var(--scale-unit))}.architecture-intro__accordion{display:grid}.accordion-item{border-bottom:1px solid var(--field-border)}.accordion-item__heading{margin:0;font:inherit}.accordion-item__trigger{display:flex;align-items:center;justify-content:space-between;gap:calc(16 * var(--scale-unit));width:100%;margin:0;padding:calc(16 * var(--scale-unit)) 0;border:0;background:none;color:var(--text);font-family:var(--type-body-tight-family);font-size:var(--type-body-tight-size);font-weight:var(--type-body-tight-weight);line-height:var(--type-body-tight-leading);letter-spacing:var(--type-body-tight-tracking);text-align:left;cursor:pointer;-webkit-tap-highlight-color:transparent}.accordion-item__trigger:focus-visible{outline:1px solid var(--text);outline-offset:4px}.accordion-item__chevron{flex:none;width:calc(18 * var(--scale-unit));height:calc(18 * var(--scale-unit));stroke:var(--text);stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;transition:transform .32s cubic-bezier(.65,0,.35,1)}.accordion-item--open .accordion-item__chevron{transform:rotate(180deg)}.accordion-item__panel{display:grid;grid-template-rows:0fr;opacity:0;transition:grid-template-rows .38s cubic-bezier(.65,0,.35,1),opacity .28s cubic-bezier(.65,0,.35,1)}.accordion-item--open .accordion-item__panel{grid-template-rows:1fr;opacity:1}.accordion-item__panel-inner{overflow:hidden}.accordion-item__panel-inner p{max-width:100%;margin:0 0 calc(18 * var(--scale-unit));color:var(--text);font-family:var(--type-body-tight-family);font-size:var(--type-body-tight-size);font-weight:var(--type-body-tight-weight);line-height:var(--type-body-tight-leading);letter-spacing:var(--type-body-tight-tracking)}@media(prefers-reduced-motion:reduce){.accordion-item__chevron,.accordion-item__panel{transition:none}}.case-studies-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--column-gap);align-items:start}.case-studies-intro h1{max-width:none;font-family:var(--type-h1-family);font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);letter-spacing:var(--type-h1-tracking)}.case-studies-intro__copy{display:grid;gap:calc(22 * var(--scale-unit))}.case-studies-intro__copy p{max-width:100%;margin:0;color:var(--text);font-family:var(--type-body-tight-family);font-size:var(--type-body-tight-size);font-weight:var(--type-body-tight-weight);line-height:var(--type-body-tight-leading);letter-spacing:var(--type-body-tight-tracking)}.contact-intro{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--column-gap);align-items:start}.contact-intro__column{display:grid;gap:calc(24 * var(--scale-unit));align-content:start}.contact-intro h1{max-width:none;margin:0;font-family:var(--type-h1-lg-family);font-size:var(--type-h1-lg-size);font-weight:var(--type-h1-lg-weight);line-height:var(--type-h1-lg-leading);letter-spacing:var(--type-h1-lg-tracking)}.contact-intro__note{max-width:100%;margin:0;color:var(--text);font-family:var(--type-body-compact-family);font-size:var(--type-body-compact-size);font-weight:var(--type-body-compact-weight);line-height:var(--type-body-compact-leading);letter-spacing:var(--type-body-compact-tracking)}.contact-intro__note a{font-weight:var(--type-body-compact-emphasis-weight)}.contact-intro__form,.contact-intro__fields{display:flex;flex-direction:column;gap:calc(28 * var(--scale-unit))}.contact-intro__fields textarea{min-height:calc(96 * var(--scale-unit));padding-top:calc(4 * var(--scale-unit));font-family:var(--type-field-family);line-height:var(--type-field-leading)}.project-gallery{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));row-gap:calc(20 * var(--scale-unit));column-gap:calc(64 * var(--scale-unit))}.visuals-page{gap:calc(88 * var(--scale-unit))}.visuals-intro{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--column-gap);align-items:start}.visuals-intro h1{margin:0;font-family:var(--type-h1-family);font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);letter-spacing:var(--type-h1-tracking)}.visuals-intro__copy{max-width:100%}.visuals-intro__copy p,.visuals-intro__copy li{margin:0;color:var(--text);font-family:var(--type-body-tight-family);font-size:var(--type-body-tight-size);font-weight:var(--type-body-tight-weight);line-height:var(--type-body-tight-leading);letter-spacing:var(--type-body-tight-tracking)}.visuals-intro__copy ul{display:grid;gap:0;margin:calc(18 * var(--scale-unit)) 0 0;padding:0;list-style:none}.visuals-intro__copy p.visuals-intro__services-label{margin-top:calc(32 * var(--scale-unit));font-weight:var(--type-body-tight-label-weight)}.visuals-intro__service-group+.visuals-intro__service-group{margin-top:calc(24 * var(--scale-unit))}.visuals-intro__copy p.visuals-intro__group-label{margin-top:calc(18 * var(--scale-unit));font-weight:var(--type-body-tight-sublabel-weight)}.visuals-intro__copy .visuals-intro__service-group ul{margin-top:calc(8 * var(--scale-unit))}.visuals-gallery{display:grid;width:100%;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:calc(64 * var(--scale-unit));align-items:start}.visuals-gallery__column{display:grid;gap:calc(24 * var(--scale-unit))}.visuals-card{break-inside:avoid}.visuals-card .project-card__media{aspect-ratio:auto;background:transparent}.visuals-card .project-card__media img{position:static;width:100%;height:auto;object-fit:contain}.about-page{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;background:var(--page-bg)}.about-hero{width:100%;height:100vh;min-height:100vh;overflow:hidden;background:var(--placeholder)}.about-hero img{display:block;width:100%;height:100%;object-fit:cover;object-position:center bottom}.about-content{display:grid;width:calc(100% - (var(--page-gutter) * 2));grid-template-columns:repeat(2,minmax(0,1fr));column-gap:var(--column-gap);padding:calc(78 * var(--scale-unit)) 0 calc(134 * var(--scale-unit));align-items:start}.about-column{display:grid;gap:calc(82 * var(--scale-unit));align-content:start}.about-column h1,.about-column h2{margin:0;font-family:var(--type-h1-family);font-size:var(--type-h1-size);font-weight:var(--type-h1-weight);line-height:var(--type-h1-leading);letter-spacing:var(--type-h1-tracking)}.about-copy{max-width:calc(600 * var(--scale-unit))}.about-copy p,.awards-list li{margin:0;color:var(--text);font-family:var(--type-body-about-family);font-size:var(--type-body-about-size);font-weight:var(--type-body-about-weight);line-height:var(--type-body-about-leading);letter-spacing:var(--type-body-about-tracking)}.about-copy p+p{margin-top:0}.awards-list{display:grid;max-width:calc(618 * var(--scale-unit));gap:calc(28 * var(--scale-unit));margin:0;padding:0;list-style:none}.awards-list li{font-family:var(--type-awards-family);font-size:var(--type-awards-size);font-weight:var(--type-awards-weight);line-height:var(--type-awards-leading);letter-spacing:var(--type-awards-tracking)}.project-page{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:calc(72 * var(--scale-unit));padding:0 0 calc(200 * var(--scale-unit));background:var(--page-bg)}.project-page.architecture-project-page{padding-bottom:var(--floating-cta-bottom)}.project-overview,.project-section,.project-images{width:calc(100% - (var(--page-gutter) * 2))}.project-cover{position:relative;width:100%;min-height:0;overflow:hidden}.project-cover img,.project-cover video{display:block;width:100%;max-width:100%;height:auto;min-height:0;object-fit:contain;object-position:center}.project-cover h1,.case-study-hero__title{position:absolute;top:calc(112 * var(--scale-unit));left:var(--page-gutter);margin:0;color:#fff;font-family:var(--type-display-family);font-size:var(--type-display-size);font-weight:var(--type-display-weight);line-height:var(--type-display-leading);letter-spacing:var(--type-display-tracking)}.case-study-hero__title{z-index:2}.case-study-aside{display:flex;flex-direction:column;gap:calc(96 * var(--scale-unit))}.case-study-aside__images{display:flex;flex-direction:column;justify-content:flex-end;gap:calc(72 * var(--scale-unit))}.case-study-aside__images img,.case-study-aside__images video{display:block;width:100%;height:auto}@media(min-width:901px){.case-study-page .project-overview{align-items:stretch}.case-study-aside-cell{position:relative}.case-study-aside{position:absolute;inset:0}.case-study-aside .project-facts{flex-shrink:0}.case-study-aside__images{margin-top:auto;min-height:0}}.project-overview{--project-facts-offset: calc(62 * var(--scale-unit));display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(64 * var(--scale-unit));align-items:start}.project-copy h2{margin:0;font-family:var(--type-h2-project-family);font-size:var(--type-h2-project-size);font-weight:var(--type-h2-project-weight);line-height:var(--type-h2-project-leading);letter-spacing:var(--type-h2-project-tracking)}.project-copy h3{margin:calc(24 * var(--scale-unit)) 0 0;font-family:var(--type-h3-family);font-size:var(--type-h3-size);font-weight:var(--type-h3-weight);line-height:var(--type-h3-leading);letter-spacing:var(--type-h3-tracking)}.project-copy p,.project-section__text p{margin:calc(24 * var(--scale-unit)) 0 0;font-family:var(--type-body-family);font-size:var(--type-body-size);font-weight:var(--type-body-weight);line-height:var(--type-body-leading);letter-spacing:var(--type-body-tracking)}.project-facts{display:grid;grid-template-columns:calc(120 * var(--scale-unit)) minmax(0,1fr);gap:calc(24 * var(--scale-unit)) calc(48 * var(--scale-unit));margin:var(--project-facts-offset) 0 0;font-family:var(--type-facts-family);font-size:var(--type-facts-size);line-height:var(--type-facts-leading);letter-spacing:var(--type-facts-tracking)}.project-facts dt{font-weight:var(--type-facts-term-weight)}.project-facts dd{margin:0;color:var(--muted);font-weight:var(--type-facts-value-weight)}.project-facts dd span{display:block}.project-section,.project-images{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(72 * var(--scale-unit)) calc(64 * var(--scale-unit));align-items:start}.project-section img,.project-section video,.project-images img,.project-images video{display:block;width:100%;height:auto;background:transparent}.project-section--statement{display:block;padding:calc(56 * var(--scale-unit)) 0}.project-section--statement h2{margin:0;font-family:var(--type-h2-statement-family);font-size:var(--type-h2-statement-size);font-weight:var(--type-h2-statement-weight);line-height:var(--type-h2-statement-leading);letter-spacing:var(--type-h2-statement-tracking);text-align:left}.project-section--four-images{grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(72 * var(--scale-unit)) calc(48 * var(--scale-unit))}.project-section--captioned-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:calc(72 * var(--scale-unit)) calc(64 * var(--scale-unit))}.project-section--scheme-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(72 * var(--scale-unit)) calc(64 * var(--scale-unit))}.project-section--plan-feature{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:calc(72 * var(--scale-unit)) calc(64 * var(--scale-unit));align-items:stretch}.project-section--single-media{display:block}.project-section--media-feature{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:calc(56 * var(--scale-unit)) calc(64 * var(--scale-unit));align-items:stretch}.project-media-feature__stack{display:grid;gap:calc(56 * var(--scale-unit));align-content:space-between}.project-media-feature__main,.project-media-feature__main img,.project-media-feature__main video{height:100%}.project-media-feature__main img,.project-media-feature__main video{object-fit:cover}.project-section--map-placeholder,.project-section--map{display:block}.project-section--intro-scheme{margin-top:calc(-40 * var(--scale-unit));align-items:end}.project-section--intro-scheme .project-section__media{position:relative;min-height:100%}.project-section--intro-scheme .project-section__media img,.project-section--intro-scheme .project-section__media video{position:absolute;bottom:0;left:0}.project-section--text-image,.project-section--image-text{align-items:stretch}.project-section--text-image .project-section__text,.project-section--image-text .project-section__text{display:flex;min-height:100%;flex-direction:column}.project-section--bottom-text .project-section__media{align-self:end}.project-section--bottom-text .project-section__text{justify-content:flex-end}.project-section--top-text .project-section__text>:first-child{margin-top:0}.project-section--text-image .project-section__below-images,.project-section--image-text .project-section__below-images{margin-top:auto;padding-top:calc(72 * var(--scale-unit))}.project-media-card{display:flex;min-width:0;flex-direction:column;gap:calc(10 * var(--scale-unit))}.project-media-card h2{margin:calc(8 * var(--scale-unit)) 0 0;font-family:var(--type-h3-card-family);font-size:var(--type-h3-card-size);font-weight:var(--type-h3-card-weight);line-height:var(--type-h3-card-leading);letter-spacing:var(--type-h3-card-tracking)}.project-media-card p{margin:0;color:var(--muted);font-family:var(--type-body-compact-family);font-size:var(--type-body-compact-size);font-weight:var(--type-body-compact-weight);line-height:var(--type-body-compact-leading);letter-spacing:var(--type-body-compact-tracking);text-align:left}.project-media-card--plan{gap:calc(14 * var(--scale-unit))}.project-media-card--plan h2{margin:0;font-family:var(--type-h3-plan-family);font-size:var(--type-h3-plan-size);font-weight:var(--type-h3-plan-weight);line-height:var(--type-h3-plan-leading);letter-spacing:var(--type-h3-plan-tracking)}.project-plan-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:calc(72 * var(--scale-unit)) calc(56 * var(--scale-unit));align-content:start}.project-plan-feature,.project-plan-feature img,.project-plan-feature video{height:100%}.project-plan-feature img,.project-plan-feature video{object-fit:cover}.project-map-placeholder{min-height:calc(360 * var(--scale-unit));padding:calc(96 * var(--scale-unit));background:#c9c9c9;color:var(--text)}.project-map-placeholder p{max-width:calc(980 * var(--scale-unit));margin:0;font-family:var(--type-body-map-family);font-size:var(--type-body-map-size);font-weight:var(--type-body-map-weight);line-height:var(--type-body-map-leading);letter-spacing:var(--type-body-map-tracking);overflow-wrap:anywhere}.project-map-placeholder p+p{margin-top:calc(42 * var(--scale-unit))}.project-section__side-images{display:grid;grid-template-columns:repeat(3,1fr);gap:calc(24 * var(--scale-unit));margin-bottom:calc(72 * var(--scale-unit))}.project-section__below-images{display:grid;gap:calc(72 * var(--scale-unit));margin-top:calc(72 * var(--scale-unit))}.project-section__text h2{margin:0;font-family:var(--type-h3-family);font-size:var(--type-h3-size);font-weight:var(--type-h3-weight);line-height:var(--type-h3-leading);letter-spacing:var(--type-h3-tracking)}.project-section__subsections{display:flex;flex-direction:column;gap:calc(24 * var(--scale-unit));margin-top:calc(32 * var(--scale-unit))}.project-section__subsections section{margin:0}.project-section__subsections h3{margin:0;font-family:var(--type-h3-family);font-size:var(--type-h3-size);font-weight:var(--type-h3-weight);line-height:var(--type-h3-leading);letter-spacing:var(--type-h3-tracking)}.project-section__subsections ul{margin:calc(8 * var(--scale-unit)) 0 0;padding-left:calc(22 * var(--scale-unit));color:var(--muted);font-family:var(--type-body-family);font-size:var(--type-body-size);font-weight:var(--type-body-weight);line-height:var(--type-body-leading);letter-spacing:var(--type-body-tracking)}.project-section__subsections li{margin:0}.contact-section{align-items:start}.contact-copy{display:flex;flex-direction:column;gap:calc(37 * var(--scale-unit))}.contact-copy h2{width:min(calc(600 * var(--scale-unit)),100%);margin:0;font-family:var(--type-h1-lg-family);font-size:var(--type-h1-lg-size);font-weight:var(--type-h1-lg-weight);line-height:var(--type-h1-lg-leading);letter-spacing:var(--type-h1-lg-tracking)}.contact-copy p{width:min(calc(621 * var(--scale-unit)),100%);margin:0;font-family:var(--type-body-lg-family);font-size:var(--type-body-lg-size);font-weight:var(--type-body-lg-weight);line-height:var(--type-body-lg-leading);letter-spacing:var(--type-body-lg-tracking)}.contact-form{display:flex;flex-direction:column;gap:calc(16 * var(--scale-unit));width:100%}.contact-form__row{display:grid;grid-template-columns:266fr 250fr;gap:calc(58 * var(--scale-unit))}.contact-form label{display:flex;flex-direction:column;gap:calc(16 * var(--scale-unit));color:var(--text);font-family:var(--type-label-sm-family);font-size:var(--type-label-sm-size);font-weight:var(--type-label-sm-weight);line-height:var(--type-label-sm-leading);letter-spacing:var(--type-label-sm-tracking)}.contact-form input,.contact-form textarea{width:100%;border:.5px solid var(--field-border);border-radius:0;background:#fff6;color:var(--text);outline:none}.contact-form input{height:calc(53 * var(--scale-unit));padding:calc(10 * var(--scale-unit)) calc(12 * var(--scale-unit))}.contact-form textarea{min-height:calc(160 * var(--scale-unit));resize:vertical;padding:calc(12 * var(--scale-unit))}.contact-form input:focus,.contact-form textarea:focus{border-color:var(--text)}.contact-form button{display:flex;width:100%;height:calc(53 * var(--scale-unit));align-items:center;justify-content:center;margin-top:calc(32 * var(--scale-unit));border:0;background:var(--muted);color:#fff;font-family:var(--type-label-family);font-size:var(--type-label-size);font-weight:var(--type-label-weight);line-height:var(--type-label-leading);letter-spacing:var(--type-label-tracking);cursor:pointer}.contact-intro__fields input,.contact-intro__fields textarea{width:100%;padding:0 0 calc(8 * var(--scale-unit));border:0;border-bottom:1px solid var(--field-border);background:transparent;color:var(--text);font-family:var(--type-field-family);font-size:var(--type-field-size);outline:none;resize:none;transition:border-color .16s ease}.contact-intro__fields input::placeholder,.contact-intro__fields textarea::placeholder{color:var(--text);opacity:1}.contact-intro__fields input:focus,.contact-intro__fields textarea:focus{border-bottom-color:var(--text)}.contact-intro__submit{display:inline-flex;width:var(--cta-pill-width);height:calc(50 * var(--scale-unit));align-items:center;align-self:flex-end;justify-content:center;padding:0 calc(24 * var(--scale-unit));border:0;border-radius:999px;background:#e25f09;color:#fff;font-family:var(--type-button-family);font-size:var(--type-button-size);font-weight:var(--type-button-weight);line-height:var(--type-button-leading);letter-spacing:var(--type-button-tracking);text-transform:var(--type-button-transform);cursor:pointer;transition:background .16s ease}.contact-intro__submit:hover{background:#e25f09e0}.contact-intro__submit:disabled{opacity:.7;cursor:default}.site-footer{position:fixed;z-index:0;right:0;bottom:env(safe-area-inset-bottom,0px);left:0;--footer-contact-width: calc(316 * var(--scale-unit));width:100%;height:var(--footer-reveal-height);min-height:calc(315 * var(--scale-unit));background:#fff6}.footer-content{position:absolute;right:var(--page-gutter);bottom:39px;left:var(--page-gutter);display:flex;flex-direction:column;gap:calc(24 * var(--scale-unit))}.footer-brand{font-size:var(--type-brand-size)}.footer-columns{display:flex;align-items:flex-end;justify-content:space-between;margin-top:calc(32 * var(--scale-unit))}.footer-nav{display:flex;width:calc(244 * var(--scale-unit));flex-direction:column;gap:calc(4 * var(--scale-unit));color:var(--text);font-family:var(--type-nav-footer-family);font-size:var(--type-nav-footer-size);font-weight:var(--type-nav-footer-weight);line-height:var(--type-nav-footer-leading);letter-spacing:var(--type-nav-footer-tracking)}.footer-contact{display:flex;width:var(--footer-contact-width);align-items:center;justify-content:flex-end;gap:calc(28 * var(--scale-unit))}.footer-email{font-family:var(--type-email-family);font-size:var(--type-email-size);font-weight:var(--type-email-weight);line-height:var(--type-email-leading);letter-spacing:var(--type-email-tracking);white-space:nowrap}.social-links{display:flex;gap:calc(16 * var(--scale-unit));align-items:center}.social-links a,.social-links img{display:block;width:calc(24 * var(--scale-unit));height:calc(24 * var(--scale-unit))}@media(max-width:900px){:root{--page-gutter: 24px;--section-gap: 72px;--footer-reveal-height: 420px;--header-height: 64px}.site-main{padding-bottom:96px}.home-main{padding-bottom:0}.hero-cta{min-height:calc(32.35 * var(--scale-unit))}.hero-content{gap:28px;padding-top:126px}.hero-polygon{top:48%;width:min(72vw,300px);height:min(72vw,300px)}.services-section,.contact-section,.about-content,.architecture-intro,.case-studies-intro,.contact-intro,.visuals-intro,.visuals-gallery,.project-gallery,.project-section,.project-images{width:calc(100% - (var(--page-gutter) * 2));grid-template-columns:1fr;gap:72px}.project-card--home .project-card__body{max-width:100%}.intro-section{width:calc(100% - (var(--page-gutter) * 2));align-self:center;margin-right:0}.home-carousel__track{gap:16px}.home-carousel__item{--carousel-item-height: 360px}.home-carousel__item img{height:100%}.home-carousel__label{right:-20px}.project-gallery{row-gap:20px;column-gap:72px}.visuals-gallery{row-gap:40px}.visuals-gallery__column{gap:40px}.about-content{padding:64px 0 96px}.about-column{gap:32px}.about-copy{max-width:none}.gallery-page,.placeholder-page{gap:72px;padding:calc(var(--header-height) + var(--page-gutter)) 0 96px}.project-page{gap:72px;padding:0 0 96px}.gallery-intro,.project-overview{width:calc(100% - (var(--page-gutter) * 2))}.project-cover{min-height:0}.project-cover h1,.case-study-hero__title{top:96px}.case-study-aside{gap:48px}.case-study-aside__images{gap:40px}.project-overview{grid-template-columns:1fr;gap:32px}.project-facts{margin-top:0}.project-section--intro-scheme{margin-top:-48px;align-items:normal}.project-section--intro-scheme .project-section__media{position:static;min-height:0;order:1}.project-section--intro-scheme .project-section__media img,.project-section--intro-scheme .project-section__media video{position:static}.project-section__side-images{margin-bottom:40px}.project-plan-grid{gap:72px 32px}.contact-form__row{grid-template-columns:1fr;gap:16px}.site-footer{display:flex;height:var(--footer-reveal-height);min-height:auto;flex-direction:column;padding:64px var(--page-gutter)}.footer-content{position:static;width:100%}.footer-brand{margin-top:8px}.footer-columns{flex-direction:column;align-items:flex-start;gap:24px}.footer-nav{width:100%}.footer-contact{width:100%;max-width:360px;justify-content:flex-start}}@media(max-width:560px){:root{--footer-reveal-height: 480px}.hero-cta{min-height:calc(27.45 * var(--scale-unit))}.home-carousel__item{--carousel-item-height: 300px}.home-carousel__item img{height:100%}.home-carousel__label{right:-16px}.about-content{gap:64px;padding-top:52px}.contact-intro__submit{max-width:100%}.project-overview{--project-copy-title-size: 32px}.project-cover{min-height:0}.project-facts{grid-template-columns:1fr;gap:8px}.project-facts dd{margin-bottom:16px}.project-plan-grid{grid-template-columns:1fr}.footer-contact{align-items:flex-start;flex-direction:column;gap:16px}}
