:root{--bg:#101214;--paper:#e4e1da;--ink:#121415;--muted:#8e8f8c;--line:rgba(228,225,218,.2);--pad:clamp(20px,4vw,62px)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--paper);font-family:Arial,Helvetica,sans-serif;line-height:1.5}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}.nl-header{height:72px;position:fixed;z-index:10;left:0;right:0;top:0;display:flex;align-items:center;justify-content:space-between;padding:0 var(--pad);border-bottom:1px solid var(--line);background:rgba(16,18,20,.9)}.nl-brand{font-size:13px;text-transform:uppercase;letter-spacing:.28em}.nl-header nav{display:flex;gap:28px}.nl-header nav a{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#c1bfb9}.nl-hero{height:100svh;min-height:700px;position:relative;overflow:hidden}.nl-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.nl-hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,12,13,.8),rgba(10,12,13,.24) 55%,rgba(10,12,13,.05)),linear-gradient(0deg,rgba(10,12,13,.45),transparent 55%)}.nl-hero-copy{position:absolute;z-index:2;left:var(--pad);bottom:clamp(55px,8vh,100px);max-width:760px}.nl-hero-copy>span,.nl-section-head>span,.nl-about span,.nl-contact span{font-size:10px;text-transform:uppercase;letter-spacing:.18em;color:#aaa8a2}.nl-hero h1{font-size:clamp(64px,8vw,126px);line-height:.9;letter-spacing:-.055em;margin:16px 0 26px}.nl-hero p{font-size:15px;line-height:1.6;color:#cbc8c1;max-width:560px;margin-bottom:28px}.nl-hero-copy a{font-size:10px;letter-spacing:.16em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:5px}.nl-index{position:absolute;right:var(--pad);bottom:28px;z-index:2;font-size:9px;letter-spacing:.16em;text-transform:uppercase}.nl-projects,.nl-services{padding:120px var(--pad);max-width:1500px;margin:0 auto}.nl-section-head{display:grid;grid-template-columns:.5fr 1.5fr;gap:7vw;margin-bottom:44px;border-top:1px solid var(--line);padding-top:18px}.nl-section-head h2{font-size:clamp(42px,5vw,72px);line-height:1;letter-spacing:-.045em;max-width:900px}.nl-project-grid{display:grid;grid-template-columns:1.2fr .9fr .75fr;gap:18px;align-items:start}.nl-project-grid article:nth-child(2){margin-top:70px}.nl-project-grid article:nth-child(3){margin-top:140px}.nl-project-grid article img{height:520px;object-fit:cover}.nl-project-grid article:nth-child(2) img{height:450px}.nl-project-grid article:nth-child(3) img{height:390px}.nl-project-grid article>div{padding-top:12px}.nl-project-grid span,.nl-service-list span{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.nl-project-grid h3{font-size:28px;margin:6px 0}.nl-services{background:var(--paper);color:var(--ink);max-width:none}.nl-services>.nl-section-head,.nl-service-list{max-width:1376px;margin-left:auto;margin-right:auto}.nl-services .nl-section-head{border-color:rgba(18,20,21,.2)}.nl-services .nl-section-head span{color:#696a66}.nl-service-list{border-top:1px solid rgba(18,20,21,.2)}.nl-service-list>div{display:grid;grid-template-columns:60px .7fr 1.3fr;gap:25px;border-bottom:1px solid rgba(18,20,21,.2);padding:25px 0}.nl-service-list h3{font-size:30px;margin:0}.nl-service-list p{color:#545653;max-width:650px;margin:0}.nl-about,.nl-contact{padding:120px var(--pad);display:grid;grid-template-columns:.8fr 1.2fr;gap:9vw;max-width:1500px;margin:0 auto}.nl-about h2,.nl-contact h2{font-size:clamp(46px,6vw,84px);line-height:.98;letter-spacing:-.05em;margin:14px 0}.nl-about>p,.nl-contact p{font-size:20px;line-height:1.6;color:#bbb9b3;max-width:760px}.nl-contact{border-top:1px solid var(--line)}.nl-contact a{display:inline-block;margin-top:24px;font-size:11px;letter-spacing:.15em;text-transform:uppercase;border-bottom:1px solid currentColor;padding-bottom:6px}.nl-footer{display:flex;justify-content:space-between;gap:20px;padding:25px var(--pad);border-top:1px solid var(--line);font-size:9px;text-transform:uppercase;letter-spacing:.15em;color:#8f918e}.nl-footer a:hover{color:var(--paper)}
@media(max-width:850px){.nl-header nav{display:none}.nl-section-head,.nl-about,.nl-contact{grid-template-columns:1fr}.nl-project-grid{grid-template-columns:1fr}.nl-project-grid article:nth-child(n){margin-top:0}.nl-project-grid article:nth-child(n) img{height:60vw;min-height:360px}.nl-service-list>div{grid-template-columns:42px 1fr}.nl-service-list p{grid-column:2}.nl-hero-copy{right:var(--pad)}.nl-index{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


/* Return to Lanmark while viewing a Foundation */
.lanmark-preview-back{
  position:fixed;
  right:18px;
  bottom:18px;
  z-index:9999;
  display:inline-flex;
  align-items:center;
  min-height:38px;
  padding:0 13px;
  border:1px solid rgba(255,255,255,.22);
  border-radius:999px;
  background:rgba(15,16,15,.82);
  color:#fff;
  box-shadow:0 8px 30px rgba(0,0,0,.14);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  font:500 10px/1 Arial,Helvetica,sans-serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  text-decoration:none;
}
.lanmark-preview-back:hover{background:#111;color:#fff}
.lanmark-preview-back:focus-visible{outline:2px solid currentColor;outline-offset:3px}
@media(max-width:600px){
  .lanmark-preview-back{right:12px;bottom:12px;min-height:36px;padding:0 11px}
}

html.is-embedded,body.is-embedded{overflow:hidden!important}
body.is-embedded .lanmark-preview-back{display:none!important}

/* v4.9 mobile art direction */
@media(max-width:600px){
  .nl-hero{height:100svh;min-height:620px}
  .nl-hero>img{object-position:58% center}
  .nl-hero h1{font-size:clamp(54px,16vw,72px)}
  .nl-hero-copy{bottom:clamp(46px,8vh,72px)}
  .nl-projects,.nl-services,.nl-about,.nl-contact{padding-top:88px;padding-bottom:92px}
  .nl-project-grid article:nth-child(n) img{height:76vw;min-height:300px;max-height:470px}
}

/* Desktop typography calibration — v4.11.1 */
@media (min-width:901px){
  .nl-brand{letter-spacing:.25em;word-spacing:.08em}
  .nl-header nav a{letter-spacing:.13em;word-spacing:.06em}
  .nl-hero-copy>span,.nl-section-head>span,.nl-about span,.nl-contact span{letter-spacing:.16em;word-spacing:.07em}
  .nl-hero h1{line-height:.93;letter-spacing:-.045em;word-spacing:-.012em;text-wrap:balance}
  .nl-hero p,.nl-about>p,.nl-contact p,.nl-service-list p{letter-spacing:.002em;word-spacing:.014em}
  .nl-section-head h2,.nl-about h2,.nl-contact h2{line-height:1.02;letter-spacing:-.038em;word-spacing:-.01em;text-wrap:balance}
  .nl-project-grid h3,.nl-service-list h3{letter-spacing:-.018em;word-spacing:-.005em}
  .nl-project-grid span,.nl-service-list span,.nl-index,.nl-footer,.nl-contact a{word-spacing:.06em}
}
