:root{--paper:#f0f0ed;--ink:#101111;--muted:#696b68;--line:#cecfca;--accent:#ff663e}body{background:var(--ink);color:var(--paper)}::selection{background:var(--accent);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.site-header{background:rgba(16,17,17,.95);backdrop-filter:blur(16px);border-bottom:1px solid #ffffff20;gap:36px}.header-description{font:10px/1.35 Arial,sans-serif;letter-spacing:.8px;color:#babcb6}.site-header nav{gap:30px;margin-right:20px}.site-header nav a{color:#e0e0db}.site-header nav a:hover{color:var(--accent);text-decoration:none}.nav-contact{border:1px solid #ffffff65;border-radius:28px;padding:9px 20px;font-size:13px;white-space:nowrap;transition:background .2s,color .2s}.nav-contact span{margin-left:22px;font-size:18px}.nav-contact:hover{background:var(--paper);color:var(--ink)}a:focus-visible,button:focus-visible{outline-color:var(--accent)}.skip-link{color:var(--ink)}
.editorial-hero{padding-top:28px;overflow:hidden}.hero-meta{display:flex;justify-content:space-between;font:11px/1.5 Arial,sans-serif;letter-spacing:1.3px}.hero-meta>span:last-child{text-align:right;color:#90928b}.hero-composition{position:relative;height:clamp(610px,48vw,840px);margin-top:18px}.hero-architecture{position:absolute;width:63%;height:66%;right:0;top:7%;overflow:hidden}.hero-architecture::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(16,17,17,.12),transparent 50%,rgba(16,17,17,.04))}.hero-architecture img{width:100%;height:100%;object-fit:cover;object-position:center;animation:hero-image-in 1.6s cubic-bezier(.16,1,.3,1) both}.editorial-hero h1{font-family:Arial,Helvetica,sans-serif;font-size:clamp(105px,14.7vw,265px);font-weight:900;line-height:.85;letter-spacing:-.078em;margin:0;position:relative;z-index:2;pointer-events:none;padding-top:28px}.hero-line{display:block;white-space:nowrap}.space-line{animation:type-in 1s cubic-bezier(.16,1,.3,1) both}.title-dot{color:var(--accent)}.story-line{text-align:center;margin-top:7px;animation:type-in 1.15s cubic-bezier(.16,1,.3,1) both}.story-line em{font-family:Georgia,serif;font-weight:400;font-style:italic;font-size:.65em;letter-spacing:-.08em;color:var(--accent);vertical-align:9%;margin-right:.12em}.hero-content{position:absolute;bottom:55px;left:0;width:29%;display:block;z-index:3}.hero-content-image{aspect-ratio:1.75;overflow:hidden;background:#000}.hero-content-image img{width:100%;height:124%;object-fit:cover;object-position:center top;transition:transform .7s}.hero-content:hover img{transform:scale(1.06)}.hero-content>span{display:flex;align-items:center;justify-content:space-between;font:10px/1.5 Arial,sans-serif;letter-spacing:1px;padding-top:12px}.hero-content>span>span{font-size:21px}.hero-statement{position:absolute;bottom:44px;left:64%;z-index:3}.hero-statement p{font-size:clamp(24px,2.1vw,35px);font-weight:700;line-height:1.45;letter-spacing:-1.2px;margin:0 0 17px}.hero-statement>span{display:block;font-size:14px;color:#9c9f98;line-height:1.8}.business-index{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid #ffffff38}.business-index>a{display:flex;align-items:center;gap:28px;padding:27px 0 30px}.business-index>a:first-child{border-right:1px solid #ffffff38;padding-right:40px}.business-index>a:last-child{padding-left:40px}.index-number{font:13px/1.5 Arial,sans-serif;color:var(--accent)}.business-index>a>span:nth-child(2){font-size:20px}.business-index small{display:block;font:10px/1.5 Arial,sans-serif;letter-spacing:1px;color:#92958c;margin-top:4px}.index-arrow{margin-left:auto;font-size:32px;line-height:1;transition:transform .25s,color .25s}.business-index>a:hover .index-arrow{transform:translate(4px,-4px);color:var(--accent)}
.service-section{padding-top:88px;padding-bottom:100px;background:var(--paper);color:var(--ink)}.section-label{margin-bottom:26px}.section-number{border:1px solid currentColor;background:none;color:inherit;border-radius:20px;min-width:32px;text-align:center;padding:3px 7px;font-size:11px}.service-word{display:flex;align-items:center;justify-content:space-between;font-family:Arial,sans-serif;font-size:clamp(60px,9vw,160px);font-weight:700;letter-spacing:-.065em;line-height:1.08;padding-bottom:35px;margin-bottom:56px;border-bottom:1px solid var(--line)}.service-word>span{font-weight:400;font-size:.72em}.service-layout{gap:12%;margin-bottom:62px}h2{line-height:1.4}.service-list article:first-child{border:0;padding-top:0}.text-link>span{transition:transform .25s}.text-link:hover>span{transform:translate(3px,-3px)}.wide-work img{aspect-ratio:2.1}.content-section{background:var(--ink);color:var(--paper)}.content-section .section-label{color:var(--accent)}.content-section .service-word{border-color:#ffffff35}.content-section .service-intro>p,.content-section .service-list p{color:#a4a79f}.content-section .service-list article{border-color:#ffffff2a}.content-section .service-intro>.text-link{color:var(--accent)}.content-feature{grid-template-columns:1.55fr 1fr;min-height:420px;border:1px solid #ffffff2a}.content-feature-image{min-height:380px}.content-feature-image img{height:126%}.content-feature-label{padding:44px}.content-feature h3{font-size:clamp(30px,3vw,49px);letter-spacing:-1.5px;margin:18px 0}.content-feature p{color:#a5a79f}.content-feature .text-link{color:var(--accent)}
.projects-section{padding-block:100px 125px;background:#dfe1db;color:var(--ink)}.section-heading{margin-bottom:55px}.section-heading h2{font-size:clamp(34px,4vw,65px)}.project-grid{grid-template-columns:1.15fr 1fr;gap:35px 7%;align-items:start}.project-card:nth-child(even){margin-top:100px}.project-image{aspect-ratio:1.65}.project-card:nth-child(even) .project-image{aspect-ratio:1.3}.project-image img{transition:transform .75s cubic-bezier(.2,.65,.25,1)}.project-card:hover img{transform:scale(1.05)}.project-open{right:18px;top:18px;width:43px;height:43px;background:var(--paper);color:var(--ink);font-size:26px;transition:background .2s}.project-card:hover .project-open{background:var(--accent)}.project-meta{margin-top:20px}.project-meta h3{font-size:22px;letter-spacing:-.65px}
.about-section{border:0;padding-block:100px}.about-section .section-label{color:var(--accent);margin-bottom:38px}.about-main{gap:12%}.about-main h2{font-size:clamp(32px,3.5vw,57px)}.muted{color:#9d9f98}.capabilities{gap:45px;margin-top:75px}.capabilities article{border-color:#ffffff45}.capabilities span{color:#aaa}.capabilities h3{font-size:25px;margin:25px 0 10px;letter-spacing:-.7px}.capabilities p{color:#aaa}.company-note{color:#a0a397;border-color:#ffffff25}
.contact-section{padding-block:80px 95px;background:var(--accent);color:var(--ink)}.contact-section .section-label{color:var(--ink)}.contact-layout{gap:12%}.contact-section h2{font-size:clamp(52px,6vw,100px);line-height:1.17;letter-spacing:-.065em}.contact-section .accent{color:var(--paper)}.contact-layout>div>p{color:#34271f;margin:28px 0 36px}.contact-email{border-color:#14141480}.contact-person{color:#38271e}.form-row label{color:#38271e}.form-row input,.form-row textarea,.form-row select{border-color:#17171780;color:var(--ink)}.form-row input::placeholder,.form-row textarea::placeholder{color:#56362c}.form-row select option{background:var(--paper);color:var(--ink)}.submit-button{background:var(--ink);color:var(--paper);padding:17px 24px;font-weight:400;transition:background .2s}.submit-button:hover{background:#343833}.form-note{color:#392720}.inquiry-status{background:#ffffff50;color:var(--ink)}.contact-section a:focus-visible,.contact-section button:focus-visible,.contact-section input:focus-visible,.contact-section select:focus-visible,.contact-section textarea:focus-visible{outline-color:var(--ink)}
.site-footer{display:block;border:0;padding-top:40px;padding-bottom:30px;overflow:hidden}.footer-top,.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;color:#999e93}.footer-top>a{color:var(--paper);font:11px/1.5 Arial,sans-serif;letter-spacing:.8px}.footer-wordmark{display:block;position:relative;font-family:Arial,Helvetica,sans-serif;font-size:clamp(92px,22vw,390px);font-weight:900;line-height:1.18;letter-spacing:-.085em;margin:28px 0;color:var(--paper)}.footer-wordmark>span{font-size:.08em;letter-spacing:0;vertical-align:top;line-height:4;margin-left:.25em}.footer-bottom{padding-top:20px;border-top:1px solid #ffffff25;font:11px/1.7 Arial,sans-serif;letter-spacing:.4px}
@keyframes type-in{from{transform:translateY(45px);opacity:0}to{transform:translateY(0);opacity:1}}@keyframes hero-image-in{from{transform:scale(1.12);opacity:.1}to{transform:scale(1);opacity:1}}
@media(min-width:1900px){.hero-composition{height:880px}.hero-architecture{height:69%}.hero-statement{bottom:58px}.hero-content{bottom:70px}}
@media(max-width:1150px){.header-description{display:none}.site-header{gap:25px}.site-header nav{gap:24px;margin-right:0}.hero-composition{height:600px}.hero-architecture{height:64%;top:4%;width:68%}.editorial-hero h1{font-size:14.7vw}.hero-content{width:32%;bottom:46px}.hero-statement{left:57%;bottom:35px}.hero-statement p{font-size:27px}.hero-statement>span{font-size:13px}.service-layout,.about-main,.contact-layout{gap:7%}.content-feature-label{padding:34px}.content-feature{min-height:350px}.content-feature-image{min-height:340px}.project-meta{display:block}.project-meta>span{display:block;margin-top:3px}.capabilities{gap:28px}}
@media(max-width:760px){.site-header{height:76px;gap:18px}.nav-contact{font-size:12px;padding:7px 14px}.nav-contact span{margin-left:13px}.menu-toggle span{background:var(--paper)}#mobile-menu{background:var(--ink);border-color:#ffffff50}.editorial-hero{padding-top:22px}.hero-meta{font-size:9px;letter-spacing:.7px}.hero-meta>span:last-child{font-size:8px}.hero-composition{height:590px;margin-top:28px}.hero-architecture{width:88%;height:250px;top:40px;right:0}.editorial-hero h1{font-size:clamp(71px,15.9vw,120px);line-height:.92;padding-top:0;letter-spacing:-.085em}.story-line{text-align:right;margin-top:8px}.story-line em{margin-right:0;font-size:.7em}.hero-content{width:43%;bottom:42px;left:0}.hero-content-image{aspect-ratio:1.05}.hero-content>span{font-size:8px;letter-spacing:.1px;gap:8px;line-height:1.6}.hero-content>span>span{font-size:18px}.hero-statement{left:51%;bottom:68px}.hero-statement p{font-size:23px;letter-spacing:-.9px;line-height:1.45;margin-bottom:12px}.hero-statement>span{font-size:12px;line-height:1.7}.business-index>a{gap:12px;padding:20px 0 23px}.business-index>a:first-child{padding-right:18px}.business-index>a:last-child{padding-left:18px}.business-index>a>span:nth-child(2){font-size:17px}.index-number{font-size:10px}.business-index small{font-size:8px;letter-spacing:.1px;max-width:100px}.index-arrow{font-size:24px}.service-section{padding-block:60px}.section-label{font-size:10px;letter-spacing:.5px;margin-bottom:20px}.section-number{font-size:10px;min-width:28px;padding:2px 5px}.service-word{font-size:clamp(43px,9.6vw,72px);padding-bottom:22px;margin-bottom:35px}.service-layout,.about-main,.contact-layout{gap:35px}.service-layout{margin-bottom:30px}.wide-work img{aspect-ratio:1.45}.content-feature{grid-template-columns:1fr;min-height:0}.content-feature-image{height:250px;min-height:0}.content-feature-label{padding:27px}.content-feature h3{font-size:32px;margin:15px 0}.projects-section{padding-block:65px}.section-heading{gap:23px;margin-bottom:36px}.section-heading h2{font-size:33px}.project-grid{gap:33px 18px;grid-template-columns:1fr 1fr}.project-card:nth-child(even){margin-top:65px}.project-image{aspect-ratio:1.05}.project-card:nth-child(even) .project-image{aspect-ratio:.85}.project-meta{margin-top:13px}.project-meta h3{font-size:16px;line-height:1.5}.project-meta>span{font-size:11px}.project-open{width:28px;height:28px;right:9px;top:9px;font-size:19px}.about-section{padding-block:65px}.about-main h2{font-size:32px}.capabilities{gap:27px;margin-top:35px}.capabilities h3{font-size:21px;margin:13px 0 6px}.contact-section{padding-block:60px}.contact-layout{gap:42px}.contact-section h2{font-size:57px}.contact-layout>div>p{margin:22px 0}.site-footer{padding-top:28px}.footer-top{flex-wrap:wrap;font-size:11px;gap:15px}.footer-top>span:nth-child(2){display:none}.footer-wordmark{font-size:21.4vw;line-height:1.3;margin:30px 0}.footer-bottom{flex-wrap:wrap;font-size:10px;gap:12px}.footer-bottom>a{width:100%}}
@media(min-width:500px) and (max-width:760px){.hero-composition{height:650px}.hero-architecture{height:320px}.hero-statement{bottom:80px}}
@media(max-width:370px){.hero-composition{height:540px}.hero-statement{left:51%;bottom:68px}.hero-statement p{font-size:20px}.hero-statement>span{font-size:11px}.hero-architecture{height:230px}.business-index>a{gap:8px}.business-index>a>span:nth-child(2){font-size:15px}.index-number{display:none}.project-grid{grid-template-columns:1fr}.project-card:nth-child(even){margin-top:0}.project-image,.project-card:nth-child(even) .project-image{aspect-ratio:1.5}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
.header-description,.hero-meta,.hero-meta>span:last-child,.hero-content>span,.section-label,.small-label,.business-index small,.wide-work figcaption span:last-child,.project-meta>span,.capabilities span,.company-note,.footer-top,.footer-bottom,.footer-top>a{font-size:12px}
@media(min-width:761px){.hero-content{bottom:25px}}
@media(max-width:760px){.hero-meta{gap:18px;letter-spacing:.3px}.hero-meta>span:first-child{max-width:175px}.hero-meta>span:last-child{max-width:120px}.hero-content>span{font-size:12px;letter-spacing:0}.business-index small{font-size:12px;letter-spacing:0;max-width:105px}.hero-statement>span{font-size:14px}.business-index>a>span:nth-child(2){font-size:18px}}

/* Official H3ECO assets: preserve the supplied colors and proportions. */
.contact-person-with-email{display:flex;align-items:baseline;gap:20px}.contact-person-links{display:flex;flex-direction:column;gap:4px}.contact-person .contact-person-links a{margin-left:0}
.site-header .wordmark{display:block;width:132px;flex:0 0 132px;line-height:0;letter-spacing:normal}.site-header .wordmark img{display:block;width:100%;height:auto}.footer-wordmark{width:100%;font-size:0;line-height:0;letter-spacing:normal;margin:48px 0}.footer-wordmark img{display:block;width:100%;height:auto}
@media(max-width:760px){.site-header .wordmark{width:112px;flex-basis:112px}.footer-wordmark{margin:34px 0}}
