@import url("https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@500&display=swap");
:root{--black:#101112;--white:#fafbf8;--red:#e34234;--grey:#777b7b;--line:#dfe1df}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--white);color:var(--black);font-family:Inter,'Helvetica Neue',Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}header,footer,.hero,.approach,.origin,.contact{padding-left:clamp(24px,7vw,120px);padding-right:clamp(24px,7vw,120px)}header{height:98px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid var(--line)}.wordmark{font-size:34px;font-weight:750;letter-spacing:-2.3px}.dot{color:var(--red)}nav{display:flex;gap:36px;font-size:13px;font-weight:550}.hero{min-height:720px;min-height:calc(100svh - 98px);display:flex;flex-direction:column;justify-content:center;position:relative;padding-top:100px;padding-bottom:110px}.eyebrow{font-size:11px;font-weight:750;letter-spacing:2px;display:flex;align-items:center;gap:15px}.dash{height:3px;width:29px;background:var(--red);display:inline-block}.hero h1{font-size:clamp(80px,12vw,185px);letter-spacing:-.09em;line-height:.88;font-weight:650;margin:40px 0 32px}.hero h1 em,.split h2 em,.statement h2 em,.contact h2 em{font-style:normal;color:var(--red)}.intro{font-size:clamp(18px,2vw,24px);max-width:560px;line-height:1.55;color:#555b5b}.textlink{font-size:14px;font-weight:700;margin-top:28px;width:max-content;border-bottom:1px solid var(--red);padding-bottom:10px}.textlink span,.email span{color:var(--red);padding-left:12px}.hero-bottom{position:absolute;bottom:35px;left:clamp(24px,7vw,120px);right:clamp(24px,7vw,120px);display:flex;justify-content:space-between;color:var(--grey);font-size:10px;letter-spacing:1.2px}.approach,.origin{padding-top:130px;padding-bottom:145px;border-top:1px solid var(--line)}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;margin-top:55px}.split h2,.contact h2{font-size:clamp(58px,7vw,110px);line-height:1;letter-spacing:-.075em;font-weight:650;margin:0}.split>div{max-width:490px;padding-top:8px}.split p{font-size:17px;line-height:1.85;color:#5e6262;margin:0 0 25px}.split .lead{font-size:clamp(21px,2.5vw,31px);line-height:1.45;color:var(--black);letter-spacing:-.025em}.statement{background:var(--black);color:var(--white);min-height:510px;display:flex;flex-direction:column;justify-content:center;padding:90px clamp(24px,7vw,120px)}.statement .eyebrow{color:#a4a8a6}.statement h2{font-size:clamp(60px,8.5vw,135px);line-height:1.02;letter-spacing:-.075em;margin:45px 0 0;font-weight:600}.contact{padding-top:130px;padding-bottom:145px;border-top:1px solid var(--line)}.contact h2{margin:55px 0 45px}.email{font-size:clamp(21px,3vw,37px);font-weight:600;border-bottom:2px solid var(--red);padding-bottom:12px}footer{background:#ebeeea;padding-top:55px;padding-bottom:35px}.footer-top,.footer-bottom{display:flex;justify-content:space-between;align-items:center;gap:20px}.footer-top span,.footer-bottom{font-size:12px;color:#666b69}.footer-bottom{border-top:1px solid #d3d7d3;margin-top:65px;padding-top:25px}.footer-bottom div{display:flex;gap:28px}.legal{max-width:900px;margin:0 auto;padding:90px 24px 130px}.legal h1{font-size:clamp(48px,7vw,85px);letter-spacing:-.065em}.legal h2{margin-top:45px}.legal p,.legal li{line-height:1.75;color:#4c5350}.legal a{text-decoration:underline;text-decoration-color:var(--red)}@media(max-width:700px){header{height:80px}nav{gap:17px;font-size:12px}.wordmark{font-size:30px}.hero{min-height:730px;padding-top:70px}.hero h1{font-size:clamp(75px,14vw,110px)}.hero-bottom{flex-direction:column;gap:10px}.split{grid-template-columns:1fr;gap:40px}.approach,.origin,.contact{padding-top:85px;padding-bottom:90px}.statement{min-height:390px}.footer-top,.footer-bottom{align-items:flex-start;flex-direction:column}.footer-bottom{gap:24px}}

/* V2: architectural hero, improved spacing and typographic rhythm */
header{height:88px;position:relative;z-index:4;background:rgba(250,251,248,.97)}
nav{letter-spacing:.14em;text-transform:uppercase;font-size:11px;font-weight:650;gap:42px}
.hero{min-height:750px;min-height:calc(100svh - 88px);padding-top:70px;padding-bottom:90px;overflow:hidden;isolation:isolate}
.hero-visual{position:absolute;z-index:-1;inset:0 0 0 48%;background-image:linear-gradient(90deg,var(--white) 0%,rgba(250,251,248,.1) 26%,transparent 45%),url('/hero-architecture.webp');background-size:cover;background-position:center center;pointer-events:none}
.hero-content{width:min(58%,790px);position:relative;z-index:1}
.hero h1{font-size:clamp(70px,8.4vw,132px);letter-spacing:-.048em;line-height:.98;margin:45px 0 35px;font-weight:680}
.hero .intro{font-size:clamp(18px,1.7vw,23px);max-width:510px;line-height:1.55;color:#626667}
.hero .textlink{margin-top:22px;letter-spacing:.06em}
.hero-bottom{background:rgba(250,251,248,.78);width:max-content;max-width:85%;right:auto;padding:8px 14px 8px 0}
.eyebrow{letter-spacing:.18em}
@media(max-width:1000px){.hero-content{width:64%}.hero h1{font-size:clamp(64px,9vw,105px)}.hero-visual{left:40%;opacity:.85}}
@media(max-width:700px){header{height:76px}nav{gap:14px;font-size:10px;letter-spacing:.03em}.hero{min-height:760px;justify-content:flex-end;padding-top:275px;padding-bottom:125px}.hero-visual{inset:0 0 auto 0;height:53%;background-image:linear-gradient(0deg,var(--white) 0%,rgba(250,251,248,0) 44%),url('/hero-architecture.webp');background-position:center 45%;opacity:.94}.hero-content{width:100%}.hero h1{font-size:clamp(65px,12vw,91px);letter-spacing:-.05em;margin:24px 0}.hero .intro{font-size:17px;max-width:420px}.hero-bottom{bottom:20px;max-width:95%;font-size:9px}.eyebrow{font-size:10px;letter-spacing:.13em}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* V3 — full-width architectural canvas with typography layered over the image */
@media(min-width:701px){
 .hero{min-height:calc(100svh - 88px);justify-content:center;padding-top:55px;padding-bottom:80px}
 .hero-visual{inset:0;opacity:1;background-image:linear-gradient(90deg,var(--white) 0%,rgba(250,251,248,.99) 18%,rgba(250,251,248,.88) 35%,rgba(250,251,248,.18) 59%,rgba(250,251,248,0) 76%),url('/hero-architecture.webp');background-size:cover,auto 118%;background-repeat:no-repeat;background-position:center,right center}
 .hero-content{width:min(74%,970px);z-index:2}
 .hero h1{font-size:clamp(86px,9.3vw,150px);letter-spacing:-.047em;line-height:.98;margin:46px 0 32px}
 .hero .intro{max-width:510px}
}
@media(min-width:701px) and (max-width:1100px){
 .hero-visual{background-size:cover,auto 106%;background-position:center,calc(100% + 160px) center}
 .hero-content{width:85%}
 .hero h1{font-size:clamp(76px,9vw,115px)}
}
@media(max-width:700px){
 .hero{min-height:calc(100svh - 76px);min-height:780px;justify-content:flex-end;padding-top:250px;padding-bottom:110px}
 .hero-visual{inset:0;height:100%;background-image:linear-gradient(0deg,var(--white) 6%,rgba(250,251,248,.96) 28%,rgba(250,251,248,.65) 53%,rgba(250,251,248,0) 78%),url('/hero-architecture.webp');background-size:cover,auto 62%;background-position:center,center top;background-repeat:no-repeat}
 .hero h1{font-size:clamp(65px,12vw,92px);letter-spacing:-.045em}
}

/* EFUTEX v4: consistent wordmark in header, footer and legal pages */
.wordmark{font-family:"Instrument Sans","Helvetica Neue",Arial,sans-serif;font-weight:500;letter-spacing:.035em;font-size:34px;line-height:1.15;white-space:nowrap}
.wordmark .dot{color:var(--red)}
@media(max-width:700px){.wordmark{font-size:30px}}

/* V5: typographic breathing room outside the hero; footer composition */
/* Preserve the approved architectural hero composition. */
.hero h1{letter-spacing:-.045em}
.split h2,.contact h2{letter-spacing:-.025em;line-height:1.055}
.statement h2{letter-spacing:-.025em;line-height:1.055}
.legal h1{letter-spacing:-.025em;line-height:1.08}
.split .lead{letter-spacing:0}
.footer-top{align-items:flex-start}
.footer-brand{display:flex;flex-direction:column;gap:7px}
.footer-brand .wordmark{font-size:38px;letter-spacing:.035em}
.footer-tagline{font-size:13px;color:#555b59;line-height:1.5}
.footer-meta{display:flex;flex-direction:column;align-items:flex-end;gap:10px;font-size:12px;color:#666b69}
.footer-bottom{margin-top:48px}
@media(max-width:700px){
 .split h2,.contact h2,.statement h2{letter-spacing:-.025em;line-height:1.06}
 .footer-brand .wordmark{font-size:35px}
 .footer-meta{align-items:flex-start}
}

/* V6 — final footer refinement */
.footer-brand .wordmark{font-size:38px;letter-spacing:.035em;display:inline-flex;align-items:baseline;gap:0}
.footer-brand .wordmark .dot{font-size:1.22em;line-height:0;position:relative;top:.055em;margin-left:-.015em}
.footer-meta{align-items:flex-end}
.footer-bottom{margin-top:42px}
@media(max-width:700px){.footer-brand .wordmark{font-size:35px}.footer-meta{align-items:flex-start}}
